/* Signal Editions: selected by Ethan. Loaded exclusively on inner routes.
   White product stages, confident indigo, ink type. The artefacts keep their
   own visual contracts; this stylesheet styles the portfolio around them. */
[data-design="editions"] {
  --edition-indigo: var(--edition-palette-indigo);
  --edition-white: var(--edition-palette-white);
  --edition-secondary: var(--edition-palette-on-indigo-secondary);
  --edition-line: var(--edition-palette-on-indigo-rule);
  --ground: var(--edition-palette-white);
  --paper: var(--edition-palette-white);
  --paper-2: var(--edition-palette-paper-tint);
  --paper-3: var(--edition-palette-paper-raised);
  --ink: var(--edition-palette-ink);
  --ink-2: var(--edition-palette-ink-secondary);
  --graphite: var(--edition-palette-ink-quiet);
  --accent: var(--edition-palette-indigo);
  --accent-2: var(--edition-palette-link-hover);
  --accent-soft: var(--edition-palette-selection);
  --accent-line: var(--edition-palette-selection-rule);
  --accent-ink: var(--edition-palette-white);
  --rule: var(--edition-palette-rule);
  --rule-soft: var(--edition-palette-rule-soft);
  --rule-strong: var(--edition-palette-rule-strong);
  --focus: var(--edition-palette-indigo);
  --container: 1400px;
  --wide: 1520px;
  --gutter: clamp(22px, 5vw, 72px);
  --t-page: clamp(2.75rem, 5vw, 4.75rem);
  --t-section: clamp(1.75rem, 3vw, 2.75rem);
  --edition-body: 1rem;
  background: var(--ground);
  color: var(--ink);
  caret-color: var(--accent);
  scrollbar-color: var(--rule-strong) var(--ground);
}
[data-theme="dark"] [data-design="editions"] {
  --ground: var(--edition-palette-dark-ground);
  --paper: var(--edition-palette-dark-paper);
  --paper-2: var(--edition-palette-dark-tint);
  --paper-3: var(--edition-palette-dark-raised);
  --ink: var(--edition-palette-dark-ink);
  --ink-2: var(--edition-palette-dark-secondary);
  --graphite: var(--edition-palette-dark-quiet);
  --accent: var(--edition-palette-dark-link);
  --accent-2: var(--edition-palette-dark-hover);
  --accent-soft: var(--edition-palette-dark-selection);
  --accent-line: var(--edition-palette-dark-selection-rule);
  --accent-ink: var(--edition-palette-dark-paper);
  --rule: var(--edition-palette-dark-rule);
  --rule-soft: var(--edition-palette-dark-rule-soft);
  --rule-strong: var(--edition-palette-dark-rule-strong);
  --focus: var(--edition-palette-dark-focus);
}
[data-design="editions"] .masthead { background: var(--ground); backdrop-filter: none; border-color: var(--rule); }
[data-design="editions"] .masthead > .wrap { min-height: 86px; }
[data-design="editions"] .namemark { font-size: 1.0625rem; letter-spacing: -.03em; }
[data-design="editions"] .glyph { width: 24px; height: 24px; }
[data-design="editions"] .nav a { border-radius: 4px; }
[data-design="editions"] .nav a[aria-current] { color: var(--accent); }
[data-design="editions"] .sitefoot { background: var(--paper-2); border-top: 1px solid var(--rule); margin-top: 64px; }
[data-design="editions"] .sitefoot > .wrap { padding-block: 42px; }
[data-design="editions"] .pagehead,
[data-design="editions"] .casehead,
[data-design="editions"] .ds-heading,
[data-design="editions"] .concept-gallery #browse > .intro {
  background: var(--edition-indigo); color: var(--edition-white);
  padding: clamp(30px, 4vw, 60px); margin-block: 32px 48px; border-radius: 12px;
  --ink: var(--edition-palette-white); --ink-2: var(--edition-palette-on-indigo-secondary); --graphite: var(--edition-palette-on-indigo-secondary);
  --accent: var(--edition-palette-white); --accent-2: var(--edition-palette-on-indigo-secondary); --focus: var(--edition-palette-white);
  --rule: var(--edition-palette-on-indigo-rule); --rule-soft: var(--edition-palette-on-indigo-rule);
}
[data-design="editions"] :is(.pagehead,.casehead,.ds-heading) h1 {
  font-size: clamp(2.75rem, 5vw, 4.75rem); font-weight: 550; line-height: 1.06; letter-spacing: -.035em;
}
[data-design="editions"] :is(.pagehead,.casehead,.ds-heading) :is(.lede,.eyebrow,.case-tagline,.case-role,.ds-lede) { color: var(--edition-secondary); }
[data-design="editions"] :is(.pagehead,.casehead,.ds-heading) .lede { max-width: 65ch; margin-top: 24px; font-size: clamp(1rem, 1.5vw, 1.1875rem); }
[data-design="editions"] :is(.pagehead,.casehead,.ds-heading) a { color: var(--edition-white); text-decoration-color: var(--edition-line); }
[data-design="editions"] :is(.pagehead,.casehead) .chip { background: transparent; color: var(--edition-white); border-color: var(--edition-line); }
[data-design="editions"] .pagehead .eyebrow { margin-bottom: 18px; }
[data-design="editions"] .section { padding-block: clamp(42px, 5vw, 72px); }
[data-design="editions"] .row { padding-block: 24px; border-color: var(--rule); }
[data-design="editions"] .row h3 { font-size: 1.25rem; }
[data-design="editions"][data-page="process"] .row h3 { font-size: var(--t-heading); }
[data-design="editions"] .row .sub { max-width: 75ch; }
[data-design="editions"] .case-layout { grid-template-columns: 200px minmax(0, 1fr); gap: 55px; }
[data-design="editions"] .rung { padding-block: 44px; }
[data-design="editions"] .rung-n { display: none; }
[data-design="editions"] .case-toc .toc a { padding-block: 12px; }
[data-design="editions"] .case-toc .n { color: var(--accent); }
[data-design="editions"] .rung > h2 { margin-bottom: 24px; }
[data-design="editions"] .plain > div { padding-block: 20px; }
[data-design="editions"] .study { gap: 32px; }
[data-design="editions"] .rung .prose, [data-design="editions"] .study-item p { max-width: 72ch; }
[data-design="editions"] .concept-gallery #browse > .intro { margin-top: 32px; }
[data-design="editions"] .concept-gallery .intro :is(h1,h1 span,.intro-copy p,.intro-copy a) { color: var(--edition-white); }
[data-design="editions"] .concept-gallery .intro .intro-copy .muted { color: var(--edition-secondary); }
[data-design="editions"] .ds-heading .ds-primary { background: var(--edition-white); color: var(--edition-indigo); }
[data-design="editions"] .about .about-intro { font-family: var(--ui); }
[data-design="editions"] .about-body { padding-block: 40px; }
/* Engineering retains exactly four vertical film rows and the full text index. */
.edition-banner { background: var(--edition-indigo); color: var(--edition-white); --focus: var(--edition-palette-white); }
.edition-gallery-opening { padding-block: 56px; display: flex; justify-content: space-between; align-items: center; gap: 60px; }
.edition-gallery-opening h1 { font-size: clamp(3.25rem, 6.5vw, 6rem); line-height: 1.04; letter-spacing: -.035em; font-weight: 550; }
.edition-gallery-opening p { font-size: 1.125rem; line-height: 1.6; color: var(--edition-secondary); margin-top: 28px; }
.edition-seal { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; transform: rotate(-8deg); margin-right: 30px; }
.edition-seal a { display: grid; place-items: center; padding: 20px; background: var(--edition-white); border-radius: 15px; transition: transform 220ms var(--ease-out); }
.edition-seal img { width: 94px; height: 94px; }
.edition-seal a:focus-visible { outline-offset: 6px; }
[data-design="editions"] .flagship-gallery { padding-block: 0; }
[data-design="editions"] .flagship-gallery-head { padding-top: 28px; padding-bottom: 0; margin-bottom: 0; }
[data-design="editions"] .flagship-gallery-head h2 { font-size: 1rem; font-weight: 500; }
[data-design="editions"] .flagship-gallery-head p { font-size: .8125rem; }
[data-design="editions"] .flagship-feature { grid-template-columns: minmax(0, 1fr) 330px; gap: 44px; align-items: center; padding-block: 52px; border-color: var(--rule); }
[data-design="editions"] .flagship-feature:first-child { border-top: 0; }
[data-design="editions"] .flagship-player video { border: 0; border-radius: 8px; }
[data-design="editions"] .flagship-detail { background: var(--edition-indigo); color: var(--edition-white); border-radius: 12px; padding: 28px; max-width: none; --focus: var(--edition-palette-white); }
.edition-project-identity { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 22px; }
.edition-project-identity img { background: var(--edition-white); width: 56px; height: 56px; border-radius: 10px; padding: 7px; }
[data-design="editions"] .flagship-detail .flagship-number { margin: 0; }
[data-design="editions"] .flagship-detail :is(.flagship-number,.flagship-number span,.flagship-summary,.flagship-written) { color: var(--edition-secondary); }
[data-design="editions"] .flagship-detail :is(h3,.flagship-tagline,.flagship-link) { color: var(--edition-white); }
[data-design="editions"] .flagship-detail h3 { font-size: 2.75rem; letter-spacing: -.035em; }
[data-design="editions"] .flagship-tagline { font-size: 1.375rem; line-height: 1.25; margin-top: 18px; }
[data-design="editions"] .flagship-summary { font-size: .9375rem; }
[data-design="editions"] .flagship-link { width: 100%; justify-content: space-between; padding-block: 14px; border-bottom: 1px solid var(--edition-line); text-decoration: none; }
[data-design="editions"] .flagship-written { text-decoration-color: var(--edition-line); }
/* Flagship opening and chapters. */
.edition-case-opening { display: grid; grid-template-columns: 1fr 1.5fr; gap: 60px; align-items: center; padding-block: 55px; }
.edition-mark { width: 86px; height: 86px; padding: 16px; background: var(--edition-white); border-radius: 18px; margin-bottom: 26px; }
.edition-case-title h1 { font-size: clamp(3.25rem, 5vw, 4.5rem); line-height: 1.04; letter-spacing: -.035em; font-weight: 550; }
.edition-case-title .edition-hook { font-size: clamp(1.375rem, 2vw, 1.75rem); line-height: 1.25; letter-spacing: -.025em; margin-block: 20px; color: var(--edition-white); }
.edition-case-title > p { font-size: .9375rem; line-height: 1.65; max-width: 52ch; color: var(--edition-secondary); }
.edition-back { display: inline-flex; min-height: 44px; align-items: center; color: var(--edition-secondary); text-decoration-color: var(--edition-line); font-size: .8125rem; margin-top: 14px; }
.edition-back:hover { color: var(--edition-white); }
.edition-film-stage { min-width: 0; }
.edition-film-stage .native-film { margin: 0; }
.edition-film-stage .native-film video { border: 0; border-radius: 8px; }
.edition-film-stage .native-film figcaption { color: var(--edition-secondary); font-size: .75rem; margin-top: 14px; }
.edition-film-chapters { display: flex; margin-top: 16px; overflow: hidden; background: var(--edition-white); border-radius: 5px; color: var(--edition-palette-ink); }
.edition-film-chapters button { flex: 1; display: flex; justify-content: space-between; align-items: center; gap: 8px; min-height: 48px; padding: 12px 16px; border-right: 1px solid var(--edition-palette-rule); font-size: .75rem; }
.edition-film-chapters button:last-child { border: 0; }
.edition-film-chapters button span { font-family: var(--mono); font-size: .6875rem; color: var(--edition-palette-ink-secondary); }
.edition-film-chapters button[aria-current="true"] { background: var(--edition-palette-selection); color: var(--edition-indigo); }
.edition-film-chapters button:focus-visible { outline: 3px solid var(--edition-indigo); outline-offset: -4px; border-radius: 0; }
.edition-case-chapters { display: flex; flex-wrap: wrap; gap: 30px; padding-block: 22px; border-bottom: 1px solid var(--rule); }
.edition-case-chapters a { color: var(--ink); font-size: .875rem; min-height: 44px; display: inline-flex; align-items: center; text-decoration: none; }
.edition-case-chapters a:hover { color: var(--accent); text-decoration: underline; }
.edition-story { display: grid; grid-template-columns: 1.5fr 1fr; gap: 36px 80px; padding-block: 70px 48px; }
.edition-story-controls { grid-column: 1 / -1; display: flex; width: fit-content; padding: 4px; border: 1px solid var(--rule); border-radius: 30px; }
.edition-story-controls button { min-height: 44px; padding: 10px 25px; font-size: .875rem; border-radius: 30px; }
.edition-story-controls button[aria-pressed="true"] { background: var(--ink); color: var(--ground); }
.edition-story-panels h2 { font-size: clamp(1.875rem, 3.2vw, 2.75rem); font-weight: 550; letter-spacing: -.03em; }
.edition-story-panels p { margin-top: 24px; font-size: clamp(1.125rem, 1.6vw, 1.375rem); line-height: 1.6; max-width: 65ch; }
.edition-story-panels > div + div:not([hidden]) { margin-top: 32px; }
.edition-story-controls:not([hidden]) + .edition-story-panels > div { margin-top: 0; }
.edition-value { border-left: 1px solid var(--rule); padding-left: 36px; }
.edition-value h2 { font-size: 1.875rem; line-height: 1.15; font-weight: 550; letter-spacing: -.03em; }
.edition-value p { margin-top: 24px; font-size: var(--edition-body); color: var(--ink-2); line-height: 1.65; }
.edition-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px; padding-block: 12px 64px; }
.edition-benefits > div { border-top: 1px solid var(--rule); padding-top: 24px; }
.edition-benefits h3 { font-size: 1.25rem; }
.edition-benefits p { margin-top: 14px; font-size: .9375rem; color: var(--ink-2); }
.edition-system { padding-block: 64px; border-top: 1px solid var(--rule); }
.edition-section-head { display: grid; grid-template-columns: 1fr 1.4fr; gap: 70px; margin-bottom: 36px; }
.edition-section-head h2, .edition-study h2 { font-size: clamp(1.875rem, 3vw, 2.75rem); line-height: 1.1; letter-spacing: -.03em; font-weight: 550; }
.edition-section-head p { color: var(--ink-2); line-height: 1.65; }
.edition-system .diagram-frame { border: 1px solid var(--rule); border-radius: 12px; overflow: auto; }
.edition-system .diagram { min-width: 680px; }
.edition-responsibilities { border-bottom: 1px solid var(--rule); }
.edition-responsibilities > summary, .edition-boundaries > summary { min-height: 48px; padding-block: 18px; cursor: pointer; font-weight: 550; }
.edition-system pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.edition-case-body > .native-film-text { margin-top: 0; }
.edition-case-body > .native-film-text ol { grid-template-columns: 1fr 1fr; gap: 30px 55px; padding-block: 24px; }
.edition-case-body > .native-film-text p { max-width: 70ch; }
.edition-reader { display: flex; flex-direction: column; gap: 10px; padding: 28px 0; }
.edition-reader span { color: var(--ink-2); font-size: .9375rem; }
.edition-study { display: grid; grid-template-columns: 1fr 1.4fr; gap: 70px; padding-block: 70px; }
.edition-role { margin-top: 24px; font-size: .875rem; color: var(--ink-2); max-width: 38ch; }
.edition-thesis { font-size: 1.375rem; line-height: 1.5; }
.edition-study > div > h3 { margin-block: 32px 14px; font-size: 1.125rem; }
.edition-study > div > p + p { margin-top: 16px; }
.edition-study > div > p:not(.edition-thesis) { font-size: var(--edition-body); line-height: 1.65; color: var(--ink-2); max-width: 70ch; }
.edition-boundaries { border-top: 1px solid var(--rule); margin-top: 32px; }
.edition-boundaries h3 { margin-block: 22px 12px; }
.edition-boundaries p { color: var(--ink-2); margin-bottom: 24px; }
.edition-next { padding-block: 32px; border-top: 1px solid var(--rule); display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.edition-next > a { display: flex; align-items: center; gap: 20px; min-height: 48px; color: var(--ink); text-decoration: none; font-size: .9375rem; }
.edition-next > a:last-child { font-size: 1.5rem; letter-spacing: -.025em; }
.edition-next svg { width: 22px; height: 22px; }
.edition-next img { background: var(--edition-palette-white-short); border-radius: 8px; padding: 5px; }
/* Exhibit's shell follows Editions; original component motion remains intact. */
[data-design="editions"] .exhibit-note { color: var(--ink-2); }
[data-design="editions"] .site > .site-main > .site-hero,
[data-design="editions"] .site .site-hero { background: var(--edition-indigo); color: var(--edition-palette-white-short); border-radius: 12px; padding: 40px; }
[data-design="editions"] .site .site-hero :is(h1,p) { color: inherit; }
[data-design="editions"] .site .site-hero h1 span { color: var(--edition-white); }
[data-design="editions"] .site .site-hero :is(.site-hero-note,.site-demo-caption),
[data-design="editions"] .site .site-hero :is(.site-hero-note,.site-demo-caption) > span { color: var(--edition-secondary); }
[data-design="editions"] .site .site-hero .site-button-primary { background: var(--edition-white); color: var(--edition-indigo); }
[data-design="editions"] .site .site-hero .site-demo-reset { color: var(--edition-white); }
[data-design="editions"] .gallery-header { background: var(--edition-indigo); color: var(--edition-white); padding: 30px; border-radius: 12px; border: 0; }
[data-design="editions"] .gallery-header :is(h1,h2,p,span) { color: inherit; }
[data-design="editions"] .gallery-header p { color: var(--edition-secondary); }
[data-design="editions"] .collection-switch button[aria-pressed="true"] { background: var(--edition-indigo); color: var(--edition-white); }
@media (hover: hover) and (pointer: fine) {
  .edition-seal a:hover { transform: rotate(8deg) translateY(-3px); }
  .edition-film-chapters button:hover { background: var(--edition-palette-selection); color: var(--edition-indigo); }
  .edition-story-controls button:not([aria-pressed="true"]):hover { background: var(--paper-3); }
  .edition-next a:hover { color: var(--accent); }
}
@media (max-width: 1100px) {
  [data-design="editions"] .masthead > .wrap { min-height: 74px; }
  [data-design="editions"] .nav a, [data-design="editions"] .nav button { padding-inline: 8px; font-size: .8125rem; }
  .edition-gallery-opening { gap: 35px; }
  .edition-seal { margin-right: 12px; gap: 14px; }
  .edition-seal a { padding: 14px; }
  .edition-seal img { width: 70px; height: 70px; }
  [data-design="editions"] .flagship-feature { grid-template-columns: minmax(0, 1fr) 280px; gap: 28px; }
  [data-design="editions"] .flagship-detail { padding: 24px; }
  .edition-case-opening { gap: 32px; }
  .edition-story, .edition-section-head, .edition-study { gap: 32px 45px; }
  .edition-film-chapters button { padding-inline: 10px; font-size: .6875rem; }
}
@media (max-width: 760px) {
  [data-design="editions"] { --gutter: 22px; }
  [data-design="editions"] .masthead > .wrap { min-height: 100px; padding-block: 10px; }
  [data-design="editions"] .nav a, [data-design="editions"] .nav button { min-height: 40px; padding-inline: 10px; }
  [data-design="editions"] :is(.pagehead,.casehead,.ds-heading), [data-design="editions"] .concept-gallery #browse > .intro { padding: 28px 22px; margin-block: 24px 32px; border-radius: 10px; }
  [data-design="editions"] :is(.pagehead,.casehead,.ds-heading) h1 { font-size: 2.75rem; }
  [data-design="editions"] .case-layout { display: block; }
  [data-design="editions"] .rung { padding-block: 32px; }
  .edition-gallery-opening { display: block; padding-block: 38px; }
  .edition-gallery-opening h1 { font-size: clamp(3rem, 11vw, 4rem); }
  .edition-gallery-opening p { font-size: 1rem; margin-top: 22px; }
  .edition-seal { display: flex; transform: none; gap: 12px; margin: 28px 0 0; }
  .edition-seal a { padding: 12px; border-radius: 10px; }
  .edition-seal img { width: 40px; height: 40px; }
  [data-design="editions"] .flagship-feature { grid-template-columns: minmax(0, 1fr); gap: 24px; padding-block: 30px 40px; }
  [data-design="editions"] .flagship-detail { padding: 24px; }
  [data-design="editions"] .flagship-detail h3 { font-size: 2.25rem; }
  .edition-project-identity { margin-bottom: 20px; }
  .edition-case-opening { display: block; padding-block: 35px; }
  .edition-mark { width: 65px; height: 65px; padding: 10px; margin-bottom: 20px; border-radius: 14px; }
  .edition-case-title h1 { font-size: 3.5rem; }
  .edition-case-title .edition-hook { font-size: 1.5rem; }
  .edition-film-stage { margin-top: 25px; }
  .edition-film-chapters button { font-size: .75rem; padding: 12px 10px; }
  .edition-film-chapters button span { font-size: .625rem; }
  .edition-case-chapters { gap: 2px 20px; padding-block: 15px; }
  .edition-case-chapters a { font-size: .8125rem; }
  .edition-story { display: block; padding-block: 40px 24px; }
  .edition-story-controls { margin-bottom: 28px; }
  .edition-story-panels p { font-size: 1.1875rem; }
  .edition-value { border-left: 0; border-top: 1px solid var(--rule); padding: 28px 0 0; margin-top: 32px; }
  .edition-value h2 { font-size: 1.75rem; }
  .edition-benefits { grid-template-columns: 1fr; gap: 28px; padding-bottom: 40px; }
  .edition-system { padding-block: 40px; }
  .edition-section-head, .edition-study { display: block; }
  .edition-section-head p { margin-top: 24px; }
  .edition-study { padding-block: 45px; }
  .edition-study > div + div { margin-top: 32px; }
  .edition-case-body > .native-film-text ol { grid-template-columns: 1fr; }
  .edition-next { flex-wrap: wrap; gap: 22px; }
  .edition-next > a:last-child { font-size: 1.25rem; }
}
@media (prefers-reduced-motion: reduce) {
  .edition-seal a { transition: none; }
  .edition-seal a:hover { transform: none; }
}
