@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400..500&display=swap");

/* Entoraliten shared article layer.
   Keep page-specific article layout in the page; put global article behavior here. */
:root {
  --entoraliten-green: #003b2f;
}

.byline a {
  color: var(--accent-ink, var(--entoraliten-green));
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: currentColor;
  text-underline-offset: 0.12em;
}

.byline a:visited {
  color: var(--accent-ink, var(--entoraliten-green));
}

.byline a:hover,
.byline a:focus {
  text-decoration: none;
}

.entoraliten-brand-mark,
.brand {
  text-decoration: none;
}

.entoraliten-piece-footer a,
.entoraliten-inline-links a {
  text-decoration: none;
}

.arrival-article-body {
  box-sizing: border-box;
  max-width: 760px;
  margin: 2.4rem auto 0;
  padding: 0 clamp(1rem, 3vw, 2rem) 4rem;
  overflow-wrap: break-word;
  word-break: normal;
}

.arrival-article-body :where(p, h1, h2, h3, h4, h5, h6, li, blockquote, figcaption) {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

.arrival-article-body h1 {
  margin: 1.12em 0 0.46em;
  color: var(--title-ink, #1f1f1f);
  font-size: 1.68em;
  font-weight: 700;
  line-height: 1.16;
}

.arrival-article-body h2 {
  margin: 1.55em 0 0.42em;
  font-size: 1.36em;
  font-weight: 700;
  line-height: 1.2;
}

.arrival-article-body h3 {
  margin: 1.35em 0 0.36em;
  font-size: 1.18em;
  font-weight: 700;
  line-height: 1.24;
}

.arrival-article-body h4 {
  margin: 1.2em 0 0.32em;
  font-size: 1.05em;
  font-weight: 700;
  line-height: 1.28;
}

.arrival-article-body h5 {
  margin: 1.12em 0 0.3em;
  font-size: 0.96em;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.32;
  text-transform: uppercase;
}

.arrival-article-body h6 {
  margin: 1.05em 0 0.28em;
  font-size: 0.92em;
  font-style: italic;
  font-weight: 700;
  line-height: 1.34;
}

.arrival-article-body > :first-child {
  margin-top: 0;
}

.arrival-article-body blockquote,
.arrival-article-body .spoken-quote {
  position: relative;
  margin-top: 2.35em;
  padding-top: 2.35em;
}

.arrival-article-body blockquote::before,
.arrival-article-body .spoken-quote::before {
  content: "\201C";
  position: absolute;
  left: 0.04em;
  top: -0.34em;
  color: #b8b4bd;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 6.8em;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
}

body.door-arrival-article .arrival-article-body blockquote,
body.door-arrival-article .arrival-article-body .spoken-quote {
  margin: 2.35em 0 1.7em !important;
  padding: 2.35em 0 0.15em 1.15em !important;
  border-left: 4px solid #064f38 !important;
  color: #242424 !important;
}

body.door-arrival-article .arrival-article-body blockquote p,
body.door-arrival-article .arrival-article-body .spoken-quote p {
  margin: 0.72em 0 !important;
}

.arrival-article-body img,
body.door-arrival-article .arrival-article-body img {
  display: block !important;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: min(100%, 680px) !important;
  height: auto !important;
  margin: 1.4em auto 0.45em !important;
}

.arrival-article-body img.article-float-left,
body.door-arrival-article .arrival-article-body img.article-float-left {
  display: inline-block !important;
  float: left !important;
  max-width: min(45%, 320px) !important;
  margin: 0.22em 1.15em 0.75em 0 !important;
}

.arrival-article-body img.article-float-right,
body.door-arrival-article .arrival-article-body img.article-float-right {
  display: inline-block !important;
  float: right !important;
  max-width: min(45%, 320px) !important;
  margin: 0.22em 0 0.75em 1.15em !important;
}

@media (max-width: 620px) {
  .arrival-article-body img.article-float-left,
  .arrival-article-body img.article-float-right,
  body.door-arrival-article .arrival-article-body img.article-float-left,
  body.door-arrival-article .arrival-article-body img.article-float-right {
    display: block !important;
    float: none !important;
    max-width: min(100%, 680px) !important;
    margin: 1.4em auto 0.45em !important;
  }
}

body.door-arrival-article .arrival-article-body .image-credits {
  display: none !important;
}

body.entoraliten-opening-bar::after,
.entoraliten-opening-bar::after {
  top: calc(46px - 0.5em + 0.38em + 0.55em);
}


/* Entoraliten centralized page type contract. */
body.door-arrival-article {
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--paper, #fffdf8) !important;
  color: var(--ink, #111) !important;
}

body.door-arrival-article.entoraliten-opening-bar::after,
body.door-arrival-article main::after {
  content: none !important;
}

body.door-arrival-article .arrival-hero {
  position: relative !important;
  box-sizing: border-box !important;
  width: min(100%, 1600px) !important;
  max-width: calc(100vw - 64px) !important;
  aspect-ratio: 5 / 2 !important;
  margin: 0 auto !important;
  background: #fff !important;
  color: #fff !important;
  overflow: hidden !important;
  container-type: inline-size !important;
}

body.door-arrival-article .arrival-hero img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
}

body.door-arrival-article .arrival-hero::after {
  content: none !important;
}

body.door-arrival-article .arrival-hero .entoraliten-short-share-anchor {
  position: absolute !important;
  top: 1rem !important;
  left: 1rem !important;
  z-index: 3 !important;
}

body.door-arrival-article .arrival-hero .entoraliten-brand-mark,
body.door-arrival-article .arrival-hero .brand-mark {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 46px !important;
  height: 46px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  background: rgba(6, 79, 56, 0.94) !important;
  color: #fff !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 31px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
}

body.door-arrival-article .arrival-hero-copy {
  position: absolute !important;
  z-index: 2 !important;
  inset: 0 !important;
  text-shadow: 0 3px 18px rgba(0, 0, 0, 0.66) !important;
}

body.door-arrival-article .arrival-hero-title-box,
body.door-arrival-article .arrival-hero-subtitle-box {
  position: absolute !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.door-arrival-article .arrival-hero-copy h1,
body.door-arrival-article .arrival-hero-deck {
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

body.door-arrival-article .arrival-hero-credit {
  position: absolute !important;
  right: 1rem !important;
  bottom: 0.75rem !important;
  z-index: 2 !important;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-size: 0.72rem !important;
  line-height: 1.25 !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.72) !important;
}

body.door-arrival-article .arrival-article-body,
body.door-arrival-article .entoraliten-piece-footer {
  box-sizing: border-box !important;
  max-width: 760px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 1.25em !important;
  padding-left: 1.25em !important;
}

body.door-arrival-article .arrival-article-body {
  margin-top: 2.4rem !important;
  padding-bottom: 0 !important;
}

body.door-arrival-article .arrival-article-byline,
body.door-arrival-article .image-article-date {
  margin: 0 0 2.2em !important;
  padding-top: 0.2em !important;
}

body.door-arrival-article .image-article-date {
  color: #3b3a35 !important;
  font-size: 0.96rem !important;
  line-height: 1.35 !important;
}

body.door-arrival-article .entoraliten-terminal-mark {
  display: block !important;
  width: 54px !important;
  height: 10px !important;
  margin: 2.6em 0 1.45em !important;
  background: #064f38 !important;
}

body.door-arrival-article.work-type-img-article .entoraliten-terminal-mark {
  margin-top: 0 !important;
}

@media (max-width: 760px) {
  body.door-arrival-article .arrival-hero {
    max-width: 100vw !important;
  }

  body.door-arrival-article .arrival-hero-credit {
    left: 1rem !important;
    right: 1rem !important;
    font-size: 0.62rem !important;
  }

  body.door-arrival-article .arrival-article-body,
  body.door-arrival-article .entoraliten-piece-footer {
    padding-right: 1em !important;
    padding-left: 1em !important;
  }

  body.door-arrival-article .arrival-article-body {
    margin-top: 2rem !important;
  }

  body.door-arrival-article .entoraliten-piece-footer {
    padding-bottom: 6em !important;
  }

}

/* Shared footer/story-link contract for article and utility pages. */
.entoraliten-piece-footer {
  width: auto !important;
  margin-top: 1.7em !important;
  padding-top: 1.3em !important;
  padding-bottom: 7.5em !important;
  border-top: 0 !important;
}

.entoraliten-piece-footer h2,
.entoraliten-inline-links h2 {
  font-size: 1.05em !important;
  line-height: 1.25 !important;
  margin: 0 0 1.05em !important;
  color: #003b2f !important;
}

.entoraliten-piece-footer ol,
.entoraliten-inline-links ol {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.9em 0.95em !important;
}

.entoraliten-piece-footer li,
.entoraliten-inline-links li {
  line-height: 1 !important;
}

.entoraliten-piece-footer a,
.entoraliten-inline-links a {
  --footer-link-bg: linear-gradient(135deg, #d5faec 0%, #96e9d4 100%);
  --footer-link-ink: #000000;
  --footer-link-shadow: rgba(21, 118, 94, 0.16);
  --footer-link-edge-shadow: rgba(21, 118, 94, 0.2);
  display: inline-flex !important;
  align-items: center !important;
  min-height: 2.5em !important;
  padding: 0.58em 0.95em 0.62em !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  border-radius: 8px !important;
  background: var(--footer-link-bg) !important;
  color: var(--footer-link-ink) !important;
  text-decoration: none !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  font-size: 1.15em !important;
  font-weight: 450 !important;
  line-height: 1.18 !important;
  box-shadow: 4px 5px 0 var(--footer-link-edge-shadow), -2px 2px 0 rgba(255, 255, 255, 0.78), 0 10px 20px var(--footer-link-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
}

.entoraliten-piece-footer li:nth-child(2n) a,
.entoraliten-inline-links li:nth-child(2n) a {
  --footer-link-bg: linear-gradient(135deg, #ffedc8 0%, #ffd196 100%);
  --footer-link-shadow: rgba(176, 105, 24, 0.17);
  --footer-link-edge-shadow: rgba(176, 105, 24, 0.21);
}

.entoraliten-piece-footer li:nth-child(3n) a,
.entoraliten-inline-links li:nth-child(3n) a {
  --footer-link-bg: linear-gradient(135deg, #d9efff 0%, #addbff 100%);
  --footer-link-shadow: rgba(49, 119, 181, 0.16);
  --footer-link-edge-shadow: rgba(49, 119, 181, 0.2);
}

.entoraliten-piece-footer li:nth-child(4n) a,
.entoraliten-inline-links li:nth-child(4n) a {
  --footer-link-bg: linear-gradient(135deg, #eadfff 0%, #cdb9ff 100%);
  --footer-link-shadow: rgba(103, 70, 164, 0.17);
  --footer-link-edge-shadow: rgba(103, 70, 164, 0.21);
}

.entoraliten-piece-footer li:nth-child(5n) a,
.entoraliten-inline-links li:nth-child(5n) a {
  --footer-link-bg: linear-gradient(135deg, #f6fbc4 0%, #ddeb84 100%);
  --footer-link-shadow: rgba(123, 142, 33, 0.16);
  --footer-link-edge-shadow: rgba(123, 142, 33, 0.2);
}

.entoraliten-piece-footer a:visited,
.entoraliten-inline-links a:visited {
  color: var(--footer-link-ink) !important;
}

.entoraliten-piece-footer a:hover,
.entoraliten-piece-footer a:focus,
.entoraliten-inline-links a:hover,
.entoraliten-inline-links a:focus {
  transform: translateY(-1px) !important;
  box-shadow: 5px 6px 0 var(--footer-link-edge-shadow), -2px 2px 0 rgba(255, 255, 255, 0.82), 0 12px 24px var(--footer-link-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.78) !important;
}

@media (max-width: 760px) {
  .entoraliten-piece-footer {
    padding-bottom: 6em !important;
  }

  .entoraliten-piece-footer a,
  .entoraliten-inline-links a {
    font-size: 1.06em !important;
  }
}

body.door-arrival-article .entoraliten-piece-footer {
  margin-top: 0 !important;
  padding-top: 1.6em !important;
}
/* End Entoraliten centralized page type contract. */
