:root {
  --threelt-ink: #1f3b4d;
  --threelt-white: #ffffff;
  --threelt-pale: #d6e4ec;
  --threelt-pale-border: #b9cfdb;
  --threelt-pale-hover: #c7dae4;
  --threelt-gold: #9c7a3c;
  --threelt-gold-border: #86682f;
  --threelt-gold-hover: #856429;
  --threelt-green: #7fa582;
  --threelt-green-text: #3c6b40;
  --threelt-body: #26485c;
  --threelt-muted: #5c7280;
  --threelt-muted-strong: #3d5e6e;
  --threelt-hairline: #e7edf1;
  --threelt-mobile-hairline: #edf1f4;
  --threelt-surface: #f2f6f9;
  --threelt-content-width: 1140px;
  --threelt-sidebar-width: 288px;
  --threelt-serif: "Source Serif 4", Georgia, serif;
  --threelt-sans: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html {
  box-sizing: border-box;
  scroll-behavior: smooth;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

body.threelt-theme {
  min-width: 320px;
  margin: 0;
  background: var(--threelt-white);
  color: var(--threelt-ink);
  font-family: var(--threelt-sans);
  font-size: 14.5px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: rgba(31, 59, 77, 0.12);
}

body.threelt-theme.threelt-menu-is-open {
  overflow: hidden;
}

.threelt-theme [hidden] {
  display: none !important;
}

.threelt-theme a {
  color: var(--threelt-gold);
  text-decoration: none;
}

.threelt-theme a:hover {
  color: var(--threelt-ink);
  text-decoration: underline;
}

.threelt-theme button,
.threelt-theme input,
.threelt-theme select,
.threelt-theme textarea {
  font: inherit;
}

.threelt-theme img,
.threelt-theme svg {
  display: block;
  max-width: 100%;
}

.threelt-theme :focus-visible {
  outline: 2px solid var(--threelt-gold);
  outline-offset: 3px;
}

.threelt-page {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

.threelt-auth-header {
  background: var(--threelt-ink);
  color: var(--threelt-white);
}

.threelt-auth-header__inner {
  display: flex;
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 18px 32px;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
}

.threelt-auth-header__wordmark {
  color: var(--threelt-white) !important;
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
}

.threelt-auth-header__wordmark:hover { text-decoration: none; }
.threelt-auth-header span { color: var(--threelt-pale); font-size: 12px; }

.threelt-auth-main {
  display: flex;
  flex: 1;
  padding: 48px 24px 56px;
  justify-content: center;
}

.threelt-auth-column { width: 100%; max-width: 436px; }
.threelt-auth-column > h1 {
  margin: 0 0 16px;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
}

.threelt-auth-card { padding: 24px; border: 1px solid var(--threelt-pale-border); background: var(--threelt-pale); }
.threelt-auth-form { display: flex; flex-direction: column; gap: 16px; }
.threelt-auth-field { display: flex; margin: 0; flex-direction: column; gap: 6px; }
.threelt-auth-field span { color: var(--threelt-ink); font-size: 14.5px; font-weight: 600; }
.threelt-auth-field input {
  width: 100%;
  padding: 11px 12px;
  border: 1px solid #7f9aa8;
  border-radius: 0;
  background: var(--threelt-white);
  color: var(--threelt-ink);
  font-size: 14.5px;
}
.threelt-auth-field input:focus { outline: 2px solid var(--threelt-gold); outline-offset: -1px; }
.threelt-auth-error { padding: 11px 14px; border: 1px solid var(--threelt-ink); border-left-width: 4px; background: var(--threelt-white); color: var(--threelt-ink); font-weight: 600; }
.threelt-auth-error p { margin: 0; }
.threelt-auth-error p + p { margin-top: 6px; }
.threelt-auth-forgot { align-self: flex-end; font-size: 14.5px; }
.threelt-auth-submit,
.threelt-auth-provider {
  display: flex;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid var(--threelt-gold-border);
  border-radius: 0;
  align-items: center;
  justify-content: center;
  background: var(--threelt-gold);
  color: var(--threelt-white) !important;
  font-weight: 600;
  cursor: pointer;
}
.threelt-auth-submit:hover,
.threelt-auth-provider:hover { background: var(--threelt-gold-hover); text-decoration: none; }
.threelt-auth-provider { border-color: var(--threelt-ink); background: var(--threelt-white); color: var(--threelt-ink) !important; }
.threelt-auth-provider:hover { background: var(--threelt-surface); }
.threelt-auth-notice { color: var(--threelt-body); }
.threelt-auth-notice > :first-child { margin-top: 0; }
.threelt-auth-notice > :last-child { margin-bottom: 0; }
.threelt-auth-switch { display: block; margin-top: 16px; color: var(--threelt-body) !important; text-align: center; }
.threelt-auth-switch strong { color: var(--threelt-gold); font-weight: 600; }
.threelt-auth-help { margin: 6px 0 0; color: var(--threelt-muted); font-size: 12px; line-height: 1.7; text-align: center; }
.threelt-auth-footer .threelt-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.threelt-register-form { gap: 18px; }
.threelt-register-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.threelt-register-grid--name { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.threelt-auth-field input,
.threelt-auth-field select {
  width: 100%;
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid #7f9aa8;
  border-radius: 0;
  background: var(--threelt-white);
  color: var(--threelt-ink);
  font-size: 14.5px;
}
.threelt-auth-field select { min-height: 46px; }
.threelt-auth-field__help { color: var(--threelt-muted-strong); font-size: 12px; font-weight: 400; line-height: 1.6; }
.threelt-register-roles { display: flex; margin: 0; padding: 16px 0 0; border: 0; flex-direction: column; gap: 9px; }
.threelt-register-roles legend { padding: 0 0 8px; color: var(--threelt-ink); font-size: 14.5px; font-weight: 600; }
.threelt-register-roles label { display: flex; align-items: flex-start; gap: 9px; color: var(--threelt-ink); line-height: 1.5; }
.threelt-register-roles input { width: 16px; height: 16px; margin: 3px 0 0; accent-color: var(--threelt-gold); flex: none; }
.threelt-register-roles label span { display: block; }
.threelt-register-roles small { margin-left: 5px; color: var(--threelt-muted-strong); font-size: inherit; }
.threelt-register-roles p,
.threelt-register-orcid p,
.threelt-register-legal { margin: 0; color: var(--threelt-muted-strong); font-size: 12px; line-height: 1.65; }
.threelt-register-orcid { display: flex; padding-top: 16px; border-top: 1px solid var(--threelt-pale-border); flex-direction: column; gap: 9px; }
.threelt-register-optional { display: none; align-items: center; gap: 12px; color: var(--threelt-muted-strong); font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.threelt-register-optional::before,
.threelt-register-optional::after { height: 1px; background: var(--threelt-pale-border); content: ""; flex: 1; }
.threelt-register-orcid__button { display: flex; min-height: 44px; padding: 10px 16px; border: 1px solid #a6ce39; align-items: center; justify-content: center; gap: 9px; background: var(--threelt-white); color: var(--threelt-ink) !important; font-weight: 600; }
.threelt-register-orcid__button:hover { background: #f4f9e6; text-decoration: none; }
.threelt-register-orcid__button svg { flex: none; }
.threelt-register-orcid__connected { font-size: 14px !important; }
.threelt-register-legal { line-height: 1.7; }
.threelt-register-form .captcha-question { color: var(--threelt-ink); font-size: 14.5px; font-weight: 600; }
.threelt-register-form input[name="captcha_0"] { width: 100%; padding: 11px 12px; border: 1px solid #7f9aa8; border-radius: 0; background: var(--threelt-white); color: var(--threelt-ink); }

.threelt-mobile-only {
  display: none !important;
}

.threelt-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.skip-container {
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
}

.skip-to-content {
  position: absolute;
  left: -10000px;
  top: 8px;
  padding: 10px 14px;
  background: var(--threelt-white);
  color: var(--threelt-ink) !important;
  white-space: nowrap;
}

.skip-to-content:focus {
  left: 8px;
}

.threelt-masthead {
  background: var(--threelt-ink);
  color: var(--threelt-white);
}

.threelt-masthead__inner {
  display: flex;
  width: 100%;
  max-width: var(--threelt-content-width);
  min-height: 122px;
  margin: 0 auto;
  padding: 26px 32px 24px;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
}

.threelt-masthead__identity,
.threelt-masthead__metadata {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.threelt-masthead__identity {
  max-width: 640px;
  gap: 7px;
}

.threelt-masthead__publisher {
  color: var(--threelt-pale);
  font-size: 12px;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.threelt-masthead__title {
  color: var(--threelt-white);
  font-family: var(--threelt-serif);
  font-size: 30px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
}

.threelt-masthead__title a {
  color: inherit;
}

.threelt-masthead__title a:hover,
.threelt-masthead__title a:focus-visible {
  color: inherit;
  text-decoration: none;
}

.threelt-masthead__metadata {
  gap: 3px;
  padding-left: 20px;
  border-left: 1px solid rgba(214, 228, 236, 0.32);
  color: var(--threelt-pale);
  font-size: 12px;
  line-height: 1.6;
}

.threelt-masthead__metadata .threelt-badge {
  margin-top: 4px;
}

.threelt-primary-nav {
  border-bottom: 1px solid var(--threelt-pale-border);
  background: var(--threelt-pale);
}

.threelt-primary-nav__inner {
  display: flex;
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 0 32px;
  align-items: stretch;
  justify-content: space-between;
  gap: 24px;
}

.threelt-primary-nav__list {
  display: flex;
  margin: 0;
  padding: 0;
  gap: 2px;
  list-style: none;
}

.threelt-primary-nav__list a {
  display: block;
  padding: 12px 14px;
  border-bottom: 3px solid transparent;
  color: var(--threelt-ink);
  font-size: 14.5px;
  font-weight: 500;
}

.threelt-primary-nav__list a:hover,
.threelt-primary-nav__list a:focus-visible {
  border-bottom-color: var(--threelt-gold);
  background: var(--threelt-pale-hover);
  text-decoration: none;
}

.threelt-primary-nav__list a.is-current {
  border-bottom-color: var(--threelt-gold);
  font-weight: 600;
}

.threelt-messages {
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 16px 32px 0;
}

.threelt-message {
  margin: 0 0 8px;
  padding: 11px 14px;
  border: 1px solid var(--threelt-ink);
  border-left-width: 4px;
  background: var(--threelt-white);
}

.threelt-journal-intro {
  border-bottom: 1px solid var(--threelt-pale);
  background: var(--threelt-white);
}

.threelt-journal-intro__inner {
  display: grid;
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 36px 32px 34px;
  gap: 20px;
}

.threelt-journal-intro h1 {
  margin: 0;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
}

.threelt-journal-intro__copy {
  display: grid;
  max-width: 70ch;
  gap: 14px;
  color: var(--threelt-body);
  font-size: 14.5px;
  line-height: 1.75;
  text-wrap: pretty;
}

.threelt-journal-intro__copy > * {
  margin: 0;
}

.threelt-home-shell,
.threelt-content-shell {
  flex: 1;
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 0 32px;
}

.threelt-home-grid,
.threelt-content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--threelt-sidebar-width);
  padding: 34px 0 52px;
  align-items: start;
  gap: 56px;
}

.threelt-current-issue {
  min-width: 0;
}

.threelt-issue-header__title-row {
  display: flex;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--threelt-ink);
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
}

.threelt-issue-header__title-row h2 {
  margin: 0;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
}

.threelt-issue-header__title-row > span {
  color: var(--threelt-muted);
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.threelt-issue-header__details {
  display: flex;
  margin: 10px 0 8px;
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
}

.threelt-issue-header__details p {
  margin: 0;
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.7;
}

.threelt-action-group {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.threelt-action {
  color: var(--threelt-gold) !important;
  font-size: 12px;
  font-weight: 600;
}

.threelt-action:hover {
  color: var(--threelt-ink) !important;
}

.threelt-article-item__pdf-link {
  width: fit-content;
  color: var(--threelt-gold) !important;
  font-size: 12px;
  font-weight: 600;
}

.threelt-article-item__pdf-link:hover {
  color: var(--threelt-ink) !important;
}

.threelt-article-item {
  display: grid;
  padding: 22px 0;
  border-bottom: 1px solid var(--threelt-hairline);
  gap: 8px;
}

.threelt-article-item__badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.threelt-badge {
  display: inline-flex;
  width: fit-content;
  padding: 3px 8px;
  border: 1px solid var(--threelt-green);
  border-radius: 2px;
  align-items: center;
  gap: 5px;
  background: rgba(127, 165, 130, 0.14);
  color: var(--threelt-green-text) !important;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.4;
}

.threelt-badge:hover {
  color: var(--threelt-green-text) !important;
}

.threelt-badge--dark {
  background: rgba(127, 165, 130, 0.22);
  color: var(--threelt-white) !important;
}

.threelt-badge--dark:hover {
  color: var(--threelt-white) !important;
}

.threelt-badge__dot {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: var(--threelt-green);
}

.threelt-article-item__title {
  max-width: 62ch;
  margin: 0;
  font-family: var(--threelt-serif);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.35;
}

.threelt-article-item__title a {
  color: var(--threelt-ink);
}

.threelt-article-item__title a:hover {
  color: var(--threelt-gold);
}

.threelt-article-item__authors,
.threelt-article-item__meta,
.threelt-article-item__doi {
  margin: 0;
}

.threelt-article-item__authors {
  color: var(--threelt-body);
  font-size: 14.5px;
  line-height: 1.6;
}

.threelt-article-item__meta,
.threelt-article-item__doi {
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.7;
}

.threelt-article-item__doi {
  overflow-wrap: anywhere;
}

.threelt-archives-link {
  margin-top: 24px;
}

.threelt-button {
  display: inline-flex;
  padding: 10px 12px;
  border: 1px solid transparent;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  line-height: 1.35;
  text-align: center;
}

.threelt-button--primary {
  border-color: var(--threelt-gold-border);
  background: var(--threelt-gold);
  color: var(--threelt-white) !important;
}

.threelt-button--primary:hover {
  border-color: var(--threelt-gold-hover);
  background: var(--threelt-gold-hover);
  color: var(--threelt-white) !important;
  text-decoration: none;
}

.threelt-button--secondary {
  padding: 0;
  color: var(--threelt-gold) !important;
}

.threelt-button--secondary:hover {
  color: var(--threelt-ink) !important;
}

.threelt-home-sidebar,
.threelt-page-sidebar {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 26px;
}

.threelt-issue-cover {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.threelt-issue-cover img,
.threelt-issue-cover__placeholder {
  width: 100%;
  aspect-ratio: 3 / 4;
  border: 1px solid var(--threelt-pale-border);
  object-fit: cover;
}

.threelt-issue-cover__placeholder {
  display: flex;
  padding: 12px;
  align-items: flex-end;
  justify-content: center;
  background-color: var(--threelt-surface);
  background-image: repeating-linear-gradient(135deg, #e4edf2 0 8px, var(--threelt-surface) 8px 16px);
}

.threelt-issue-cover__placeholder span {
  padding: 4px 7px;
  border: 1px solid var(--threelt-pale-border);
  background: var(--threelt-white);
  color: var(--threelt-muted);
  font-family: ui-monospace, Menlo, monospace;
  font-size: 12px;
  text-align: center;
}

.threelt-issue-cover__caption {
  color: var(--threelt-muted);
  font-size: 12px;
}

.threelt-submission-callout {
  display: flex;
  padding: 16px 16px 18px;
  border: 1px solid var(--threelt-pale-border);
  flex-direction: column;
  gap: 10px;
  background: var(--threelt-pale);
}

.threelt-submission-callout h2 {
  margin: 0;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.35;
}

.threelt-submission-callout p {
  margin: 0;
  color: var(--threelt-muted-strong);
  font-size: 12px;
  line-height: 1.65;
}

.threelt-submission-callout .threelt-button {
  width: 100%;
}

.threelt-eyebrow,
.threelt-sidebar-section > .threelt-eyebrow {
  margin: 0;
  padding-bottom: 7px;
  border-bottom: 1px solid var(--threelt-ink);
  color: var(--threelt-ink);
  font-family: var(--threelt-sans);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.threelt-most-read,
.threelt-sidebar-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.threelt-most-read__list {
  display: flex;
  margin: 0;
  padding: 0;
  flex-direction: column;
  list-style: none;
}

.threelt-most-read__list li {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  padding: 9px 0;
  border-bottom: 1px solid var(--threelt-hairline);
  gap: 9px;
}

.threelt-most-read__rank {
  color: var(--threelt-gold);
  font-family: var(--threelt-serif);
  font-size: 14.5px;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

.threelt-most-read__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 3px;
}

.threelt-most-read__content > a {
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 14.5px;
  line-height: 1.35;
}

.threelt-most-read__content > a:hover {
  color: var(--threelt-gold);
}

.threelt-most-read__content > span,
.threelt-most-read__note {
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.6;
}

.threelt-most-read__note {
  margin: 0;
}

.threelt-sidebar-links {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.threelt-sidebar-links h3 {
  margin: 0;
  color: var(--threelt-muted-strong);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}

.threelt-sidebar-links ul {
  display: flex;
  margin: 0 0 6px;
  padding: 0;
  flex-direction: column;
  gap: 4px;
  list-style: none;
}

.threelt-sidebar-links ul:last-child {
  margin-bottom: 0;
}

.threelt-sidebar-links a {
  font-size: 14.5px;
  line-height: 1.45;
}

.threelt-sidebar-flat-links {
  display: flex;
  margin: 0;
  padding: 0;
  flex-direction: column;
  gap: 4px;
  list-style: none;
}

.threelt-sidebar-flat-links a {
  font-size: 14.5px;
  line-height: 1.45;
}

.threelt-language-switcher select {
  width: 100%;
  min-height: 42px;
  padding: 7px 34px 7px 10px;
  border: 1px solid var(--threelt-pale-border);
  border-radius: 0;
  background: var(--threelt-white);
  color: var(--threelt-ink);
}

.threelt-footer {
  margin-top: auto;
  background: var(--threelt-ink);
  color: var(--threelt-pale);
}

.threelt-footer__grid {
  display: grid;
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 38px 32px 30px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 36px 40px;
}

.threelt-footer section {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 11px;
}

.threelt-footer h2,
.threelt-footer p {
  margin: 0;
}

.threelt-footer__brand h2 {
  color: var(--threelt-white);
  font-family: var(--threelt-serif);
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.35;
}

.threelt-footer p,
.threelt-footer__rich-text,
.threelt-footer__licenses {
  color: var(--threelt-pale);
  font-size: 12px;
  line-height: 1.75;
}

.threelt-footer__rich-text > :first-child {
  margin-top: 0;
}

.threelt-footer__rich-text > :last-child {
  margin-bottom: 0;
}

.threelt-footer__metadata {
  line-height: 1.9 !important;
}

.threelt-footer__eyebrow {
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(214, 228, 236, 0.32);
  color: var(--threelt-white);
  font-family: var(--threelt-sans);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.threelt-footer__licenses,
.threelt-footer__links {
  display: flex;
  margin: 0;
  padding: 0;
  flex-direction: column;
  list-style: none;
}

.threelt-footer__licenses {
  gap: 10px;
}

.threelt-footer__licenses li {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.threelt-footer__license-badge {
  display: inline-flex;
  width: fit-content;
  padding: 9px 8px;
  border: 1px solid rgba(214, 228, 236, 0.45);
  color: var(--threelt-white) !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.2;
}

.threelt-footer__links {
  gap: 6px;
}

.threelt-footer__links a,
.threelt-footer__rich-text a,
.threelt-footer__licenses a {
  color: var(--threelt-white);
}

.threelt-footer__links a {
  font-size: 14.5px;
}

.threelt-footer__links a:hover,
.threelt-footer__rich-text a:hover,
.threelt-footer__licenses a:hover {
  color: var(--threelt-pale) !important;
}

.threelt-footer__privacy-button {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--threelt-white);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.threelt-footer__privacy-button:hover {
  color: var(--threelt-pale);
  text-decoration: underline;
}

.threelt-footer__bottom {
  display: flex;
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 14px 32px 20px;
  border-top: 1px solid rgba(214, 228, 236, 0.28);
  justify-content: space-between;
  gap: 20px;
  color: rgba(214, 228, 236, 0.8);
  font-size: 12px;
  line-height: 1.6;
}

.threelt-consent {
  position: fixed;
  z-index: 1000;
  right: 24px;
  bottom: 24px;
  display: flex;
  width: min(620px, calc(100% - 48px));
  padding: 18px;
  border: 1px solid var(--threelt-pale-border);
  border-left: 4px solid var(--threelt-gold);
  background: var(--threelt-white);
  box-shadow: 0 10px 34px rgba(31, 59, 77, 0.2);
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.threelt-consent[hidden] { display: none; }
.threelt-consent__content { min-width: 0; }
.threelt-consent__content h2 { margin: 0 0 6px; color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 17px; font-weight: 600; }
.threelt-consent__content p { margin: 0 0 5px; color: var(--threelt-body); font-size: 12px; line-height: 1.6; }
.threelt-consent__content a { font-size: 12px; }
.threelt-consent__actions { display: flex; flex: 0 0 auto; flex-direction: column-reverse; gap: 8px; }
.threelt-consent__button { min-height: 42px; padding: 8px 13px; border-radius: 0; font-size: 12px; font-weight: 600; cursor: pointer; }
.threelt-consent__button--primary { border: 1px solid var(--threelt-gold-border); background: var(--threelt-gold); color: var(--threelt-white); }
.threelt-consent__button--primary:hover { background: var(--threelt-gold-hover); }
.threelt-consent__button--secondary { border: 1px solid var(--threelt-pale-border); background: var(--threelt-white); color: var(--threelt-ink); }
.threelt-consent__button--secondary:hover { background: var(--threelt-pale); }

.threelt-archive-main {
  min-width: 0;
}

.threelt-breadcrumb {
  margin-bottom: 14px;
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.5;
}

.threelt-breadcrumb a {
  color: var(--threelt-gold);
}

.threelt-breadcrumbs {
  display: flex;
  margin-bottom: 14px;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0 8px;
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.5;
}

.threelt-breadcrumbs a { color: var(--threelt-gold); }

.threelt-archive-title-row {
  display: flex;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--threelt-ink);
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
}

.threelt-archive-title-row h1 {
  margin: 0;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
}

.threelt-archive-range {
  color: var(--threelt-muted);
  font-size: 12px;
  letter-spacing: 0.06em;
  line-height: 1.5;
  text-transform: uppercase;
  white-space: nowrap;
}

.threelt-archive-summary {
  max-width: 70ch;
  margin: 10px 0 26px;
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.7;
}

.threelt-archive-year {
  margin: 0 0 30px;
}

.threelt-archive-year:last-child {
  margin-bottom: 0;
}

.threelt-archive-year > h2 {
  margin: 0 0 2px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--threelt-pale);
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.3;
  text-transform: uppercase;
}

.threelt-archive-issue-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.threelt-archive-issue-list li {
  margin: 0;
}

.threelt-archive-issue-list a {
  display: flex;
  padding: 13px 0;
  border-bottom: 1px solid var(--threelt-pale);
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
  color: var(--threelt-ink);
}

.threelt-archive-issue-list a:hover,
.threelt-archive-issue-list a:focus-visible {
  color: var(--threelt-gold);
}

.threelt-archive-issue-list__title {
  font-family: var(--threelt-serif);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.35;
}

.threelt-archive-issue-list time {
  color: var(--threelt-body);
  font-size: 14.5px;
  line-height: 1.5;
  white-space: nowrap;
}

.threelt-archive-empty {
  min-height: 300px;
  padding: 24px 0;
}

.threelt-archive-empty h2 {
  margin: 0 0 10px;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
}

.threelt-archive-empty p {
  margin: 0;
  color: var(--threelt-body);
}

.threelt-empty-state {
  width: 100%;
  max-width: var(--threelt-content-width);
  min-height: 360px;
  margin: 0 auto;
  padding: 48px 32px;
}

.threelt-empty-state h1 {
  font-family: var(--threelt-serif);
}

.threelt-empty-state--homepage {
  max-width: none;
  min-height: 360px;
  margin: 0;
  padding: 0;
}

.threelt-editorial-main { min-width: 0; }
.threelt-editorial-header h1 {
  margin: 0;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--threelt-ink);
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
}
.threelt-editorial-header > p {
  max-width: 70ch;
  margin: 14px 0 0;
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.75;
}
.threelt-editorial-group { margin-top: 28px; }
.threelt-editorial-group > h2 {
  margin: 0 0 22px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--threelt-pale);
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: .06em;
  line-height: 1.3;
  text-transform: uppercase;
}
.threelt-editorial-group--featured > h2 { margin-bottom: 16px; }
.threelt-editorial-group__description {
  margin: -12px 0 20px;
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.7;
}
.threelt-editorial-group__description > :first-child,
.threelt-editorial-member__bio > :first-child { margin-top: 0; }
.threelt-editorial-group__description > :last-child,
.threelt-editorial-member__bio > :last-child { margin-bottom: 0; }
.threelt-editorial-members {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 32px;
}
.threelt-editorial-group--featured .threelt-editorial-members { display: block; }
.threelt-editorial-member { display: flex; min-width: 0; flex-direction: column; gap: 12px; }
.threelt-editorial-member--featured {
  display: grid;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--threelt-pale);
  grid-template-columns: 212px minmax(0, 1fr);
  gap: 28px;
}
.threelt-editorial-member--featured + .threelt-editorial-member--featured { margin-top: 28px; }
.threelt-editorial-member--no-image { display: block; }
.threelt-editorial-member__portrait { width: 164px; aspect-ratio: 4 / 5; overflow: hidden; background: var(--threelt-surface); }
.threelt-editorial-member--featured .threelt-editorial-member__portrait { width: 212px; }
.threelt-editorial-member__image { width: 100%; height: 100%; object-fit: cover; }
.threelt-editorial-member__content { display: flex; min-width: 0; flex-direction: column; gap: 9px; }
.threelt-editorial-member__identity { display: flex; flex-direction: column; gap: 4px; }
.threelt-editorial-member__name-row { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.threelt-editorial-member__name-row h3 {
  margin: 0;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
}
.threelt-editorial-member--featured .threelt-editorial-member__name-row h3 { font-size: 24px; line-height: 1.2; }
.threelt-orcid-link { display: inline-flex; flex: 0 0 auto; }
.threelt-orcid-link:hover { text-decoration: none; }
.threelt-orcid-link svg { width: 15px; height: 15px; }
.threelt-editorial-member__role,
.threelt-editorial-member__affiliation,
.threelt-editorial-member__bio { margin: 0; font-size: 14.5px; }
.threelt-editorial-member__role { color: var(--threelt-muted-strong); font-weight: 600; }
.threelt-editorial-member__affiliation { color: var(--threelt-muted); line-height: 1.5; }
.threelt-editorial-member__bio { color: var(--threelt-body); line-height: 1.75; text-wrap: pretty; }
.threelt-editorial-member__profile { width: fit-content; font-size: 12px; line-height: 1.7; }
.threelt-editorial-review-note {
  max-width: 70ch;
  margin: 28px 0 0;
  padding-top: 18px;
  border-top: 1px solid var(--threelt-pale);
  color: var(--threelt-muted);
  font-size: 12px;
  line-height: 1.75;
}
.threelt-editorial-empty { padding: 24px 0; color: var(--threelt-muted); }
.threelt-editorial-empty h2 { margin: 0; font-family: var(--threelt-serif); font-size: 20px; }
.threelt-sidebar-current { color: var(--threelt-ink); font-size: 14.5px; font-weight: 600; line-height: 1.45; }
.threelt-sidebar-office,
.threelt-sidebar-office p { margin: 0; color: var(--threelt-muted); font-size: 12px; line-height: 1.8; }

.threelt-issue-main { min-width: 0; }
.threelt-issue-page-header__title { display: flex; padding-bottom: 8px; border-bottom: 2px solid var(--threelt-ink); align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 24px; }
.threelt-issue-page-header__title h1 { margin: 0; color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 20px; font-weight: 600; line-height: 1.25; }
.threelt-issue-page-header__title time { color: var(--threelt-muted); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.threelt-issue-page-header__details { display: flex; margin: 10px 0 26px; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
.threelt-issue-page-header__details p { margin: 0; color: var(--threelt-muted); font-size: 12px; line-height: 1.7; }
.threelt-issue-jump { margin-bottom: 28px; border: 1px solid var(--threelt-pale-border); background: var(--threelt-pale); }
.threelt-issue-jump__panel { display: flex; padding: 16px 16px 18px; flex-direction: column; gap: 9px; }
.threelt-issue-jump__panel h2 { margin: 0; color: var(--threelt-ink); font-size: 12px; font-weight: 600; letter-spacing: .08em; line-height: 1.4; text-transform: uppercase; }
.threelt-issue-jump__panel ol { display: grid; margin: 0; padding: 0; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 5px 28px; list-style: none; }
.threelt-issue-jump__panel li { display: grid; grid-template-columns: 22px minmax(0, 1fr); align-items: baseline; gap: 8px; }
.threelt-issue-jump__panel li > span { color: var(--threelt-muted-strong); font-size: 12px; font-variant-numeric: tabular-nums; font-weight: 600; }
.threelt-issue-jump__panel a { color: var(--threelt-gold); font-size: 14.5px; line-height: 1.45; }
.threelt-issue-jump__panel small { color: var(--threelt-muted); font-size: inherit; }
.threelt-issue-jump__panel > p { margin: 0; color: var(--threelt-muted-strong); font-size: 12px; line-height: 1.6; }
.threelt-article-item__badges { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.threelt-article-item__number { color: var(--threelt-muted-strong); font-size: 12px; font-variant-numeric: tabular-nums; font-weight: 600; }
.threelt-article-item--numbered {
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 8px;
  scroll-margin-top: 16px;
}
.threelt-article-item--numbered > .threelt-article-item__badges { grid-column: 1; grid-row: 1; padding-top: 3px; }
.threelt-article-item--numbered > .threelt-article-item__title { grid-column: 2; grid-row: 1; }
.threelt-article-item--numbered > .threelt-article-item__authors,
.threelt-article-item--numbered > .threelt-article-item__meta,
.threelt-article-item--numbered > .threelt-article-item__doi,
.threelt-article-item--numbered > .threelt-article-item__pdf-link { grid-column: 2; }
.threelt-pagination { display: flex; padding: 22px 0 0; align-items: center; justify-content: space-between; gap: 16px; color: var(--threelt-muted); font-size: 12px; }
.threelt-pagination a { font-size: 14.5px; font-weight: 600; }
.threelt-issue-archives-link { display: flex; padding-top: 22px; justify-content: center; }
.threelt-issue-cover { display: flex; flex-direction: column; gap: 7px; }
.threelt-issue-cover__image { display: flex; width: 100%; aspect-ratio: 3 / 4; border: 1px solid var(--threelt-pale-border); align-items: flex-end; justify-content: center; overflow: hidden; background-color: var(--threelt-surface); background-image: repeating-linear-gradient(135deg, #e4edf2 0 8px, var(--threelt-surface) 8px 16px); }
.threelt-issue-cover__image img { width: 100%; height: 100%; object-fit: cover; }
.threelt-issue-cover__image span { margin: 12px; padding: 4px 7px; border: 1px solid var(--threelt-pale-border); background: var(--threelt-white); color: var(--threelt-muted); font-size: 12px; text-align: center; }
.threelt-issue-cover p { margin: 0; color: var(--threelt-muted); font-size: 12px; }
.threelt-issue-empty { min-height: 280px; padding: 30px 0; }
.threelt-issue-empty h2 { margin: 0; font-family: var(--threelt-serif); font-size: 20px; }

.threelt-search-main { min-width: 0; }
.threelt-search-header h1 { margin: 0 0 14px; padding-bottom: 8px; border-bottom: 2px solid var(--threelt-ink); color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 20px; font-weight: 600; line-height: 1.25; }
.threelt-search-form__query { display: flex; flex-wrap: wrap; gap: 8px; }
.threelt-search-form__query input { min-width: 220px; min-height: 43px; padding: 10px 12px; border: 1px solid var(--threelt-input-border); flex: 1; background: var(--threelt-white); color: var(--threelt-ink); font: 14.5px/1.4 var(--threelt-sans); }
.threelt-search-form input:focus,
.threelt-search-form select:focus { outline: 2px solid var(--threelt-gold); outline-offset: -1px; }
.threelt-search-form .errorlist { margin: 6px 0 0; padding: 0; color: var(--threelt-muted-strong); font-size: 12px; list-style: none; }
.threelt-search-filters { display: grid; margin-top: 16px; padding: 14px 16px 16px; border: 1px solid var(--threelt-pale-border); grid-template-columns: minmax(280px, 2fr) minmax(180px, 1fr) auto; align-items: end; gap: 14px 24px; background: var(--threelt-pale); }
.threelt-search-filter-fields { display: flex; margin: 0; padding: 0; border: 0; flex-wrap: wrap; gap: 8px 16px; }
.threelt-search-filter-fields legend,
.threelt-search-sort > span { width: 100%; margin-bottom: 6px; color: var(--threelt-ink); font-size: 12px; font-weight: 600; letter-spacing: .08em; line-height: 1.4; text-transform: uppercase; }
.threelt-search-filter-fields label { display: inline-flex; align-items: center; gap: 6px; color: var(--threelt-body); font-size: 12px; line-height: 1.5; }
.threelt-search-filter-fields input { width: 16px; height: 16px; margin: 0; accent-color: var(--threelt-gold); }
.threelt-search-sort { display: flex; min-width: 0; flex-direction: column; }
.threelt-search-sort select { min-height: 38px; padding: 7px 32px 7px 10px; border: 1px solid var(--threelt-input-border); border-radius: 0; background: var(--threelt-white); color: var(--threelt-ink); font: 14.5px var(--threelt-sans); }
.threelt-search-filter-actions { display: flex; align-items: center; gap: 10px; }
.threelt-search-filter-actions button { min-height: 38px; padding: 8px 16px; border: 1px solid var(--threelt-input-border); background: var(--threelt-white); color: var(--threelt-ink); cursor: pointer; font: 600 14.5px var(--threelt-sans); }
.threelt-search-filter-actions button:hover { background: var(--threelt-pale-hover); }
.threelt-search-filter-actions a { font-size: 12px; white-space: nowrap; }
.threelt-search-results__summary { display: flex; margin-top: 20px; padding-bottom: 10px; border-bottom: 1px solid var(--threelt-pale); }
.threelt-search-results__summary h2 { margin: 0; color: var(--threelt-body); font: 400 14.5px/1.6 var(--threelt-sans); }
.threelt-search-results__summary strong { color: var(--threelt-ink); font-weight: 600; }
.threelt-search-empty { display: grid; max-width: 66ch; padding: 30px 0; gap: 12px; }
.threelt-search-empty h2,
.threelt-search-start h2 { margin: 0; color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 20px; font-weight: 600; }
.threelt-search-empty p,
.threelt-search-start p { margin: 0; color: var(--threelt-body); font-size: 14.5px; line-height: 1.7; }
.threelt-search-empty ul { display: flex; margin: 6px 0 0; padding-left: 20px; flex-direction: column; gap: 6px; color: var(--threelt-body); font-size: 14.5px; line-height: 1.65; }
.threelt-search-empty .threelt-action { width: fit-content; margin-top: 8px; }
.threelt-search-start { display: flex; min-height: 260px; padding: 34px 0; flex-direction: column; gap: 10px; }
.threelt-search-keyword-notice { padding: 14px 16px; border: 1px solid var(--threelt-pale-border); background: var(--threelt-pale); color: var(--threelt-body); font-size: 14.5px; }
.threelt-search-tips { display: flex; margin: 0; padding: 0; flex-direction: column; gap: 7px; list-style: none; }
.threelt-search-tips li { color: var(--threelt-muted); font-size: 12px; line-height: 1.65; }

.threelt-about-main { min-width: 0; }
.threelt-about-header h1 { margin: 0; padding-bottom: 8px; border-bottom: 2px solid var(--threelt-ink); color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 20px; font-weight: 600; line-height: 1.25; }
.threelt-about-lead { max-width: 70ch; margin-top: 16px; padding: 14px 18px; border-left: 4px solid var(--threelt-ink); background: var(--threelt-pale); color: var(--threelt-ink); font-size: 14.5px; font-style: italic; line-height: 1.65; }
.threelt-about-lead > :first-child { margin-top: 0; }
.threelt-about-lead > :last-child { margin-bottom: 0; }
.threelt-about-toc { margin-top: 22px; margin-bottom: 0; }
.threelt-about-toc ol { counter-reset: threelt-about-toc; }
.threelt-about-toc li { counter-increment: threelt-about-toc; }
.threelt-about-toc li > span::before { content: counter(threelt-about-toc) "."; }
.threelt-about-section { margin-top: 28px; padding-bottom: 28px; border-bottom: 1px solid var(--threelt-pale); scroll-margin-top: 16px; }
.threelt-about-section--last,
.threelt-about-section:last-child { border-bottom: 0; }
.threelt-about-section > h2 { margin: 0 0 14px; color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 20px; font-weight: 600; line-height: 1.3; }
.threelt-about-section__body { display: grid; max-width: 70ch; gap: 14px; color: var(--threelt-body); font-size: 14.5px; line-height: 1.75; text-wrap: pretty; }
.threelt-about-section__body > * { margin-top: 0; margin-bottom: 0; }
.threelt-about-section__body ul,
.threelt-about-section__body ol { margin: 0; padding-left: 22px; }
.threelt-about-section__body li + li { margin-top: 6px; }
.threelt-about-details,
.threelt-about-office { display: flex; flex-direction: column; gap: 10px; }
.threelt-about-details dl { display: flex; margin: 0; flex-direction: column; gap: 8px; }
.threelt-about-details dl > div { display: flex; flex-direction: column; gap: 1px; }
.threelt-about-details dt { color: var(--threelt-muted); font-size: 12px; }
.threelt-about-details dd { margin: 0; color: var(--threelt-body); font-size: 14.5px; }
.threelt-about-office div,
.threelt-about-office p { margin: 0; color: var(--threelt-muted); font-size: 12px; line-height: 1.8; }
.threelt-about-submission-notice { margin-top: 16px; padding: 14px 16px; border: 1px solid var(--threelt-pale-border); color: var(--threelt-muted-strong); }
.threelt-about-empty { min-height: 280px; padding: 36px 0; }
.threelt-about-empty h2 { margin: 0; font-family: var(--threelt-serif); font-size: 20px; }

@media (max-width: 767px) {
  .threelt-auth-header__inner {
    min-height: 52px;
    padding: 0 16px;
    align-items: center;
    gap: 12px;
  }

  .threelt-auth-header__wordmark { font-size: 17px; }

  .threelt-auth-main {
    display: block;
    padding: 0;
  }

  .threelt-auth-column { max-width: none; }

  .threelt-auth-column > h1 {
    margin: 0;
    padding: 22px 16px 14px;
    font-size: 24px;
    line-height: 1.2;
  }

  .threelt-auth-card {
    padding: 20px 16px 22px;
    border-width: 1px 0;
  }

  .threelt-auth-form { gap: 18px; }
  .threelt-auth-field span { font-size: 14px; }

  .threelt-auth-field input {
    min-height: 48px;
    padding: 12px;
    font-size: 16px;
  }

  .threelt-auth-error {
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 14px;
    line-height: 1.55;
  }

  .threelt-auth-forgot {
    display: flex;
    min-height: 44px;
    align-self: stretch;
    align-items: center;
    font-size: 14px;
    font-weight: 600;
  }

  .threelt-auth-submit,
  .threelt-auth-provider {
    min-height: 52px;
    font-size: 15.5px;
  }

  .threelt-auth-switch {
    display: flex;
    min-height: 52px;
    margin: 0;
    padding: 0 16px;
    border-bottom: 1px solid var(--threelt-pale);
    align-items: center;
    justify-content: center;
    font-size: 14px;
  }

  .threelt-auth-switch:hover { background: var(--threelt-surface); text-decoration: none; }
  .threelt-auth-help { margin: 0; padding: 16px; }
  .threelt-auth-footer .threelt-footer__grid { display: flex; }
  .threelt-auth-footer .threelt-footer__bottom { border-top: 0; }

  .threelt-register-form { gap: 20px; }
  .threelt-register-grid,
  .threelt-register-grid--name { grid-template-columns: 1fr; gap: 20px; }
  .threelt-auth-field input,
  .threelt-auth-field select { min-height: 48px; padding: 12px; font-size: 16px; }
  .threelt-register-roles { gap: 0; }
  .threelt-register-roles legend { width: 100%; margin-bottom: 0; padding-bottom: 8px; border-bottom: 1px solid var(--threelt-pale-border); font-size: 14px; }
  .threelt-register-roles label { min-height: 52px; padding: 4px 0; border-bottom: 1px solid var(--threelt-pale-hover); align-items: center; gap: 12px; font-size: 14px; }
  .threelt-register-roles label:last-of-type { border-bottom: 0; }
  .threelt-register-roles input { width: 20px; height: 20px; margin: 0; }
  .threelt-register-roles small { display: block; margin: 0; font-size: 12px; }
  .threelt-register-roles p { margin-top: 6px; }
  .threelt-register-orcid { padding-top: 0; border-top: 0; gap: 10px; }
  .threelt-register-optional { display: flex; }
  .threelt-register-orcid__button { min-height: 52px; gap: 10px; font-size: 15.5px; }
  .threelt-register-form .captcha-question { font-size: 14px; }
  .threelt-register-form input[name="captcha_0"] { min-height: 48px; padding: 12px; font-size: 16px; }

  body.threelt-theme {
    font-size: 14px;
  }

  .threelt-desktop-only {
    display: none !important;
  }

  .threelt-mobile-only {
    display: flex !important;
  }

  .threelt-mobile-header {
    position: sticky;
    z-index: 20;
    top: 0;
    min-height: 56px;
    padding: 0 4px 0 14px;
    align-items: stretch;
    justify-content: space-between;
    gap: 8px;
    background: var(--threelt-ink);
    color: var(--threelt-white);
  }

  .threelt-mobile-header__brand {
    display: flex;
    min-width: 0;
    padding: 8px 0;
    align-items: center;
    color: var(--threelt-white) !important;
    font-family: var(--threelt-serif);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.15;
  }

  .threelt-mobile-header__brand:hover {
    text-decoration: none;
  }

  .threelt-mobile-header__actions {
    display: flex;
    align-items: center;
    gap: 2px;
  }

  .threelt-icon-button {
    display: flex;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid transparent;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: var(--threelt-white);
    cursor: pointer;
  }

  .threelt-icon-button:active {
    background: rgba(214, 228, 236, 0.22);
  }

  .threelt-icon-button--current { border-bottom: 3px solid var(--threelt-gold); }

  .threelt-search-icon {
    position: relative;
    display: block;
    width: 15px;
    height: 15px;
    border: 2px solid var(--threelt-white);
    border-radius: 50%;
  }

  .threelt-search-icon::after {
    position: absolute;
    right: -7px;
    bottom: -5px;
    width: 8px;
    height: 2px;
    background: var(--threelt-white);
    content: "";
    transform: rotate(45deg);
    transform-origin: left center;
  }

  .threelt-menu-button {
    flex-direction: column;
    gap: 4px;
  }

  .threelt-menu-button span {
    width: 20px;
    height: 2px;
    background: var(--threelt-white);
  }

  .threelt-mobile-menu {
    position: fixed;
    z-index: 30;
    inset: 0;
    width: 100%;
    max-width: 414px;
    margin: 0 auto;
    flex-direction: column;
    overflow-y: auto;
    background: var(--threelt-white);
    -webkit-overflow-scrolling: touch;
  }

  .threelt-mobile-menu__header {
    display: flex;
    min-height: 56px;
    padding: 0 4px 0 14px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    background: var(--threelt-ink);
    color: var(--threelt-pale);
  }

  .threelt-mobile-menu__header > span {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .threelt-menu-close {
    font-family: var(--threelt-sans);
    font-size: 22px;
  }

  .threelt-mobile-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .threelt-mobile-menu__primary {
    border-bottom: 1px solid var(--threelt-pale);
  }

  .threelt-mobile-menu__primary a {
    display: flex;
    min-height: 52px;
    padding: 0 16px 0 13px;
    border-bottom: 1px solid var(--threelt-mobile-hairline);
    border-left: 3px solid transparent;
    align-items: center;
    color: var(--threelt-ink);
    font-size: 15.5px;
    font-weight: 500;
  }

  .threelt-mobile-menu__primary li:last-child a {
    border-bottom: 0;
  }

  .threelt-mobile-menu__primary a.is-current {
    border-left-color: var(--threelt-gold);
    font-weight: 600;
  }

  .threelt-mobile-menu a:active {
    background: var(--threelt-pale);
  }

  .threelt-mobile-menu a:hover {
    text-decoration: none;
  }

  .threelt-mobile-menu__submission {
    padding: 16px;
    border-bottom: 1px solid var(--threelt-pale);
  }

  .threelt-mobile-menu__submission .threelt-button {
    width: 100%;
    min-height: 52px;
    font-size: 15.5px;
  }

  .threelt-mobile-menu__submission p {
    margin: 9px 0 0;
    color: var(--threelt-muted);
    font-size: 12px;
    line-height: 1.6;
  }

  .threelt-mobile-menu__group {
    display: block !important;
    padding: 14px 16px 4px;
  }

  .threelt-mobile-menu__group:last-child {
    padding-bottom: 28px;
  }

  .threelt-mobile-menu__group h2 {
    margin: 0 0 6px;
    color: var(--threelt-ink);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  .threelt-mobile-menu__group a {
    display: flex;
    min-height: 44px;
    border-bottom: 1px solid var(--threelt-mobile-hairline);
    align-items: center;
    color: var(--threelt-gold);
    font-size: 15.5px;
  }

  .threelt-mobile-menu__group li:last-child a {
    border-bottom: 0;
  }

  .threelt-mobile-menu .threelt-language-switcher select {
    min-height: 44px;
    font-size: 16px;
  }

  .threelt-messages {
    padding: 12px 16px 0;
  }

  .threelt-journal-intro__inner {
    display: flex;
    padding: 20px 16px 22px;
    flex-direction: column;
    gap: 10px;
  }

  .threelt-journal-intro__publisher {
    color: var(--threelt-muted);
    font-size: 12px;
    letter-spacing: 0.1em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  .threelt-journal-intro h1 {
    font-size: 24px;
    letter-spacing: -0.005em;
    line-height: 1.2;
  }

  .threelt-journal-intro__metadata {
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    color: var(--threelt-muted);
    font-size: 12px;
  }

  .threelt-journal-intro__copy {
    position: relative;
    display: block;
    max-width: none;
    color: var(--threelt-body);
    font-size: 14px;
    line-height: 1.7;
    transition: max-height 180ms ease;
  }

  .threelt-journal-intro__copy > * + * {
    margin-top: 12px;
  }

  .threelt-journal-intro__copy:not(.is-expanded) {
    max-height: 8.4em;
    overflow: hidden;
  }

  .threelt-journal-intro__copy:not(.is-expanded)::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2.4em;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--threelt-white));
    content: "";
    pointer-events: none;
  }

  .threelt-mission-toggle {
    min-height: 44px;
    padding: 0;
    border: 0;
    align-self: flex-start;
    align-items: center;
    background: transparent;
    color: var(--threelt-gold);
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    text-align: left;
  }

  .threelt-home-shell,
  .threelt-content-shell {
    padding: 0;
  }

  .threelt-home-grid,
  .threelt-content-grid {
    display: block;
    padding: 0;
  }

  .threelt-archive-header {
    display: flex;
    padding: 16px 16px 14px;
    border-bottom: 2px solid var(--threelt-ink);
    flex-direction: column;
    gap: 8px;
  }

  .threelt-editorial-header {
    display: flex;
    padding: 16px 16px 14px;
    border-bottom: 2px solid var(--threelt-ink);
    flex-direction: column;
    gap: 8px;
  }
  .threelt-editorial-header h1 { padding: 0; border: 0; font-size: 24px; line-height: 1.2; }
  .threelt-editorial-header > p { max-width: none; margin: 0; line-height: 1.7; }
  .threelt-editorial-group { margin: 0; }
  .threelt-editorial-group > h2 {
    margin: 0;
    padding: 14px 16px;
    border-bottom-color: var(--threelt-pale-border);
    background: var(--threelt-pale);
    font-size: 12px;
    letter-spacing: .08em;
  }
  .threelt-editorial-group__description { margin: 0; padding: 14px 16px; border-bottom: 1px solid var(--threelt-pale); }
  .threelt-editorial-members { display: block; }
  .threelt-editorial-member,
  .threelt-editorial-member--featured {
    display: flex;
    margin: 0 !important;
    padding: 20px 16px 24px;
    border-bottom: 1px solid var(--threelt-pale);
    flex-direction: column;
    gap: 14px;
  }
  .threelt-editorial-group--featured .threelt-editorial-member:last-child { border-bottom-width: 8px; }
  .threelt-editorial-member__portrait { width: 148px; }
  .threelt-editorial-member--featured .threelt-editorial-member__portrait { width: 180px; }
  .threelt-editorial-member__content { gap: 10px; }
  .threelt-editorial-member__name-row h3 { font-size: 17px; line-height: 1.3; }
  .threelt-editorial-member--featured .threelt-editorial-member__name-row h3 { font-size: 20px; line-height: 1.25; }
  .threelt-orcid-link { width: 44px; height: 44px; margin: -11px 0; align-items: center; justify-content: center; }
  .threelt-orcid-link:active { background: var(--threelt-pale); }
  .threelt-orcid-link svg { width: 18px; height: 18px; }
  .threelt-editorial-member__role,
  .threelt-editorial-member__affiliation,
  .threelt-editorial-member__bio { font-size: 14px; }
  .threelt-editorial-member__affiliation { line-height: 1.55; }
  .threelt-editorial-member__bio { line-height: 1.7; }
  .threelt-editorial-member__profile { display: inline-flex; min-height: 44px; align-items: center; font-size: 14px; }
  .threelt-editorial-review-note { max-width: none; margin: 0; padding: 16px; border-top: 0; line-height: 1.7; }
  .threelt-editorial-empty { padding: 36px 16px; }

  .threelt-issue-page-header { display: flex; padding: 16px 16px 14px; border-bottom: 2px solid var(--threelt-ink); flex-direction: column; gap: 8px; }
  .threelt-issue-page-header__title { padding: 0; border: 0; flex-direction: column; gap: 4px; }
  .threelt-issue-page-header__title h1 { font-size: 24px; line-height: 1.2; }
  .threelt-issue-page-header__title time { letter-spacing: .05em; }
  .threelt-issue-page-header__details { margin: 0; flex-direction: column; align-items: flex-start; gap: 10px; }
  .threelt-issue-page-header__details p { line-height: 1.65; }
  .threelt-issue-jump { margin: 0; border-width: 0 0 1px; }
  .threelt-issue-jump__toggle { width: 100%; min-height: 52px; padding: 0 16px; border: 0; align-items: center; justify-content: space-between; gap: 12px; background: transparent; color: var(--threelt-ink); cursor: pointer; font: 600 14px/1.4 var(--threelt-sans); text-align: left; }
  .threelt-issue-jump__toggle span span { color: var(--threelt-muted-strong); font-weight: 400; }
  .threelt-issue-jump__toggle:active { background: var(--threelt-pale-hover); }
  .threelt-issue-jump__panel { display: none; padding: 0 0 8px; border-top: 1px solid var(--threelt-pale-border); }
  .threelt-issue-jump__panel.is-open { display: block; }
  .threelt-issue-jump__panel ol { display: block; }
  .threelt-issue-jump__panel li { display: block; }
  .threelt-issue-jump__panel li > span { display: none; }
  .threelt-issue-jump__panel a { display: grid; min-height: 48px; padding: 11px 16px; border-bottom: 1px solid var(--threelt-pale-hover); grid-template-columns: minmax(0, 1fr); align-items: center; color: var(--threelt-ink); font-size: 14px; }
  .threelt-issue-jump__panel a:active { background: var(--threelt-pale-hover); text-decoration: none; }
  .threelt-article-item--numbered { scroll-margin-top: 64px; }
  .threelt-pagination { padding: 16px; flex-wrap: wrap; }
  .threelt-pagination a { display: inline-flex; min-height: 44px; padding: 0 14px; border: 1px solid var(--threelt-pale-border); align-items: center; font-size: 14px; }
  .threelt-issue-archives-link { padding: 16px; }
  .threelt-issue-archives-link .threelt-action { width: 100%; }
  .threelt-issue-empty { min-height: 240px; padding: 36px 16px; }

  .threelt-search-header { display: flex; padding: 16px 16px 14px; border-bottom: 2px solid var(--threelt-ink); flex-direction: column; gap: 8px; }
  .threelt-search-header h1 { margin: 0; padding: 0; border: 0; font-size: 24px; line-height: 1.2; }
  .threelt-search-form__query { padding: 14px 16px; }
  .threelt-search-form__query input { width: 100%; min-width: 0; min-height: 48px; padding: 12px; font-size: 16px; }
  .threelt-search-form__query .threelt-button { min-height: 48px; padding: 0 18px; }
  .threelt-search-form > .errorlist { margin: -8px 16px 10px; }
  .threelt-search-filters__toggle { width: 100%; min-height: 52px; padding: 0 16px; border: solid var(--threelt-pale-border); border-width: 1px 0; align-items: center; justify-content: space-between; background: var(--threelt-pale); color: var(--threelt-ink); cursor: pointer; font: 600 14px var(--threelt-sans); }
  .threelt-search-filters__toggle:active { background: var(--threelt-pale-hover); }
  .threelt-search-filters { display: none; margin: 0; padding: 16px; border-width: 0 0 1px; grid-template-columns: 1fr; align-items: stretch; gap: 18px; }
  .threelt-search-filters.is-open { display: grid; }
  .threelt-search-filter-fields { gap: 0; }
  .threelt-search-filter-fields label { width: 50%; min-height: 44px; font-size: 14px; }
  .threelt-search-filter-fields input { width: 18px; height: 18px; }
  .threelt-search-sort select { min-height: 48px; padding: 10px 12px; font-size: 16px; }
  .threelt-search-filter-actions { flex-direction: column; align-items: stretch; gap: 8px; }
  .threelt-search-filter-actions button { min-height: 48px; font-size: 15.5px; }
  .threelt-search-filter-actions a { display: flex; min-height: 44px; align-items: center; justify-content: center; font-size: 14px; font-weight: 600; }
  .threelt-search-results__summary { margin: 0; padding: 12px 16px 10px; }
  .threelt-search-results__summary h2 { font-size: 14px; }
  .threelt-search-empty { max-width: none; padding: 36px 16px 40px; justify-items: center; text-align: center; }
  .threelt-search-empty h2 { font-size: 17px; line-height: 1.3; }
  .threelt-search-empty p,
  .threelt-search-empty ul { font-size: 14px; }
  .threelt-search-empty ul { max-width: 34ch; text-align: left; }
  .threelt-search-empty .threelt-action { width: 100%; }
  .threelt-search-start { min-height: 240px; padding: 36px 16px; }
  .threelt-search-start h2 { font-size: 17px; }
  .threelt-search-keyword-notice { margin: 14px 16px 0; font-size: 14px; }

  .threelt-about-header { display: flex; padding: 16px 16px 14px; border-bottom: 2px solid var(--threelt-ink); flex-direction: column; gap: 8px; }
  .threelt-about-header h1 { padding: 0; border: 0; font-size: 24px; line-height: 1.2; }
  .threelt-about-lead { max-width: none; margin-top: 8px; padding: 14px 16px; font-size: 14px; line-height: 1.55; }
  .threelt-about-mobile-submission { padding: 16px; border-bottom: 1px solid var(--threelt-pale); flex-direction: column; gap: 10px; background: var(--threelt-pale); }
  .threelt-about-mobile-submission h2 { margin: 0; color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 15.5px; font-weight: 700; }
  .threelt-about-mobile-submission p { margin: 0; color: var(--threelt-muted-strong); font-size: 12px; line-height: 1.65; }
  .threelt-about-mobile-submission .threelt-button { width: 100%; min-height: 52px; }
  .threelt-about-toc { margin: 0; }
  .threelt-about-section { margin: 0; padding: 20px 16px 24px; scroll-margin-top: 64px; }
  .threelt-about-section--last,
  .threelt-about-section:last-child { border-bottom: 8px solid var(--threelt-pale); }
  .threelt-about-section > h2 { margin-bottom: 14px; font-size: 17px; }
  .threelt-about-section__body { max-width: none; gap: 14px; font-size: 14px; line-height: 1.7; }
  .threelt-about-mobile-details { flex-direction: column; }
  .threelt-about-mobile-details > section { display: flex; padding: 20px 16px 24px; border-bottom: 1px solid var(--threelt-pale); flex-direction: column; gap: 10px; }
  .threelt-about-details dd { font-size: 14px; }
  .threelt-about-office div,
  .threelt-about-office p { font-size: 14px; }
  .threelt-about-mobile-links { display: flex; padding: 16px; flex-direction: column; gap: 8px; }
  .threelt-about-mobile-links .threelt-action { width: 100%; }
  .threelt-about-submission-notice { margin: 0; border-width: 0 0 1px; }
  .threelt-about-empty { min-height: 240px; padding: 36px 16px; }

  .threelt-breadcrumb {
    margin: 0;
  }

  .threelt-archive-title-row {
    padding: 0;
    border: 0;
    gap: 12px;
  }

  .threelt-archive-title-row h1 {
    font-size: 24px;
    line-height: 1.2;
  }

  .threelt-archive-range {
    letter-spacing: 0.05em;
  }

  .threelt-archive-range__year {
    display: none;
  }

  .threelt-archive-summary {
    max-width: none;
    margin: 0;
    line-height: 1.65;
  }

  .threelt-archive-year {
    margin: 0;
  }

  .threelt-archive-year > h2 {
    margin: 0;
    padding: 12px 16px;
    border-bottom-color: var(--threelt-pale-border);
    background: var(--threelt-pale);
    font-size: 17px;
    letter-spacing: 0;
    line-height: 1.3;
    text-transform: none;
  }

  .threelt-archive-issue-list a {
    min-height: 60px;
    padding: 10px 16px;
    align-items: center;
    gap: 14px;
  }

  .threelt-archive-issue-list a:hover,
  .threelt-archive-issue-list a:active {
    background: var(--threelt-pale);
    color: var(--threelt-ink);
    text-decoration: none;
  }

  .threelt-archive-issue-list__title {
    font-size: 15.5px;
  }

  .threelt-archive-issue-list time {
    font-size: 14px;
  }

  .threelt-archive-empty {
    min-height: 260px;
    padding: 36px 16px 40px;
  }

  .threelt-archive-empty h2 {
    font-size: 17px;
  }

  .threelt-issue-header {
    padding: 18px 16px 12px;
    border-bottom: 2px solid var(--threelt-ink);
  }

  .threelt-issue-header__title-row {
    padding: 0;
    border: 0;
    gap: 12px;
  }

  .threelt-issue-header__title-row h2 {
    font-size: 17px;
  }

  .threelt-issue-header__title-row > span {
    letter-spacing: 0.05em;
    white-space: nowrap;
  }

  .threelt-issue-header__details {
    display: flex;
    margin: 8px 0 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .threelt-issue-header__details p {
    line-height: 1.6;
  }

  .threelt-action-group {
    width: 100%;
    gap: 8px;
  }

  .threelt-action {
    display: inline-flex;
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    line-height: 1.25;
  }

  .threelt-action:hover {
    background: var(--threelt-pale);
    text-decoration: none;
  }

  .threelt-action--primary {
    border-color: var(--threelt-gold);
  }

  .threelt-action--secondary {
    border-color: var(--threelt-pale-border);
    color: var(--threelt-ink) !important;
  }

  .threelt-article-item {
    display: flex;
    padding: 16px;
    border-bottom-color: var(--threelt-pale);
    flex-direction: column;
    gap: 7px;
  }

  .threelt-article-item--numbered {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    column-gap: 6px;
  }

  .threelt-article-item__title {
    max-width: none;
    font-size: 15.5px;
  }

  .threelt-article-item__authors {
    font-size: 14px;
    line-height: 1.55;
  }

  .threelt-article-item__meta,
  .threelt-article-item__doi {
    line-height: 1.65;
  }

  .threelt-publication-dates {
    display: none;
  }

  .threelt-action-group--article {
    margin-top: 3px;
  }

  .threelt-article-item__pdf-link {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    font-size: 14px;
  }

  .threelt-archives-link {
    margin: 0;
    padding: 16px;
  }

  .threelt-archives-link .threelt-button--secondary {
    width: 100%;
    min-height: 44px;
    padding: 0 14px;
    border-color: var(--threelt-pale-border);
    color: var(--threelt-ink) !important;
  }

  .threelt-archives-link .threelt-button--secondary:hover {
    background: var(--threelt-pale);
    text-decoration: none;
  }

  .threelt-most-read-mobile {
    display: block !important;
    padding: 18px 16px 20px;
    border-top: 1px solid var(--threelt-pale);
    background: #fafcfd;
  }

  .threelt-most-read-mobile .threelt-eyebrow {
    margin-bottom: 4px;
  }

  .threelt-most-read__list li {
    grid-template-columns: 24px minmax(0, 1fr);
    padding: 10px 0;
    border-bottom-color: var(--threelt-pale);
  }

  .threelt-most-read__rank,
  .threelt-most-read__content > a {
    font-size: 14px;
  }

  .threelt-most-read__note {
    margin-top: 9px;
  }

  .threelt-footer__grid {
    display: flex;
    padding: 22px 16px 18px;
    flex-direction: column;
    gap: 22px;
  }

  .threelt-footer section {
    gap: 10px;
  }

  .threelt-footer section + section {
    padding-top: 16px;
    border-top: 1px solid rgba(214, 228, 236, 0.28);
  }

  .threelt-footer__brand h2 {
    font-size: 15.5px;
    line-height: 1.3;
  }

  .threelt-footer p,
  .threelt-footer__rich-text,
  .threelt-footer__licenses {
    font-size: 14px;
    line-height: 1.65;
  }

  .threelt-footer__eyebrow {
    padding-bottom: 0;
    border: 0;
  }

  .threelt-footer__license-badge {
    min-height: 44px;
    padding: 10px 9px;
    align-items: center;
    font-size: 12px;
  }

  .threelt-footer__links {
    gap: 0;
  }

  .threelt-footer__links a {
    display: flex;
    min-height: 44px;
    border-bottom: 1px solid rgba(214, 228, 236, 0.2);
    align-items: center;
    color: var(--threelt-white);
    font-size: 14px;
  }

  .threelt-footer__links li:last-child a {
    border-bottom: 0;
  }

  .threelt-footer__links a:active {
    background: rgba(214, 228, 236, 0.22);
  }

  .threelt-footer__privacy-button {
    width: 100%;
    min-height: 44px;
  }

  .threelt-footer__bottom {
    flex-direction: column;
    padding: 14px 16px 18px;
    justify-content: flex-start;
    gap: 5px;
  }

  .threelt-consent {
    right: 0;
    bottom: 0;
    width: 100%;
    padding: 16px;
    border-width: 1px 0 0;
    border-top: 4px solid var(--threelt-gold);
    box-shadow: 0 -8px 28px rgba(31, 59, 77, 0.18);
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
  }

  .threelt-consent__actions { flex-direction: column-reverse; }
  .threelt-consent__button { min-height: 48px; font-size: 14px; }

  .threelt-empty-state {
    min-height: 300px;
    padding: 36px 16px;
  }

  .threelt-empty-state--homepage {
    min-height: 300px;
  }
}

.threelt-article-main { min-width: 0; }
.threelt-article-header { padding-bottom: 16px; border-bottom: 1px solid var(--threelt-hairline); }
.threelt-article-pages { margin: 0 0 12px; color: var(--threelt-muted); font-size: 12px; }
.threelt-article-badges { display: flex; margin-bottom: 12px; flex-wrap: wrap; gap: 10px; }
.threelt-status-badge { display: inline-flex; padding: 3px 8px; border: 1px solid var(--threelt-green); border-radius: 2px; align-items: center; gap: 5px; background: rgba(127, 165, 130, .14); color: var(--threelt-green-text); font-size: 12px; line-height: 1.4; }
.threelt-status-badge > span { width: 7px; height: 7px; border-radius: 50%; background: var(--threelt-green); }
.threelt-article-header > h1 { display: block; clear: both; max-width: 26ch; margin: 0 0 16px; color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 30px; font-weight: 600; letter-spacing: -.01em; line-height: 1.22; text-wrap: pretty; }
.threelt-article-authors { display: flex; clear: both; width: 100%; flex-direction: column; gap: 8px; }
.threelt-article-authors h2 { display: none; }
.threelt-article-authors ul { display: flex; margin: 0; padding: 0; flex-wrap: wrap; gap: 6px 20px; list-style: none; }
.threelt-article-authors li { display: inline-flex; align-items: center; gap: 7px; color: var(--threelt-ink); }
.threelt-article-authors .threelt-author-name { color: var(--threelt-ink) !important; font-size: 14.5px; font-weight: 600; }
.threelt-orcid { display: inline-flex; flex: 0 0 15px; }
.threelt-orcid svg { width: 15px; height: 15px; }
.threelt-article-authors sup, .threelt-correspondence sup { color: var(--threelt-gold); font-size: 12px; font-weight: 600; }
.threelt-corresponding-label, .threelt-author-affiliations, .threelt-correspondence { color: var(--threelt-muted); font-size: 12px; line-height: 1.7; }
.threelt-author-affiliations, .threelt-correspondence { margin: 0; }
.threelt-correspondence a { color: var(--threelt-muted); }
.threelt-review-credit { display: flex; margin-top: 20px; padding: 16px 16px 18px; border: 1px solid var(--threelt-pale-border); border-left: 4px solid var(--threelt-ink); flex-direction: column; gap: 8px; background: var(--threelt-pale); }
.threelt-review-credit h2, .threelt-article-keywords h2, .threelt-citation-box h2, .threelt-article-secondary h2 { margin: 0; color: var(--threelt-ink); font-family: var(--threelt-sans); font-size: 12px; font-weight: 600; letter-spacing: .08em; line-height: 1.4; text-transform: uppercase; }
.threelt-review-credit ul { display: grid; margin: 0; padding: 0; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 6px 24px; list-style: none; }
.threelt-review-credit li { display: flex; color: var(--threelt-body); font-size: 14.5px; flex-direction: column; gap: 1px; }
.threelt-review-credit li small { color: var(--threelt-muted); font-size: 12px; }
.threelt-review-credit p { margin: 0; color: var(--threelt-muted-strong); font-size: 12px; line-height: 1.65; }
.threelt-article-section { margin-top: 28px; }
.threelt-article-section > h2 { margin: 0 0 10px; padding-bottom: 8px; border-bottom: 2px solid var(--threelt-ink); color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 20px; font-weight: 600; line-height: 1.35; }
.threelt-prose { max-width: 70ch; color: var(--threelt-body); font-size: 14.5px; line-height: 1.75; }
.threelt-prose > :first-child { margin-top: 0; }
.threelt-prose > :last-child { margin-bottom: 0; }
.threelt-article-keywords { margin-top: 28px; }
.threelt-article-keywords h2 { margin-bottom: 10px; }
.threelt-article-keywords ul { display: flex; margin: 0; padding: 0; flex-wrap: wrap; gap: 8px; list-style: none; }
.threelt-article-keywords a, .threelt-article-keywords span { display: inline-flex; padding: 7px 13px; border: 1px solid var(--threelt-pale-border); align-items: center; background: var(--threelt-pale); color: var(--threelt-ink); font-size: 14.5px; font-weight: 500; }
.threelt-article-keywords a:hover { background: var(--threelt-pale-hover); color: var(--threelt-ink); text-decoration: none; }
.threelt-article-actions { display: flex; margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--threelt-hairline); flex-direction: column; gap: 14px; }
.threelt-article-actions p { margin: 0; color: var(--threelt-muted); font-size: 12px; overflow-wrap: anywhere; }
.threelt-article-actions > div { display: flex; flex-wrap: wrap; gap: 10px; }
.threelt-citation-box { display: flex; margin-top: 14px; padding: 16px 16px 18px; border: 1px solid var(--threelt-pale-border); flex-direction: column; gap: 10px; background: var(--threelt-pale); scroll-margin-top: 16px; }
.threelt-citation-text { padding: 12px 14px; border: 1px solid var(--threelt-pale-border); background: var(--threelt-white); color: var(--threelt-ink); font-size: 14.5px; line-height: 1.7; overflow-wrap: anywhere; }
.threelt-citation-text > :first-child, .threelt-citation-text > :last-child { margin: 0; }
.threelt-citation-exports { display: flex; flex-wrap: wrap; gap: 16px; }
.threelt-citation-exports a { color: var(--threelt-gold); font-size: 12px; font-weight: 600; }
.threelt-full-text { display: flex; margin-top: 28px; padding: 16px 16px 18px; border: 1px solid var(--threelt-pale-border); align-items: center; justify-content: space-between; gap: 24px; }
.threelt-full-text h2 { margin: 0; color: var(--threelt-ink); font-family: var(--threelt-serif); font-size: 20px; font-weight: 600; }
.threelt-full-text p { margin: 5px 0 0; color: var(--threelt-muted); font-size: 12px; }
.threelt-full-text__downloads { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.threelt-article-secondary { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--threelt-hairline); color: var(--threelt-body); }
.threelt-article-secondary h2 { margin-bottom: 10px; }
.threelt-article-secondary ul { margin: 0; padding-left: 20px; }
.threelt-article-body { max-width: 70ch; margin-top: 32px; padding-top: 24px; border-top: 2px solid var(--threelt-ink); color: var(--threelt-body); line-height: 1.75; }
.threelt-article-body h1, .threelt-article-body h2, .threelt-article-body h3, .threelt-article-body h4 { color: var(--threelt-ink); font-family: var(--threelt-serif); }
.threelt-article-body img, .threelt-article-body table { max-width: 100%; }
.threelt-article-body table { display: block; border-collapse: collapse; overflow-x: auto; }
.threelt-article-body th, .threelt-article-body td { padding: 7px 9px; border: 1px solid var(--threelt-pale-border); }
.threelt-public-review { margin-top: 24px; padding: 14px 16px; border: 1px solid var(--threelt-pale-border); color: var(--threelt-body); }
.threelt-public-review summary { color: var(--threelt-ink); cursor: pointer; font-weight: 600; }
.threelt-article-license { display: flex; margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--threelt-hairline); align-items: flex-start; gap: 18px; }
.threelt-license-mark { display: inline-flex; padding: 9px 12px; border: 1px solid var(--threelt-pale-border); color: var(--threelt-ink); font-size: 12px; font-weight: 600; letter-spacing: .06em; white-space: nowrap; }
.threelt-article-license p { max-width: 70ch; margin: 0 0 7px; color: var(--threelt-muted); font-size: 12px; line-height: 1.75; }
.threelt-article-details { padding: 14px 16px 16px; border: 1px solid var(--threelt-pale-border); }
.threelt-article-details .threelt-eyebrow, .threelt-article-usage .threelt-eyebrow { padding-bottom: 7px; border-bottom: 1px solid var(--threelt-ink); }
.threelt-article-details dl { display: grid; margin: 10px 0 0; gap: 8px; }
.threelt-article-details dl > div { display: flex; flex-direction: column; gap: 1px; }
.threelt-article-details dt { color: var(--threelt-muted); font-size: 12px; }
.threelt-article-details dd { margin: 0; color: var(--threelt-body); font-size: 14.5px; font-variant-numeric: tabular-nums; }
.threelt-article-usage dl { display: grid; margin: 10px 0 0; gap: 7px; }
.threelt-article-usage dl > div { display: flex; padding-bottom: 6px; border-bottom: 1px solid var(--threelt-hairline); justify-content: space-between; gap: 12px; }
.threelt-article-usage dl > div:last-child { padding-bottom: 0; border: 0; }
.threelt-article-usage dt, .threelt-article-usage dd { margin: 0; color: var(--threelt-muted); font-size: 12px; }
.threelt-article-usage dd { color: var(--threelt-muted-strong); font-weight: 600; font-variant-numeric: tabular-nums; }

@media (max-width: 767px) {
  .threelt-article-page { padding: 0; }
  .threelt-article-page .threelt-content-grid { display: block; }
  .threelt-article-main > .threelt-breadcrumbs { margin: 0; padding: 14px 16px 10px; }
  .threelt-article-header { padding: 0 16px 16px; }
  .threelt-article-pages { margin-bottom: 10px; }
  .threelt-article-badges { margin-bottom: 10px; gap: 8px; }
  .threelt-article-header > h1 { max-width: none; margin-bottom: 14px; font-size: 24px; line-height: 1.2; }
  .threelt-article-authors h2 { display: block; margin: 0 0 4px; color: var(--threelt-ink); font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
  .threelt-article-authors ul { flex-direction: column; gap: 8px; }
  .threelt-article-authors li { min-height: 24px; flex-wrap: wrap; }
  .threelt-author-name { font-size: 14px; }
  .threelt-orcid { flex-basis: 18px; }
  .threelt-orcid svg { width: 18px; height: 18px; }
  .threelt-corresponding-label { display: none; }
  .threelt-author-affiliations { display: none; }
  .threelt-review-credit { margin: 16px; padding: 14px 16px 16px; }
  .threelt-review-credit ul { display: flex; flex-direction: column; gap: 6px; }
  .threelt-review-credit li, .threelt-review-credit a { font-size: 14px; }
  .threelt-article-section { margin: 0; padding: 6px 16px 18px; }
  .threelt-article-section > h2 { font-size: 17px; }
  .threelt-prose { font-size: 14px; line-height: 1.7; }
  .threelt-article-keywords { margin: 0; padding: 0 16px 20px; }
  .threelt-article-keywords a, .threelt-article-keywords span { min-height: 44px; padding: 0 14px; font-size: 14px; }
  .threelt-article-actions { margin: 0; padding: 16px; border-top-color: var(--threelt-pale); gap: 12px; }
  .threelt-article-actions > div { flex-direction: column; gap: 8px; }
  .threelt-article-actions .threelt-action { width: 100%; min-height: 48px; }
  .threelt-citation-box { margin: 0 16px 20px; padding: 14px 16px 16px; scroll-margin-top: 64px; }
  .threelt-citation-text { padding: 12px; font-size: 14px; line-height: 1.65; }
  .threelt-citation-exports { gap: 8px; }
  .threelt-citation-exports a { display: inline-flex; min-height: 44px; padding: 0 12px; border: 1px solid var(--threelt-pale-border); align-items: center; background: var(--threelt-white); color: var(--threelt-ink); }
  .threelt-full-text { margin: 0 16px 20px; padding: 16px; flex-direction: column; align-items: stretch; gap: 10px; }
  .threelt-full-text h2 { font-size: 17px; }
  .threelt-full-text__downloads { flex-direction: column; }
  .threelt-full-text__downloads .threelt-button { width: 100%; min-height: 52px; }
  .threelt-article-secondary, .threelt-article-body, .threelt-public-review { margin: 0; padding: 18px 16px; border-width: 1px 0 0; }
  .threelt-article-license { margin: 0; padding: 0 16px 22px; border: 0; flex-direction: column; gap: 10px; }
  .threelt-article-back { padding: 0 16px 20px; }
  .threelt-article-back a { display: flex; min-height: 44px; padding: 0 14px; border: 1px solid var(--threelt-pale-border); align-items: center; color: var(--threelt-ink); font-size: 14px; font-weight: 600; }
}

.threelt-contact-page {
  flex: 1;
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 0 32px;
}

.threelt-contact-main { min-width: 0; }
.threelt-contact-main > .threelt-breadcrumb { display: flex; gap: 8px; }
.threelt-contact-heading h1 {
  margin: 0 0 22px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--threelt-ink);
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
}

.threelt-contact-form { display: flex; max-width: 70ch; flex-direction: column; gap: 20px; }
.threelt-contact-field { display: flex; margin: 0; flex-direction: column; gap: 6px; }
.threelt-contact-field > span,
.threelt-contact-captcha__label { color: var(--threelt-ink); font-size: 14.5px; font-weight: 600; }
.threelt-contact-field b,
.threelt-contact-captcha b { color: var(--threelt-gold); }
.threelt-contact-field input,
.threelt-contact-field select,
.threelt-contact-field textarea,
.threelt-contact-captcha input[name="captcha_0"] {
  width: 100%;
  padding: 11px 12px;
  border: 1px solid #7f9aa8;
  border-radius: 0;
  background: var(--threelt-white);
  color: var(--threelt-ink);
  font-size: 14.5px;
}
.threelt-contact-field textarea { height: 154px; min-height: 154px; line-height: 1.6; resize: vertical; }
.threelt-contact-field input:focus,
.threelt-contact-field select:focus,
.threelt-contact-field textarea:focus,
.threelt-contact-captcha input[name="captcha_0"]:focus { outline: 2px solid var(--threelt-gold); outline-offset: -1px; }
.threelt-contact-captcha { display: flex; flex-direction: column; gap: 6px; }
.threelt-contact-captcha .captcha-question { color: var(--threelt-muted); font-size: 12px; }
.threelt-contact-captcha input[name="captcha_0"] { max-width: 160px; }
.threelt-contact-errors { padding: 11px 14px; border: 1px solid var(--threelt-ink); border-left-width: 4px; color: var(--threelt-ink); font-weight: 600; }
.threelt-contact-errors p { margin: 0; }
.threelt-contact-errors p + p { margin-top: 5px; }
.threelt-contact-submit { min-height: 44px; padding: 10px 16px; border: 1px solid var(--threelt-gold-border); border-radius: 0; background: var(--threelt-gold); color: var(--threelt-white); font-weight: 600; cursor: pointer; }
.threelt-contact-submit:hover { background: var(--threelt-gold-hover); }
.threelt-contact-submit:disabled { border-color: #9aa9b2; background: #9aa9b2; cursor: not-allowed; }
.threelt-contact-unavailable { margin: 0; padding: 11px 14px; border: 1px solid var(--threelt-pale-border); border-left: 4px solid var(--threelt-ink); background: var(--threelt-white); color: var(--threelt-body); }

.threelt-contact-sidebar { display: flex; flex-direction: column; gap: 26px; }
.threelt-contact-representatives,
.threelt-contact-related { display: flex; flex-direction: column; gap: 10px; }
.threelt-contact-representatives > .threelt-eyebrow,
.threelt-contact-related > .threelt-eyebrow { padding-bottom: 7px; border-bottom: 1px solid var(--threelt-ink); }
.threelt-contact-representatives__list { display: flex; flex-direction: column; gap: 12px; }
.threelt-contact-representatives article { display: flex; padding-bottom: 12px; border-bottom: 1px solid var(--threelt-hairline); flex-direction: column; gap: 1px; }
.threelt-contact-representatives article:last-child { padding-bottom: 0; border-bottom: 0; }
.threelt-contact-representatives h3 { margin: 0; color: var(--threelt-ink); font-size: 14.5px; font-weight: 600; line-height: 1.5; }
.threelt-contact-representatives p,
.threelt-contact-representatives a { margin: 0; font-size: 12px; line-height: 1.55; }
.threelt-contact-representatives p { color: var(--threelt-muted); }
.threelt-contact-information { padding-top: 10px; border-top: 1px solid var(--threelt-hairline); color: var(--threelt-body); font-size: 12px; line-height: 1.65; }
.threelt-contact-information > :first-child { margin-top: 0; }
.threelt-contact-information > :last-child { margin-bottom: 0; }
.threelt-contact-empty { color: var(--threelt-muted); font-size: 12px; }
.threelt-contact-related .threelt-action { justify-content: flex-start; padding: 0; border: 0; min-height: auto; color: var(--threelt-gold) !important; font-size: 14.5px; font-weight: 400; }
.threelt-contact-related .threelt-action:hover { background: transparent; text-decoration: underline; }

@media (max-width: 767px) {
  .threelt-contact-page { max-width: none; padding: 0; }
  .threelt-contact-layout { display: flex; padding: 0; flex-direction: column; gap: 0; }
  .threelt-contact-heading { display: flex; padding: 16px 16px 14px; border-bottom: 2px solid var(--threelt-ink); flex-direction: column; gap: 8px; }
  .threelt-contact-heading .threelt-breadcrumb { display: flex !important; margin: 0; gap: 8px; }
  .threelt-contact-heading h1 { margin: 0; padding: 0; border: 0; font-size: 24px; line-height: 1.2; }
  .threelt-contact-form-section { padding: 20px 16px 24px; border-bottom: 1px solid var(--threelt-pale); }
  .threelt-contact-form { max-width: none; gap: 18px; }
  .threelt-contact-field > span,
  .threelt-contact-captcha__label { font-size: 14px; }
  .threelt-contact-field input,
  .threelt-contact-field select,
  .threelt-contact-field textarea,
  .threelt-contact-captcha input[name="captcha_0"] { min-height: 48px; padding: 12px; font-size: 16px; }
  .threelt-contact-field textarea { min-height: 164px; }
  .threelt-contact-errors { padding: 0; border: 0; font-size: 14px; line-height: 1.55; }
  .threelt-contact-unavailable { padding: 0; border: 0; background: transparent; font-size: 14px; line-height: 1.55; }
  .threelt-contact-submit { min-height: 52px; padding: 0 16px; font-size: 15.5px; }
  .threelt-contact-sidebar { gap: 0; }
  .threelt-contact-representatives { padding: 20px 16px 24px; border-bottom: 1px solid var(--threelt-pale); gap: 14px; }
  .threelt-contact-representatives__list { gap: 14px; }
  .threelt-contact-representatives article { padding-bottom: 14px; border-bottom-color: var(--threelt-mobile-hairline); }
  .threelt-contact-representatives h3 { font-size: 15.5px; }
  .threelt-contact-information { font-size: 14px; }
  .threelt-contact-submission { padding: 16px; border-width: 0 0 8px; }
  .threelt-contact-submission .threelt-button { min-height: 52px; }
  .threelt-contact-related { padding: 16px; gap: 8px; }
  .threelt-contact-related .threelt-action { min-height: 44px; padding: 0 14px; border: 1px solid; justify-content: center; font-size: 14px; font-weight: 600; }
  .threelt-contact-related .threelt-action--primary { border-color: var(--threelt-gold); }
  .threelt-contact-related .threelt-action--secondary { border-color: var(--threelt-pale-border); color: var(--threelt-ink) !important; }
  .threelt-contact-related .threelt-action:hover { background: var(--threelt-pale); text-decoration: none; }
}

.threelt-error-main {
  width: 100%;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 0 32px;
  flex: 1;
}

.threelt-error-content {
  max-width: 640px;
  padding: 72px 0 96px;
}

.threelt-error-breadcrumb {
  display: flex;
  margin-bottom: 28px;
  gap: 8px;
}

.threelt-error-code {
  margin: 0;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 72px;
  font-weight: 600;
  letter-spacing: -.01em;
  line-height: 1;
}

.threelt-error-content h1 {
  margin: 14px 0 0;
  color: var(--threelt-ink);
  font-family: var(--threelt-serif);
  font-size: 30px;
  font-weight: 600;
  line-height: 1.2;
}

.threelt-error-description {
  max-width: 60ch;
  margin: 14px 0 0;
  color: var(--threelt-body);
  font-size: 14.5px;
  line-height: 1.6;
  text-wrap: pretty;
}

.threelt-error-search {
  display: flex;
  max-width: 420px;
  margin-top: 22px;
  gap: 8px;
}

.threelt-error-search input {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid #7f9aa8;
  flex: 1;
  background: var(--threelt-white);
  color: var(--threelt-ink);
  font-size: 14.5px;
}

.threelt-error-search button {
  padding: 10px 18px;
  border: 1px solid var(--threelt-gold-border);
  background: var(--threelt-gold);
  color: var(--threelt-white);
  cursor: pointer;
  font-size: 14.5px;
  font-weight: 600;
}

.threelt-error-search button:hover { background: var(--threelt-gold-hover); }

.threelt-error-actions {
  display: flex;
  margin-top: 24px;
  flex-wrap: wrap;
  gap: 12px;
}

.threelt-error-actions .threelt-button {
  min-height: 44px;
  padding: 10px 22px;
}

.threelt-error-text-link { margin: 16px 0 0; }
.threelt-error-text-link a { font-size: 14.5px; }

.threelt-error-minimal-header {
  background: var(--threelt-ink);
  color: var(--threelt-white);
}

.threelt-error-minimal-header > div {
  display: flex;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 18px 32px;
  align-items: baseline;
  gap: 24px;
}

.threelt-error-minimal-header span {
  font-family: var(--threelt-serif);
  font-size: 20px;
  font-weight: 600;
}

.threelt-error-minimal-header small { color: var(--threelt-pale); font-size: 12px; }
.threelt-error-main--fallback .threelt-error-content { padding: 56px 0 72px; }

.threelt-error-minimal-footer {
  background: var(--threelt-ink);
  color: var(--threelt-pale);
}

.threelt-error-minimal-footer > div {
  display: flex;
  max-width: var(--threelt-content-width);
  margin: 0 auto;
  padding: 18px 32px;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 12px;
}

.threelt-error-minimal-footer a { color: var(--threelt-white); text-decoration: underline; }

@media (max-width: 767px) {
  .threelt-error-main { padding: 0 16px; }
  .threelt-error-content { padding: 28px 0; }
  .threelt-error-breadcrumb { margin-bottom: 20px; }
  .threelt-error-code { font-size: 44px; }
  .threelt-error-content h1 { margin-top: 12px; font-size: 24px; }
  .threelt-error-description { margin-top: 12px; font-size: 14px; line-height: 1.7; }
  .threelt-error-search { margin-top: 18px; flex-direction: column; }
  .threelt-error-search input, .threelt-error-search button { min-height: 48px; }
  .threelt-error-actions { margin-top: 22px; flex-direction: column; gap: 10px; }
  .threelt-error-actions .threelt-button { width: 100%; min-height: 48px; padding: 0 16px; }
  .threelt-error-text-link { margin-top: 16px; text-align: center; }
  .threelt-error-text-link a { font-size: 14px; }
  .threelt-error-minimal-header > div { min-height: 52px; padding: 0 16px; align-items: center; }
  .threelt-error-minimal-header span { font-size: 17px; }
  .threelt-error-minimal-header small { display: none; }
  .threelt-error-main--fallback .threelt-error-content { padding: 36px 0; }
  .threelt-error-minimal-footer > div { padding: 16px; flex-direction: column; gap: 8px; }
}

@media print {
  .threelt-theme a {
    color: var(--threelt-ink);
    text-decoration: none;
  }

  .threelt-theme [data-print-omit],
  .threelt-footer,
  .threelt-mobile-header,
  .threelt-home-sidebar,
  .threelt-page-sidebar,
  .threelt-most-read-mobile,
  .threelt-mission-toggle {
    display: none !important;
  }

  .threelt-home-grid,
  .threelt-content-grid {
    display: block;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .threelt-journal-intro__copy {
    transition: none;
  }
}
