.tribute-page{width:min(100% - 3rem,76rem);margin:0 auto;padding:3rem 0 6rem}.tribute-intro{max-width:49rem;padding:0 0 3rem}.tribute-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:2.5rem;color:var(--muted-strong,#474d5e);text-underline-offset:5px}.tribute-intro h1{font-size:clamp(2.25rem,6vw,5.5rem);line-height:1.08;letter-spacing:-.045em;font-weight:400;margin:1rem 0 1.8rem;text-wrap:balance}.tribute-family{display:inline-flex;align-items:baseline;gap:.16em;white-space:nowrap}.tribute-inline-wordmark{display:inline-block;flex:0 0 auto;width:2.32em;height:auto;aspect-ratio:591.75/196.55;align-self:center;transform:translateY(.025em)}.tribute-dedication{font-size:clamp(1.5rem,3.2vw,2.25rem);line-height:1.35;max-width:34ch;margin:0 0 1.3rem}.tribute-intro-note{color:var(--muted-strong,#474d5e);max-width:52ch;font-size:1.1rem;line-height:1.65}.tribute-experience{border:1px solid var(--rule,#d6c9af)}.tribute-media{background:#17191c}.tribute-media img,.tribute-media video{width:100%;max-height:74vh;height:auto;display:block;object-fit:contain}.tribute-media video{aspect-ratio:16/9}.tribute-launcher{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem 2rem}.tribute-launcher p{margin:.35rem 0}.tribute-launcher>div:first-child{max-width:38ch}.tribute-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.tribute-page .button{min-width:44px;min-height:44px;padding:.75rem 1.1rem;border-radius:6px;border-color:var(--teal,#006b78);box-shadow:0 0 0 1px color-mix(in srgb,var(--teal,#006b78) 9%,transparent),0 0 14px color-mix(in srgb,var(--teal,#006b78) 12%,transparent);cursor:pointer;font:inherit;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.tribute-page .button:hover:not(:disabled){box-shadow:0 0 0 1px color-mix(in srgb,var(--teal,#006b78) 18%,transparent),0 0 16px color-mix(in srgb,var(--teal,#006b78) 20%,transparent)}.tribute-page .button:disabled{opacity:.45;cursor:not-allowed}.tribute-back:focus-visible,.tribute-page .button:focus-visible{outline:3px solid var(--focus,#115bcd);outline-offset:4px}.tribute-detail{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:3.5rem;margin-top:5rem}.tribute-detail h2{font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:1.15;margin:1rem 0 1.5rem}.tribute-detail p{line-height:1.7}.tribute-detail figure{margin:0}.tribute-detail img{display:block;width:100%;height:auto}.tribute-caption,.tribute-detail figcaption{color:var(--muted-strong,#474d5e);font-size:.9rem;line-height:1.6}.tribute-detail figcaption{padding-top:.75rem}.tribute-studio{color:#f5eee1;background:#17191c}.tribute-studio:focus{outline:none}.tribute-studio .button{color:#f5eee1;border:1px solid #638d89;border-radius:6px;background:#25272b;box-shadow:0 0 0 1px rgba(118,214,203,.07),0 0 14px rgba(118,214,203,.11)}.tribute-studio .button:hover:not(:disabled),.tribute-studio .button[aria-pressed=true]{border-color:#9ce8dd;background:#28403f;box-shadow:0 0 0 1px rgba(118,214,203,.12),0 0 16px rgba(118,214,203,.18)}.tribute-studio .button:focus-visible{outline-color:#aee8e2}.tribute-studio .eyebrow{color:#d7c5a5}.tribute-studio-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 1.5rem 0}.tribute-studio-heading p{margin:.25rem 0}.tribute-studio-instruction{color:#c7c9ce;font-size:.9rem}.tribute-canvas{position:relative;height:clamp(24rem,58vw,39rem);min-height:24rem;isolation:isolate}.tribute-canvas canvas{touch-action:none}.tribute-loading{position:absolute;inset:0;display:grid;place-items:center;padding:2rem;text-align:center;color:#f5eee1;background:#17191c;z-index:1;pointer-events:none}.tribute-experience>.tribute-loading{position:relative;min-height:28rem}.tribute-error{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;gap:1rem}.tribute-error p{max-width:45ch}.tribute-view-controls{display:flex;flex-wrap:wrap;gap:.6rem;padding:0 1.5rem 1rem}.tribute-studio-footnote{padding:0 1.5rem 1.5rem;margin:0;color:#c7c9ce;font-size:.85rem;line-height:1.5}@media (max-width:700px){.tribute-page{width:min(100% - 2rem,76rem);padding-top:1.5rem}.tribute-back{margin-bottom:1.5rem}.tribute-intro{padding-bottom:2rem}.tribute-launcher{flex-direction:column;align-items:flex-start;padding:1.2rem}.tribute-detail{grid-template-columns:1fr;gap:1.5rem;margin-top:3rem}.tribute-studio-heading{align-items:flex-start;padding:1rem}.tribute-studio-heading>.button{flex-shrink:0}.tribute-canvas{height:25rem;min-height:25rem}.tribute-view-controls{padding:0 1rem 1rem;gap:.5rem}.tribute-studio-footnote{padding:0 1rem 1rem}}@media (prefers-reduced-motion:reduce){.tribute-page .button{transition:none!important}}.tribute-detail img,.tribute-experience{border:1px solid var(--ui-edge);border-radius:var(--ui-radius-card);box-shadow:var(--ui-glow-card);transition:border-color var(--ui-transition),box-shadow var(--ui-transition)}.tribute-media{border-radius:11px 11px 0 0;overflow:hidden}.tribute-studio{border-radius:11px}.tribute-canvas,.tribute-canvas canvas{border-radius:var(--ui-radius-control)}.tribute-experience>.tribute-loading{border-radius:11px}.tribute-page .button,.tribute-studio .button{border-radius:var(--ui-radius-control);border-color:var(--ui-edge);box-shadow:var(--ui-glow-control);transition:border-color var(--ui-transition),box-shadow var(--ui-transition)}.tribute-studio{--ui-edge:#70bdb5;--ui-edge-active:#9ce8dd;--ui-glow-control:0 0 0 1px rgba(118,214,203,.32),0 0 18px rgba(47,211,196,.25);--ui-glow-control-active:0 0 0 1px rgba(118,214,203,.48),0 0 24px rgba(47,211,196,.34)}.tribute-experience:focus-within{border-color:var(--ui-edge-active);box-shadow:var(--ui-glow-card-active)}.tribute-page .button:focus-visible,.tribute-studio .button[aria-pressed=true]{border-color:var(--ui-edge-active);box-shadow:var(--ui-glow-control-active)}@media (hover:hover){.tribute-experience:hover{border-color:var(--ui-edge-active);box-shadow:var(--ui-glow-card-active)}.tribute-page .button:not(:disabled):hover,.tribute-studio .button:not(:disabled):hover{border-color:var(--ui-edge-active);box-shadow:var(--ui-glow-control-active)}}.tribute-page .button:disabled{box-shadow:none;border-color:var(--border)}@media (prefers-reduced-motion:reduce){.tribute-detail img,.tribute-experience,.tribute-page .button{transition:none!important;animation:none!important}}@media (forced-colors:active){.tribute-studio{--ui-edge:CanvasText;--ui-edge-active:Highlight;--ui-glow-control:none;--ui-glow-control-active:none}}