/* About exploration: people at a human scale, history in the narrative. */
.about-refinement #our-people .people-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:35px 24px}.about-refinement .person-card img{width:208px;max-width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%;border-radius:3px}.about-refinement .person-card h4{font-size:17px;margin:13px 0 5px}.about-refinement .person-card>p{font-size:12px;max-width:170px;line-height:1.5}.person-bio summary{font-size:11px;min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline;text-underline-offset:4px;list-style:none;color:#3b5c50}.person-bio summary::-webkit-details-marker{display:none}.person-bio p{font-size:13px;line-height:1.75;margin:15px 0}
#person-dialog{width:min(640px,calc(100% - 36px));max-height:85vh;overflow:auto;border:1px solid #b9c4b7;border-radius:6px;padding:42px;background:#f7f6f0;color:#20323b;box-shadow:0 25px 100px #07121850;margin:auto}#person-dialog::backdrop{background:#071218b0;backdrop-filter:blur(4px)}#person-dialog>button{display:block;margin:0 0 25px auto;border:0;background:none;padding:10px;font-size:13px;color:#32473d;min-height:44px}#person-dialog h2{font-size:42px;letter-spacing:-.05em;line-height:1.2;margin:12px 0 27px}.person-dialog-copy p{font-size:16px;line-height:1.9;margin:18px 0}
.about-refinement .about-story{border-top:1px solid #d8ddd2}.story-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:center}.story-copy h2{font-size:clamp(33px,3.4vw,48px);line-height:1.12;letter-spacing:-.045em;margin:0 0 28px}.story-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#55695e;margin:18px 0}.story-copy .text-link{font-size:13px;margin-top:12px}.history-logo{border-left:1px solid #c7d0c3;padding:15px 0 15px 40px;min-width:0}.history-logo>.eyebrow{font-size:9px;color:#697669}.history-logo .morph-stage{display:none;width:100%;height:180px;background:none;overflow:visible}.history-logo .morph-enhanced .morph-stage{display:block}.morph-fallback{display:flex;align-items:center;gap:10px;min-height:180px}.morph-fallback img:first-child{width:75%}.morph-fallback img:last-child{width:25%}.morph-enhanced .morph-fallback{display:none}.history-logo .transport{display:none;justify-content:flex-end;margin-top:-20px}.history-logo .morph-enhanced .transport{display:flex}.history-logo .transport button{background:none;border:0;border-radius:0;color:#5a7063;min-width:44px;min-height:44px;padding:9px 0;font-size:11px;text-decoration:underline;text-underline-offset:4px}.history-logo .status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.history-caption{font-size:12px!important;line-height:1.75;color:#6a776b;margin-top:10px}
@media(max-width:1050px){.about-refinement #our-people .people-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.story-layout{gap:45px}.history-logo{padding-left:25px}}
@media(max-width:650px){.about-refinement #our-people .people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}.about-refinement .person-card h4{font-size:15px}.about-refinement .person-card>p{font-size:11px}.story-layout{grid-template-columns:1fr;gap:35px}.history-logo{border-left:0;border-top:1px solid #c7d0c3;padding:25px 0 0;max-width:390px}.history-logo .morph-stage{height:155px}.morph-fallback{min-height:155px}#person-dialog{padding:24px}#person-dialog h2{font-size:34px}.person-dialog-copy p{font-size:15px}}
@media(max-width:360px){.about-refinement #our-people .people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* TIM-895 isolated full-team trial. Approved photos remain at rest and supply every visible person pixel. */
.about-refinement #our-people .people-grid{isolation:isolate}
.party-card{scroll-margin-top:160px;--party-bleed:48px}
.party-card .party-portrait{position:relative;display:block;width:208px;max-width:100%;aspect-ratio:4/5;border:0;border-radius:3px;padding:0;background:#f5f5f5;overflow:visible;cursor:pointer}
.party-card .party-portrait img{position:absolute;inset:0;width:100%;height:100%;background:transparent;pointer-events:none;transition:opacity 160ms ease}
.party-card .party-original{z-index:3}
/* Only generated alpha is used: faces, expressions, hair and clothes come from the unchanged approved RGB. */
.party-card .party-cutout{z-index:2;opacity:0;mask-image:var(--party-mask);mask-mode:alpha;mask-size:cover;mask-position:50% 30%;mask-repeat:no-repeat}
.party-card .party-backdrop{position:absolute;inset:0;overflow:hidden;border-radius:3px;opacity:0;background:radial-gradient(ellipse at 95% 15%,var(--party-b) 0%,transparent 60%),radial-gradient(ellipse at 0% 60%,var(--party-a) 0%,transparent 65%),linear-gradient(145deg,color-mix(in srgb,var(--party-a) 38%,#172334),color-mix(in srgb,var(--party-c) 48%,#223641) 70%,color-mix(in srgb,var(--party-b) 50%,#3e3547));transition:opacity 160ms ease}
.party-card .party-portrait::before{content:"";position:absolute;inset:calc(-1 * var(--party-bleed));z-index:-1;opacity:0;border-radius:48px;background:radial-gradient(ellipse at 15% 35%,color-mix(in srgb,var(--party-a) 55%,transparent),transparent 62%),radial-gradient(ellipse at 90% 30%,color-mix(in srgb,var(--party-b) 55%,transparent),transparent 62%),radial-gradient(ellipse at 70% 85%,color-mix(in srgb,var(--party-c) 45%,transparent),transparent 65%);mask-image:linear-gradient(90deg,transparent,#000 var(--party-bleed),#000 calc(100% - var(--party-bleed)),transparent),linear-gradient(transparent,#000 var(--party-bleed),#000 calc(100% - var(--party-bleed)),transparent);mask-composite:intersect;transition:opacity 160ms ease;pointer-events:none}
.party-card .party-beam{position:absolute;top:-20%;width:70%;height:140%;transform-origin:50% 0;clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);opacity:.6}
.party-card .party-beam-a{left:-20%;background:linear-gradient(#fff6,color-mix(in srgb,var(--party-a) 50%,transparent));transform:rotate(-25deg);--beam-start:-42deg;--beam-end:-25deg}
.party-card .party-beam-b{left:45%;background:linear-gradient(#fff9,color-mix(in srgb,var(--party-b) 50%,transparent));transform:rotate(25deg);--beam-start:42deg;--beam-end:25deg}
.party-card .party-beam-c{left:35%;background:linear-gradient(#fff5,color-mix(in srgb,var(--party-c) 50%,transparent));transform:rotate(-10deg);--beam-start:15deg;--beam-end:-10deg}
.party-card .party-sparks{position:absolute;inset:-16px;z-index:4;overflow:hidden;pointer-events:none;opacity:0;transition:opacity 160ms ease}
.party-card .party-sparks span{position:absolute;width:3px;height:6px;border-radius:1px;background:var(--party-b);transform:rotate(25deg)}
.party-card .party-sparks span:nth-child(1){left:8px;top:24%}
.party-card .party-sparks span:nth-child(2){left:12px;top:65%;background:var(--party-a)}
.party-card .party-sparks span:nth-child(3){right:9px;top:18%;background:var(--party-c)}
.party-card .party-sparks span:nth-child(4){right:12px;top:56%}
.party-card .party-sparks span:nth-child(5){left:32%;top:8px;background:var(--party-a)}
.party-card .party-sparks span:nth-child(6){right:12%;top:10px}
.party-card .party-sparks span:nth-child(7){left:8px;top:43%;width:5px;height:2px;background:var(--party-c)}
.party-card .party-sparks span:nth-child(8){right:8px;top:78%;width:5px;height:2px;background:var(--party-a)}
.party-card:focus-within .party-original{opacity:0}
.party-card:focus-within :is(.party-cutout,.party-backdrop,.party-sparks),.party-card:focus-within .party-portrait::before{opacity:1}
@media(hover:hover){
  .party-card:hover .party-original{opacity:0}
  .party-card:hover :is(.party-cutout,.party-backdrop,.party-sparks),.party-card:hover .party-portrait::before{opacity:1}
}
/* Three related light designs share the same finite reveal and readable foreground. */
.party-card[data-party-design="aurora"] .party-beam{clip-path:none;border-radius:50%;width:110%;height:65%;filter:blur(18px);opacity:.8}
.party-card[data-party-design="aurora"] .party-beam-a{top:30%;left:-55%;background:var(--party-a)}
.party-card[data-party-design="aurora"] .party-beam-b{top:-35%;left:10%;background:var(--party-b)}
.party-card[data-party-design="aurora"] .party-beam-c{top:60%;left:45%;background:var(--party-c)}
.party-card[data-party-design="spotlights"] .party-beam{clip-path:none;border-radius:50%;width:110%;height:85%;filter:blur(3px);opacity:.8}
.party-card[data-party-design="spotlights"] .party-beam-a{top:-20%;left:-45%;background:radial-gradient(ellipse,#fff7,var(--party-a) 24%,transparent 70%)}
.party-card[data-party-design="spotlights"] .party-beam-b{top:-10%;left:45%;background:radial-gradient(ellipse,#fff8,var(--party-b) 24%,transparent 70%)}
.party-card[data-party-design="spotlights"] .party-beam-c{top:55%;left:10%;background:radial-gradient(ellipse,#fff6,var(--party-c) 24%,transparent 70%)}
@media(prefers-reduced-motion:no-preference){
  .party-card.party-burst .party-beam{animation:party-beam-settle 3.6s ease-in-out both}
  .party-card.party-burst .party-sparks span{animation:party-spark-drift 3.6s ease-out both}
  .party-card[data-party-design="aurora"].party-burst .party-beam{animation-name:party-aurora-settle}
  .party-card[data-party-design="spotlights"].party-burst .party-beam{animation-name:party-spot-settle}
}
@keyframes party-beam-settle{0%{transform:rotate(var(--beam-start))}55%{transform:rotate(calc(var(--beam-end) + 12deg))}100%{transform:rotate(var(--beam-end))}}
@keyframes party-aurora-settle{from{transform:translate(-10%,8%) rotate(var(--beam-start))}to{transform:translate(0,0) rotate(var(--beam-end))}}
@keyframes party-spot-settle{from{transform:translate(10%,-12%) scale(.8)}to{transform:translate(0,0) scale(1)}}
@keyframes party-spark-drift{from{transform:translateY(calc((var(--spark) - 4)* -2px)) rotate(-35deg)}to{transform:translateY(0) rotate(25deg)}}
@media(prefers-reduced-motion:reduce){.party-card .party-portrait img,.party-card .party-backdrop,.party-card .party-sparks,.party-card .party-portrait::before{transition:none}}

/* Contain glow at the viewport edge; adjacent portraits remain above the decorative spill. */
@media(max-width:1100px){.party-card{--party-bleed:32px}}
@media(max-width:650px){.party-card{--party-bleed:24px}}
