/* Mission gallery V2 — concrete work, shown as a continuous editorial rail. */
.mission-gallery{--gallery-ink:#171a17;--gallery-red:#b7352d;--gallery-paper:#f4f2eb;background:#f4f2eb;color:var(--gallery-ink)}
.mission-gallery .gallery-layer{background:#f4f2eb}
.mission-gallery .gallery-track{background:#f4f2eb}
.mission-gallery .gallery-intro{width:45vw;border:0;text-align:left;align-items:flex-start;padding:10svh 5vw 9svh 7vw;background:linear-gradient(120deg,#efede5 0%,#faf9f4 100%)}
.mission-gallery .gallery-intro .section-label{margin:0 0 auto;color:var(--gallery-red)}
.mission-gallery .gallery-intro h2{font-size:clamp(58px,5.4vw,98px);line-height:.96;max-width:760px;letter-spacing:-.07em}
.mission-gallery .gallery-intro>p:not(.section-label){max-width:390px;margin:30px 0 0;color:#515651;font-size:17px;line-height:1.45}
.gallery-legend{display:flex;align-items:center;gap:13px;margin-top:auto;font:10px/1.2 monospace;letter-spacing:.08em}.gallery-legend i{width:56px;height:1px;background:var(--gallery-red);position:relative}.gallery-legend i:after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;border-radius:50%;background:var(--gallery-red)}

.mission-gallery .work-card.case-card{position:relative;width:72vw;padding:0!important;border-left:1px solid #2529212e;background:#e8e4da;display:grid;grid-template-rows:auto 1fr auto auto;overflow:hidden}
.mission-gallery .case-opportunity,.mission-gallery .case-people{background:#20231f!important;color:#eeece4}.mission-gallery .case-documents,.mission-gallery .case-content{background:#d7dbd1!important;color:#1b211d}
.case-head{display:flex;justify-content:space-between;align-items:center;padding:3.2svh 3.2vw;border-bottom:1px solid currentColor;font:10px/1 monospace;letter-spacing:.075em;opacity:.78}.case-head span:last-child{display:flex;align-items:center;gap:10px}.case-head i{display:block;width:6px;height:6px;background:var(--gallery-red);border-radius:50%;box-shadow:0 0 0 5px #b7352d20}
.case-body{min-height:0;display:grid;grid-template-columns:.82fr 1.18fr;gap:3vw;padding:4.6svh 3.2vw 3svh;align-items:center}
.case-copy{align-self:center}.case-kicker{font:10px/1.2 monospace;letter-spacing:.09em;color:var(--gallery-red);margin-bottom:2.4svh}.case-copy h3{font-size:clamp(48px,5.1vw,92px);line-height:.92;letter-spacing:-.07em;font-weight:400}.case-copy>p:last-child{font-size:15px;line-height:1.52;max-width:400px;margin-top:3svh;opacity:.72}
.case-flow{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid currentColor;border-bottom:1px solid currentColor}.case-flow>div{min-height:11svh;padding:1.7svh 1.5vw;border-right:1px solid currentColor;display:grid;grid-template-columns:26px 1fr;gap:4px 10px;align-content:center}.case-flow>div:last-child{border-right:0}.case-flow span{grid-row:1/3;color:var(--gallery-red);font:10px/1 monospace}.case-flow small{font:9px/1.2 monospace;letter-spacing:.055em;opacity:.58}.case-flow strong{font-size:13px;font-weight:400;line-height:1.25}
.case-link{justify-self:end;margin:1.4svh 3.2vw 1.6svh;background:none;border:0;color:inherit;font:11px/1.2 monospace;letter-spacing:.04em;cursor:pointer}.case-link span{color:var(--gallery-red);margin-left:24px}.case-link:hover,.case-link:focus-visible{color:var(--gallery-red)}

/* Opportunity: a dossier grows out of a field of signals. */
.opportunity-map{height:42svh;min-height:320px;position:relative;border:1px solid currentColor;background:radial-gradient(circle at 50% 50%,#b7352d16 0 1px,transparent 2px),linear-gradient(currentColor 1px,transparent 1px),linear-gradient(90deg,currentColor 1px,transparent 1px);background-size:100% 100%,42px 42px,42px 42px;background-position:center;overflow:hidden;color:#eeece4}.opportunity-map:before,.opportunity-map:after{content:"";position:absolute;inset:50% auto auto 50%;border:1px solid #ece9de33;border-radius:50%;transform:translate(-50%,-50%)}.opportunity-map:before{width:67%;aspect-ratio:1}.opportunity-map:after{width:38%;aspect-ratio:1}.map-orbit{position:absolute;left:17%;right:17%;top:50%;height:1px;background:#b7352d;transform:rotate(-11deg)}.node{position:absolute;width:9px;height:9px;border-radius:50%;background:#e9e5d8;box-shadow:0 0 0 8px #eee2}.node.n1{left:14%;top:31%}.node.n2{right:15%;top:60%}.node.n3{left:29%;bottom:17%;background:var(--gallery-red)}
.lead-file{position:absolute;left:50%;top:50%;width:46%;min-width:250px;aspect-ratio:1.25;background:#f4f0e5;color:#1c211c;transform:translate(-50%,-50%) rotate(-2deg);box-shadow:18px 20px 0 #0b0d0b55;padding:24px;display:flex;flex-direction:column}.lead-file:before{content:"";position:absolute;inset:8px;border:1px solid #252b2533}.lead-file small,.lead-file span{font:9px/1.2 monospace;letter-spacing:.06em}.lead-file strong{font-size:clamp(29px,3vw,54px);line-height:.9;letter-spacing:-.05em;margin:auto 0}.lead-file b{font:10px/1.2 monospace;color:var(--gallery-red);margin-top:14px}

/* Documents: sheets move through a visible exception. */
.paper-stack{height:42svh;min-height:320px;position:relative;perspective:1200px}.paper{position:absolute;width:62%;height:66%;left:19%;top:12%;padding:22px;background:#f3efe4;color:#1e241f;border:1px solid #272b253d;box-shadow:0 16px 30px #1b211d18;display:flex;justify-content:space-between;align-items:flex-start;font:9px/1.2 monospace;letter-spacing:.06em}.paper:after{content:"";position:absolute;left:22px;right:22px;top:70px;height:42%;background:repeating-linear-gradient(#4b504b55 0 1px,transparent 1px 17px)}.paper b{font-weight:400}.paper.p1{transform:translate(-15%,-7%) rotate(-6deg)}.paper.p2{transform:translate(5%,2%) rotate(2deg);border:2px solid var(--gallery-red)}.paper.p2 b{color:var(--gallery-red)}.paper.p3{transform:translate(16%,10%) rotate(7deg)}.reminder-strip{position:absolute;left:1%;right:1%;bottom:5%;padding:18px 20px;background:#b7352d;color:#fff;font:10px/1 monospace;letter-spacing:.055em;box-shadow:0 8px 22px #40252030}.reminder-strip i{float:right;font-style:normal;font-size:16px}

/* Recruitment: three recommendations remain comparable and explainable. */
.candidate-deck{height:42svh;min-height:320px;display:flex;align-items:center;justify-content:center;gap:1vw;perspective:1200px}.candidate{position:relative;width:29%;height:75%;background:#eeeae0;color:#202520;border:1px solid #2228;padding:19px;display:flex;flex-direction:column;box-shadow:0 18px 36px #0005}.candidate:nth-child(1){transform:translateY(7%) rotate(-5deg)}.candidate:nth-child(2){transform:translateY(-6%);border-color:var(--gallery-red)}.candidate:nth-child(3){transform:translateY(5%) rotate(5deg)}.candidate>span{width:44px;height:44px;border-radius:50%;border:1px solid #29302955;display:grid;place-items:center;font:11px monospace}.candidate strong{font-size:clamp(18px,1.6vw,30px);font-weight:400;margin:auto 0 18px}.candidate small{font:9px/1.8 monospace}.candidate b{position:absolute;right:15px;top:12px;color:var(--gallery-red);font:11px monospace}

/* Content: one source, several prepared outputs. */
.content-system{height:42svh;min-height:320px;position:relative;background:linear-gradient(90deg,currentColor 1px,transparent 1px),linear-gradient(currentColor 1px,transparent 1px);background-size:50px 50px}.content-system:before,.content-system:after{content:"";position:absolute;background:var(--gallery-red)}.content-system:before{left:18%;right:18%;top:50%;height:1px}.content-system:after{top:18%;bottom:18%;left:50%;width:1px}.master-brief{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-3deg);width:29%;aspect-ratio:.78;background:#eeeae0;color:#202520;border:1px solid #242924;padding:18px;display:flex;flex-direction:column;box-shadow:12px 14px 0 #0003}.master-brief small,.master-brief span{font:9px/1.2 monospace}.master-brief strong{font-size:clamp(24px,2.5vw,43px);line-height:.91;letter-spacing:-.05em;margin:auto 0}.master-brief span{color:var(--gallery-red)}.format{position:absolute;width:27%;padding:15px;background:#292d28;color:#f2eee4;border:1px solid #efebdf55;font:9px/1 monospace;letter-spacing:.05em}.format b{display:block;color:#bfc7ba;margin-top:9px;font-weight:400}.format.f1{left:3%;top:9%;transform:rotate(-2deg)}.format.f2{right:2%;top:13%;transform:rotate(3deg)}.format.f3{left:5%;bottom:10%;transform:rotate(2deg)}.format.f4{right:3%;bottom:8%;transform:rotate(-3deg)}

.mission-gallery .gallery-progress{color:#414640}.mission-gallery .gallery-progress b{background:var(--gallery-red)}

/* Short final handoff: the rail becomes a direction, then the mission chooser takes over. */
.gallery-question{background:#b7352d;color:#f4f1e8}.gallery-question .agent-pin{height:100%;position:relative;overflow:hidden}.gallery-question .agent-core{position:absolute;inset:0;width:auto;height:auto;opacity:1;mix-blend-mode:normal;transform-origin:left center;background:repeating-linear-gradient(90deg,transparent 0 8vw,#f2eee41b 8vw calc(8vw + 1px))}.gallery-question .agent-core i{position:absolute;left:6vw;right:6vw;height:1px;background:#f4f1e8}.gallery-question .agent-core i:nth-child(1){top:18%}.gallery-question .agent-core i:nth-child(2){top:50%}.gallery-question .agent-core i:nth-child(3){bottom:18%}.gallery-question .agent-label{position:absolute;left:7vw;top:7svh;padding:0;color:#f4f1e8;z-index:2}.gallery-question .agent-burst{font-size:clamp(76px,11.5vw,205px);line-height:.82;letter-spacing:-.075em;text-align:left;left:7vw!important;width:86vw!important;padding:0!important}.gallery-question .agent-bottom{left:7vw;right:7vw;bottom:6svh}.gallery-question .agent-bottom p{color:#f4f1e8}.gallery-question .line-link{color:#f4f1e8;border-color:#f4f1e888}

@media(prefers-reduced-motion:no-preference){
 .motion-ready .case-opportunity .map-orbit{animation:signal-scan 3.6s ease-in-out infinite alternate}.motion-ready .case-opportunity .node{animation:node-pulse 2.2s ease-in-out infinite}.motion-ready .case-opportunity .n2{animation-delay:.5s}.motion-ready .case-opportunity .n3{animation-delay:1s}
 .motion-ready .case-documents .reminder-strip{animation:reminder-shift 3s ease-in-out infinite alternate}.motion-ready .case-people .candidate:nth-child(2){animation:candidate-focus 2.8s ease-in-out infinite alternate}.motion-ready .case-content .format{animation:format-breathe 3.1s ease-in-out infinite alternate}.motion-ready .case-content .f2{animation-delay:.45s}.motion-ready .case-content .f3{animation-delay:.9s}.motion-ready .case-content .f4{animation-delay:1.35s}
 @keyframes signal-scan{to{transform:rotate(7deg)}}@keyframes node-pulse{50%{box-shadow:0 0 0 14px #eee0}}@keyframes reminder-shift{to{transform:translateX(2.5%)}}@keyframes candidate-focus{to{transform:translateY(-9%) scale(1.035)}}@keyframes format-breathe{to{filter:brightness(1.22);translate:0 -5px}}
}

@media(min-width:901px) and (prefers-reduced-motion:no-preference){
 .full-motion .mission-gallery .gallery-intro{width:45vw!important;padding:9svh 5vw 7svh 7vw}
 .full-motion .mission-gallery .work-card.case-card{width:72vw!important;padding:0!important}
}
@media(max-height:760px) and (min-width:901px){.case-body{padding-top:3svh;padding-bottom:2svh}.case-copy h3{font-size:8vh}.opportunity-map,.paper-stack,.candidate-deck,.content-system{height:38svh;min-height:250px}.case-flow>div{min-height:10svh}.case-copy>p:last-child{font-size:13px;margin-top:2svh}}
@media(max-width:900px),(prefers-reduced-motion:reduce){
 .mission-gallery .gallery-intro{width:auto;padding:75px 6vw!important;min-height:75svh}.mission-gallery .gallery-intro h2{font-size:clamp(52px,10vw,78px)}.gallery-legend{margin-top:55px}
 .mission-gallery .work-card.case-card{width:auto!important;min-height:0;padding:0!important;margin:0!important}.case-body{grid-template-columns:1fr;padding:60px 6vw 45px}.case-copy{max-width:680px}.case-copy h3{font-size:clamp(52px,9vw,80px)}.case-copy>p:last-child{margin-bottom:45px}.opportunity-map,.paper-stack,.candidate-deck,.content-system{height:48vw;min-height:360px}.case-flow{grid-template-columns:1fr}.case-flow>div{min-height:86px;padding:20px 6vw;border-right:0;border-bottom:1px solid currentColor}.case-flow>div:last-child{border-bottom:0}.case-link{margin:24px 6vw 28px}.gallery-question{min-height:82svh!important;height:82svh!important}.gallery-question .agent-pin{height:100%}.gallery-question .agent-burst{position:absolute;top:50%;transform:translateY(-50%);font-size:13vw}.gallery-question .agent-bottom{bottom:6svh}
}
@media(max-width:600px){
 .case-head{padding:24px 6vw}.case-head span:last-child{font-size:0}.case-head span:last-child i{margin-left:auto}.case-body{padding-top:45px}.case-copy h3{font-size:52px}.opportunity-map,.paper-stack,.candidate-deck,.content-system{height:390px;min-height:0}.lead-file{width:68%;min-width:0}.candidate-deck{gap:5px}.candidate{width:32%;height:67%;padding:11px}.candidate strong{font-size:15px}.candidate small{font-size:7px}.master-brief{width:43%}.format{width:35%;font-size:7px}.gallery-question .agent-label{top:45px;right:6vw}.gallery-question .agent-burst{font-size:14vw}.gallery-question .agent-bottom{display:block}.gallery-question .agent-bottom p{max-width:none}.gallery-question .agent-bottom .line-link{max-width:none;margin-top:22px}
}
