/* ABOUT — structured profile / education / experience / projects */
.about-scene.about-structured-scene{
  position:absolute;inset:0;padding:0!important;overflow-y:auto!important;overflow-x:hidden!important;
  background:
    linear-gradient(rgba(68,58,48,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(68,58,48,.035) 1px,transparent 1px),
    #f4f1ea;
  background-size:42px 42px,42px 42px,auto;color:#181713;scroll-behavior:smooth;
}
.about-structured-shell{width:min(900px,68vw);margin:0 auto;padding:116px 0 130px}
.about-structured-head{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:72px;align-items:center;margin-bottom:92px}
.about-head-copy{max-width:520px}
.about-structured-head .eyebrow{margin:0 0 10px;font:500 8px/1.3 "IBM Plex Mono",monospace;letter-spacing:.09em;color:rgba(24,23,19,.48)}
.about-structured-head h2{margin:0;font-size:clamp(38px,4.6vw,64px);line-height:.94;letter-spacing:-.055em;font-weight:500}
.about-structured-head .about-head-copy>p:last-child{margin:16px 0 0;max-width:430px;font-size:13px;line-height:1.75;color:rgba(24,23,19,.58)}

.about-photo-stack{position:relative;width:190px;height:238px;justify-self:end;padding:0;border:0;background:none;cursor:pointer;isolation:isolate}
.about-photo-frame{position:absolute;inset:16px 10px 26px;border:1px solid rgba(24,23,19,.34);background:#f8f5ee;box-shadow:0 12px 28px rgba(49,42,34,.07);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.about-photo-frame-back{transform:translate(-12px,8px) rotate(-5deg);z-index:1;background:transparent}
.about-photo-frame-mid{transform:translate(12px,4px) rotate(4deg);z-index:2;background:transparent}
.about-photo-frame-front{z-index:3;overflow:hidden;background:#e9e5dc}
.about-photo-frame-front img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.94) contrast(1.03)}
.about-photo-stack:hover .about-photo-frame-back{transform:translate(-15px,10px) rotate(-7deg)}
.about-photo-stack:hover .about-photo-frame-mid{transform:translate(15px,6px) rotate(6deg)}
.about-photo-stack.is-switching .about-photo-frame-front{animation:aboutPhotoFlip .42s cubic-bezier(.22,1,.36,1)}
@keyframes aboutPhotoFlip{0%{transform:translateX(0);opacity:1}45%{transform:translateX(16px) rotate(2deg);opacity:.18}100%{transform:none;opacity:1}}
.about-photo-stack>small{position:absolute;left:50%;bottom:0;transform:translateX(-50%);z-index:5;white-space:nowrap;font:500 8px/1 "IBM Plex Mono",monospace;letter-spacing:.06em;color:rgba(24,23,19,.4)}

.about-reveal{--reveal:0;--reveal-dir:-1;opacity:calc(.18 + var(--reveal)*.82);transform:translateX(calc((1 - var(--reveal))*var(--reveal-dir)*46px));will-change:transform,opacity}
.about-section-kicker,.about-section-heading>p{margin:0;font:500 8px/1.2 "IBM Plex Mono",monospace;letter-spacing:.09em;color:rgba(24,23,19,.42)}
.about-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:24px}
.about-section-heading h3{margin:0;font-size:24px;line-height:1;font-weight:500;letter-spacing:-.03em}

.about-profile-card{padding:22px 0 26px;border-top:1px solid rgba(24,23,19,.24);border-bottom:1px solid rgba(24,23,19,.14);margin-bottom:90px}
.about-profile-grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px;row-gap:0}
.about-profile-grid>div{display:grid;grid-template-columns:78px 1fr;gap:14px;padding:11px 0;border-top:1px solid rgba(24,23,19,.09)}
.about-profile-grid>div:nth-child(-n+2){border-top:0}
.about-profile-grid>div:last-child{grid-column:1/-1;max-width:70%}
.about-profile-grid span{font-size:10px;color:rgba(24,23,19,.46)}
.about-profile-grid strong{font-size:12px;line-height:1.5;font-weight:500;color:rgba(24,23,19,.8)}

.about-education{position:relative;display:grid;grid-template-columns:98px 1fr;gap:22px;align-items:stretch;margin-bottom:104px}
.about-education-label{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-left:2px}
.about-education-label span{font:500 8px/1 "IBM Plex Mono",monospace;color:rgba(24,23,19,.4);margin-bottom:8px}
.about-education-label b{font-size:16px;font-weight:500;writing-mode:vertical-rl;letter-spacing:.12em}
.about-education-label small{margin-top:10px;font:500 7px/1 "IBM Plex Mono",monospace;letter-spacing:.08em;color:rgba(24,23,19,.35);writing-mode:vertical-rl}
.about-education-brace{position:absolute;left:66px;top:50%;transform:translateY(-50%) scaleY(1.55);transform-origin:center;font-family:Georgia,serif;font-size:150px;font-weight:300;line-height:.8;color:rgba(24,23,19,.25)}
.about-education-cards{display:grid;gap:14px}
.about-edu-card{padding:20px 22px 22px;border:1px solid rgba(24,23,19,.18);background:rgba(249,247,241,.55)}
.about-edu-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}
.about-edu-card header span{font:500 8px/1 "IBM Plex Mono",monospace;letter-spacing:.08em;color:rgba(24,23,19,.44)}
.about-edu-card header time{font:500 8px/1 "IBM Plex Mono",monospace;color:rgba(24,23,19,.4)}
.about-edu-card h3{margin:0;font-size:18px;line-height:1.25;font-weight:500;letter-spacing:-.02em}
.about-edu-major{margin:6px 0 12px!important;font-size:11px!important;color:rgba(24,23,19,.58)!important}
.about-edu-card>p:last-child{margin:0;max-width:650px;font-size:12px;line-height:1.75;color:rgba(24,23,19,.66)}

.about-internships{margin-bottom:108px}
.about-vertical-timeline{position:relative;margin-left:82px;padding-left:36px;border-left:1px solid rgba(24,23,19,.22)}
.about-timeline-item{position:relative;display:grid;grid-template-columns:92px 1fr;gap:24px;padding:0 0 38px}
.about-timeline-item:last-child{padding-bottom:0}
.about-timeline-dot{position:absolute;left:-41px;top:4px;width:9px;height:9px;border-radius:50%;border:1px solid rgba(24,23,19,.7);background:#f4f1ea}
.about-timeline-item>time{font:500 8px/1.35 "IBM Plex Mono",monospace;color:rgba(24,23,19,.42);padding-top:2px}
.about-timeline-content h4{margin:0 0 6px;font-size:16px;font-weight:500;letter-spacing:-.02em}
.about-timeline-content>span{display:block;margin-bottom:9px;font-size:10px;color:rgba(24,23,19,.5)}
.about-timeline-content p{margin:0;max-width:580px;font-size:12px;line-height:1.75;color:rgba(24,23,19,.68)}

.about-projects{padding-bottom:32px}
.about-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.about-project-card{min-height:245px;padding:18px;border:1px solid rgba(24,23,19,.18);background:rgba(249,247,241,.48);display:flex;flex-direction:column}
.about-project-index{font:500 8px/1 "IBM Plex Mono",monospace;color:rgba(24,23,19,.38)}
.about-project-card h4{margin:30px 0 9px;font-size:16px;line-height:1.25;font-weight:500;letter-spacing:-.02em}
.about-project-card small{font:500 7px/1.4 "IBM Plex Mono",monospace;letter-spacing:.04em;color:rgba(24,23,19,.4)}
.about-project-card p{margin:auto 0 0;padding-top:24px;font-size:11px;line-height:1.7;color:rgba(24,23,19,.66)}
.about-scroll-hint{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:15;margin:0;font:500 8px/1 "IBM Plex Mono",monospace;letter-spacing:.08em;color:rgba(24,23,19,.34);pointer-events:none}
.about-scene.about-structured-scene .scene-back{position:fixed;left:28px;bottom:28px;z-index:25}

@media(max-width:1000px){
  .about-structured-shell{width:min(820px,78vw)}
  .about-structured-head{grid-template-columns:1fr 180px;gap:52px}
  .about-photo-stack{width:170px;height:220px}
  .about-project-grid{grid-template-columns:1fr 1fr}.about-project-card:last-child{grid-column:1/-1}
}
@media(max-width:720px){
  .about-structured-shell{width:auto;margin:0 22px;padding:98px 0 100px}
  .about-structured-head{grid-template-columns:1fr;gap:34px;margin-bottom:70px}.about-photo-stack{justify-self:start}
  .about-profile-grid{grid-template-columns:1fr}.about-profile-grid>div,.about-profile-grid>div:nth-child(-n+2){border-top:1px solid rgba(24,23,19,.09)}.about-profile-grid>div:first-child{border-top:0}.about-profile-grid>div:last-child{grid-column:auto;max-width:none}
  .about-education{grid-template-columns:1fr;padding-left:26px}.about-education-label{display:none}.about-education-brace{left:-10px;font-size:120px}
  .about-vertical-timeline{margin-left:12px;padding-left:28px}.about-timeline-item{grid-template-columns:68px 1fr;gap:14px}.about-timeline-dot{left:-33px}
  .about-project-grid{grid-template-columns:1fr}.about-project-card:last-child{grid-column:auto}
  .about-scroll-hint{display:none}
}
@media(prefers-reduced-motion:reduce){
  .about-reveal{transform:none!important;opacity:1!important}
  .about-photo-stack.is-switching .about-photo-frame-front{animation:none}
}

.about-profile-grid .about-resume-row{grid-column:1/-1;max-width:70%}.about-resume-link{display:inline-flex;align-items:center;color:inherit;text-decoration:none;border-bottom:1px solid rgba(24,23,19,.35);padding-bottom:2px;transition:opacity .2s ease}.about-resume-link:hover{opacity:.55}
