/* Two Inks, Then Three: the Aviator colour regime study, as Humanitloop
   serves it. The upstream stylesheet with every rule rooted at this report's
   own body class, so none of it reaches another page. Plates are paper
   objects in both themes; the page around them changes. */

@font-face {
  font-family: "EB Garamond";
  src: url("/research/assets/fonts/eb-garamond-latin-wght-normal.woff2") format("woff2");
  font-weight: 400 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "EB Garamond";
  src: url("/research/assets/fonts/eb-garamond-latin-wght-italic.woff2") format("woff2");
  font-weight: 400 800; font-style: italic; font-display: swap;
}

.colour-regime-shell {
  /* plate paper and inks: fixed, because a plate is a printed object */
  --pl-paper: #e9e0d0;
  --pl-key: #2b2418;
  --pl-key-2: #6b5f4a;
  --pl-rule: #8c7e64;
  /* the film's two inks (measured poles, pulled toward paper) and era inks.
     Validated with the dataviz validator on #e9e0d0: all six checks pass. */
  --ink-P: #ad7b35;   /* prologue amber */
  --ink-E1: #00929c;  /* 1927-1930: the cool ink */
  --ink-E2: #ae5343;  /* 1935: the warm ink */
  --ink-E3: #6ea74f;  /* 1938: green restored */
  --ink-E4: #9d3a58;  /* 1940-1946: carmine */
  --ink-E5: #6486c5;  /* 1946-1947: slate blue */
  --ink-X: #8c8373;   /* embedded footage */

  /* page */
  --bg: #efe8da;
  --fg: #2b2418;
  --fg-2: #5e5341;
  --fg-3: #85796a;
  --rule: #cbbfa7;
  --link: #7a3b2c;
  --chip-bg: #e3d9c5;
  --measure: 40rem;
  --wide: 68rem;
}
/* The upstream sizes everything in rem against an 18px root. */
html:has(> body.colour-regime-shell) { font-size: 18px; scroll-padding-top: 1rem; }
@media (prefers-color-scheme: dark) {
  html:not([data-theme="light"]) .colour-regime-shell {
    --bg: #1d1a16; --fg: #ece3d2; --fg-2: #c3b8a3; --fg-3: #938875;
    --rule: #3d362d; --link: #e3a58d; --chip-bg: #2c2721;
  }

}
html[data-theme="dark"] .colour-regime-shell {
  --bg: #1d1a16; --fg: #ece3d2; --fg-2: #c3b8a3; --fg-3: #938875;
  --rule: #3d362d; --link: #e3a58d; --chip-bg: #2c2721;
}

.colour-regime-shell, .colour-regime-shell * { box-sizing: border-box; }
html:has(> body.colour-regime-shell) { background: var(--bg); }
body.colour-regime-shell {
  margin: 0; background: var(--bg); color: var(--fg);
  font-family: "EB Garamond", Garamond, "Iowan Old Style", Georgia, serif;
  font-variant-numeric: oldstyle-nums proportional-nums;
  line-height: 1.52; -webkit-font-smoothing: antialiased;
  font-kerning: normal; font-feature-settings: "kern", "liga", "onum";
}
body.colour-regime-shell.has-paper { background-image: var(--page-paper); background-size: 1400px auto; }
.colour-regime-shell a { color: var(--link); text-decoration-thickness: 0.06em; text-underline-offset: 0.16em; }
.colour-regime-shell a:hover { text-decoration-thickness: 0.12em; }
.colour-regime-shell em, .colour-regime-shell i { font-style: italic; }

.colour-regime-shell .wrap { max-width: var(--wide); margin: 0 auto; padding: 0 16px; }
.colour-regime-shell .measure { max-width: var(--measure); }

/* running head */
.colour-regime-shell .runhead {
  display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap;
  font-variant: all-small-caps; letter-spacing: 0.28em; font-size: 0.82rem; color: var(--fg-3);
  padding: 1.4rem 0 0.6rem; border-bottom: 0.5px solid var(--rule);
}
.colour-regime-shell .theme-toggle {
  font: inherit; letter-spacing: inherit; font-variant: inherit; color: inherit; background: none;
  border: 0; cursor: pointer; padding: 0;
}
.colour-regime-shell .theme-toggle:hover { color: var(--fg); }

/* masthead */
.colour-regime-shell .mast { padding: 3.2rem 0 1rem; }
.colour-regime-shell .mast .eyebrow { font-variant: all-small-caps; letter-spacing: 0.22em; color: var(--fg-2); font-size: 0.9rem; margin: 0 0 0.9rem; }
.colour-regime-shell .mast h1 {
  font-weight: 560; font-size: clamp(2.6rem, 7vw, 4.6rem); line-height: 1.0; margin: 0;
  letter-spacing: -0.01em; font-variant-numeric: lining-nums;
}
.colour-regime-shell .mast h1 .amp { font-style: italic; font-weight: 400; }
.colour-regime-shell .mast .deck { font-style: italic; font-size: 1.32rem; line-height: 1.38; color: var(--fg-2); margin: 1.1rem 0 0; max-width: 36rem; }
.colour-regime-shell .inkpair { display: inline-flex; gap: 0.3rem; vertical-align: 0.1em; margin-right: 0.4rem; }
.colour-regime-shell .inkpair i { width: 0.8em; height: 0.8em; border-radius: 50%; display: inline-block; box-shadow: 0 0 0 1px var(--bg); }

.colour-regime-shell .prov {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 0.2rem 1.6rem;
  margin: 2rem 0 0; padding: 0.9rem 0; border-top: 0.5px solid var(--rule); border-bottom: 0.5px solid var(--rule);
}
.colour-regime-shell .prov div { font-size: 0.86rem; line-height: 1.35; padding: 0.25rem 0; }
.colour-regime-shell .prov b { display: block; font-weight: 500; font-variant: all-small-caps; letter-spacing: 0.16em; color: var(--fg-3); font-size: 0.8rem; }

.colour-regime-shell .intro p { font-size: 1.08rem; margin: 1rem 0; }
.colour-regime-shell .nota {
  font-style: italic; color: var(--fg-2); border-left: 1px solid var(--rule); padding: 0.2rem 0 0.2rem 1rem;
  margin: 1.4rem 0; font-size: 0.95rem;
}
.colour-regime-shell .nota b { font-style: normal; font-weight: 600; color: var(--fg); }

/* findings index */
.colour-regime-shell .index { margin: 3rem 0 1rem; }
.colour-regime-shell .index h2 {
  font-variant: all-small-caps; letter-spacing: 0.24em; font-weight: 500; font-size: 0.95rem; color: var(--fg-3);
  margin: 0 0 0.8rem; border-bottom: 0.5px solid var(--rule); padding-bottom: 0.4rem;
}
.colour-regime-shell .index ol { list-style: none; padding: 0; margin: 0; counter-reset: f; }
.colour-regime-shell .index li {
  display: grid; grid-template-columns: 2.4rem 1fr auto; gap: 0.8rem; align-items: baseline;
  padding: 0.55rem 0; border-bottom: 0.5px dotted var(--rule);
}
.colour-regime-shell .index li .n { font-variant-numeric: lining-nums tabular-nums; color: var(--fg-3); font-size: 0.9rem; }
.colour-regime-shell .index li a { color: inherit; text-decoration: none; }
.colour-regime-shell .index li a:hover .t { text-decoration: underline; }
.colour-regime-shell .index li .h { display: block; font-weight: 560; font-size: 1.02rem; line-height: 1.25; margin-bottom: 0.15rem; }
.colour-regime-shell .index li .t { display: block; font-size: 0.96rem; line-height: 1.4; font-style: italic; color: var(--fg-2); }
.colour-regime-shell .index .chips { display: flex; gap: 0.3rem; flex-wrap: wrap; justify-content: flex-end; }
.colour-regime-shell a.chip { text-decoration: none; }
.colour-regime-shell a.term { color: inherit; text-decoration-style: dotted; text-decoration-color: var(--fg-3); }
.colour-regime-shell .chip {
  display: inline-block; font-style: normal; font-variant: all-small-caps; letter-spacing: 0.14em;
  font-size: 0.72rem; line-height: 1; padding: 0.28rem 0.5rem 0.32rem; border-radius: 2px;
  background: var(--chip-bg); color: var(--fg-2); white-space: nowrap; border: 0.5px solid var(--rule);
}

/* sections */
.colour-regime-shell section.sec { padding: 3.2rem 0 1rem; scroll-margin-top: 1rem; }
.colour-regime-shell .sec-head { display: grid; grid-template-columns: auto 1fr; gap: 0 1rem; align-items: baseline; border-top: 1.5px solid var(--fg); padding-top: 0.7rem; }
.colour-regime-shell .sec-head .no { font-variant-numeric: lining-nums; font-size: 0.95rem; letter-spacing: 0.12em; color: var(--fg-3); text-decoration: none; }
.colour-regime-shell .sec-head h2 { font-weight: 560; font-size: clamp(1.7rem, 3.6vw, 2.35rem); line-height: 1.1; margin: 0; }
.colour-regime-shell .finding { font-style: italic; font-size: 1.22rem; line-height: 1.42; color: var(--fg); margin: 1.1rem 0 1.2rem; max-width: 42rem; }
.colour-regime-shell .sec p.body { font-size: 1.04rem; margin: 0 0 1rem; max-width: var(--measure); hyphens: auto; }
.colour-regime-shell blockquote.q { margin: 1.6rem 0; padding: 0 0 0 1.2rem; border-left: 2px solid var(--ink-E2); max-width: 36rem; }
.colour-regime-shell blockquote.q p { font-style: italic; font-size: 1.2rem; margin: 0 0 0.4rem; }
.colour-regime-shell blockquote.q cite { font-style: normal; font-size: 0.86rem; color: var(--fg-3); font-variant: all-small-caps; letter-spacing: 0.1em; }

.colour-regime-shell .seam { max-width: var(--measure); margin: 1.6rem 0 0; padding: 0.9rem 0 0 1rem; border-left: 2px solid var(--ink-E1); }
.colour-regime-shell .seam p { font-size: 1.04rem; margin: 0 0 0.6rem; font-style: italic; color: var(--fg); }
.colour-regime-shell .seam .onward { font-variant: all-small-caps; letter-spacing: 0.14em; font-size: 0.86rem; text-decoration: none; color: var(--fg-2); }
.colour-regime-shell .seam .onward:hover { color: var(--link); }
.colour-regime-shell .seam .onward span { font-variant-numeric: lining-nums; color: var(--fg-3); }

/* plates */
.colour-regime-shell figure.plate {
  position: relative; margin: 2.2rem 0; padding: 22px 26px 18px;
  background-color: var(--pl-paper); background-image: var(--plate-paper);
  background-size: 900px auto; color: var(--pl-key);
  box-shadow: 0 1px 0 rgba(43, 36, 24, 0.08), 0 10px 24px -18px rgba(43, 36, 24, 0.5);
  font-variant-numeric: lining-nums tabular-nums;
}
.colour-regime-shell figure.plate::before {
  content: ""; position: absolute; inset: 9px; border: 1.3px solid var(--pl-key); pointer-events: none;
}
.colour-regime-shell figure.plate::after {
  content: ""; position: absolute; inset: 13px; border: 0.5px solid var(--pl-key); opacity: 0.6; pointer-events: none;
}
.colour-regime-shell .plate__head { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; margin: 2px 4px 2px; }
.colour-regime-shell .plate__no { font-variant: all-small-caps; letter-spacing: 0.28em; font-size: 0.8rem; color: var(--pl-key-2); }
.colour-regime-shell .plate__title { font-weight: 560; font-size: 1.24rem; line-height: 1.15; margin: 4px 4px 0; }
.colour-regime-shell .plate__q { font-style: italic; color: var(--pl-key-2); margin: 3px 4px 10px; font-size: 0.98rem; line-height: 1.35; }
.colour-regime-shell .plate .chip { background: transparent; color: var(--pl-key-2); border-color: var(--pl-rule); }
.colour-regime-shell .plate__body { position: relative; }
.colour-regime-shell .plate__body svg { display: block; width: 100%; height: auto; overflow: visible; }
.colour-regime-shell .plate__foot {
  display: grid; grid-template-columns: 1fr; gap: 3px; margin: 10px 4px 2px; padding-top: 7px;
  border-top: 0.5px solid var(--pl-rule); font-size: 0.84rem; line-height: 1.38;
}
.colour-regime-shell .plate__foot .nota { margin: 0; padding: 0; border: 0; color: var(--pl-key-2); font-size: 0.84rem; }
.colour-regime-shell .plate__foot .nota b { color: var(--pl-key); }
.colour-regime-shell .plate__foot .after { font-style: italic; color: var(--pl-key-2); }
.colour-regime-shell .plate__foot .after b { font-style: normal; font-variant: all-small-caps; letter-spacing: 0.14em; font-weight: 500; }
.colour-regime-shell .plate__foot .scale { font-variant: all-small-caps; letter-spacing: 0.12em; color: var(--pl-key-2); }
.colour-regime-shell .plate details { margin: 6px 4px 0; font-size: 0.82rem; }
.colour-regime-shell .plate details summary { cursor: pointer; font-variant: all-small-caps; letter-spacing: 0.14em; color: var(--pl-key-2); }
.colour-regime-shell .plate table.data { border-collapse: collapse; margin: 6px 0; font-size: 0.8rem; }
.colour-regime-shell .plate table.data td, .colour-regime-shell .plate table.data th { padding: 2px 10px 2px 0; text-align: left; border-bottom: 0.5px dotted var(--pl-rule); font-weight: 400; }
.colour-regime-shell .plate table.data th { font-variant: all-small-caps; letter-spacing: 0.1em; color: var(--pl-key-2); }

/* svg type inside plates */
.colour-regime-shell .plate svg text { font-family: "EB Garamond", Garamond, Georgia, serif; fill: var(--pl-key); }
.colour-regime-shell .plate svg .ax text, .colour-regime-shell .plate svg text.ax { font-size: 11px; fill: var(--pl-key-2); }
.colour-regime-shell .plate svg .ax line, .colour-regime-shell .plate svg .ax path { stroke: var(--pl-key-2); stroke-width: 0.5; }
.colour-regime-shell .plate svg .grid line { stroke: var(--pl-rule); stroke-width: 0.35; stroke-dasharray: 1 2.5; }
.colour-regime-shell .plate svg text.fig { font-style: italic; font-size: 12px; }
.colour-regime-shell .plate svg text.lab { font-size: 12px; }
.colour-regime-shell .plate svg text.big { font-size: 15px; font-weight: 560; }
.colour-regime-shell .plate svg text.sc { font-variant: all-small-caps; letter-spacing: 0.16em; font-size: 11px; fill: var(--pl-key-2); }
.colour-regime-shell .plate svg .leader { stroke: var(--pl-key); stroke-width: 0.45; fill: none; }
.colour-regime-shell .plate svg .colour { mix-blend-mode: multiply; }
.colour-regime-shell .plate svg .hit { fill: transparent; cursor: crosshair; }
.colour-regime-shell .plate svg .hit:focus-visible { outline: none; stroke: var(--pl-key); stroke-width: 1.2; stroke-dasharray: 2 2; }

/* image plates */
.colour-regime-shell .frames { display: grid; gap: 10px; }
.colour-regime-shell .frames figure { margin: 0; }
.colour-regime-shell .frames img { display: block; width: 100%; height: auto; background: #1a1712; outline: 0.5px solid var(--pl-key); }
/* Every image keeps its own aperture: no crop, no letterbox. */
.colour-regime-shell .frames.objs { align-items: start; }
.colour-regime-shell .frames figcaption { font-size: 0.8rem; line-height: 1.3; margin-top: 4px; color: var(--pl-key-2); }
.colour-regime-shell .frames figcaption b { font-weight: 500; color: var(--pl-key); font-style: normal; }
.colour-regime-shell .frames figcaption i { font-style: italic; }
.colour-regime-shell .row-label { font-variant: all-small-caps; letter-spacing: 0.16em; font-size: 0.8rem; color: var(--pl-key-2); display: flex; align-items: center; gap: 0.45rem; }
.colour-regime-shell .sw { display: inline-block; width: 0.9em; height: 0.9em; border-radius: 50%; outline: 0.5px solid var(--pl-key); vertical-align: -0.08em; }
.colour-regime-shell .hue-chip { display: inline-block; width: 0.8em; height: 0.8em; vertical-align: -0.06em; margin-right: 0.25em; outline: 0.5px solid var(--pl-key); }

.colour-regime-shell .spec-grid { display: grid; grid-template-columns: 7.5rem repeat(5, 1fr); gap: 8px 8px; align-items: center; }
.colour-regime-shell .spec-grid img { width: 100%; display: block; outline: 0.5px solid var(--pl-key); }
.colour-regime-shell .spec-grid .cell-note { font-size: 0.72rem; color: var(--pl-key-2); margin-top: 2px; font-style: italic; }
.colour-regime-shell .eye-grid { grid-template-columns: 7.5rem repeat(4, 1fr); }

.colour-regime-shell .ribbon { display: block; width: 100%; height: 64px; margin-top: 2px; }

/* verdict table */
.colour-regime-shell table.verdicts { width: 100%; border-collapse: collapse; font-size: 0.92rem; line-height: 1.35; }
.colour-regime-shell table.verdicts th { text-align: left; font-weight: 500; font-variant: all-small-caps; letter-spacing: 0.14em; color: var(--pl-key-2); border-bottom: 1px solid var(--pl-key); padding: 4px 10px 4px 0; }
.colour-regime-shell table.verdicts td { vertical-align: top; padding: 7px 10px 7px 0; border-bottom: 0.5px dotted var(--pl-rule); }
.colour-regime-shell table.verdicts td.v { white-space: nowrap; font-style: italic; }
.colour-regime-shell table.verdicts td.v .mark { display: inline-block; width: 0.7em; height: 0.7em; border-radius: 50%; border: 1px solid var(--pl-key); margin-right: 0.45em; vertical-align: -0.02em; }
.colour-regime-shell table.verdicts td.v .mark.full { background: var(--pl-key); }
.colour-regime-shell table.verdicts td.v .mark.half { background: linear-gradient(90deg, var(--pl-key) 50%, transparent 50%); }
.colour-regime-shell table.verdicts a { color: var(--pl-key); }

/* glossary */
.colour-regime-shell dl.gloss { display: grid; grid-template-columns: minmax(9rem, 13rem) 1fr; gap: 0.35rem 1.2rem; font-size: 0.92rem; margin: 0; }
.colour-regime-shell dl.gloss dt { font-weight: 560; }
.colour-regime-shell dl.gloss dt:target, .colour-regime-shell dl.gloss dt.flash { background: #d9c89c; }
.colour-regime-shell dl.gloss dd { margin: 0; color: var(--pl-key-2); }

/* tooltip */
.colour-regime-shell .tip {
  position: fixed; pointer-events: none; z-index: 20; max-width: 17rem;
  background: var(--pl-paper); color: var(--pl-key); border: 0.5px solid var(--pl-key);
  box-shadow: 0 6px 18px -10px rgba(0, 0, 0, 0.6); padding: 6px 9px; font-size: 0.82rem; line-height: 1.3;
  font-variant-numeric: lining-nums tabular-nums; opacity: 0; transition: opacity 0.08s;
}
.colour-regime-shell .tip.on { opacity: 1; }
.colour-regime-shell .tip b { font-weight: 600; }
.colour-regime-shell .tip i { color: var(--pl-key-2); }

/* closing and appendix */
.colour-regime-shell .closing { padding: 3rem 0 1rem; }
.colour-regime-shell .closing h2 { font-weight: 560; font-size: 2rem; margin: 0 0 1rem; border-top: 1.5px solid var(--fg); padding-top: 0.7rem; }
.colour-regime-shell .closing p { font-size: 1.08rem; max-width: var(--measure); }
.colour-regime-shell .sources { font-size: 0.86rem; color: var(--fg-2); padding-left: 1.2rem; }
.colour-regime-shell .sources li { margin: 0.25rem 0; overflow-wrap: anywhere; }
.colour-regime-shell details.appendix { margin: 2rem 0 4rem; border-top: 0.5px solid var(--rule); padding-top: 0.8rem; }
.colour-regime-shell details.appendix summary { cursor: pointer; font-variant: all-small-caps; letter-spacing: 0.2em; color: var(--fg-2); }
.colour-regime-shell details.appendix table { width: 100%; border-collapse: collapse; font-size: 0.8rem; margin-top: 0.8rem; font-variant-numeric: lining-nums tabular-nums; }
.colour-regime-shell details.appendix td { padding: 3px 8px 3px 0; border-bottom: 0.5px dotted var(--rule); vertical-align: top; }
.colour-regime-shell details.appendix td code { font-size: 0.74rem; color: var(--fg-3); overflow-wrap: anywhere; }
.colour-regime-shell .foot { font-size: 0.8rem; color: var(--fg-3); padding: 1.4rem 0 3rem; border-top: 0.5px solid var(--rule); }

/* Humanitloop additions: the study's other forms, legends that wrap, and
   image grids that reflow on a phone instead of shrinking to thumbnails. */
.colour-regime-shell .formats { display: flex; flex-wrap: wrap; gap: 0.5rem 0.7rem; margin: 1.6rem 0 0; padding: 0; list-style: none; }
.colour-regime-shell .formats a {
  display: inline-block; padding: 0.42rem 0.8rem 0.48rem; border: 0.5px solid var(--fg-3); color: var(--fg);
  font-variant: all-small-caps; letter-spacing: 0.14em; font-size: 0.86rem; text-decoration: none; line-height: 1.2;
}
.colour-regime-shell .formats a:hover, .colour-regime-shell .formats a:focus-visible { border-color: var(--fg); background: var(--chip-bg); }
.colour-regime-shell .formats a span { font-variant: normal; letter-spacing: 0; font-style: italic; color: var(--fg-2); }
.colour-regime-shell .plate__legend { display: flex; flex-wrap: wrap; gap: 0.2rem 1.1rem; margin: 0 4px 6px; font-size: 0.8rem; line-height: 1.35; color: var(--pl-key); }
.colour-regime-shell .plate__legend span { display: inline-flex; align-items: center; gap: 0.4rem; }
.colour-regime-shell .plate__legend i { display: inline-block; width: 0.75rem; height: 0.75rem; outline: 0.5px solid var(--pl-key); flex: none; }
.colour-regime-shell .plate__legend i.line { height: 0; outline: 0; border-top: 2px solid var(--swatch); width: 1.1rem; }
.colour-regime-shell .plate__legend i.line.dash { border-top-style: dashed; }
.colour-regime-shell .frames { grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr)); }
.colour-regime-shell .model-row + .model-row { margin-top: 10px; }
.colour-regime-shell .model-row > .row-label { margin: 0 0 4px; }
.colour-regime-shell .ribbon { touch-action: pan-y; }
.colour-regime-noscript { max-width: 40rem; margin: 5rem auto; padding: 0 16px; }

@media (max-width: 720px) {
  .colour-regime-shell .frames { grid-template-columns: repeat(var(--cols-sm, 2), minmax(0, 1fr)); }
  .colour-regime-shell .frames.models .model-head { display: none; }
  .colour-regime-shell .frames.models > figure:last-child { grid-column: 1 / -1; }
  .colour-regime-shell .formats a { font-size: 0.8rem; }
  html:has(> body.colour-regime-shell) { font-size: 17px; }
  .colour-regime-shell figure.plate { padding: 18px 14px 14px; margin-left: -6px; margin-right: -6px; }
  .colour-regime-shell figure.plate::before { inset: 6px; }
  .colour-regime-shell figure.plate::after { inset: 9px; }
  .colour-regime-shell .spec-grid { grid-template-columns: 4.2rem repeat(5, 1fr); gap: 4px; }
  .colour-regime-shell .eye-grid { grid-template-columns: 4.2rem repeat(4, 1fr); }
  .colour-regime-shell .spec-grid .cell-note { display: none; }
  .colour-regime-shell .index li { grid-template-columns: 2rem 1fr; }
  .colour-regime-shell .index li .chips { grid-column: 2; }
  .colour-regime-shell dl.gloss { grid-template-columns: 1fr; }
  .colour-regime-shell table.verdicts td.v { white-space: normal; }

}
@media print {
  body.colour-regime-shell { background: #fff; }
  .colour-regime-shell figure.plate { break-inside: avoid; box-shadow: none; }
  .colour-regime-shell .theme-toggle { display: none; }

}


/* Enlarged image: the picture at its own aperture, letterboxed, with a close
   control a thumb can reach at the bottom of the viewport. */
.colour-regime-shell #aviator-regimes-report img[data-asset] { cursor: zoom-in; }
.colour-regime-shell .enlarge {
  position: fixed; inset: 0; z-index: 60; display: grid; place-items: center; padding: 16px 16px 72px;
  background: rgba(20, 17, 13, 0.92); cursor: zoom-out;
}
.colour-regime-shell .enlarge figure { margin: 0; max-width: min(1400px, 100%); cursor: default; }
.colour-regime-shell .enlarge img { display: block; max-width: 100%; max-height: calc(100dvh - 150px); width: auto; height: auto; margin: 0 auto; outline: 0.5px solid #8c7e64; }
.colour-regime-shell .enlarge figcaption { margin-top: 10px; color: #e9e0d0; font-size: 0.9rem; line-height: 1.4; text-align: center; }
.colour-regime-shell .enlarge figcaption i { color: #c3b8a3; }
.colour-regime-shell .enlarge__close {
  position: fixed; left: 50%; bottom: 16px; transform: translateX(-50%); min-height: 44px; padding: 0 22px;
  font: inherit; font-variant: all-small-caps; letter-spacing: 0.16em; color: #e9e0d0; background: transparent;
  border: 0.5px solid #c3b8a3; cursor: pointer;
}
body.colour-regime-shell.enlarge-open { overflow: hidden; }
