.station-collage { position:relative; isolation:isolate; height:min(65svh,38rem); min-height:30rem; }
.station-collage__bag { position:absolute; z-index:0; width:46%; top:20%; left:27%; pointer-events:none; }
.station-collage__bag img { transform:rotate(-7deg); width:100%; height:auto; }
.station-index { position:absolute; z-index:1; inset:0; pointer-events:none; }
.station-badge { --badge-accent:#ff6900; position:absolute; z-index:2; display:grid; grid-template-rows:auto 1fr auto; width:44%; height:36%; min-height:10.5rem; padding:clamp(1rem,1.7vw,1.4rem); color:var(--ink); background:var(--paper-light); text-decoration:none; pointer-events:auto; }
.station-badge::before { content:''; position:absolute; inset:0 0 auto; height:.35rem; background:var(--badge-accent); }
.station-badge__top { display:flex; justify-content:space-between; gap:.5rem; color:#654c5b; font-size:.79rem; font-weight:750; letter-spacing:.06em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.station-badge__identity { display:flex; align-items:center; gap:clamp(.5rem,1.15vw,.85rem); align-self:center; min-width:0; }
.station-badge__logo { display:block; flex:none; width:clamp(2.7rem,4.2vw,3.8rem); height:clamp(2.7rem,4.2vw,3.8rem); object-fit:contain; }
.station-badge strong { font-size:clamp(1.5rem,2.5vw,2.3rem); line-height:1.15; letter-spacing:-.03em; white-space:nowrap; }
.station-badge small { display:block; padding-top:.5rem; border-top:1px solid rgba(32,40,64,.16); font-size:clamp(.88rem,1vw,1rem); color:#343a4e; line-height:1.45; text-wrap:balance; }
.station-badge--1 { top:1%; left:2%; transform:rotate(-6deg); }
.station-badge--2 { --badge-accent:#2932e1; top:8%; right:0; transform:rotate(6deg); }
.station-badge--3 { --badge-accent:#ff4c00; bottom:7%; left:0; transform:rotate(5deg); }
.station-badge--4 { --badge-accent:#ff1744; bottom:1%; right:2%; transform:rotate(-5deg); }
.internship-case { scroll-margin-top:7rem; padding-bottom:7rem; }
.internship-case + .internship-case { padding-top:4rem; }
.internship-case__lead { display:grid; grid-template-areas:"head photo" "decision photo"; grid-template-columns:minmax(0,1fr) minmax(13rem,.7fr); grid-template-rows:auto auto; align-items:start; gap:1.4rem clamp(1.5rem,3vw,3rem); margin-bottom:3rem; }
.internship-case__head { grid-area:head; }
.internship-case__portrait { grid-area:photo; min-width:0; width:100%; max-width:19rem; margin:0; padding:.65rem .65rem 1rem; color:var(--ink); background:var(--paper-light); box-shadow:.55rem 1rem 1.8rem rgba(8,12,27,.22); }
.internship-case__portrait-frame { overflow:hidden; }
.internship-case__portrait img { display:block; width:100%; height:auto; }
.internship-case__portrait figcaption { margin:.7rem .35rem 0; font-size:.95rem; line-height:1.5; }
.internship-case__head h2 { margin:0; font-size:clamp(3.3rem,5vw,4.6rem); line-height:1.17; letter-spacing:-.025em; }
.internship-case__date { margin:.8rem 0 1.5rem; color:var(--pink); font-size:1rem; font-variant-numeric:tabular-nums; }
.internship-case__focus { margin:0; font-size:clamp(2rem,3vw,2.7rem); line-height:1.35; letter-spacing:-.02em; }
.internship-case__meta { margin:1rem 0 0; color:var(--experience-muted); line-height:1.8; font-size:1.02rem; }
.internship-case__decision { grid-area:decision; align-self:start; display:flex; flex-direction:column; justify-content:center; width:min(100%,27rem); min-height:0; padding:1rem 1.2rem 1.15rem; }
.internship-case .internship-case__decision h4 { color:var(--pink-ink); font-size:1rem; }
.internship-case__decision p { color:var(--ink); font-size:clamp(.96rem,1.05vw,1.06rem); font-weight:620; line-height:1.66; }
.internship-case__proof { display:grid; gap:2.5rem; }
.internship-case h4 { margin:0 0 1rem; color:var(--pink); font-size:1.3rem; }
.internship-case__proof p,.internship-case__body p { max-width:52em; margin:0; font-size:1.08rem; line-height:1.8; }
.action-sequence { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; list-style:none; padding:0; margin:0; }
.action-sequence li { display:block; padding:1.2rem 1.2rem 1.35rem; border-top:2px solid var(--pink); background:rgba(255,255,255,.04); }
.action-sequence__number { display:block; margin-bottom:1rem; font-size:1.7rem; line-height:1; color:var(--pink); font-weight:650; font-variant-numeric:tabular-nums; }
.internship-case__body { display:grid; grid-template-columns:1fr; gap:1.8rem; margin-top:2.5rem; padding-top:1.8rem; border-top:1px solid rgba(255,255,255,.2); }
.internship-case__pending { padding:1.5rem; color:var(--ink-muted); background:var(--paper); }
.internship-case__evidence { width:100%; margin-top:1rem; }
.internship-case__evidence img { aspect-ratio:16/9; }
@media (hover:hover) and (pointer:fine) {
  .station-badge:hover { filter:brightness(1.03); }
}
@media (max-width:1000px) {
  .station-collage { min-height:28rem; }
  .station-badge { padding:1.1rem; }
}
@media (max-width:700px) {
  .station-collage { min-height:0; height:30rem; width:100%; max-width:30rem; margin:auto; }
  .station-collage__bag { width:48%; left:26%; top:27%; }
  .station-badge { padding:.85rem; min-height:11.5rem; width:45%; height:40%; }
  .station-badge__top { font-size:.67rem; letter-spacing:.02em; }
  .station-badge__identity { flex-direction:column; align-items:flex-start; gap:.35rem; }
  .station-badge__logo { width:2.6rem; height:2.6rem; }
  .station-badge strong { font-size:clamp(1.45rem,5vw,1.9rem); }
  .station-badge small { font-size:.78rem; }
  .station-badge--1 { transform:rotate(-2deg); }
  .station-badge--2 { right:2%; transform:rotate(2deg); }
  .station-badge--3 { left:2%; transform:rotate(2deg); }
  .station-badge--4 { transform:rotate(-2deg); }
  .internship-case { padding-bottom:4rem; }
  .internship-case__lead { grid-template-areas:"head" "photo" "decision"; grid-template-columns:1fr; grid-template-rows:auto; gap:1.5rem; }
  .internship-case__portrait { width:min(82%,19rem); justify-self:end; }
  .internship-case + .internship-case { padding-top:2rem; }
  .internship-case__decision { padding:1.1rem 1.2rem 1.25rem; }
  .action-sequence { grid-template-columns:1fr; }
  .internship-case__body { grid-template-columns:1fr; }
}
