/* Inkwell Seal owns this page. Shared chrome, type, focus and film playback retain one owner. */
.theme-inkwell-seal {
  --seal-night: #0b1120;
  --seal-night-soft: #111b30;
  --seal-paper: #f3eee5;
  --seal-paper-high: #fffdf8;
  --seal-ink: #17233c;
  --seal-muted: #596174;
  --seal-gold: var(--brass);
  --color-ink: var(--seal-paper);
  --color-ink-muted: #c4c7d0;
  --color-accent-2: var(--seal-gold);
  --color-surface-strong: var(--seal-night-soft);
  --color-line: rgba(191, 166, 115, .22);
  --accent-text: var(--brass-hi);
  --header-bg: rgba(11, 17, 32, .92);
  --footer-bg: var(--seal-night);
  --chrome-line: rgba(191, 166, 115, .2);
  --menu-base: var(--seal-night);
  --nav-link-color: #d3d3d8;
  --nav-link-hover-color: var(--seal-paper-high);
  --nav-link-hover-bg: rgba(191, 166, 115, .09);
  --nav-link-hover-border: rgba(191, 166, 115, .22);
  --nav-active-color: var(--seal-paper-high);
  --nav-active-bg: rgba(191, 166, 115, .1);
  --nav-active-border: rgba(191, 166, 115, .3);
  --chrome-rule-from: var(--brass-mid);
  --chrome-rule-to: var(--brass-hi);
  --focus-ring-color: var(--brass-hi);
  background: var(--seal-night);
}
.theme-inkwell-seal main { position: relative; background: var(--seal-night); }
.theme-inkwell-seal main::before,
.theme-inkwell-seal main::after { display: none; }
.theme-inkwell-seal:has(.seal-experience) main { margin-top: calc(-1 * var(--sticky-stack, 76px)); }
.seal-experience { isolation: isolate; }
.seal-hero {
  position: relative;
  min-height: 100svh;
  height: 100svh;
  overflow: clip;
  isolation: isolate;
  background: var(--seal-night);
}
.seal-hero::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(11, 17, 32, .74), rgba(11, 17, 32, .28) 32%, transparent 57%, rgba(11, 17, 32, .5) 82%, var(--seal-night)); }
.seal-hero__heading { position: absolute; z-index: 2; top: calc(var(--sticky-stack, 76px) + clamp(28px, 4svh, 56px)); left: 0; right: 0; text-align: left; }
.seal-back { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; margin-bottom: 18px; color: var(--brass-hi); font-size: var(--text-caption); text-decoration: underline 1px transparent; text-underline-offset: 6px; transition: color var(--motion-medium) var(--ease-standard), text-decoration-color var(--motion-medium) var(--ease-standard); }
.seal-back:is(:hover, :focus-visible) { color: var(--seal-paper-high); text-decoration-color: currentColor; }
.seal-back .icon { transition: translate var(--motion-medium) var(--ease-standard); }
.seal-back:is(:hover, :focus-visible) .icon { translate: -3px 0; }
.seal-hero h1 { margin: 0; font-size: clamp(3.2rem, 2rem + 5vw, 7rem); line-height: 1.05; letter-spacing: var(--track-title); }
.seal-hero__tagline { margin: 14px 0 0; color: var(--brass-hi); font-size: clamp(.95rem, .8rem + .35vw, 1.15rem); }
.seal-hero__media { position: absolute; inset: 0; z-index: 0; contain: paint; background: var(--seal-film-poster) center / cover no-repeat; }
.seal-hero__film { position: relative; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: 0; transition: opacity var(--motion-settle) var(--ease-standard); }
.seal-hero.is-cinematic-ready .seal-hero__film { opacity: 1; }
.seal-hero__foot { position: absolute; z-index: 2; inset: auto 0 clamp(24px, 4svh, 48px); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; }
.seal-discover, .seal-film-control { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 44px; padding: 10px 0; color: var(--seal-paper); font: inherit; font-size: var(--text-caption); text-decoration: underline 1px transparent; text-underline-offset: 6px; transition: color var(--motion-medium) var(--ease-standard), text-decoration-color var(--motion-medium) var(--ease-standard); }
.seal-discover { justify-self: start; }
.seal-discover .icon { transition: translate var(--motion-medium) var(--ease-standard); }
.seal-discover:is(:hover, :focus-visible) .icon { translate: 0 3px; }
.seal-film-control { justify-self: end; min-width: 86px; border: 0; border-radius: 0; background: none; cursor: pointer; }
.seal-film-control[hidden] { display: none; }
.seal-film-control:is(:hover, :focus-visible), .seal-discover:is(:hover, :focus-visible) { color: var(--brass-hi); text-decoration-color: currentColor; }
.seal-film-control:active { scale: .985; }
.seal-availability { margin: 0; font-size: var(--text-caption); color: var(--color-ink-muted); text-align: center; }
.seal-continuation {
  position: relative;
  isolation: isolate;
  background: linear-gradient(180deg, var(--seal-night), #15273a 25%, #4f5d6b 46%, #b4a58b 68%, #e7dcc5 86%, var(--seal-paper));
}
.seal-continuation::after { content: ""; position: absolute; inset: auto 0 0; height: clamp(110px, 18svh, 180px); pointer-events: none; z-index: 2; background: linear-gradient(transparent, var(--seal-night)); }
.seal-story__atmosphere { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.seal-story__atmosphere-window {
  position: sticky;
  top: var(--sticky-stack, 76px);
  height: calc(100svh - var(--sticky-stack, 76px));
  overflow: clip;
  contain: paint;
  opacity: 0;
  -webkit-mask-image: linear-gradient(transparent, #000 18%, #000 76%, transparent);
  mask-image: linear-gradient(transparent, #000 18%, #000 76%, transparent);
  transition: opacity var(--motion-settle) var(--ease-standard);
}
.seal-continuation[data-seal-art-ready] .seal-story__atmosphere-window { opacity: var(--seal-art-opacity, .72); }
.seal-continuation[data-seal-still] .seal-story__atmosphere { display: none; }
.seal-story__atmosphere :is(picture, img) { display: block; width: 100%; height: 100%; }
.seal-story__atmosphere img { object-fit: cover; object-position: center 70%; }
.seal-story {
  position: relative;
  z-index: 1;
  --color-ink: var(--seal-paper);
  --color-ink-muted: #d6d2c9;
  --accent-text: var(--brass-hi);
  --focus-ring-color: var(--brass-hi);
  color: var(--seal-paper);
  padding-top: clamp(112px, 18svh, 200px);
  min-height: 100svh;
  background: transparent;
  scroll-margin-top: 90px;
}
.seal-story__intro { text-align: center; }
.seal-story__intro .eyebrow { margin: 0 0 18px; color: var(--brass-hi); }
.seal-story h2 { max-width: 15ch; margin: 0 auto; color: var(--seal-paper); font-size: clamp(2.6rem, 1.6rem + 3.4vw, 5rem); }
.seal-story__runway { padding: 48px 0 var(--space-section); }
.seal-story__stage { --seal-object-width: 100%; width: min(100% - 40px, 1120px); margin-inline: auto; }
.seal-story__panels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(18px, 3vw, 42px); list-style: none; padding: 0; margin: 0; }
.seal-story__panel { min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 0; background: var(--seal-paper-high); border: 1px solid rgba(118, 91, 46, .22); box-shadow: 0 22px 54px rgba(4, 11, 22, .18); }
.seal-story__caption { display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; min-height: 54px; padding: 14px 20px; color: var(--seal-ink); }
.seal-story__caption span { color: #765b2e; font-size: var(--text-caption); }
.seal-story__caption h3 { margin: 0; color: var(--seal-ink); font-family: var(--font-text); font-size: 1rem; font-weight: var(--heading-weight); letter-spacing: var(--track-heading); }
.seal-paper { display: grid; place-items: center; position: relative; width: 100%; aspect-ratio: 1; padding: clamp(20px, 3vw, 44px); color: var(--seal-ink); background: var(--seal-paper-high); }
.seal-paper--message p { margin: 0; color: var(--seal-ink); text-align: center; font-family: var(--font-display); font-size: clamp(1.15rem, .8rem + 1.1vw, 1.85rem); line-height: 1.5; letter-spacing: var(--track-heading); }
.seal-paper__rule { position: absolute; bottom: 15%; left: calc(50% - 18px); width: 36px; height: 1px; background: var(--brass-mid); }
.seal-paper--code { padding: 18px; }
.seal-paper--code img { display: block; width: 100%; height: auto; max-width: 100%; }
.seal-story__notes { width: var(--seal-object-width); margin: 0 auto; padding: 18px 24px 22px; color: var(--seal-muted); background: var(--seal-paper-high); border: 1px solid rgba(118, 91, 46, .22); text-align: center; }
.seal-story__note, .seal-story__notice { margin: 0; color: var(--seal-muted); font-size: var(--text-caption); line-height: var(--leading-caption); }
.seal-story__notice { margin-top: 8px; font-size: var(--text-floor); }
.seal-story[data-seal-enhanced] .seal-story__runway { height: 300svh; padding-bottom: 0; }
.seal-story[data-seal-enhanced] .seal-story__stage { --seal-object-width: min(500px, calc(74svh - 160px), 100%); position: sticky; top: var(--sticky-stack, 76px); min-height: calc(100svh - var(--sticky-stack, 76px)); display: flex; flex-direction: column; justify-content: center; }
.seal-story[data-seal-enhanced] .seal-story__panels { display: grid; grid-template-columns: 1fr; width: var(--seal-object-width); margin-inline: auto; perspective: 1200px; }
.seal-story[data-seal-enhanced] .seal-story__panel { grid-area: 1 / 1; border-bottom: 0; box-shadow: none; transform: translate3d(0, var(--seal-shift, 0px), 0) rotateX(var(--seal-tilt, 0deg)) scale(var(--seal-scale, 1)); opacity: var(--seal-opacity, 1); transform-origin: center 40%; will-change: transform, opacity; }
.seal-story[data-seal-enhanced] .seal-story__notes { border-top: 0; box-shadow: 0 24px 46px rgba(4, 11, 22, .12); }
.seal-story[data-seal-enhanced] .seal-story__panel:not(:first-child) { --seal-opacity: 0; }
.seal-story[data-seal-enhanced] .seal-paper--message p { font-size: clamp(1.7rem, 4vw, 2.25rem); }
.seal-story[data-seal-enhanced] .seal-paper--code { padding: 24px; }
.seal-closing { --focus-ring-color: var(--seal-ink); position: relative; z-index: 1; display: grid; align-items: center; min-height: 100svh; color: var(--seal-ink); background: transparent; padding: var(--space-section) 0 calc(var(--space-section) + clamp(110px, 18svh, 180px)); text-align: center; }
.seal-closing__inner { display: flex; flex-direction: column; align-items: center; }
.seal-closing__mark { display: block; object-fit: contain; border-radius: var(--radius-lg); margin-bottom: 30px; }
.seal-closing h2 { margin: 0; color: var(--seal-ink); font-size: clamp(2.3rem, 1.5rem + 2.7vw, 4rem); line-height: 1.17; }
.seal-closing p { margin: 26px 0 0; color: var(--seal-ink); }
.seal-closing .seal-closing__availability { margin-top: 10px; color: var(--seal-muted); font-size: var(--text-caption); }
.seal-policy-links { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; column-gap: 28px; row-gap: 6px; margin-top: 38px; }
.seal-policy-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: var(--text-caption); color: var(--seal-ink); background: linear-gradient(var(--brass-lo), var(--brass-lo)) left calc(50% + 11px) / 0 1px no-repeat; transition: color var(--motion-medium) var(--ease-standard), background-size var(--motion-medium) var(--ease-standard); }
.seal-policy-links a:is(:hover, :focus-visible) { color: #765b2e; background-size: 100% 1px; }
.legal-inkwell-seal .legal-document {
  --color-ink: var(--seal-ink);
  --color-ink-muted: var(--seal-muted);
  --color-accent: var(--brass-mid);
  --color-accent-2: var(--brass);
  --color-surface-strong: var(--seal-paper-high);
  --color-line: rgba(118, 91, 46, .2);
  --accent-text: #765b2e;
  --focus-ring-color: var(--seal-ink);
  color: var(--seal-ink);
  background: var(--seal-paper);
}
@media (max-width: 760px) {
  .seal-hero__heading { top: calc(var(--sticky-stack, 76px) + 28px); }
  .seal-hero h1 { font-size: clamp(2.8rem, 9.8vw, 4.4rem); }
  .seal-back { margin-bottom: 14px; }
  .seal-hero__foot { grid-template-columns: 1fr 1fr; row-gap: 8px; }
  .seal-availability { grid-column: 1 / -1; grid-row: 1; }
  .seal-discover { grid-column: 1; grid-row: 2; }
  .seal-film-control { grid-column: 2; grid-row: 2; }
  .seal-story__panels { grid-template-columns: 1fr; gap: 50px; width: min(380px, 100%); margin-inline: auto; }
  .seal-paper--message p { font-size: clamp(1.45rem, 5vw, 2rem); }
  .seal-story[data-seal-enhanced] .seal-story__stage { --seal-object-width: min(400px, calc(74svh - 160px), 100%); }
}
@media (max-aspect-ratio: 1/1) {
  .seal-hero__media { background: var(--seal-night); }
  .seal-hero__media::before { content: ""; position: absolute; inset: -30px; background: var(--seal-film-poster) center / cover no-repeat; filter: blur(24px); opacity: .86; }
  .seal-hero__film {
    --seal-picture-half: 42.1875vw; /* half of a 16:9 picture drawn at150vw */
    --seal-picture-feather: clamp(28px, 10vw, 88px);
    width: 150%; max-width: none; margin-left: -25%; object-fit: contain;
    -webkit-mask-image: linear-gradient(transparent calc(50% - var(--seal-picture-half)), #000 calc(50% - var(--seal-picture-half) + var(--seal-picture-feather)), #000 calc(50% + var(--seal-picture-half) - var(--seal-picture-feather)), transparent calc(50% + var(--seal-picture-half)));
    mask-image: linear-gradient(transparent calc(50% - var(--seal-picture-half)), #000 calc(50% - var(--seal-picture-half) + var(--seal-picture-feather)), #000 calc(50% + var(--seal-picture-half) - var(--seal-picture-feather)), transparent calc(50% + var(--seal-picture-half)));
  }
}
@media (max-height: 550px) {
  .seal-hero { min-height: 100svh; }
  .seal-hero__heading { top: calc(var(--sticky-stack, 76px) + 8px); }
  .seal-back { display: none; }
  .seal-hero h1 { font-size: clamp(2.4rem, 5vw, 3.3rem); }
  .seal-hero__tagline { margin-top: 8px; }
  .seal-hero__foot { bottom: 14px; }
  .seal-story { padding-top: 68px; }
}
@media (prefers-reduced-motion: reduce) {
  .seal-hero__film, .seal-back, .seal-discover, .seal-film-control, .seal-back .icon, .seal-discover .icon, .seal-policy-links a { transition: none; }
  .seal-back:is(:hover, :focus-visible) .icon, .seal-discover:is(:hover, :focus-visible) .icon { translate: none; }
  .seal-story__atmosphere { display: none; }
}
@media (forced-colors: active) {
  .seal-hero, .seal-continuation, .seal-story, .seal-closing, .seal-paper, .seal-story__panel, .seal-story__notes { color: CanvasText; background: Canvas; }
  .seal-story__atmosphere, .seal-continuation::after { display: none; }
  .seal-hero__media { background: none; }
  .seal-hero__media::before, .seal-hero::after { display: none; }
  .seal-hero__tagline, .seal-availability, .seal-story__intro .eyebrow, .seal-story h2, .seal-story__caption, .seal-story__caption h3, .seal-story__caption span, .seal-story__note, .seal-story__notice, .seal-closing h2, .seal-closing p, .seal-closing .seal-closing__availability { color: CanvasText; }
  .seal-back, .seal-discover, .seal-policy-links a, .seal-film-control { color: LinkText; }
  .seal-paper, .seal-story__panel, .seal-story__notes { border-color: CanvasText; box-shadow: none; }
  .seal-paper__rule { background: CanvasText; }
  .legal-inkwell-seal .legal-document { color: CanvasText; background: Canvas; }
}
@media print {
  .legal-inkwell-seal main { background: #fff; }
  .theme-inkwell-seal:has(.seal-experience) main { margin-top: 0; }
  .seal-hero__media, .seal-hero__foot, .seal-back { display: none; }
  .seal-story__atmosphere, .seal-continuation::after { display: none; }
  .seal-hero::after { display: none; }
  .seal-hero, .seal-continuation, .seal-story, .seal-closing, .seal-paper, .seal-story__panel, .seal-story__notes { display: block; height: auto; min-height: 0; color: #000; background: #fff; box-shadow: none; }
  .seal-hero__heading { position: static; }
  .seal-story[data-seal-enhanced] .seal-story__runway { height: auto; }
  .seal-story[data-seal-enhanced] .seal-story__stage { display: block; position: static; min-height: 0; }
  .seal-story[data-seal-enhanced] .seal-story__panels { grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; }
  .seal-story[data-seal-enhanced] .seal-story__panel { grid-area: auto; transform: none; opacity: 1; }
}
