/* Zerthun public portal. Local Cinzel / Source Sans 3 are provided by portal.css. */
.zt-site {
  --zt-rail: 232px;
  --zt-gap: 24px;
  --zt-gold: #c59750;
  --zt-gold-bright: #f3d59d;
  --zt-gold-line: #a88047;
  --zt-ink: #080d11;
  --zt-panel: #10171c;
  --zt-text: #e5e0d4;
  --zt-muted: #b7bdc2;
  --zt-link: #afd4e1;
  --zt-menu-wood-color: #24150d;
  --zt-menu-wood-image: url('assets/menu-chipped-button-v2.png');
  --zt-menu-wood-shade: linear-gradient(#12090580, #12090580);
  --zt-menu-wood-fill: var(--zt-menu-wood-shade), var(--zt-menu-wood-image);
  --zt-action-account-image: url('assets/action-account-v1.png');
  --zt-action-play-image: url('assets/action-play-v1.png');
  --zt-action-learn-image: url('assets/action-learn-v1.png');
  --zt-banner-image: url('assets/banner-cloth-v1.png');
  position: relative;
  isolation: isolate;
  min-height: 100svh;
  color: var(--zt-text);
  background: #090f14;
  font: 15px/1.5 'Source Sans 3', Candara, sans-serif;
  overflow-wrap: break-word;
}
@supports (background-image: image-set(url('assets/menu-chipped-button-v2.webp') type('image/webp'))) {
  .zt-site {
    --zt-menu-wood-image: image-set(url('assets/menu-chipped-button-v2.webp') type('image/webp'), url('assets/menu-chipped-button-v2.png') type('image/png'));
    --zt-action-account-image: image-set(url('assets/action-account-v1.webp') type('image/webp'), url('assets/action-account-v1.png') type('image/png'));
    --zt-action-play-image: image-set(url('assets/action-play-v1.webp') type('image/webp'), url('assets/action-play-v1.png') type('image/png'));
    --zt-action-learn-image: image-set(url('assets/action-learn-v1.webp') type('image/webp'), url('assets/action-learn-v1.png') type('image/png'));
    --zt-banner-image: image-set(url('assets/banner-cloth-v1.webp') type('image/webp'), url('assets/banner-cloth-v1.png') type('image/png'));
  }
}
.zt-site::before {
  content: '';
  position: absolute;
  z-index: -2;
  inset: 0;
  pointer-events: none;
  background: #0d1922 url('assets/panorama-v4.webp') left top / max(1360px, 100vw) auto no-repeat;
}
.zt-site::after {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #01070b55 0, #02080b22 23%, transparent 47%, #02070b15 80%, #01070b68),
    linear-gradient(180deg, #02080b45 0, transparent 15%, #02080b0a 41%, #03090b80 67%, #050b0eeb 100%);
}
.zt-torch-scene {
  --zt-torch-scene-width: max(1360px, 100vw);
  --zt-torch-x: .0546875;
  --zt-torch-y: .2841796875;
  --zt-torch-size: .140625;
  --zt-torch-horizontal-mask: linear-gradient(90deg, transparent, #000 10px, #000 calc(100% - 10px), transparent);
  position: absolute;
  z-index: -2;
  left: calc(var(--zt-torch-scene-width) * var(--zt-torch-x));
  top: calc(var(--zt-torch-scene-width) * var(--zt-torch-y));
  width: calc(var(--zt-torch-scene-width) * var(--zt-torch-size));
  aspect-ratio: 1;
  opacity: 0;
  pointer-events: none;
  -webkit-mask-image: var(--zt-torch-horizontal-mask),
    linear-gradient(transparent, #000 10px, #000 calc(100% - 10px), transparent);
  mask-image: var(--zt-torch-horizontal-mask),
    linear-gradient(transparent, #000 10px, #000 calc(100% - 10px), transparent);
  -webkit-mask-composite: source-in;
  mask-composite: intersect;
}
.zt-torch-scene--wall {
  --zt-torch-x: 0;
  --zt-torch-y: .12890625;
  --zt-torch-size: .109375;
  --zt-torch-horizontal-mask: linear-gradient(90deg, #000, #000 calc(100% - 10px), transparent);
}
.zt-torch-scene--knight-wolf {
  --zt-torch-x: .15625;
  --zt-torch-y: .0703125;
  --zt-torch-size: .203125;
}
.zt-torch-scene.is-active { opacity: 1; }
.zt-torch-scene > video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: fill; }
@media (max-width: 800px), (prefers-reduced-motion: reduce) {
  .zt-torch-scene { display: none !important; }
}
.zt-site *, .zt-site *::before, .zt-site *::after { box-sizing: border-box; }
.zt-site a { color: inherit; text-decoration: none; }
.zt-site button { font: inherit; }
.zt-site :is(a, button, summary):focus-visible { outline: 2px solid #ffdf98; outline-offset: 4px; }
.zt-site [hidden] { display: none !important; }
.realm-embedded .zt-site { display: none !important; }
.zt-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.zt-site .realm-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.zt-nav-illustration {
  display: block;
  flex: 0 0 auto;
  fill: none;
  stroke: none;
  filter: drop-shadow(1px 2px 1px #0009);
}
.zt-layout {
  display: grid;
  grid-template-columns: var(--zt-rail) minmax(0, 1fr);
  column-gap: var(--zt-gap);
  width: min(100%, 1900px);
  min-width: 0;
  margin-inline: auto;
  padding: 0 28px 20px;
}
.zt-sidebar { position: relative; min-width: 0; padding-top: 17px; align-self: start; }
.zt-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 115px;
  margin: 0 0 19px;
  text-align: center;
  filter: drop-shadow(0 3px 7px #000d);
}
.zt-brand-emblem, .zt-brand > .realm-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 46px;
  color: #edc780;
  background: radial-gradient(ellipse, #f5ad3a38, transparent 72%);
}
.zt-brand-emblem .realm-icon { width: 39px; height: 39px; stroke-width: 1.1; }
.zt-brand-title, .zt-brand > strong {
  display: block;
  color: #f1d4a0;
  font: 600 39px/1.13 Cinzel, 'Palatino Linotype', serif;
  letter-spacing: .025em;
  text-shadow: 0 2px 0 #3d230f, 0 0 14px #a861235c;
}
.zt-brand-tagline, .zt-brand > small {
  display: none;
  margin-top: 5px;
  color: #e4d4b8;
  font: 400 10px/1.3 Cinzel, 'Palatino Linotype', serif;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.zt-brand-art { position: relative; display: block; width: 100%; max-width: 232px; aspect-ratio: 640 / 432; }
.zt-brand-art img { display: block; width: 100%; height: auto; object-fit: contain; }
.zt-brand-picture { display: block; }
.zt-brand-video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; opacity: 0; pointer-events: none; }
.zt-brand-art.is-hydra-playing > .zt-brand-picture { opacity: 0; }
.zt-brand-art.is-hydra-playing > .zt-brand-video { opacity: 1; }
@media (max-width: 800px), (prefers-reduced-motion: reduce) {
  .zt-brand-art.is-hydra-playing > .zt-brand-picture { opacity: 1; }
  .zt-brand-art > .zt-brand-video { display: none; }
}
.zt-brand>.zt-brand-art { width: calc(100% + 56px); max-width: 288px; }
.zt-mobile-brand .zt-brand-art { width: 180px; }
.zt-footer-brand .zt-brand-art { width: 108px; }
.zt-mobile-brand .zt-brand-title, .zt-footer-brand .zt-brand-title { font: inherit; letter-spacing: inherit; }
/* Existing outer frame around six contiguous flat wooden cells. */
.zt-side-nav {
  position: relative;
  isolation: isolate;
  display: grid;
  gap: 0;
  padding: 16px 12px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  box-shadow: none;
}
.zt-side-nav::before {
  content: '';
  position: absolute;
  z-index: 2;
  inset: -8px;
  border: solid transparent;
  border-width: 30px 25px;
  border-image-source: url('assets/menu-chipped-frame-v2.png');
  border-image-source: image-set(url('assets/menu-chipped-frame-v2.webp') type('image/webp'), url('assets/menu-chipped-frame-v2.png') type('image/png'));
  border-image-slice: 120 100 110 100;
  border-image-repeat: stretch;
  filter: brightness(.95) saturate(.9) drop-shadow(0 5px 8px #0009);
  pointer-events: none;
}
.zt-side-nav::after {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 10px 9px;
  background-color: #24150d;
  background-image: linear-gradient(#160b07a6, #160b07a6), url('assets/menu-chipped-button-v2.png');
  background-image: linear-gradient(#160b07a6, #160b07a6), image-set(url('assets/menu-chipped-button-v2.webp') type('image/webp'), url('assets/menu-chipped-button-v2.png') type('image/png'));
  background-size: 100% 100%, 400% 100%;
  background-position: center;
  background-repeat: no-repeat;
  box-shadow: inset 0 0 18px #070301;
  pointer-events: none;
}
.zt-nav-item {
  position: relative;
  display: grid;
  grid-template-columns: 35px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  min-height: 60px;
  padding: 10px 9px;
  border: 1px solid #8466427a;
  border-radius: 2px;
  color: #e8d6b5 !important;
  background: linear-gradient(110deg, #18222c, #10171fd9 65%, #0a1017);
  box-shadow: inset 0 1px 0 #e1be7b17, 0 2px 4px #0008;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}
.zt-nav-item > .realm-icon, .zt-nav-icon { width: 29px; height: 29px; color: #dbb77a; }
.zt-nav-item strong, .zt-nav-title {
  display: block;
  color: #f0e0bd;
  font: 500 13px/1.3 Cinzel, 'Palatino Linotype', serif;
  letter-spacing: .025em;
}
.zt-nav-item small, .zt-nav-subtitle { display: block; margin-top: 3px; color: #bdc6ce; font-size: 12px; line-height: 1.25; }
.zt-nav-item:hover, .zt-nav-item:focus-visible { border-color: #e4bd73; background: #24313c; }
.zt-nav-item.is-current { border-color: #cfa15d; box-shadow: inset 3px 0 0 #d5a85f, inset 0 0 24px #b47c2522; }
.zt-side-nav .zt-nav-item {
  --zt-side-text-shift: 0px;
  --zt-side-content-light: 1;
  z-index: 1;
  isolation: isolate;
  overflow: hidden;
  overflow: clip;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 9px;
  min-height: 58.5px;
  padding: 7px 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.zt-side-nav .zt-nav-item::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(105deg, transparent 32%, #efbf5c1a 42%, #ffe1a447 50%, #efbf5c1a 58%, transparent 68%);
  opacity: 0;
  transform: translateX(-55%);
  pointer-events: none;
}
.zt-side-nav .zt-nav-item::after {
  content: '';
  position: absolute;
  z-index: -2;
  /* Cover the sprite's transparent top/bottom padding without changing hit areas. */
  inset: -1px 0 -1.5px;
  border: 5px solid transparent;
  border-image-source: url('assets/topbar-tab-normal-v1.png');
  border-image-source: image-set(url('assets/topbar-tab-normal-v1.webp') type('image/webp'), url('assets/topbar-tab-normal-v1.png') type('image/png'));
  border-image-slice: 20 fill;
  border-image-repeat: stretch;
  background: transparent;
  filter: brightness(.84) saturate(.9);
  transition: filter .16s ease;
  pointer-events: none;
}
.zt-side-nav .zt-nav-item > span {
  transform: translateX(var(--zt-side-text-shift));
  transition: transform .18s ease, filter .16s ease;
}
.zt-side-nav .zt-nav-item > svg { filter: brightness(var(--zt-side-content-light)) drop-shadow(1px 2px 1px #0009); }
.zt-side-nav .zt-nav-item > span { filter: brightness(var(--zt-side-content-light)); }
.zt-side-nav .zt-nav-item strong, .zt-side-nav .zt-nav-title { color: #efe1c4; font-size: 13px; font-weight: 500; line-height: 1.3; text-shadow: 0 1px 3px #000; }
.zt-side-nav .zt-nav-item small { margin-top: 2px; color: #c4c2b7; font-size: 12px; line-height: 1.25; text-shadow: 0 1px 2px #000; }
.zt-side-nav .zt-nav-illustration { display: block; width: 36px; height: 36px; flex: 0 0 36px; fill: none; stroke: none; filter: drop-shadow(1px 2px 1px #0009); }
.zt-side-nav .zt-nav-item:hover,
.zt-side-nav .zt-nav-item:focus-visible,
.zt-side-nav .zt-nav-item.is-current { background: transparent; box-shadow: none; }
.zt-side-nav .zt-nav-item:focus-visible::after {
  border-image-source: url('assets/topbar-tab-hover-v1.png');
  border-image-source: image-set(url('assets/topbar-tab-hover-v1.webp') type('image/webp'), url('assets/topbar-tab-hover-v1.png') type('image/png'));
  filter: brightness(.95) saturate(.95);
}
@media (hover: hover) and (pointer: fine) {
  .zt-side-nav .zt-nav-item:hover { --zt-side-content-light: 1.08; }
  .zt-side-nav .zt-nav-item:hover::after {
    border-image-source: url('assets/topbar-tab-hover-v1.png');
    border-image-source: image-set(url('assets/topbar-tab-hover-v1.webp') type('image/webp'), url('assets/topbar-tab-hover-v1.png') type('image/png'));
    filter: brightness(.95) saturate(.95);
  }
}
@keyframes zt-sidebar-text-glow {
  0% { transform: translateX(-55%); opacity: 0; }
  18% { opacity: .8; }
  70% { opacity: .45; }
  100% { transform: translateX(55%); opacity: 0; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .zt-side-nav .zt-nav-item:hover { --zt-side-text-shift: 4px; }
  .zt-side-nav .zt-nav-item:hover::before { animation: zt-sidebar-text-glow .45s ease-out 1; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: reduce) {
  .zt-side-nav .zt-nav-item:hover::before {
    background: linear-gradient(90deg, #efbf5c18, transparent 70%);
    opacity: 1;
    transform: none;
  }
}
.zt-side-nav .zt-nav-item.is-current::after {
  border-image-source: url('assets/topbar-tab-active-v1.png');
  border-image-source: image-set(url('assets/topbar-tab-active-v1.webp') type('image/webp'), url('assets/topbar-tab-active-v1.png') type('image/png'));
  filter: brightness(1) saturate(1);
}
.zt-side-nav .zt-nav-item:focus-visible { --zt-side-content-light: 1.08; z-index: 3; outline: 2px solid #f3d298; outline-offset: 1px; }
.zt-banner {
  display: none;
  position: relative;
  width: 164px;
  height: 340px;
  min-height: 0;
  margin: 20px auto 0;
  padding: 0;
  border: 0;
  background: transparent var(--zt-banner-image) center top / 100% 100% no-repeat;
  filter: drop-shadow(0 8px 8px #0009);
  pointer-events: none;
}
.zt-banner::before, .zt-banner p { display: none; }
@media (min-width: 1500px) {
  .zt-banner {
    display: block;
    position: absolute;
    left: calc(100% + var(--zt-gap) - 4px);
    top: clamp(396px, calc(22.6vw + 60px), 476px);
    margin: 0;
  }
}
.zt-main { min-width: 0; }
/* Modal fallback and the skip link focus this landmark for announcement.
   Its overflowing columns must not acquire the browser's page-sized outline. */
#realm-main:focus { outline: none; }
.zt-topbar {
  position: relative;
  z-index: 5;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 24px;
  min-height: 74px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.zt-primary-nav { position: relative; isolation: isolate; display: flex; flex: 0 0 auto; align-items: stretch; gap: 3px; width: max-content; min-width: 0; padding-inline: 4px; border: 1px solid transparent; border-top: 0; border-radius: 0 0 5px 5px; background: transparent; box-shadow: none; }
/* The backing and foreground rails share artwork and geometry. */
.zt-primary-nav::before,
.zt-primary-nav::after,
.zt-top-actions::before,
.zt-top-actions::after {
  content: '';
  position: absolute;
  inset: -4px -2px -10px;
  border: solid transparent;
  border-width: 14px 45px 22px;
  border-image-source: url('assets/topbar-panel-v1.png');
  border-image-source: image-set(url('assets/topbar-panel-v1.webp') type('image/webp'), url('assets/topbar-panel-v1.png') type('image/png'));
  border-image-repeat: stretch;
  pointer-events: none;
}
.zt-primary-nav::before,
.zt-top-actions::before {
  z-index: -1;
  border-image-slice: 28 140 28 140 fill;
  filter: brightness(.63) saturate(.9) drop-shadow(0 4px 6px #0009);
}
.zt-primary-nav::after,
.zt-top-actions::after {
  content: none;
  z-index: 2;
  border-image-slice: 28 140 28 140;
  filter: brightness(.63) saturate(.9);
  -webkit-mask-image: linear-gradient(to bottom, #000 0 14px, transparent 14px calc(100% - 22px), #000 calc(100% - 22px) 100%);
  mask-image: linear-gradient(to bottom, #000 0 14px, transparent 14px calc(100% - 22px), #000 calc(100% - 22px) 100%);
}
@supports (mask-image: linear-gradient(#000, transparent)) or (-webkit-mask-image: linear-gradient(#000, transparent)) {
  .zt-primary-nav::after,
  .zt-top-actions::after { content: ''; }
}
.zt-primary-nav::before,
.zt-primary-nav::after { left: -27px; right: -27px; }
@media (min-width: 1366px) { .zt-primary-nav { margin-left: clamp(0px, calc(32vw - 409.6px), 84px); } }
.zt-mobile-brand { display: none; }
.zt-top-link {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 78px;
  padding: 11px 11px 12px;
  color: #ded5c1 !important;
  font: 400 11px/1.2 Cinzel, 'Palatino Linotype', serif;
  white-space: nowrap;
  text-shadow: 0 1px 3px #000;
  background: transparent;
  box-shadow: none;
  transition: color .16s ease;
}
.zt-top-link::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 4px 0;
  border: 5px solid transparent;
  border-image-source: url('assets/topbar-tab-normal-v1.png');
  border-image-source: image-set(url('assets/topbar-tab-normal-v1.webp') type('image/webp'), url('assets/topbar-tab-normal-v1.png') type('image/png'));
  border-image-slice: 20 fill;
  border-image-repeat: stretch;
  filter: brightness(.84) saturate(.9);
  transition: filter .16s ease;
  pointer-events: none;
}
.zt-top-link .realm-icon { width: 22px; height: 22px; color: #d6b47c; }
.zt-top-link .zt-nav-illustration { width: 26px; height: 26px; }
.zt-mobile-nav .zt-nav-illustration { width: 29px; height: 29px; }
.zt-top-link:focus-visible { z-index: 3; }
.zt-top-link:is(:hover, :focus-visible) { color: #ffe0a4 !important; }
.zt-top-link:is(:hover, :focus-visible)::before {
  border-image-source: url('assets/topbar-tab-hover-v1.png');
  border-image-source: image-set(url('assets/topbar-tab-hover-v1.webp') type('image/webp'), url('assets/topbar-tab-hover-v1.png') type('image/png'));
  filter: brightness(.95) saturate(.95);
}
.zt-top-link.is-current { color: #ffd69a !important; }
.zt-top-link.is-current::before {
  border-image-source: url('assets/topbar-tab-active-v1.png');
  border-image-source: image-set(url('assets/topbar-tab-active-v1.webp') type('image/webp'), url('assets/topbar-tab-active-v1.png') type('image/png'));
  filter: brightness(1) saturate(1);
}
.zt-top-actions-group { position: relative; display: grid; min-width: 0; flex: 0 0 auto; }
.zt-top-actions { --zt-utility-frame-outset: 27px; position: relative; z-index: 1; isolation: isolate; display: flex; align-items: center; justify-content: flex-end; gap: 9px; flex-shrink: 0; border: 0; background: transparent; box-shadow: none; }
.zt-top-actions::before, .zt-top-actions::after { left: calc(-1 * var(--zt-utility-frame-outset)); right: calc(-1 * var(--zt-utility-frame-outset)); border-inline-width: 23px; }
.zt-account { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 8px 9px; border: 1px solid #ad8b5140; border-radius: 3px; color: #e0d1b8 !important; background: #0b131b85; box-shadow: inset 0 1px #d0b0750a; font: 400 12px/1.3 Cinzel, 'Palatino Linotype', serif; }
.zt-account .realm-icon { width: 19px; height: 19px; color: #d5ac70; }
.zt-account:hover { border-color: #d6ad6b7a; color: #ffdf9d !important; }
.zt-language { position: relative; flex: 0 0 auto; color: #ead7b4; font: 12px/1.4 Cinzel, serif; }
.zt-language summary { display: grid; grid-template-columns: 18px minmax(0, 1fr) 18px; align-items: center; justify-content: center; gap: 5px; min-width: 76px; min-height: 44px; padding: 8px 6px; list-style: none; border: 1px solid #ad8b5140; border-radius: 3px; background: #0b131bc9; white-space: nowrap; cursor: pointer; transition: color .16s ease; }
.zt-language summary::-webkit-details-marker { display: none; }
.zt-top-actions .zt-language > summary .zt-nav-illustration { width: 18px; height: 18px; flex: 0 0 18px; fill: none; stroke: none; filter: drop-shadow(0 1px 1px #0008); }
.zt-language-label { text-align: center; line-height: 1; }
.zt-language-toggle { display: grid; place-items: center; width: 18px; height: 28px; border-left: 1px solid #d4ad6659; border-radius: 0 2px 2px 0; background: linear-gradient(#d5ad6b12, #120e0b66); box-shadow: inset 1px 0 #07030166; }
.zt-language-toggle::after { content: ''; width: 6px; height: 6px; margin-top: -3px; border-right: 1.5px solid #e8c78a; border-bottom: 1.5px solid #e8c78a; transform: rotate(45deg); transition: transform .16s ease, margin .16s ease; }
.zt-language[open] .zt-language-toggle::after { margin-top: 3px; transform: rotate(225deg); }
@media (prefers-reduced-motion: reduce) { .zt-language-toggle::after { transition: none; } }
.zt-top-actions .zt-language > summary:focus-visible { z-index: 3; outline: 2px solid #ffdf98; outline-offset: 3px; }
.zt-top-actions .zt-account,
.zt-top-actions > .zt-button,
.zt-top-actions .zt-language > summary { min-height: 44px; height: 44px; }
@media (min-width: 1101px) {
  .zt-top-actions .zt-account,
  .zt-top-actions > .zt-button,
  .zt-top-actions .zt-language > summary { min-height: 56px; height: 56px; }
  .zt-top-actions > .zt-account,
  .zt-top-actions > .zt-button,
  .zt-top-actions > .zt-language { position: relative; top: -1px; }
  .zt-top-actions > .zt-account { margin-left: -4px; padding-left: 13px; }
  .zt-top-actions > .zt-language { margin-right: -4px; }
  .zt-top-actions .zt-language > summary { padding-right: 10px; }
}
@media (min-width: 1101px) and (max-width: 1365px) {
  .zt-site .zt-top-actions .zt-language > summary { padding-right: 7px; }
}
.zt-language-menu { position: absolute; z-index: 8; top: calc(100% + 8px); right: 0; width: 204px; padding: 15px; border: 1px solid #a880477a; border-radius: 4px; background: #0c151df7; box-shadow: 0 7px 20px #0009; }
.zt-language-menu>span { display: flex; justify-content: space-between; gap: 14px; }
.zt-language-menu small { color: #c6aa76; font: 12px/1.4 'Source Sans 3',sans-serif; }
.zt-language-menu p { margin: 10px 0 0; color: #aab6be; font: 12px/1.5 'Source Sans 3',sans-serif; }
@media (max-width: 600px) { .zt-top-actions>.zt-button { display: none; } .zt-language summary { min-width: 44px; } }
.zt-admin-entry { position: absolute; isolation: isolate; top: calc(100% + 17px); right: 0; display: inline-flex; align-items: center; justify-content: center; gap: 9px; width: 244px; max-width: 100%; min-height: 42px; padding: 10px 14px; border: 1px solid transparent; border-radius: 3px; color: #f2dbac !important; background: #17110ee8; box-shadow: 0 4px 12px #0006; font: 500 11px/1.35 Cinzel, 'Palatino Linotype', serif; text-shadow: 0 1px 2px #000; transition: filter .16s ease, transform .16s ease; }
.zt-admin-entry::before { content: ''; position: absolute; z-index: -1; inset: -1px; border: 8px solid transparent; border-image: var(--zt-action-account-image) 32 fill / 8px / 0 stretch; pointer-events: none; }
.zt-site .zt-admin-entry .realm-icon { width: 19px; height: 19px; color: #e4b967; filter: drop-shadow(0 0 4px #de9c273d); }
.zt-admin-arrow { margin-left: auto; color: #d3ab67; font: 20px/1 Georgia, serif; }
.zt-admin-entry:is(:hover, :focus-visible) { color: #fff0cc !important; filter: brightness(1.18); }
.zt-admin-entry:active { filter: brightness(.95); transform: translateY(1px); }
.zt-admin-entry:focus-visible { outline: 2px solid #ffdf98; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { .zt-admin-entry { transition: none; } }
@media (forced-colors: active) { .zt-admin-entry { border-color: ButtonText; } .zt-admin-entry::before { content: none; } }
.zt-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 45px;
  padding: 11px 24px;
  border: 1px solid #9a7949;
  border-radius: 3px;
  color: #ede0c6 !important;
  background: linear-gradient(180deg, #18232bd9, #0b1218ef);
  box-shadow: inset 0 0 0 2px #050a0d75, 0 3px 10px #0007;
  font: 500 13px/1.25 Cinzel, 'Palatino Linotype', serif;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .015em;
  cursor: pointer;
  transition: border-color .16s ease, filter .16s ease, background-color .16s ease;
}
.zt-button .realm-icon { width: 17px; height: 17px; }
.zt-button:hover { border-color: #efd098; background-color: #25343d; }
.zt-button--primary {
  border: 1px solid #ffcb75;
  color: #261707 !important;
  background: radial-gradient(ellipse at 50% 0, #ffe5a1aa, transparent 68%), linear-gradient(100deg, #ac6a21, #e2a846 30%, #efbd61 50%, #c78a32 80%, #a6621a);
  box-shadow: inset 0 0 0 3px #bb7e2e, inset 0 0 0 4px #f2c77e9c, 0 0 15px #ffab3045, 0 3px 9px #000a;
  text-shadow: 0 1px #ffe4ac70;
}
.zt-button--primary:hover { border-color: #ffe5ad; filter: brightness(1.13); }
.zt-top-actions .zt-button { min-width: 156px; min-height: 43px; padding-inline: 17px; font-size: 13px; }
.zt-menu-toggle { display: none; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 8px; border: 1px solid #c79c596b; border-radius: 3px; color: #e0bf82; background: #172129; }
.zt-mobile-nav { position: relative; z-index: 4; display: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 8px; padding: 7px; border: 1px solid #ac865145; border-radius: 4px; background: #0c151bf5; box-shadow: 0 8px 20px #0007; }
.zt-mobile-nav a { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 10px 12px; color: #ead8b6; border-radius: 2px; }
.zt-mobile-nav a:hover { filter: brightness(1.16); }
.zt-mobile-nav .realm-icon { width: 18px; height: 18px; color: #dab275; }
/* One shared wood material for the separate utility controls and their menus. */
.zt-top-actions :is(.zt-admin-entry, .zt-menu-toggle),
.zt-language-menu,
.zt-mobile-nav,
.zt-mobile-nav .zt-nav-item {
  border-color: #9a6c3e85;
  background-color: var(--zt-menu-wood-color);
  background-image: var(--zt-menu-wood-fill);
  background-position: center;
  background-size: 100% 100%, 400% 400%;
  background-repeat: no-repeat;
  box-shadow: inset 0 1px #d9ad6833, inset 0 -1px 3px #080301bb, 0 2px 6px #0006;
  text-shadow: 0 1px 2px #000;
}
.zt-top-actions :is(.zt-admin-entry, .zt-menu-toggle) { transition: border-color .16s ease, filter .16s ease, color .16s ease; }
.zt-top-actions :is(.zt-admin-entry, .zt-menu-toggle):hover { border-color: #d3a568c7; filter: brightness(1.16); }
/* One nine-slice treatment keeps the approved action artwork behind live labels. */
.zt-site .zt-account,
.zt-site .zt-top-actions .zt-language > summary { --zt-action-image: var(--zt-action-account-image); }
.zt-site .zt-button--primary { --zt-action-image: var(--zt-action-play-image); }
.zt-actions .zt-button--secondary { --zt-action-image: var(--zt-action-learn-image); }
.zt-site .zt-account,
.zt-site .zt-top-actions .zt-language > summary,
.zt-site .zt-button--primary,
.zt-actions .zt-button--secondary {
  position: relative;
  isolation: isolate;
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}
.zt-site .zt-account::before,
.zt-site .zt-top-actions .zt-language > summary::before,
.zt-site .zt-button--primary::before,
.zt-actions .zt-button--secondary::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: -1px;
  border: 8px solid transparent;
  border-image-source: var(--zt-action-image);
  border-image-slice: 32 fill;
  border-image-repeat: stretch;
  filter: drop-shadow(0 2px 4px #0008);
  transition: filter .16s ease;
  pointer-events: none;
}
.zt-site .zt-account:hover,
.zt-site .zt-top-actions .zt-language > summary:is(:hover, :focus-visible),
.zt-site .zt-button--primary:hover,
.zt-actions .zt-button--secondary:hover { filter: none; }
.zt-site .zt-account:hover::before,
.zt-site .zt-top-actions .zt-language > summary:is(:hover, :focus-visible)::before,
.zt-site .zt-button--primary:hover::before,
.zt-actions .zt-button--secondary:hover::before { filter: brightness(1.1) drop-shadow(0 2px 4px #0008); }
.zt-site .zt-button--primary::before { filter: none; }
.zt-site .zt-button--primary:hover::before { filter: brightness(1.1); }
.zt-site .zt-button--primary::after {
  content: '';
  position: absolute;
  z-index: -2;
  inset: -1px;
  border: 8px solid transparent;
  border-image-source: var(--zt-action-image);
  border-image-slice: 32 fill;
  border-image-repeat: stretch;
  background: transparent;
  filter: drop-shadow(0 0 3px #ffe2a8e6) drop-shadow(0 0 9px #ffb73eb3) drop-shadow(0 0 16px #e98b2059);
  opacity: .8;
  transition: opacity .16s ease;
  animation: zt-play-glow 3.2s ease-in-out infinite;
  pointer-events: none;
}
.zt-site .zt-button--primary:is(:hover, :focus-visible)::after { opacity: 1; }
@keyframes zt-play-glow {
  0%, 100% { opacity: .55; }
  50% { opacity: 1; }
}
.zt-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 216px;
  gap: 25px;
  min-height: 456px;
  padding: 36px 8px 25px;
}
.zt-hero-copy { min-width: 0; align-self: end; padding: 0 5px 5px; text-align: center; text-shadow: 0 2px 5px #000, 0 0 20px #020a10; }
.zt-hero-message { position: relative; isolation: isolate; display: flow-root; }
.zt-hero-message::before { content: ''; position: absolute; z-index: -1; inset: -18px 0 6px; background: radial-gradient(ellipse at 50% 45%, #041018a6, #04101873 45%, #0410182e 72%, transparent); filter: blur(8px); pointer-events: none; }
.zt-hero-message > :is(.zt-eyebrow, h1, .zt-hero-summary) { text-shadow: 0 1px 2px #02080dfa, 0 2px 5px #02080de6, 0 0 12px #02080dc7; }
@media (min-width: 1366px) {
  .zt-hero-copy { transform: translateX(clamp(24px, calc(15vw - 144px), 144px)); }
}
.zt-eyebrow { margin: 0 0 8px; color: #f4dbaf; font: 400 10px/1.4 Cinzel, 'Palatino Linotype', serif; text-transform: uppercase; letter-spacing: .2em; }
.zt-hero h1 { margin: 0; color: #e4edf0; font: 500 clamp(25px, 2.28vw, 39px)/1.3 Cinzel, 'Palatino Linotype', serif; letter-spacing: .045em; text-wrap: balance; }
.zt-hero-summary { margin: 10px 0 19px; color: #eee7d6; font: 400 14px/1.45 Cinzel, 'Palatino Linotype', serif; letter-spacing: .12em; text-transform: uppercase; }
.zt-hero-message > .zt-eyebrow { color: #fff0cf; font-weight: 600; }
.zt-hero-message > h1 { color: #fff4dc; -webkit-text-stroke: .25px #17232b80; }
.zt-hero-message > .zt-hero-summary { color: #fff0cf; font-weight: 500; }
.zt-actions { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 14px; }
.zt-actions .zt-button { min-width: 165px; min-height: 47px; font-size: 14px; }
.zt-parchment {
  position: relative;
  align-self: end;
  width: 100%;
  min-height: 256px;
  margin-bottom: 0;
  padding: 19px 21px 17px;
  border: 5px double #70431e;
  border-radius: 10px 7px 13px 8px;
  color: #32220e;
  background: radial-gradient(ellipse at 54% 42%, #f1d9a6d9, #dab67cbd 70%, #a36c3c99), linear-gradient(135deg, #e1bb7f, #ead4a8 50%, #bc8d50);
  box-shadow: inset 0 0 17px 4px #60350b6e, inset 0 0 0 1px #edcd8d, 0 0 0 2px #2b1c10c4, 0 7px 16px #000b;
  text-align: center;
  font-family: Cinzel, 'Palatino Linotype', serif;
}
.zt-parchment::before { content: ''; position: absolute; inset: 6px; border: 1px solid #7a4a214d; border-radius: 2px 6px 3px 5px; pointer-events: none; }
.zt-compass { display: grid; place-items: center; width: 64px; height: 64px; margin: -3px auto 10px; color: #493018; }
.zt-compass .realm-icon { width: 61px; height: 61px; stroke-width: 1; }
.zt-parchment :is(h2,h3) { position: relative; margin: 8px 0 13px; color: #34200e; font: 600 12px/1.3 Cinzel, 'Palatino Linotype', serif; text-transform: uppercase; letter-spacing: .045em; }
.zt-parchment p { position: relative; margin: 8px 0; font-size: 11px; line-height: 1.5; }
.zt-parchment ul { display: grid; gap: 7px; margin: 12px 0; padding: 11px 0; border-block: 1px solid #6e451f45; list-style: none; text-align: left; }
.zt-parchment li { display: flex; align-items: center; gap: 10px; font-size: 11px; }
.zt-parchment li .realm-icon { width: 18px; height: 18px; }
.zt-parchment a { position: relative; display: inline-block; padding: 5px 2px 1px; border-bottom: 1px solid #70462070; font-size: 10px; text-transform: uppercase; }
.zt-parchment a:focus-visible { outline-color: #5e390e; }
.zt-stats {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 38px;
  min-height: 64px;
  max-width: 780px;
  width: min(780px, 100%);
  margin: -12px auto 18px max(0px, calc((100% - 780px) / 2 - 24px));
  padding: 10px 24px;
  border-block: 1px solid #a98b5245;
  background: linear-gradient(90deg, transparent, #071219c7 20%, #091820db 50%, #071219c7 80%, transparent);
  box-shadow: 0 5px 15px #0002;
}
.zt-stat { display: grid; grid-template-columns: 30px minmax(0, 1fr); column-gap: 10px; align-items: center; min-width: 0; }
.zt-stat > .realm-icon { grid-row: span 2; width: 28px; height: 28px; color: #ddb878; filter: drop-shadow(0 2px 3px #0009); }
.zt-stat strong { color: #edf2ee; font-size: 15px; line-height: 1.3; font-weight: 600; }
.zt-stat span { color: #c0cbd2; font-size: 11px; line-height: 1.3; }
.zt-stat > span, .zt-stat > span > span { display: block; }
.zt-stat > span > span { margin-top: 2px; }
.zt-features { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0 0 18px; padding: 7px; border: 1px solid #a884504d; border-radius: 5px; background: #0a1319c4; box-shadow: 0 5px 15px #0008, inset 0 0 0 2px #0206098c; }
@media (min-width: 1101px) {
  .zt-features { --zt-feature-inset: clamp(140px, 10.15625vw, 156px); width: calc(100% - var(--zt-feature-inset)); max-width: 900px; margin-left: max(var(--zt-feature-inset), calc((100% - 980px + var(--zt-feature-inset)) / 2)); }
}
@media (min-width: 801px) and (max-width: 920px) {
  .zt-features { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.zt-feature { position: relative; display: block; min-width: 0; padding: 0 11px 10px; border: 1px solid #9a76464d; border-radius: 3px; background: #0c1319; box-shadow: inset 0 0 0 1px #050a0c; transition: border-color .16s ease, background-color .16s ease; }
.zt-feature:hover, .zt-feature:focus-visible { border-color: #d9b779; background: #172028; }
.zt-feature-art, .zt-featured-art {
  --zt-card-image: url('assets/world-card.webp');
  position: relative;
  background-color: #233d45;
  background-image: linear-gradient(0deg, #071016e6, transparent 62%), var(--zt-card-image);
  background-size: 100% 100%, cover;
  background-position: center, center;
  background-repeat: no-repeat;
}
.zt-feature-art { display: block; height: 88px; margin: 0 -11px -11px; border-radius: 2px 2px 0 0; }
.zt-feature-art[data-art='world'] { --zt-card-image: url('assets/world-card.webp'); }
.zt-feature-art[data-art='lore'] { --zt-card-image: url('assets/lore-card.webp'); }
.zt-feature-art[data-art='guild'] { --zt-card-image: url('assets/guild-card.webp'); }
.zt-feature-art[data-art='news'] { --zt-card-image: url('assets/news-card.webp'); }
.zt-feature-content { position: relative; display: block; }
.zt-feature-description { display: block; margin: 4px 14px 0 0; color: #b7bdc2; font: 13px/1.35 'Source Sans 3', Candara, sans-serif; }
.zt-feature-title { position: relative; display: block; padding-right: 15px; color: #f1e7cf; font: 500 14px/1.35 Cinzel, 'Palatino Linotype', serif; text-shadow: 0 2px 4px #000; }
.zt-feature::after { content: '\203A'; position: absolute; right: 10px; bottom: 24px; color: #cf9e56; font: 28px/1 Georgia, serif; }
.zt-feature p { position: relative; margin: 4px 14px 0 0; color: #b8c2cc; font-size: 12px; line-height: 1.25; }
.zt-lower-grid { display: grid; grid-template-columns: 1.2fr 1.4fr .95fr .95fr; gap: 14px; width: calc(100% + var(--zt-rail) + var(--zt-gap)); margin-left: calc(-1 * (var(--zt-rail) + var(--zt-gap))); }
.zt-panel { min-width: 0; border: 1px solid #a2804d91; border-radius: 4px; background: linear-gradient(135deg, #162029e8, #0b1219f5 65%); box-shadow: inset 0 0 0 2px #060b0e, 0 4px 14px #0008; }
.zt-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 40px; padding: 9px 13px 7px; border-bottom: 1px solid #a7895140; color: #eddfc4; }
.zt-panel-heading :is(h2,h3) { display: flex; align-items: center; gap: 8px; min-width: 0; margin: 0; font: 500 13px/1.3 Cinzel, 'Palatino Linotype', serif; }
.zt-panel-heading .realm-icon { width: 17px; height: 17px; color: #d7b17a; }
.zt-panel-heading .zt-nav-illustration { width: 21px; height: 21px; }
.zt-panel-body { padding: 11px 13px 13px; color: #c2c8cb; font-size: 12px; }
.zt-panel-body > :first-child { margin-top: 0; }
.zt-panel-body > :last-child { margin-bottom: 0; }
.zt-empty-note, .zt-source-note { color: #a2adb1; font-size: 12px; line-height: 1.45; }
.zt-mini-link { display: inline-flex; align-items: center; gap: 5px; color: #a9d1e2 !important; font-size: 11px; line-height: 1.4; text-decoration: underline !important; text-underline-offset: 3px; }
.zt-mini-link:hover { color: #e6f5fc !important; }
.zt-news-list { display: grid; gap: 0; }
.zt-news-item { position: relative; display: grid; grid-template-columns: 35px minmax(0, 1fr); gap: 10px; align-items: center; min-height: 44px; padding: 6px 12px 6px 0; border-bottom: 1px solid #a8a38a21; }
.zt-news-item:last-child { border-bottom: 0; }
.zt-news-item::after { content: '\203A'; position: absolute; right: 0; top: calc(50% - 9px); color: #d6c6a8; font-size: 19px; line-height: 1; }
.zt-news-date { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 37px; padding: 3px 2px; border: 1px solid #9b8a623d; border-radius: 2px; background: #ddd0a410; color: #e4d8be; font: 400 10px/1.15 Cinzel, 'Palatino Linotype', serif; text-align: center; }
.zt-news-date strong, .zt-news-date b { display: block; font: 400 19px/1 Georgia, serif; }
.zt-news-text { min-width: 0; }
.zt-news-text > span { display: block; }
.zt-news-text strong, .zt-news-text h3 { display: block; margin: 0 0 2px; color: #acd1e1; font: 500 12px/1.3 Cinzel, 'Palatino Linotype', serif; }
.zt-news-text p, .zt-news-text small { display: block; margin: 0; color: #b9bdc5; font-size: 11px; line-height: 1.3; }
.zt-news-item:hover .zt-news-text strong { color: #e4f4fa; }
.zt-featured .zt-panel-body { padding: 9px 11px 11px; }
.zt-featured > div { position: relative; z-index: 1; }
.zt-featured-art { --zt-card-image: url('assets/lore-card.webp'); min-height: 155px; border: 1px solid #a281454a; border-radius: 2px; box-shadow: inset 0 -25px 30px #0007; }
.zt-featured-art > :is(h3,p,div,span) { position: relative; z-index: 1; }
.zt-featured-art :is(h3,strong) { display: block; margin: 0; color: #f4e6ca; font: 500 17px/1.3 Cinzel, 'Palatino Linotype', serif; text-shadow: 0 2px 5px #000; }
.zt-featured-art p { margin: 5px 0 0; color: #ddd9d1; font-size: 11px; }
.zt-featured-caption { position: absolute !important; inset: auto 12px 12px; text-align: center; }
.zt-server-list { display: grid; gap: 0; }
.zt-server-row { display: flex; align-items: center; gap: 10px; min-height: 51px; padding: 8px 0; border-bottom: 1px solid #9e94712b; }
.zt-server-row:last-child { border-bottom: 0; }
.zt-server-row > :is(div,span):not(.zt-status-dot) { min-width: 0; }
.zt-server-row strong { display: block; color: #d9dddb; font: 500 12px/1.4 Cinzel, 'Palatino Linotype', serif; }
.zt-server-row small, .zt-server-row p { display: block; margin: 2px 0 0; color: #bdc7cd; font-size: 11px; line-height: 1.4; }
.zt-server-row > .realm-icon { width: 29px; height: 29px; color: #d0ad6d; }
.zt-status-dot { flex: 0 0 auto; width: 7px; height: 7px; border-radius: 50%; background: #98a1a5; box-shadow: 0 0 5px #91a7ac24; }
.zt-status-dot.is-online, .zt-status-dot--online { background: #73c98a; box-shadow: 0 0 7px #69c97e38; }
.zt-status-dot.is-offline, .zt-status-dot--offline { background: #bd8275; }
.zt-community-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.zt-community-link { display: flex; align-items: center; gap: 8px; min-height: 62px; padding: 8px 5px; border: 1px solid #a9986d17; border-radius: 3px; background: #edf2e903; }
.zt-community-link:hover { border-color: #bd985e83; background: #dcb3760b; }
.zt-community-link > .realm-icon { width: 28px; height: 28px; padding: 4px; border: 1px solid #a7956659; border-radius: 6px; color: #eed5a5; background: #283442; }
.zt-community-link > .zt-nav-illustration { width: 28px; height: 28px; }
.zt-community-link strong { display: block; color: #e1dfd4; font-size: 11px; font-weight: 600; }
.zt-community-link small, .zt-community-link span span { display: block; margin-top: 2px; color: #b7bdc5; font-size: 10px; line-height: 1.3; }
.zt-footer { display: flex; align-items: center; justify-content: space-between; gap: 25px; width: calc(100% + var(--zt-rail) + var(--zt-gap)); margin: 18px 0 0 calc(-1 * (var(--zt-rail) + var(--zt-gap))); padding: 14px 20px; border: 1px solid #b7985d4d; border-radius: 5px; color: #bfbeb4; background: linear-gradient(90deg, #0b131af2, #10171bf0 55%, #080f15f5); box-shadow: inset 0 0 0 2px #03090d7a; font-size: 11px; }
.zt-footer-brand { color: #d9b67c !important; font: 500 20px/1.2 Cinzel, 'Palatino Linotype', serif; letter-spacing: .05em; }
.zt-footer nav { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 22px; margin-right: auto; }
.zt-footer nav a { padding-block: 4px; }
.zt-footer nav a:hover { color: #f1d8aa; }
.zt-footer-motto { margin: 0; color: #d0b17b; font: italic 12px/1.5 Georgia, serif; text-align: right; }
.zt-credits { position: relative; max-width: 300px; color: #a8b2b7; font-size: 10px; line-height: 1.5; }
.zt-credits summary { min-height: 34px; padding-block: 7px; color: #bdc4c6; cursor: pointer; white-space: nowrap; }
.zt-credits summary::marker { color: #bf9a61; }
.zt-credits summary:hover { color: #f3d59d; }
.zt-credits[open] { padding: 4px 10px 9px; border: 1px solid #a68c574d; border-radius: 3px; background: #0b141bea; }
.zt-credits[open] summary { margin-bottom: 4px; color: #e3c995; }
.zt-credits a { color: #afd4e1 !important; text-decoration: underline !important; text-underline-offset: 3px; }
.zt-credits img { max-width: 100%; height: auto; }

@media (min-width: 1700px) {
  .zt-layout { --zt-gap: 30px; padding-inline: 38px; }
  .zt-brand>.zt-brand-art { width: calc(100% + 80px); max-width: 312px; transform: translateX(2px); }
  .zt-hero { min-height: 510px; grid-template-columns: minmax(0, 1fr) 238px; gap: 40px; padding-inline: 25px; }
  .zt-top-link { min-width: 76px; font-size: 12px; }
  .zt-hero h1 { font-size: 39px; }
  .zt-feature-art { height: 112px; }
  .zt-feature { padding-bottom: 12px; }
  .zt-panel-body { padding: 13px 15px 15px; }
  .zt-news-item { min-height: 48px; }
  .zt-featured-art { min-height: 169px; }
}
@media (max-width: 1365px) {
  .zt-primary-nav::before, .zt-primary-nav::after { left: -22px; right: -22px; }
  .zt-top-actions { --zt-utility-frame-outset: 22px; }
  .zt-top-actions::before, .zt-top-actions::after { border-inline-width: 18px; }
  .zt-layout { --zt-rail: 206px; --zt-gap: 20px; padding-inline: 22px; }
  .zt-brand>.zt-brand-art { width: calc(100% + 44px); max-width: 250px; }
  .zt-brand-title, .zt-brand > strong { font-size: 34px; }
  .zt-side-nav { padding: 16px 12px; }
  .zt-nav-item { grid-template-columns: 30px minmax(0, 1fr); gap: 7px; padding-inline: 7px; }
  .zt-nav-item strong, .zt-nav-title { font-size: 12px; }
  .zt-side-nav .zt-nav-item { grid-template-columns: 32px minmax(0, 1fr); gap: 8px; padding-inline: 10px; }
  .zt-side-nav .zt-nav-illustration { width: 32px; height: 32px; flex-basis: 32px; }
  .zt-top-link { min-width: 56px; padding-inline: 6px; font-size: 10px; }
  .zt-top-actions { gap: 8px; }
  .zt-top-actions .zt-language > summary { min-width: 70px; gap: 5px; padding-inline: 3px; }
  .zt-top-actions .zt-button { min-width: 131px; padding-inline: 12px; font-size: 12px; }
  .zt-hero { grid-template-columns: minmax(0, 1fr) 196px; gap: 16px; min-height: 440px; }
  .zt-parchment { padding-inline: 16px; }
  .zt-hero-summary { font-size: 12px; letter-spacing: .09em; }
  .zt-actions { gap: 10px; }
  .zt-actions .zt-button { min-width: 146px; padding-inline: 18px; font-size: 12px; }
  .zt-feature-title { font-size: 12px; }
  .zt-feature p { font-size: 11px; }
  .zt-lower-grid { gap: 11px; grid-template-columns: 1.2fr 1.35fr 1fr 1fr; }
  .zt-panel-heading { padding-inline: 10px; gap: 8px; }
  .zt-panel-heading :is(h2,h3) { font-size: 11px; }
  .zt-panel-body { padding-inline: 10px; }
  .zt-news-text strong, .zt-news-text h3 { font-size: 11px; }
}
@media (max-width: 1100px) {
  .zt-primary-nav { display: none; }
  .zt-top-actions-group { width: 100%; row-gap: 10px; }
  .zt-admin-entry { position: relative; top: auto; right: auto; justify-self: end; }
  .zt-top-actions::before, .zt-top-actions::after { content: none; }
  .zt-topbar { min-height: 66px; justify-content: flex-end; padding: 10px 12px; border: 1px solid #9a6c3e85; border-top: 0; border-radius: 0 0 5px 5px; background-color: var(--zt-menu-wood-color); background-image: var(--zt-menu-wood-fill); background-position: center; background-size: 100% 100%, 400% 400%; background-repeat: no-repeat; box-shadow: 0 3px 12px #0007, inset 0 1px #d9ad6826; }
  .zt-top-actions { width: 100%; justify-content: flex-end; }
  .zt-account { margin-right: auto; }
  .zt-menu-toggle { display: inline-flex; }
  .zt-mobile-nav { display: grid; }
  .zt-hero { grid-template-columns: minmax(0, 1fr) 180px; min-height: 470px; gap: 13px; padding-inline: 0; }
  .zt-hero h1 { font-size: 28px; }
  .zt-hero-copy { padding-inline: 0; }
  .zt-hero-summary { font-size: 11px; }
  .zt-actions .zt-button { min-width: 134px; padding-inline: 13px; font-size: 11px; }
  .zt-parchment { padding-inline: 13px; }
  .zt-parchment :is(h2,h3) { font-size: 11px; }
  .zt-stats { gap: 24px; padding-inline: 12px; }
  .zt-stat { grid-template-columns: 24px minmax(0, 1fr); gap: 2px 7px; }
  .zt-stat > .realm-icon { width: 24px; height: 24px; }
  .zt-features { gap: 9px; padding: 5px; }
  .zt-feature { padding-inline: 8px; }
  .zt-feature-art { height: 82px; margin-inline: -8px; }
  .zt-feature-title { padding-right: 5px; font-size: 11px; }
  .zt-feature p { margin-right: 2px; font-size: 11px; }
  .zt-feature::after { display: none; }
  .zt-lower-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .zt-panel-heading :is(h2,h3) { font-size: 13px; }
  .zt-panel-body { padding: 12px 14px 15px; }
  .zt-featured-art { min-height: 173px; }
  .zt-news-item { min-height: 49px; }
  .zt-news-text strong, .zt-news-text h3 { font-size: 12px; }
  .zt-server-row { min-height: 56px; }
  .zt-community-link { min-height: 68px; padding-inline: 10px; }
}
@media (max-width: 800px) {
  .zt-layout { --zt-rail: 0px; --zt-gap: 0px; grid-template-columns: minmax(0, 1fr); padding: 0 18px 18px; }
  .zt-site::before { background-size: auto 1120px; background-position: center top; }
  .zt-site::after { background: linear-gradient(180deg, #030a0e44 0, transparent 17%, #040b1033 34%, #050c11bc 64%, #050b0ff5 100%); }
  .zt-sidebar { display: none; }
  .zt-brand { min-height: 0; margin: 0; }
  .zt-brand-emblem, .zt-brand > .realm-icon { width: 44px; height: 35px; }
  .zt-brand-emblem .realm-icon { width: 31px; height: 31px; }
  .zt-brand-title, .zt-brand > strong { font-size: 33px; }
  .zt-brand-tagline, .zt-brand > small { margin-top: 3px; font-size: 8px; }
  .zt-side-nav, .zt-banner { display: none; }
  .zt-topbar { min-height: 64px; border-top: 1px solid #a47a3c42; border-radius: 4px; }
  .zt-mobile-brand { display: block; flex: 0 0 auto; margin-right: auto; color: #f3d59d !important; font: 500 23px/1.2 Cinzel, 'Palatino Linotype', serif; }
  .zt-top-actions-group { width: auto; }
  .zt-top-actions { width: auto; }
  .zt-hero { min-height: 450px; grid-template-columns: minmax(0, 1fr) 184px; padding: 30px 4px 24px; gap: 18px; }
  .zt-hero h1 { font-size: clamp(24px, 4vw, 31px); }
  .zt-eyebrow { font-size: 9px; letter-spacing: .12em; }
  .zt-actions { gap: 9px; }
  .zt-actions .zt-button { min-width: 128px; min-height: 44px; padding-inline: 12px; font-size: 11px; }
  .zt-hero-summary { font-size: 11px; letter-spacing: .07em; }
  .zt-parchment { min-height: 241px; }
  .zt-stats { margin-top: -8px; max-width: none; }
  .zt-stat strong { font-size: 14px; }
  .zt-lower-grid, .zt-footer { width: 100%; margin-left: 0; }
  .zt-footer { gap: 16px; padding-inline: 15px; flex-wrap: wrap; }
  .zt-footer-motto { width: 100%; text-align: center; }
  .zt-footer nav { margin-right: 0; margin-left: auto; gap: 8px 15px; }
}
@media (max-width: 600px) {
  .zt-layout { padding-inline: 13px; }
  .zt-site::before { background-image: url('assets/panorama-v4-mobile.webp'); background-size: auto 930px; }
  .zt-topbar { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 12px 9px 8px; }
  .zt-top-actions-group { width: 100%; }
  .zt-admin-entry { width: 100%; }
  .zt-mobile-brand { justify-self: center; margin: 0; font-size: 25px; }
  .zt-top-actions { width: 100%; justify-content: space-between; gap: 9px; flex-wrap: wrap; }
  .zt-account { gap: 5px; padding-inline: 5px; font-size: 11px; }
  .zt-top-actions .zt-button { min-width: 128px; min-height: 42px; padding: 10px 12px; font-size: 11px; }
  .zt-menu-toggle { width: 42px; height: 42px; }
  .zt-mobile-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zt-mobile-nav a { padding-inline: 10px; font-size: 13px; }
  .zt-hero { grid-template-columns: minmax(0, 1fr); gap: 24px; min-height: 0; padding: 176px 8px 26px; }
  .zt-hero-copy { align-self: auto; }
  .zt-hero h1 { font-size: clamp(28px, 6.7vw, 36px); letter-spacing: .025em; }
  .zt-eyebrow { font-size: 9px; letter-spacing: .16em; }
  .zt-hero-summary { max-width: 370px; margin: 13px auto 20px; font-size: 11px; line-height: 1.65; letter-spacing: .085em; }
  .zt-actions .zt-button { min-width: 145px; min-height: 46px; font-size: 12px; }
  .zt-parchment { width: min(100%, 310px); min-height: 0; margin: 0 auto; padding: 14px 24px 15px; }
  .zt-compass { width: 48px; height: 48px; margin-bottom: 6px; }
  .zt-compass .realm-icon { width: 48px; height: 48px; }
  .zt-parchment :is(h2,h3) { font-size: 12px; margin-block: 7px; }
  .zt-parchment ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 10px; margin-block: 9px; }
  .zt-parchment li { font-size: 10px; gap: 7px; }
  .zt-parchment p { font-size: 10px; }
  .zt-stats { gap: 14px; margin: 0 0 17px; padding: 14px 7px; }
  .zt-stat { grid-template-columns: minmax(0, 1fr); justify-items: center; row-gap: 3px; text-align: center; flex: 1; }
  .zt-stat > .realm-icon { grid-row: auto; width: 25px; height: 25px; margin-bottom: 2px; }
  .zt-stat strong { font-size: 14px; }
  .zt-stat span { font-size: 10px; line-height: 1.35; }
  .zt-features { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; padding: 7px; }
  .zt-feature { padding: 0 10px 12px; }
  .zt-feature-art { height: 101px; margin-inline: -10px; margin-bottom: -10px; }
  .zt-feature-title { font-size: 13px; }
  .zt-feature p { margin-top: 5px; font-size: 12px; line-height: 1.35; }
  .zt-lower-grid { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  .zt-panel-heading { min-height: 43px; padding: 11px 14px; }
  .zt-panel-heading :is(h2,h3) { font-size: 14px; }
  .zt-panel-body { padding: 12px 14px 16px; font-size: 13px; }
  .zt-news-item { min-height: 55px; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; }
  .zt-news-date { min-height: 41px; }
  .zt-news-text strong, .zt-news-text h3 { font-size: 12px; }
  .zt-news-text p, .zt-news-text small { font-size: 12px; }
  .zt-featured-art { min-height: 190px; }
  .zt-server-row { min-height: 58px; gap: 13px; }
  .zt-server-row strong { font-size: 13px; }
  .zt-server-row small, .zt-server-row p { font-size: 12px; }
  .zt-community-grid { gap: 10px; }
  .zt-community-link { min-height: 72px; padding-inline: 11px; }
  .zt-community-link strong { font-size: 12px; }
  .zt-community-link small, .zt-community-link span span { font-size: 11px; }
  .zt-footer { justify-content: center; gap: 13px; margin-top: 17px; padding: 17px 14px; text-align: center; }
  .zt-footer nav { width: 100%; justify-content: center; margin: 0; gap: 7px 18px; }
  .zt-footer-motto { font-size: 11px; }
  .zt-credits { max-width: 100%; text-align: center; }
  .zt-credits summary { min-height: 44px; padding-block: 11px; }
}
@media (max-width: 379px) {
  .zt-layout { padding-inline: 10px; }
  .zt-top-actions { gap: 7px; }
  .zt-top-actions .zt-button { min-width: 111px; padding-inline: 9px; font-size: 10px; }
  .zt-account { gap: 4px; padding-inline: 4px; font-size: 10px; }
  .zt-account .realm-icon { width: 16px; height: 16px; }
  .zt-menu-toggle { width: 39px; }
  .zt-hero { padding-top: 153px; padding-inline: 4px; }
  .zt-actions { flex-direction: column; }
  .zt-actions .zt-button { width: min(100%, 250px); }
  .zt-parchment { padding-inline: 18px; }
  .zt-features { grid-template-columns: minmax(0, 1fr); }
  .zt-feature-art { height: 129px; }
  .zt-feature-title { font-size: 15px; }
  .zt-feature p { font-size: 12px; }
  .zt-stat span { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .zt-site *, .zt-site *::before, .zt-site *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
