
:root{
  --lab-accent:      #FE8A33;
  --lab-accent-deep: #B5621E;
  --lab-paper:      #F5F3EE;
  --lab-paper-lift: #E8E2D6;
  --lab-ink:        #111310;
  --lab-muted:      #6B6B6B;
  --lab-rule:       #D9D9D9;

  --lab-on-dark:    #E8E2D6;
  --lab-muted-dark: #85815B;
  --lab-rule-dark:  #3A3E2E;

  --lab-deep:       #0A0B08;
  --lab-base:       #111310;
  --lab-lift:       #1C1F18;

  --lab-flip-ground: var(--lab-paper);
}

:root{
  --orange:        var(--lab-accent);
  --white:         var(--lab-paper);
  --black:         var(--lab-ink);
  --gray:          var(--lab-muted);
  --rule:          var(--lab-rule);
  --gray-on-dark:  var(--lab-muted-dark);
  --rule-on-dark:  var(--lab-rule-dark);
}

.section--dark,
.footer,
.cover,
.ground,
.lightbox,
.stand__world--2,
.sticky-cta,
.nav.is-clear,
.ph{
  --white: var(--lab-on-dark);
}

.btn--primary{ color: var(--lab-ink); }

::selection{ color: var(--lab-ink); }

::-moz-selection{ color: var(--lab-ink); }

.footer__logo .logo-on-light{ display: none; }

html[data-theme="dark"]{
  --white: var(--lab-base);
  --black: var(--lab-on-dark);
  --gray:  var(--lab-muted-dark);
  --rule:  var(--lab-rule-dark);
  background: var(--lab-deep);
}

[data-theme="dark"] .section--dark,
[data-theme="dark"] .stand__world--2,
[data-theme="dark"] .lightbox,
[data-theme="dark"] .sticky-cta,
[data-theme="dark"] .nav.is-clear,
[data-theme="dark"] .ph{
  --white: var(--lab-on-dark);
  --black: var(--lab-lift);
}

[data-theme="dark"] .cover,
[data-theme="dark"] .ground,
[data-theme="dark"] .footer{
  --white: var(--lab-on-dark);
  --black: var(--lab-deep);
}

[data-theme="dark"] .media,
[data-theme="dark"] .file__thumb{ background-color: var(--lab-deep); }

[data-theme="dark"] .btn--primary:hover,
[data-theme="dark"] .btn--primary:focus-visible,
[data-theme="dark"] .btn--primary.is-held{ color: var(--lab-ink); }

[data-theme="dark"] .nav__logo-full{ opacity: 0; }

[data-theme="dark"] .nav__logo-dark{ opacity: 1; }

[data-theme="dark"] .preloader{ background: var(--lab-deep); }

[data-theme="dark"] .stand.is-live .stand__ground{ background: var(--lab-lift); }

html[data-theme="light"]{
  --lab-flip-ground: var(--lab-paper-lift);
  background: var(--lab-paper-lift);
}

[data-theme="light"] .section--dark,
[data-theme="light"] .footer,
[data-theme="light"] .stand__world--2,
[data-theme="light"] .ground{
  --white: var(--lab-ink);
  --black: var(--lab-flip-ground);
  --gray:  var(--lab-muted);
  --rule:  var(--lab-rule);
  --gray-on-dark: var(--lab-muted);
  --rule-on-dark: var(--lab-rule);
}

[data-theme="light"] .stand.is-live .stand__ground{
  background: var(--lab-flip-ground);
}

[data-theme="light"] .section--dark,
[data-theme="light"] .footer,
[data-theme="light"] .stand__world--2,
[data-theme="light"] .ground{
  --orange: var(--lab-accent-deep);
}

[data-theme="light"] .btn--primary{ background: var(--lab-accent); }

[data-theme="light"] .section--dark .btn--primary{ box-shadow: inset 0 0 0 2px var(--lab-accent); }

[data-theme="light"] .section--dark :focus-visible,
[data-theme="light"] .footer :focus-visible{ outline-color: var(--lab-ink); }

[data-theme="light"] .footer__logo .logo-on-dark{ display: none; }

[data-theme="light"] .footer__logo .logo-on-light{ display: block; }

.ground{
  --ground-bg:   var(--black);
  --ground-lift: color-mix(in srgb, var(--black) 96%, var(--lab-on-dark));
  --ground-sink: color-mix(in srgb, var(--black) 94%, var(--lab-ink));

  --map-land:  var(--ground-bg);
  --map-water: var(--ground-lift);

  --map-sea:      var(--map-land);

  --map-river:    color-mix(in srgb, var(--white) 7%, transparent);
  --map-mesh:     color-mix(in srgb, var(--white) 7%, transparent);
  --map-edge:     color-mix(in srgb, var(--white) 34%, transparent);
  --map-edge-lit: color-mix(in srgb, var(--white) 62%, transparent);
  --map-accent:   var(--orange);
  --map-flat:     color-mix(in srgb, var(--black) 95%, var(--white));
  --map-head:     var(--white);
}

[data-theme="light"] .ground{
  --ground-lift: color-mix(in srgb, var(--lab-paper-lift) 70%, var(--lab-paper));
}

html[data-theme="light"] .ground{
  --map-water: var(--ground-sink);
}

html[data-theme="dark"] .ground{
  --map-water: var(--ground-lift);
}

.ground__lede{ color: color-mix(in srgb, var(--white) 80%, transparent); }

.ground__chip{ color: color-mix(in srgb, var(--white) 85%, transparent); }

.ground__fine{ color: color-mix(in srgb, var(--white) 40%, transparent); }

.ink__imprint{ fill:  color-mix(in srgb, var(--white) 32%, transparent); }

.ink__pinname,
.ink__pinaddr{ stroke: color-mix(in srgb, var(--black) 72%, transparent); }

.ink__halo{ stroke: color-mix(in srgb, var(--black) 80%, transparent); }

.nav__theme { display: inline-flex; }
.nav__theme .icon--sun { display: none; }
[data-theme="dark"] .nav__theme .icon--sun { display: block; }
[data-theme="dark"] .nav__theme .icon--moon { display: none; }

.footer__logo .logo-on-light { display: none; }
[data-theme="light"] .footer__logo .logo-on-dark { display: none; }
[data-theme="light"] .footer__logo .logo-on-light { display: block; }
