@import url("../../prosilver/theme/stylesheet.css");

:root {
  --gold: #d4af37;
  --gold2: #f7da7a;
  --cream: #efe2bd;
  --silver: #ded7c6;
  --muted: #b89f66;
  --line: rgba(212, 175, 55, 0.46);
  --line2: rgba(212, 175, 55, 0.24);
  --bg: #050302;
  --deep-red: #330805;
  --dd-site: min(1760px, calc(100vw - 52px));
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--bg);
}

body {
  margin: 0;
  color: var(--cream);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15px;
  line-height: 1.5;
  background:
    radial-gradient(circle at 50% -10%, rgba(247, 218, 122, 0.16), transparent 36%),
    radial-gradient(circle at 78% 24%, rgba(212, 175, 55, 0.16), transparent 28%),
    radial-gradient(circle at 9% 78%, rgba(99, 13, 8, 0.42), transparent 34%),
    linear-gradient(180deg, #050302 0%, #0c0503 42%, #040202 100%);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.86), rgba(0, 0, 0, 0.34) 45%, rgba(0, 0, 0, 0.82)),
    linear-gradient(180deg, rgba(0, 0, 0, 0.54), rgba(58, 7, 7, 0.20) 44%, rgba(0, 0, 0, 0.74)),
    url("./images/dd-card-wall.svg"),
    radial-gradient(circle at 14% 18%, rgba(212, 175, 55, 0.12), transparent 20%),
    radial-gradient(circle at 84% 10%, rgba(212, 175, 55, 0.14), transparent 22%),
    linear-gradient(45deg, rgba(212, 175, 55, 0.026) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(212, 175, 55, 0.018) 25%, transparent 25%),
    linear-gradient(rgba(212, 175, 55, 0.020) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212, 175, 55, 0.014) 1px, transparent 1px);
  background-size: auto, auto, max(1600px, 100vw) auto, auto, auto, 38px 38px, 38px 38px, 54px 54px, 54px 54px;
  background-position: center, center, center top, center, center, 0 0, 0 19px, 0 0, 0 0;
  background-repeat: no-repeat, no-repeat, repeat-y, no-repeat, no-repeat, repeat, repeat, repeat, repeat;
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.92), rgba(0, 0, 0, 0.14) 50%, rgba(0, 0, 0, 0.88)),
    radial-gradient(circle at 50% 36%, transparent 0%, rgba(0, 0, 0, 0.28) 60%, rgba(0, 0, 0, 0.68) 100%);
}

a,
a:link,
a:visited {
  color: inherit;
  text-decoration: none;
}

a:hover,
a:focus {
  color: var(--gold2);
  text-decoration: none;
}

#wrap,
.wrap {
  width: var(--dd-site);
  max-width: none;
  margin: 0 auto;
  padding: 0;
  border: 0;
  background: transparent;
}

.page-header,
.dd-site-header {
  padding: 0;
  background: transparent;
}

.dd-header-inner {
  min-height: 108px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.dd-brand {
  display: flex;
  align-items: center;
  gap: 18px;
  min-width: 0;
  color: var(--gold2);
}

.dd-crest {
  width: 68px;
  height: 68px;
  flex: 0 0 68px;
  object-fit: contain;
  filter: drop-shadow(0 0 24px rgba(212, 175, 55, 0.22));
}

.dd-brand-copy {
  display: block;
  min-width: 0;
}

.dd-title {
  display: block;
  color: var(--gold2);
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 0.9;
  text-transform: uppercase;
  white-space: nowrap;
}

.dd-subtitle {
  display: block;
  margin-top: 9px;
  color: var(--gold);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.dd-main-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 25px;
  max-width: none;
  margin-left: auto;
  color: var(--cream);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.dd-main-nav a {
  position: relative;
  padding: 10px 0;
  color: var(--cream);
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  opacity: 0.82;
  white-space: nowrap;
}

.dd-main-nav a:hover,
.dd-main-nav a.active {
  color: var(--gold2);
  opacity: 1;
}

.dd-main-nav a.active::after {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: 1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}

.dd-board-hero,
.dd-feature-strip,
.dd-forum-tools,
.page-body,
.dd-after-body {
  width: var(--dd-site);
  margin-right: auto;
  margin-left: auto;
}

.dd-board-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 650px;
  display: grid;
  grid-template-columns: 0.92fr 1.08fr;
  gap: 58px;
  align-items: center;
  padding: 48px 48px 60px;
  border: 1px solid var(--line);
  background:
    linear-gradient(90deg, rgba(5, 3, 2, 0.78), rgba(5, 3, 2, 0.28) 50%, rgba(5, 3, 2, 0.70)),
    linear-gradient(180deg, rgba(5, 3, 2, 0.10), rgba(5, 3, 2, 0.70)),
    url("./images/live/playercardrear.png") center / cover no-repeat,
    linear-gradient(135deg, rgba(22, 8, 5, 0.92), rgba(3, 2, 2, 0.94));
  box-shadow: 0 0 0 1px rgba(212, 175, 55, 0.07) inset, 0 24px 80px rgba(0, 0, 0, 0.62);
}

.dd-board-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 72% 16%, rgba(247, 218, 122, 0.20), transparent 26%),
    radial-gradient(circle at 18% 86%, rgba(82, 8, 6, 0.30), transparent 30%),
    repeating-linear-gradient(135deg, rgba(212, 175, 55, 0.024) 0, rgba(212, 175, 55, 0.024) 1px, transparent 1px, transparent 13px);
}

.dd-board-hero::after {
  content: "";
  position: absolute;
  inset: 12px;
  z-index: 0;
  border: 1px solid rgba(212, 175, 55, 0.18);
  pointer-events: none;
}

.dd-hero-copy {
  position: relative;
  z-index: 2;
  max-width: 760px;
}

.dd-kicker {
  margin: 0 0 22px;
  color: var(--gold);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.dd-board-hero h1,
h1,
h2,
.panel h2,
.content h2 {
  margin: 0;
  color: var(--gold2);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 0.91;
  text-transform: uppercase;
}

.dd-board-hero h1 {
  max-width: 760px;
  font-size: clamp(76px, 5.25vw, 116px);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.dd-board-hero p {
  max-width: 740px;
  margin: 26px 0 30px;
  color: #e7d6a7;
  font-size: 25px;
  line-height: 1.3;
}

.dd-cta,
.button,
a.button1,
input.button1,
input.button2,
input.button3 {
  display: inline-flex;
  min-height: 56px;
  align-items: center;
  justify-content: center;
  padding: 0 32px;
  border: 1px solid var(--gold);
  border-radius: 0;
  background: linear-gradient(90deg, rgba(212, 175, 55, 0.14), rgba(0, 0, 0, 0.05));
  color: var(--gold2);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 0.86rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  box-shadow: 0 0 0 1px rgba(212, 175, 55, 0.08) inset, 0 10px 26px rgba(0, 0, 0, 0.28);
  cursor: pointer;
}

.dd-cta:hover,
.button:hover,
a.button1:hover,
input.button1:hover,
input.button2:hover,
input.button3:hover {
  border-color: var(--gold2);
  color: #fff4c7;
}

.dd-hero-cards {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 480px;
  pointer-events: none;
}

.dd-hero-cards::before {
  content: "";
  position: absolute;
  inset: 9% 4%;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.18), transparent 56%);
  filter: blur(8px);
}

.dd-hero-cards img {
  position: relative;
  width: 41%;
  max-height: 480px;
  object-fit: contain;
  border: 1px solid var(--line);
  box-shadow: 0 28px 78px rgba(0, 0, 0, 0.68);
  filter: saturate(1.04) contrast(1.05);
}

.dd-hero-cards img:nth-child(1) {
  transform: rotate(-5deg) translateX(28%);
}

.dd-hero-cards img:nth-child(2) {
  z-index: 2;
  transform: translateY(20px) rotate(2deg);
}

.dd-hero-cards img:nth-child(3) {
  transform: rotate(6deg) translateX(-28%);
}

.dd-feature-strip {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border-width: 0 1px 1px;
  border-style: solid;
  border-color: var(--line);
  background: rgba(0, 0, 0, 0.34);
}

.dd-feature-strip div {
  min-height: 96px;
  padding: 20px 26px;
  border-left: 1px solid var(--line2);
}

.dd-feature-strip div:first-child {
  border-left: 0;
}

.dd-feature-strip strong {
  display: block;
  color: var(--gold2);
  font-size: 0.92rem;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.dd-feature-strip span {
  display: block;
  margin-top: 4px;
  color: var(--cream);
  font-size: 0.78rem;
  line-height: 1.25;
}

.dd-forum-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
  margin-top: 22px;
  margin-bottom: 22px;
}

.navbar {
  border: 1px solid var(--line);
  border-radius: 0;
  background: rgba(0, 0, 0, 0.46);
  color: var(--cream);
  box-shadow: none;
}

.navbar .inner {
  padding: 10px 16px;
}

.nav-main,
.linklist,
.navbar ul.linklist {
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

ul.linklist li,
.navbar li {
  color: var(--cream);
}

.search-box,
.dd-search {
  display: flex;
  width: 330px;
  margin: 0;
  border: 1px solid var(--line2);
  background: rgba(0, 0, 0, 0.42);
}

.search-box .inputbox,
.dd-search .inputbox {
  min-width: 0;
  flex: 1 1 auto;
  height: 42px;
  padding: 0 12px;
  border: 0;
  background: transparent;
  color: var(--cream);
}

.search-box .button,
.dd-search .button {
  width: 44px;
  min-height: 42px;
  height: 42px;
  padding: 0;
  border-width: 0 0 0 1px;
  border-color: var(--line2);
  background: rgba(212, 175, 55, 0.08);
  box-shadow: none;
}

.page-body {
  margin-top: 0;
  margin-bottom: 48px;
}

.forabg,
.forumbg,
.panel,
.post,
.cp-mini,
.stat-block,
.rules {
  border: 1px solid var(--line);
  border-radius: 0;
  background: rgba(0, 0, 0, 0.50);
  color: var(--cream);
  box-shadow: none;
}

.forabg,
.forumbg {
  overflow: hidden;
  margin-bottom: 22px;
  padding: 0;
}

.forabg .inner,
.forumbg .inner {
  padding: 0;
}

.topiclist {
  margin: 0;
}

.topiclist .header,
li.header {
  min-height: 34px;
  border-bottom: 1px solid var(--line);
  background: rgba(54, 44, 17, 0.88);
  color: var(--gold2);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.topiclist .header a,
li.header a {
  color: var(--gold2);
}

ul.topiclist li.row,
.row,
.bg1,
.bg2,
.bg3 {
  min-height: 72px;
  border-top: 1px solid rgba(212, 175, 55, 0.24);
  background: rgba(17, 16, 12, 0.88);
  color: var(--cream);
}

ul.topiclist li.row:nth-child(even),
.bg2 {
  background: rgba(23, 21, 16, 0.90);
}

ul.topiclist li.row:hover {
  background: rgba(52, 19, 17, 0.86);
}

ul.topiclist li.row dt,
ul.topiclist li.row dd {
  padding-top: 14px;
  padding-bottom: 14px;
}

ul.topiclist dd,
ul.topiclist dt {
  border-color: rgba(239, 226, 189, 0.34);
}

.forumtitle,
.topictitle,
a.forumtitle,
a.topictitle {
  color: var(--cream);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.16rem;
  font-weight: 700;
}

.forumtitle:hover,
.topictitle:hover,
a.forumtitle:hover,
a.topictitle:hover {
  color: var(--gold2);
}

.list-inner,
.list-inner p,
.postbody .content,
.content,
.panel p,
.stat-block p,
.postbody,
.postbody p,
dl.details dd,
dl.details dt {
  color: var(--cream);
}

.lastpost,
.posts,
.topics,
.author,
.responsive-show,
.responsive-hide,
.topic-poster {
  color: var(--muted);
}

.forum-image,
.forum_read,
.forum_unread,
.topic_read,
.topic_unread,
.sticky_read,
.sticky_unread,
.announce_read,
.announce_unread {
  filter: sepia(0.9) saturate(1.25) brightness(1.05);
}

.panel .inner,
.post .inner,
.cp-mini .inner,
.stat-block .inner,
.rules .inner {
  padding: 18px;
}

.stat-block h3,
.panel h3 {
  color: var(--gold2);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.postprofile {
  border-color: var(--line2);
  color: var(--muted);
}

.breadcrumbs {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.pagination li a,
.pagination li span {
  border: 1px solid var(--line2);
  border-radius: 0;
  background: rgba(212, 175, 55, 0.08);
  color: var(--cream);
}

.pagination li.active span {
  border-color: var(--gold);
  background: var(--gold);
  color: #120d05;
}

input,
select,
textarea,
.inputbox {
  border: 1px solid var(--line2);
  border-radius: 0;
  background: rgba(0, 0, 0, 0.55);
  color: var(--cream);
  font-family: Arial, Helvetica, sans-serif;
}

input:focus,
select:focus,
textarea:focus,
.inputbox:focus {
  border-color: var(--gold);
  outline: 2px solid rgba(212, 175, 55, 0.22);
  outline-offset: 0;
}

label,
.fields1 dt,
.fields2 dt,
fieldset.fields1 dt label,
fieldset.fields2 dt label {
  color: var(--cream);
}

.tabs .tab > a,
.minitabs .tab > a {
  border-radius: 0;
  background: rgba(212, 175, 55, 0.08);
  color: var(--cream);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.tabs .activetab > a,
.tabs .activetab > a:hover,
.minitabs .activetab > a,
.minitabs .activetab > a:hover {
  border-color: var(--line);
  background: rgba(0, 0, 0, 0.55);
  color: var(--gold2);
}

.dropdown,
.dropdown-extended .dropdown-contents,
.jumpbox-cat-link,
.jumpbox-forum-link {
  border-color: var(--line2);
  background: var(--bg);
  color: var(--cream);
}

.dropdown-extended .header,
.dropdown-extended .footer {
  border-color: var(--line2);
  background: rgba(212, 175, 55, 0.08);
  color: var(--gold);
}

.dd-after-body {
  margin-bottom: 28px;
}

.page-footer,
.dd-site-footer {
  width: var(--dd-site);
  margin: 22px auto 0;
  padding: 0 0 18px;
  border: 0;
  background: transparent;
}

.dd-footer-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 20px;
  align-items: start;
  color: var(--muted);
}

.dd-footer-inner h2 {
  margin: 0 0 2px;
  color: var(--gold2);
  font-size: 0.98rem;
  line-height: 1;
  text-transform: uppercase;
}

.dd-footer-inner p {
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.15;
  text-transform: uppercase;
}

.dd-footer-line {
  justify-self: center;
  text-align: center;
}

.dd-footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  justify-content: flex-end;
  color: var(--cream);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.05;
  text-transform: uppercase;
}

.copyright,
.timezone,
.dd-phpbb-credit {
  color: rgba(239, 226, 189, 0.58);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.72rem;
}

.dd-phpbb-credit {
  padding-top: 10px;
  border-top: 1px solid rgba(212, 175, 55, 0.18);
}

.dd-phpbb-credit p {
  display: inline;
  margin: 0 10px 0 0;
}

@media (max-width: 1350px) {
  :root {
    --dd-site: min(100vw - 28px, 100%);
  }

  .dd-header-inner {
    min-height: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 16px 0 20px;
  }

  .dd-main-nav {
    justify-content: flex-start;
    margin-left: 0;
  }

  .dd-board-hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .dd-hero-cards {
    display: none;
  }

  .dd-forum-tools {
    grid-template-columns: 1fr;
  }

  .dd-search {
    width: min(100%, 360px);
  }
}

@media (max-width: 700px) {
  .dd-crest {
    width: 82px;
    height: 82px;
    flex-basis: 82px;
  }

  .dd-title {
    font-size: 27px;
    white-space: normal;
  }

  .dd-subtitle {
    font-size: 12px;
    white-space: normal;
  }

  .dd-board-hero {
    padding: 34px 22px;
  }

  .dd-board-hero h1 {
    font-size: 64px;
  }

  .dd-board-hero p {
    font-size: 19px;
  }

  .dd-feature-strip {
    grid-template-columns: 1fr;
  }

  .dd-footer-inner {
    grid-template-columns: 1fr;
  }

  .dd-footer-line,
  .dd-footer-links {
    justify-self: start;
    text-align: left;
  }
}

/* v1.1.0 final responsive header containment.
   Prevent the website nav from ever sharing horizontal space with the brand
   when the viewport cannot comfortably fit both. */

.dd-site-header .dd-header-inner {
  display: grid !important;
  grid-template-columns: minmax(360px, auto) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 22px 34px !important;
}

.dd-site-header .dd-brand {
  min-width: 0 !important;
  max-width: none !important;
}

.dd-site-header .dd-main-nav {
  min-width: 0 !important;
  justify-content: flex-end !important;
}

@media (max-width: 1500px) {
  .dd-site-header .dd-header-inner {
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: 14px !important;
    padding: 14px 0 18px !important;
  }

  .dd-site-header .dd-brand {
    width: 100% !important;
  }

  .dd-site-header .dd-main-nav {
    width: 100% !important;
    justify-content: flex-start !important;
    gap: 14px 22px !important;
    margin-left: 0 !important;
  }

  .dd-site-header .dd-main-nav > a,
  .dd-site-header .dd-main-nav > a:link,
  .dd-site-header .dd-main-nav > a:visited,
  .dd-site-header .dd-main-nav > a:hover,
  .dd-site-header .dd-main-nav > a:focus,
  .dd-site-header .dd-main-nav > a.active {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 760px) {
  .dd-site-header .dd-brand {
    align-items: flex-start !important;
  }

  .dd-site-header .dd-crest {
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px !important;
  }

  .dd-site-header .dd-title {
    font-size: clamp(26px, 8vw, 36px) !important;
    white-space: normal !important;
  }

  .dd-site-header .dd-subtitle {
    font-size: 12px !important;
    white-space: normal !important;
  }
}

/* The forum should open directly into phpBB content, not the old promotional hero. */
.dd-board-hero,
.dd-feature-strip {
  display: none !important;
}

/* Final nav hard reset: keep the branded site nav uniform and isolated from phpBB/prosilver. */

.dd-site-header .dd-main-nav,
.dd-site-header .dd-main-nav * {
  font-family: Georgia, "Times New Roman", serif !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

.dd-site-header .dd-main-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 25px !important;
  color: var(--cream) !important;
}

.dd-site-header .dd-main-nav > a,
.dd-site-header .dd-main-nav > a:link,
.dd-site-header .dd-main-nav > a:visited,
.dd-site-header .dd-main-nav > a:hover,
.dd-site-header .dd-main-nav > a:focus,
.dd-site-header .dd-main-nav > a.active {
  display: inline-block !important;
  margin: 0 !important;
  padding: 10px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--cream) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.08em !important;
  opacity: 0.82 !important;
  white-space: nowrap !important;
}

.dd-site-header .dd-main-nav > a:hover,
.dd-site-header .dd-main-nav > a:focus,
.dd-site-header .dd-main-nav > a.active {
  color: var(--gold2) !important;
  opacity: 1 !important;
}

.dd-site-header .dd-main-nav > a.active::after {
  left: 8% !important;
  right: 8% !important;
  bottom: 1px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, var(--gold), transparent) !important;
}

@media (max-width: 1350px) {
  .dd-site-header .dd-main-nav {
    justify-content: flex-start !important;
  }

  .dd-site-header .dd-main-nav > a,
  .dd-site-header .dd-main-nav > a:link,
  .dd-site-header .dd-main-nav > a:visited {
    font-size: 14px !important;
  }
}

@media (max-width: 700px) {
  .dd-site-header .dd-main-nav {
    gap: 14px 18px !important;
  }

  .dd-site-header .dd-main-nav > a,
  .dd-site-header .dd-main-nav > a:link,
  .dd-site-header .dd-main-nav > a:visited {
    font-size: 13px !important;
  }
}

/* v1.1.1 absolute final cascade lock.
   This block intentionally comes last so no phpBB/prosilver or earlier local
   rule can put the brand and website nav back onto a colliding row. */

@media (max-width: 1500px) {
  .dd-site-header .dd-header-inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: 14px !important;
    padding: 14px 0 18px !important;
  }

  .dd-site-header .dd-brand,
  .dd-site-header .dd-main-nav {
    width: 100% !important;
    max-width: none !important;
  }

  .dd-site-header .dd-main-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 14px 22px !important;
    margin-left: 0 !important;
  }

  .dd-site-header .dd-main-nav > a,
  .dd-site-header .dd-main-nav > a:link,
  .dd-site-header .dd-main-nav > a:visited,
  .dd-site-header .dd-main-nav > a:hover,
  .dd-site-header .dd-main-nav > a:focus,
  .dd-site-header .dd-main-nav > a.active {
    display: inline-block !important;
    padding: 10px 0 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 760px) {
  .dd-site-header .dd-brand {
    align-items: flex-start !important;
  }

  .dd-site-header .dd-crest {
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px !important;
  }

  .dd-site-header .dd-title {
    font-size: clamp(26px, 8vw, 36px) !important;
    white-space: normal !important;
  }

  .dd-site-header .dd-subtitle {
    font-size: 12px !important;
    white-space: normal !important;
  }

  .dd-site-header .dd-main-nav {
    gap: 12px 18px !important;
  }

  .dd-site-header .dd-main-nav > a,
  .dd-site-header .dd-main-nav > a:link,
  .dd-site-header .dd-main-nav > a:visited,
  .dd-site-header .dd-main-nav > a:hover,
  .dd-site-header .dd-main-nav > a:focus,
  .dd-site-header .dd-main-nav > a.active {
    font-size: 13px !important;
  }
}

/* Website parity: make phpBB sit inside the same framed page language as the main site. */
.dd-site-header .dd-header-inner {
  min-height: 112px !important;
  display: grid !important;
  grid-template-columns: minmax(560px, auto) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 36px !important;
}

.dd-site-header .dd-brand {
  gap: 18px !important;
}

.dd-site-header .dd-crest {
  width: 96px !important;
  height: 96px !important;
  flex: 0 0 96px !important;
}

.dd-forum-frame {
  position: relative;
  isolation: isolate;
  width: var(--dd-site);
  margin: 0 auto 42px;
  padding: 14px 16px 28px;
  border: 1px solid var(--line);
  background:
    linear-gradient(90deg, rgba(5, 3, 2, 0.84), rgba(5, 3, 2, 0.44) 48%, rgba(5, 3, 2, 0.78)),
    linear-gradient(180deg, rgba(5, 3, 2, 0.18), rgba(5, 3, 2, 0.76)),
    url("./images/dd-card-wall.svg") center top / cover no-repeat,
    #050302;
  box-shadow: inset 0 0 0 1px rgba(212, 175, 55, 0.12), 0 28px 76px rgba(0, 0, 0, 0.58);
  overflow: hidden;
}

.dd-forum-frame::before {
  content: "";
  position: absolute;
  inset: 10px;
  z-index: -1;
  pointer-events: none;
  border: 1px solid rgba(212, 175, 55, 0.18);
  background:
    radial-gradient(circle at 72% 16%, rgba(247, 218, 122, 0.12), transparent 26%),
    radial-gradient(circle at 18% 86%, rgba(82, 8, 6, 0.26), transparent 30%),
    repeating-linear-gradient(135deg, rgba(212, 175, 55, 0.024) 0, rgba(212, 175, 55, 0.024) 1px, transparent 1px, transparent 13px);
}

.dd-forum-frame .dd-forum-tools,
.dd-forum-frame .page-body,
.dd-forum-frame .dd-after-body {
  width: 100%;
}

.dd-forum-frame .dd-forum-tools {
  margin-top: 0;
}

.dd-site-footer {
  margin-top: 0;
}

@media (max-width: 1500px) {
  .dd-site-header .dd-header-inner {
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: 14px !important;
    padding: 14px 0 18px !important;
  }
}

@media (max-width: 760px) {
  .dd-site-header .dd-crest {
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px !important;
  }

  .dd-forum-frame {
    padding: 10px 10px 20px;
  }
}
