/* =============================================================================
   SOF2MP REDESIGN — full width, dark slate + gold
   Based on sof2mp-homepage-mockup.html.

   Loaded after style.css (see editorial_gaming_scripts() in functions.php).
   Customizer "Additional CSS" prints after this file, so a few selectors are
   prefixed with `html body` to win against it without needing !important.
   ============================================================================= */

:root {
  --sof-bg: #0b1014;
  --sof-bg2: #10171c;
  --sof-panel: #151d22;
  --sof-panel2: #192329;
  --sof-panel3: #202a2e;
  --sof-line: #2a363a;
  --sof-line2: #3a4644;
  --sof-gold: #d3a45d;
  --sof-gold2: #f2ce8d;
  --sof-gold-dark: #947447;
  --sof-text: #eef0ed;
  --sof-muted: #a8b3b2;
  --sof-dim: #758380;
  --sof-green: #83c690;
  --sof-red: #d5796d;
  --sof-blue: #83a8bf;
  --sof-radius: 13px;
  --sof-radius-sm: 7px;
  --sof-font: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --sof-wrap: min(100% - 64px, 1800px);
}

/* ── Base ───────────────────────────────────────────────────────────────── */
html body,
html body.custom-background {
  background: var(--sof-bg);
  color: var(--sof-text);
}

body,
button,
input,
select,
textarea,
h1, h2, h3, h4, h5, h6,
blockquote,
.single .byline,
.group-blog .byline,
.posted-on,
.blog-author,
.blog-cat {
  font-family: var(--sof-font);
}

body {
  font-size: 15px;
  line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--sof-text);
  letter-spacing: -0.01em;
}

a {
  color: var(--sof-gold2);
  transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}

a:hover,
a:focus,
a:active {
  color: var(--sof-gold2);
}

a:focus-visible,
button:focus-visible,
input:focus-visible {
  outline: 3px solid var(--sof-gold2);
  outline-offset: 3px;
}

::selection {
  background: var(--sof-gold);
  color: #141410;
}

/* ── Full width layout ──────────────────────────────────────────────────── */
html body.boxed_layout #page,
html body.fullwidth-layout #page,
.editorial-dark-mode #page {
  width: 100%;
  max-width: none;
  margin: 0;
  background: transparent;
  box-shadow: none;
}

.mt-container {
  width: var(--sof-wrap);
  max-width: none;
  margin-inline: auto;
  padding: 0;
}

/* jQuery sticky writes an inline pixel width on the nav; let it stretch. */
#mt-menu-wrap,
.is-sticky #mt-menu-wrap {
  width: 100% !important;
}

/* ── Top bar (date + map pack links) ────────────────────────────────────── */
html body .top-header-section {
  background: #10171b;
  border-bottom: 1px solid var(--sof-line);
  padding: 6px 0;
}

.top-header-section .date-section {
  color: var(--sof-muted);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.top-header-section .date-section::before {
  color: var(--sof-gold);
}

html body .top-menu {
  font-size: 12px;
}

html body .top-menu ul li {
  margin: 0 2px;
  border: none;
}

html body .top-menu a,
html body .top-menu ul li a {
  display: inline-block;
  padding: 3px 9px;
  border-radius: 4px;
  background: #263034;
  color: #d7dddb;
  font-weight: 600;
  line-height: 1.6;
}

html body .top-menu a:hover,
html body .top-menu ul li a:hover {
  background: #584329;
  color: #fff !important;
}

/* ── Masthead (logo + header widget) ────────────────────────────────────── */
html body .logo-ads-wrapper {
  background: linear-gradient(105deg, #0e1417 20%, #182025 75%, #0b1216);
  border-bottom: 1px solid var(--sof-line);
  padding: 8px 0;
}

.logo-ads-wrapper .mt-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  min-height: 110px;
}

.logo-ads-wrapper .mt-container::before,
.logo-ads-wrapper .mt-container::after {
  display: none;
}

.site-branding,
.header-ads-wrapper {
  float: none;
}

.custom-logo-link {
  margin: 0;
}

.header-ads-wrapper .widget {
  margin: 0;
}

/* The "L!VE MAP PACK 10" header widget uses inline styles — restyle as a gold button. */
html body #custom_html-8 {
  margin: 0;
}

#custom_html-8 .textwidget > div {
  margin-top: 0 !important;
  text-align: right;
}

#custom_html-8 .textwidget > div > a {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  padding: 12px 20px !important;
  background: var(--sof-gold) !important;
  border: 1px solid #b98d52 !important;
  border-radius: var(--sof-radius-sm) !important;
  color: #141410 !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  letter-spacing: .02em;
  white-space: nowrap;
}

#custom_html-8 .textwidget > div > a:hover {
  background: var(--sof-gold2) !important;
}

#custom_html-8 .textwidget > div > a span {
  color: #141410 !important;
  border-color: #6b5130 !important;
  border-radius: 4px;
  padding: 1px 7px !important;
}

#custom_html-8 .textwidget > div > span {
  color: var(--sof-muted) !important;
  font-size: 12px;
  padding-top: 10px !important;
}

/* ── Main navigation ────────────────────────────────────────────────────── */
html body .bottom-header-wrapper,
html body .is-sticky .bottom-header-wrapper {
  background: #182126;
  border-bottom: 2px solid var(--sof-gold-dark);
  box-shadow: 0 7px 18px rgba(0, 0, 0, .27);
}

html body #site-navigation ul li {
  line-height: 50px;
  border-bottom: none;
}

html body #site-navigation ul li a {
  color: #e5e9e6;
  font-weight: 700;
  font-size: 14px;
  padding: 0 15px;
}

html body #site-navigation ul li:hover > a,
html body #site-navigation ul li.current-menu-item > a,
html body #site-navigation ul li.current_page_item > a,
html body #site-navigation ul li.current-menu-ancestor > a,
html body #site-navigation ul li.focus > a {
  background: #2d393b;
  color: var(--sof-gold2);
}

html body #site-navigation li.menu-item-has-children > a,
html body #site-navigation li.page_item_has_children > a {
  padding-right: 32px;
}

html body #site-navigation li.menu-item-has-children > a::after,
html body #site-navigation li.page_item_has_children > a::after {
  top: 0;
  right: 13px;
  color: var(--sof-gold);
}

html body #site-navigation ul.sub-menu,
html body #site-navigation ul.children {
  background: #202b2d;
  border: 1px solid #48514b;
  border-radius: 0 0 var(--sof-radius-sm) var(--sof-radius-sm);
  box-shadow: 0 18px 32px rgba(0, 0, 0, .5);
  padding: 6px;
}

html body #site-navigation ul.sub-menu li,
html body #site-navigation ul.children li {
  line-height: 40px;
  border: none;
}

html body #site-navigation ul.sub-menu li a,
html body #site-navigation ul.children li a {
  border-radius: 4px;
  font-weight: 600;
}

html body .home-icon,
html body .search-main {
  line-height: 50px;
}

html body .home-icon,
html body.home .home-icon a,
html body .home-icon a {
  background: transparent;
  color: var(--sof-gold2);
}

html body .home-icon a:hover,
html body .home-icon a:focus {
  background: #2d393b;
}

html body .search-main {
  background: #10171a;
  border: 1px solid #495550;
  border-radius: 6px;
  color: #e9d3aa;
  line-height: 36px;
  margin-top: 7px;
}

html body .header-search-wrapper .search-form-main {
  background: #202b2d;
  border: 1px solid #48514b;
  border-top: 2px solid var(--sof-gold);
  border-radius: 0 0 var(--sof-radius-sm) var(--sof-radius-sm);
}

html body .header-search-wrapper .search-form-main::before {
  border-bottom-color: var(--sof-gold);
}

html body .header-search-wrapper .search-form-main .search-field {
  background: #10171a;
  border: 1px solid #495550;
  color: var(--sof-text);
}

html body .header-search-wrapper .search-form-main .search-submit {
  background: var(--sof-gold);
  color: #141410;
}

html body #masthead #site-navigation ul li a.sub-toggle,
html body .sub-toggle {
  background: #2d393b;
  color: var(--sof-gold2);
}

html body .menu-toggle {
  color: var(--sof-gold2);
}

.home.page-template-magazine-template #masthead {
  margin-bottom: 0;
}

/* ── News ticker ────────────────────────────────────────────────────────── */
html body .editorial-ticker-wrapper {
  background: #11191d;
  border-bottom: 1px solid var(--sof-line);
  margin: 0;
  padding: 0;
}

.editorial-ticker-wrapper .mt-container {
  display: flex;
  align-items: stretch;
  min-height: 42px;
}

html body .ticker-caption {
  display: flex;
  align-items: center;
  width: auto;
  padding: 0 14px;
  border-radius: 0;
  background: #8b332d;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

html body .ticker-content-wrapper {
  flex: 1;
  width: auto;
  padding: 0 0 0 16px;
  display: flex;
  align-items: center;
  font-weight: 500;
  text-transform: none;
}

.ticker-content-wrapper .news-post a,
html body.editorial-dark-mode .ticker-content-wrapper .news-post a {
  color: #d7dedb;
  font-size: 14px;
}

.ticker-content-wrapper .news-post a:hover {
  color: var(--sof-gold2);
}

html body .ticker-content-wrapper .bx-controls a,
html body.editorial-dark-mode .ticker-content-wrapper .bx-controls a {
  background: #263034;
  border: 1px solid var(--sof-line2);
  color: var(--sof-muted);
}

html body .ticker-content-wrapper .bx-controls a:hover {
  background: var(--sof-gold);
  border-color: var(--sof-gold);
  color: #141410;
}

/* ── Content area ───────────────────────────────────────────────────────── */
#content.site-content {
  padding-top: 36px;
  padding-bottom: 20px;
}

.home-content-wrapper {
  margin-top: 10px;
}

.home-primary-wrapper {
  width: 68%;
}

.home-secondary-wrapper {
  width: 30%;
}

#primary,
.home.blog #primary {
  width: 72%;
}

#secondary,
.home.blog #secondary {
  width: 26%;
}

.page-template-magazine-template #primary,
.no-sidebar #primary {
  width: 100%;
}

/* ── Section headings (block / widget titles) ───────────────────────────── */
html body .block-header,
html body .widget .widget-title-wrapper,
html body .related-articles-wrapper .widget-title-wrapper,
html body.editorial-dark-mode .block-header,
html body.editorial-dark-mode .widget .widget-title-wrapper,
html body.editorial-dark-mode .related-articles-wrapper .widget-title-wrapper {
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--sof-line);
  padding: 0 0 10px;
  margin-bottom: 18px;
  text-align: left;
}

html body .block-header .block-title,
html body .widget .widget-title,
html body .related-articles-wrapper .related-title,
html body.editorial-dark-mode .block-header .block-title,
html body.editorial-dark-mode .widget .widget-title,
html body.editorial-dark-mode .related-articles-wrapper .related-title {
  background: transparent;
  color: var(--sof-text);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.015em;
  text-transform: none;
  padding: 0 0 0 14px;
  position: relative;
  line-height: 1.3;
}

html body .block-header .block-title::before,
html body .widget .widget-title::before,
html body .related-articles-wrapper .related-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  bottom: 3px;
  width: 4px;
  border-radius: 2px;
  background: var(--sof-gold);
}

html body .block-header .block-title a,
html body.editorial-dark-mode .block-header .block-title a,
html body.editorial-dark-mode .widget .widget-title a {
  color: var(--sof-text);
}

html body .block-header .block-title a:hover,
html body .widget .widget-title a:hover {
  color: var(--sof-gold2);
}

/* Per-category coloured left borders from the parent theme */
html body .block-header[class*="mt-cat-"] {
  border-left: none;
}

/* ── Homepage widget panels ─────────────────────────────────────────────── */
.home-content-wrapper .widget,
#secondary .widget {
  background: var(--sof-panel);
  border: 1px solid var(--sof-line);
  border-radius: var(--sof-radius);
  padding: 22px;
  margin-bottom: 24px;
}

.home-content-wrapper .editorial_block_column-wrap .widget {
  margin-bottom: 24px;
}

/* ── Category pills ─────────────────────────────────────────────────────── */
html body .post-cat-list .category-button a,
html body .category-button[class*="mt-cat-"] a {
  display: inline-block;
  background: rgba(23, 27, 31, .86);
  border: 1px solid rgba(179, 150, 98, .36);
  border-radius: 5px;
  color: #ead1a8;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .065em;
  line-height: 1.6;
  padding: 2px 8px;
  text-transform: uppercase;
}

html body .post-cat-list .category-button a:hover,
html body .category-button[class*="mt-cat-"] a:hover {
  background: #403220;
  border-color: #876a42;
  color: var(--sof-gold2);
}

/* ── Post meta ──────────────────────────────────────────────────────────── */
html body .post-meta-wrapper > span,
html body .post-meta-wrapper span a,
html body.editorial-dark-mode .post-meta-wrapper > span,
html body.editorial-dark-mode .post-meta-wrapper span a,
html body .entry-meta span,
html body .entry-meta span a {
  color: var(--sof-dim);
  font-size: 12px;
}

html body .post-meta-wrapper > span::before,
html body .entry-meta > span::before {
  color: var(--sof-gold-dark);
}

html body .post-meta-wrapper span a:hover,
html body .entry-meta span a:hover {
  color: var(--sof-gold2);
}

/* ── Images ─────────────────────────────────────────────────────────────── */
.single-post-wrapper figure,
.post-thumb-wrapper figure,
.related-posts-wrapper figure {
  border-radius: 8px;
  overflow: hidden;
  margin: 0;
}

html body img.wp-post-image {
  border: none;
  transition: transform .3s ease;
}

.single-post-wrapper:hover img.wp-post-image,
.single-post-wrap:hover img.wp-post-image {
  transform: scale(1.04);
}

/* Additional CSS darkens every thumbnail by 55% — soften to a gradient */
html body .single-post-wrapper figure::after {
  background: linear-gradient(0deg, rgba(9, 17, 20, .55) 0%, rgba(9, 17, 20, 0) 55%);
}

/* ── Featured stories (top 3-column grid) ───────────────────────────────── */
.featured-slider-section {
  margin-bottom: 18px;
}

.featured-slider-section .widget.editorial_block_grid {
  background: transparent;
  border: none;
  padding: 0;
}

.featured-slider-section .block-posts-wrapper,
html body .featured-slider-section .editorial_block_grid .block-posts-wrapper {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin: 0;
}

.featured-slider-section .block-posts-wrapper::before,
.featured-slider-section .block-posts-wrapper::after {
  display: none;
}

html body .featured-slider-section .editorial_block_grid .single-post-wrapper {
  float: none;
  width: auto;
  margin: 0;
  padding: 0;
  position: relative;
  border: 1px solid #3c4643;
  border-radius: var(--sof-radius);
  overflow: hidden;
  background: #222b2d;
  transition: border-color .15s ease, transform .15s ease;
}

html body .featured-slider-section .editorial_block_grid .single-post-wrapper:hover {
  border-color: var(--sof-gold);
  transform: translateY(-3px);
}

.featured-slider-section .single-post-wrapper figure {
  border-radius: 0;
}

.featured-slider-section .single-post-wrapper figure img {
  width: 100%;
  height: 290px;
  object-fit: cover;
}

html body .featured-slider-section .single-post-wrapper figure::after {
  background: linear-gradient(0deg, rgba(9, 17, 20, .96) 0%, rgba(11, 18, 25, .64) 50%, rgba(7, 18, 22, .06) 100%);
}

.featured-slider-section .post-content-wrapper {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 20px;
  z-index: 2;
}

html body .featured-slider-section .editorial_block_grid .post-content-wrapper .post-title a {
  color: var(--sof-text);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
  text-transform: none;
}

html body .featured-slider-section .editorial_block_grid .post-content-wrapper .post-title a:hover {
  color: var(--sof-gold2);
}

html body .featured-slider-section .post-meta-wrapper > span,
html body .featured-slider-section .post-meta-wrapper span a {
  color: #c4cdca;
}

/* ── Grid / list post blocks ────────────────────────────────────────────── */
html body .grid-posts-block .post-title a,
html body .column-posts-block .post-title a,
html body .editorial_block_grid .post-content-wrapper .post-title a,
html body .list-posts-block .single-post-wrapper .post-content-wrapper .post-title a,
html body .column-posts-block .single-post-wrapper.secondary-post .post-content-wrapper .post-title a,
html body .related-posts-wrapper .post-title a,
html body.editorial-dark-mode .grid-posts-block .post-title a,
html body.editorial-dark-mode .column-posts-block .post-title a,
html body.editorial-dark-mode .list-posts-block .single-post-wrapper .post-content-wrapper .post-title a,
html body.editorial-dark-mode .column-posts-block .single-post-wrapper.secondary-post .post-content-wrapper .post-title a,
html body.editorial-dark-mode .related-posts-wrapper .post-title a {
  color: var(--sof-text);
  font-weight: 700;
  text-transform: none;
}

html body .grid-posts-block .post-title a:hover,
html body .column-posts-block .post-title a:hover,
html body .editorial_block_grid .post-content-wrapper .post-title a:hover,
html body .list-posts-block .single-post-wrapper .post-content-wrapper .post-title a:hover,
html body .column-posts-block .single-post-wrapper.secondary-post .post-content-wrapper .post-title a:hover,
html body .related-posts-wrapper .post-title a:hover {
  color: var(--sof-gold2);
}

html body .grid-posts-block .primary-post .post-title a,
html body .column-posts-block .primary-post .post-title a {
  font-size: 21px;
  line-height: 1.25;
}

.list-posts-block .single-post-wrapper,
.column-posts-block .single-post-wrapper.secondary-post {
  border-top: 1px solid var(--sof-line);
  padding-top: 12px;
  margin-bottom: 12px;
}

.list-posts-block .single-post-wrapper:first-child,
.home-secondary-wrapper .list-posts-block .single-post-wrapper:first-child {
  border-top: none;
  padding-top: 0;
}

.list-posts-block .post-thumb-wrapper figure,
.column-posts-block .secondary-post .post-thumb-wrapper figure {
  border-radius: 5px;
}

.home-content-wrapper .widget p,
html body.editorial-dark-mode .home-content-wrapper p {
  color: var(--sof-muted);
  font-size: 14px;
}

/* ── Gameserver plugin widgets (live-gameserver) ────────────────────────── */
.home-content-wrapper .widget_text .container {
  gap: 12px;
}

.dm-players,
.red-team,
.blue-team {
  margin: 0;
  border: 1px solid var(--sof-line);
  border-radius: 10px;
  overflow: hidden;
  background: var(--sof-bg2);
}

.dm-header {
  background: var(--sof-panel2);
  border-bottom: 1px solid var(--sof-line);
  padding: 12px 14px;
}

.red-header {
  background: linear-gradient(90deg, #5a1f1b, #3a1714);
  border-bottom: 1px solid #8b332d;
  padding: 12px 14px;
}

.blue-header {
  background: linear-gradient(90deg, #1d3448, #162634);
  border-bottom: 1px solid #3f6684;
  padding: 12px 14px;
}

.team-name {
  font-size: 16px;
  letter-spacing: .02em;
}

.dm-header .team-players {
  color: var(--sof-green);
  font-weight: 800;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.dm-header .team-players::after {
  content: " PLAYERS";
}

.player {
  border-bottom: 1px solid var(--sof-line);
  padding: 9px 14px;
}

.player:nth-child(even) {
  background: rgba(255, 255, 255, .02);
}

.player:last-child {
  border-bottom: none;
}

.player-name {
  color: var(--sof-text);
  font-size: 14px;
  font-weight: 700;
}

.player-ping {
  color: var(--sof-dim);
  font-size: 11px;
}

.player-score {
  color: var(--sof-gold2);
  font-size: 16px;
  font-weight: 800;
}

.spectator-list {
  color: var(--sof-muted);
  font-size: 12px;
  text-align: left;
  border-top: 1px solid var(--sof-line);
  padding-top: 10px;
  margin-top: 14px;
}

.server-info {
  background: transparent;
  padding: 0;
  border-radius: 0;
}

.server-info .left-column {
  background: var(--sof-bg2);
  border: 1px solid var(--sof-line);
  border-radius: 10px;
  padding: 0 0 14px;
  overflow: hidden;
  text-align: left;
}

.server-info .server-summary {
  text-align: left;
  padding: 16px 16px 10px;
}

.server-info .server-summary h3 {
  color: var(--sof-text);
  font-size: 18px;
  font-weight: 800;
}

html body .server-info .server-summary p {
  padding: 0;
}

.server-info .server-summary strong {
  color: var(--sof-green) !important;
}

.server-info .map-image img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 0 12px;
}

.server-info .left-column p {
  padding: 0 16px;
  font-size: 13px;
  color: var(--sof-muted);
  line-height: 1.8;
}

.server-info .left-column strong {
  color: #e0e8e4;
  font-weight: 600;
}

.server-info .left-column hr {
  width: auto !important;
  margin: 12px 16px;
  border: 0;
  border-top: 1px solid var(--sof-line);
}

/* ── Buttons (theme colour → gold) ──────────────────────────────────────── */
html body .bttn,
html body button,
html body input[type="button"],
html body input[type="reset"],
html body input[type="submit"],
html body .navigation .nav-links a,
html body .widget_search .search-submit,
html body .edit-link .post-edit-link,
html body .reply .comment-reply-link,
html body #mt-scrollup {
  background: var(--sof-gold);
  border: 1px solid #b98d52;
  border-radius: var(--sof-radius-sm);
  color: #141410;
  font-weight: 800;
}

html body .bttn:hover,
html body button:hover,
html body input[type="button"]:hover,
html body input[type="reset"]:hover,
html body input[type="submit"]:hover,
html body .navigation .nav-links a:hover,
html body .widget_search .search-submit:hover,
html body #mt-scrollup:hover {
  background: var(--sof-gold2);
  border-color: var(--sof-gold2);
  color: #141410;
}

html body .navigation .nav-links a {
  border-radius: var(--sof-radius-sm);
}

/* Form fields */
html body input[type="text"],
html body input[type="email"],
html body input[type="url"],
html body input[type="password"],
html body input[type="search"],
html body input[type="number"],
html body textarea,
html body select {
  background: #10171a;
  border: 1px solid #495550;
  border-radius: 6px;
  color: var(--sof-text);
}

html body input:focus,
html body textarea:focus,
html body select:focus {
  border-color: var(--sof-gold);
}

/* ── Single posts / pages / archives ────────────────────────────────────── */
html body #primary article.hentry,
html body.single #primary article.hentry,
html body.page #primary article.hentry {
  background: var(--sof-panel);
  border: 1px solid var(--sof-line);
  border-radius: var(--sof-radius);
  padding: 26px;
  margin-bottom: 24px;
}

html body.editorial-dark-mode#blog-post article.hentry,
html body.editorial-dark-mode.search article.hentry,
html body.editorial-dark-mode.archive article.hentry,
html body.editorial-dark-mode.tag article.hentry,
html body.editorial-dark-mode.category article.hentry,
html body.editorial-dark-mode.blog article.hentry {
  border: 1px solid var(--sof-line);
}

.single-post-image figure,
.single-post-image img {
  border-radius: 10px;
}

.single-post-image {
  margin-bottom: 18px;
}

html body .entry-title,
html body h1.entry-title,
html body .entry-title a,
html body.editorial-dark-mode .entry-title a,
html body.editorial-dark-mode h1.entry-title,
html body.search-results.editorial-dark-mode .entry-title,
html body.archive.editorial-dark-mode .entry-title,
html body.single.editorial-dark-mode .entry-title {
  color: var(--sof-text);
  font-weight: 850;
  letter-spacing: -0.025em;
  line-height: 1.2;
}

html body h1.entry-title {
  font-size: clamp(26px, 2.6vw, 38px);
}

html body .entry-title a:hover {
  color: var(--sof-gold2);
}

html body .entry-content,
html body.editorial-dark-mode p,
html body.editorial-dark-mode .author-description {
  color: #cdd5d2;
}

html body .entry-content a {
  color: var(--sof-gold2);
  text-decoration: underline;
  text-decoration-color: rgba(242, 206, 141, .35);
  text-underline-offset: 3px;
}

html body .entry-content a:hover {
  text-decoration-color: var(--sof-gold2);
}

html body .entry-content blockquote {
  border-left: 3px solid var(--sof-gold);
  background: var(--sof-panel2);
  border-radius: 0 8px 8px 0;
  color: var(--sof-muted);
}

html body .entry-footer,
html body .entry-footer a {
  color: var(--sof-dim);
}

html body .archive .page-header,
html body .page-header {
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--sof-line);
  margin-bottom: 24px;
  padding: 0 0 12px;
}

html body .page-header .page-title,
html body.editorial-dark-mode .page-header .page-title,
html body.archive .page-header .page-title {
  background: transparent;
  color: var(--sof-text);
  font-size: 28px;
  font-weight: 850;
  padding: 0;
}

html body .archive .page-header[class*="mt-cat-"],
html body.archive .page-header[class*="mt-cat-"] {
  border-left: none;
}

/* Related posts */
.related-articles-wrapper {
  background: var(--sof-panel);
  border: 1px solid var(--sof-line);
  border-radius: var(--sof-radius);
  padding: 22px;
  margin-bottom: 24px;
}

/* Comments */
html body.editorial-dark-mode #respond,
html body.editorial-dark-mode .comment-list .comment-body,
html body #respond,
html body .comment-list .comment-body {
  background: var(--sof-panel);
  border: 1px solid var(--sof-line);
  border-top: 2px solid var(--sof-gold);
  border-radius: var(--sof-radius);
  padding: 22px;
}

html body.editorial-dark-mode #reply-title,
html body.editorial-dark-mode #comments h2.comments-title {
  color: var(--sof-text);
  font-size: 20px;
}

/* ── Sidebar widgets (core widgets) ─────────────────────────────────────── */
html body.editorial-dark-mode .widget_archive li,
html body.editorial-dark-mode .widget_categories li,
html body.editorial-dark-mode .widget_recent_entries li,
html body.editorial-dark-mode .widget_meta li,
html body.editorial-dark-mode .widget_recent_comments li,
html body.editorial-dark-mode .widget_pages li,
html body.editorial-dark-mode .widget_nav_menu li,
html body.editorial-dark-mode .widget_archive a,
html body.editorial-dark-mode .widget_categories a,
html body.editorial-dark-mode .widget_recent_entries a,
html body.editorial-dark-mode .widget_meta a,
html body.editorial-dark-mode .widget_pages li a,
html body.editorial-dark-mode .widget_nav_menu li a {
  color: #d3dbd6;
  border-color: var(--sof-line);
}

html body.editorial-dark-mode .widget_archive a:hover,
html body.editorial-dark-mode .widget_categories a:hover,
html body.editorial-dark-mode .widget_recent_entries a:hover,
html body.editorial-dark-mode .widget_meta a:hover,
html body.editorial-dark-mode .widget_pages li a:hover,
html body.editorial-dark-mode .widget_nav_menu li a:hover,
html body .widget a:hover,
html body .widget a:hover::before,
html body .widget li:hover::before {
  color: var(--sof-gold2);
}

html body .widget_tag_cloud .tagcloud a,
html body .widget.widget_tag_cloud a {
  background: #263034;
  border: 1px solid var(--sof-line2);
  border-radius: 4px;
  color: #d7dddb;
}

html body .widget_tag_cloud .tagcloud a:hover,
html body .widget.widget_tag_cloud a:hover {
  background: #584329;
  border-color: var(--sof-gold-dark);
  color: #fff;
}

html body li.recentcomments.recent-comment {
  background: var(--sof-bg2);
  border: 1px solid var(--sof-line);
  border-radius: 8px;
  color: var(--sof-muted);
}

/* ── Pagination ─────────────────────────────────────────────────────────── */
html body .page-numbers {
  border-radius: 6px;
}

html body.editorial-dark-mode .page-numbers.current,
html body .page-numbers.current {
  background: var(--sof-gold);
  color: #141410;
}

/* ── Tables (server list etc.) ──────────────────────────────────────────── */
html body .table {
  background-color: var(--sof-panel);
  border-radius: 10px;
  overflow: hidden;
}

html body .table thead th {
  background: var(--sof-panel2);
  border: none;
  border-bottom: 1px solid var(--sof-line);
  color: var(--sof-dim);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

html body .table tbody td {
  border: none;
  border-top: 1px solid var(--sof-line);
}

html body .table tbody tr:nth-child(odd) {
  background-color: var(--sof-panel);
}

html body .table tbody tr:nth-child(even) {
  background-color: #182024;
}

html body .table tbody tr:hover {
  background-color: #222c30;
}

html body tr.live-server-highlight {
  background: #3a2f1e !important;
}

html body .gold-servers-title,
html body .empty-gold-servers-title,
html body .silver-servers-title,
html body .empty-silver-servers-title {
  background: transparent;
  border-bottom: 1px solid var(--sof-line);
  text-align: left;
  padding: 0 0 10px;
  font-size: 20px;
}

/* ── Footer ─────────────────────────────────────────────────────────────── */
html body #top-footer {
  background: #11191d;
  border-top: 1px solid var(--sof-line);
  margin-top: 30px;
  padding: 44px 0 10px;
}

html body #top-footer .widget {
  background: transparent;
  border: none;
  padding: 0;
}

html body #top-footer .block-header,
html body #top-footer .widget .widget-title-wrapper {
  border-bottom: none;
  margin-bottom: 12px;
  padding: 0;
}

html body #top-footer .block-header .block-title,
html body #top-footer .widget .widget-title {
  color: var(--sof-gold2);
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding-left: 0;
}

html body #top-footer .block-header .block-title::before,
html body #top-footer .widget .widget-title::before {
  display: none;
}

html body #top-footer,
html body #top-footer p,
html body #top-footer .textwidget {
  color: var(--sof-muted);
  font-size: 14px;
}

html body #top-footer a,
html body #top-footer .widget_archive a,
html body #top-footer .widget_categories a,
html body #top-footer .widget_recent_entries a,
html body #top-footer .widget_pages li a,
html body #top-footer .widget_nav_menu li a,
html body #top-footer .list-posts-block .single-post-wrapper .post-content-wrapper .post-title a {
  color: #d3dbd6;
}

html body #top-footer a:hover,
html body #top-footer .list-posts-block .single-post-wrapper .post-content-wrapper .post-title a:hover {
  color: var(--sof-gold2);
}

html body #bottom-footer {
  background: var(--sof-bg);
  border-top: 1px solid var(--sof-line);
  color: var(--sof-dim);
  font-size: 13px;
  padding: 6px 0;
}

html body #bottom-footer a,
html body #footer-navigation ul li a {
  color: var(--sof-muted);
}

html body #bottom-footer a:hover,
html body #footer-navigation ul li a:hover {
  color: var(--sof-gold2);
}

/* ── Floating chat button + scroll-to-top ───────────────────────────────── */
html body #chat-button {
  background: #b9874e;
  border: 1px solid #e2b579;
  border-radius: 9px !important;
  box-shadow: 0 8px 26px rgba(0, 0, 0, .5);
  color: #f6eedf;
  padding: 12px 17px;
}

html body #chat-button:hover {
  background: var(--sof-gold);
}

html body .button-opened,
html body #chat-button.button-opened {
  background: #1c282c;
  border-color: #97784f;
}

html body .popup-modal {
  background: #1c282c;
  border: 1px solid #97784f;
  border-radius: var(--sof-radius);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .65);
  color: var(--sof-text);
}

html body #mt-scrollup {
  border-radius: 50%;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 1300px) {
  .home-primary-wrapper { width: 64%; }
  .home-secondary-wrapper { width: 34%; }
  #primary, .home.blog #primary { width: 68%; }
  #secondary, .home.blog #secondary { width: 30%; }
}

@media (max-width: 1200px) {
  .mt-container {
    width: var(--sof-wrap);
    padding: 0;
  }
}

@media (max-width: 1050px) {
  :root { --sof-wrap: min(100% - 38px, 1800px); }

  .featured-slider-section .single-post-wrapper figure img { height: 240px; }
  html body .featured-slider-section .editorial_block_grid .post-content-wrapper .post-title a { font-size: 17px; }
}

@media (max-width: 979px) {
  .logo-ads-wrapper .mt-container {
    flex-direction: column;
    justify-content: center;
    padding: 16px 0;
    gap: 14px;
  }

  #custom_html-8 .textwidget > div { text-align: center; }

  html body .featured-slider-section .editorial_block_grid .block-posts-wrapper { grid-template-columns: 1fr 1fr; }
  html body .featured-slider-section .editorial_block_grid .single-post-wrapper:last-child { grid-column: 1 / -1; }
}

@media (max-width: 768px) {
  :root { --sof-wrap: min(100% - 28px, 1800px); }

  .home-primary-wrapper,
  .home-secondary-wrapper,
  #primary,
  #secondary,
  .home.blog #primary,
  .home.blog #secondary {
    float: none;
    width: 100%;
  }

  html body #site-navigation {
    background: #182126;
  }

  html body #site-navigation ul li {
    border-bottom: 1px solid var(--sof-line);
  }

  .top-header-section .date-section { display: none; }

  html body .featured-slider-section .editorial_block_grid .block-posts-wrapper { grid-template-columns: 1fr; }
  html body .featured-slider-section .editorial_block_grid .single-post-wrapper:last-child { grid-column: auto; }
  .featured-slider-section .single-post-wrapper figure img { height: 220px; }

  .home-content-wrapper .widget,
  #secondary .widget,
  html body #primary article.hentry,
  .related-articles-wrapper {
    padding: 17px;
  }

  #content.site-content { padding-top: 24px; }
}
