@font-face {
	font-family: 'Open Sans';
	src: url('/assets/fonts/open-sans.woff2') format('woff2');
	font-weight: 300 800;
	font-display: swap;
}
:root {
	color-scheme: dark;
	--ecc-blue: #3498db;
	--ecc-link: #79c2f0;
	--ecc-panel: #2d2d2d;
	--ecc-surface: #373737;
	--ecc-nav: #242526;
	--ecc-border: #464646;
	--ecc-muted: #b8bfc5;
}
* { box-sizing: border-box; }
body.ecc-site {
	margin: 0;
	background: #23272c url('/forum/Best%20Minecraft%20Servers.jpg') center top / cover fixed no-repeat;
	color: #eee;
	font: 14px/1.7 'Open Sans', Arial, sans-serif;
}
a { color: var(--ecc-link); text-decoration: none; }
a:hover { text-decoration: underline; }
button, input, select { font: inherit; }
a:focus-visible, button:focus-visible, summary:focus-visible {
	outline: 3px solid #91d4ff;
	outline-offset: 3px;
}
.ecc-shell { width: calc(100% - 44px); max-width: 1170px; margin: 0 auto; }
.ecc-masthead { height: 160px; display: flex; align-items: center; justify-content: center; }
.ecc-brand { display: block; width: 678px; max-width: 62%; }
.ecc-brand img { display: block; width: 100%; height: auto; }
.ecc-frame { background: var(--ecc-surface); border: 1px solid var(--ecc-border); border-radius: 4px; box-shadow: 0 14px 60px #0b10174d; }
.ecc-site-nav { display: flex; align-items: stretch; gap: 10px; position: relative; z-index: 20; min-height: 48px; background: var(--ecc-nav); border-bottom: 1px solid var(--ecc-border); border-radius: 4px 4px 0 0; }
.ecc-nav-toggle, .ecc-menu-toggle { display: none; }
.ecc-site-links { display: flex; flex-wrap: wrap; align-items: stretch; min-width: 0; margin: 0; padding: 0; list-style: none; }
.ecc-tab { position: relative; display: flex; }
.ecc-tab-link { display: flex; align-items: center; padding: 0 10px; color: #c9cdd0; font-size: 12px; font-weight: 700; line-height: 48px; text-transform: uppercase; white-space: nowrap; }
.ecc-tab-link:hover { text-decoration: none; }
.ecc-tab-link svg { display: block; width: 15px; height: 13px; }
.ecc-tab-home .ecc-tab-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.ecc-has-menu > .ecc-tab-link { padding-right: 24px; }
.ecc-tab:first-child > .ecc-tab-link { border-top-left-radius: 3px; }
.ecc-has-menu > .ecc-tab-link::after, .ecc-menu-toggle::before { content: ''; position: absolute; top: 50%; right: 12px; margin-top: -2px; border-style: solid; border-width: 4px 4px 0; border-color: #ffffffbf transparent transparent; }
.ecc-js .ecc-has-menu > .ecc-tab-link::after { content: none; }
.ecc-js .ecc-menu-toggle { display: block; position: absolute; top: 0; right: 0; width: 24px; height: 100%; padding: 0; border: 0; background: none; cursor: pointer; }
.ecc-menu { display: none; position: absolute; top: 100%; left: 0; z-index: 30; min-width: 200px; border: 1px solid var(--ecc-border); border-top: 2px solid var(--ecc-blue); box-shadow: 4px 4px 10px -2px #0000001a; }
.ecc-menu-header { padding: 8px; background: var(--ecc-nav); border-bottom: 1px solid var(--ecc-border); }
.ecc-menu-title { display: block; color: #e8e8e8; font-size: 14px; line-height: 21px; }
.ecc-menu-muted { display: block; color: #8f969c; font-size: 11px; line-height: 16px; }
.ecc-menu-links { margin: 0; padding: 0 0 4px; list-style: none; background: var(--ecc-panel); }
.ecc-menu-links a { display: block; padding: 6px 12px; color: #bdbdbd; font-size: 12px; font-weight: 600; line-height: 18px; white-space: nowrap; }
.ecc-menu-links a:hover { color: #fff; text-decoration: none; }
.ecc-menu-gap { margin-top: 10px; }
.ecc-tab.is-open > .ecc-menu { display: block; }
.ecc-tab.is-open > .ecc-tab-link, .ecc-tab.is-open > .ecc-menu-toggle { background: #30363b; color: #fff; }
.ecc-tab.is-open > .ecc-menu-toggle::before { border-width: 0 4px 4px; border-color: transparent transparent #fff; }
@media (min-width: 940px) and (hover: hover) and (pointer: fine) {
	.ecc-tab-link:hover, .ecc-has-menu:hover > .ecc-tab-link { background: #30363b; color: #fff; }
	.ecc-has-menu:not(.is-dismissed):hover > .ecc-tab-link::after, .ecc-has-menu:not(.is-dismissed):hover > .ecc-menu-toggle::before { border-width: 0 4px 4px; border-color: transparent transparent #fff; }
	.ecc-has-menu:not(.is-dismissed):hover > .ecc-menu { display: block; }
}
@media (min-width: 940px) {
	html:not(.ecc-js) .ecc-has-menu:focus-within > .ecc-menu { display: block; }
}
.ecc-tab-link[aria-current] { background: #2d3033; color: var(--ecc-link); box-shadow: inset 0 -2px 0 var(--ecc-blue); }
.ecc-site-nav .ecc-tab-shop > .ecc-tab-link, .ecc-site-nav .ecc-tab-map > .ecc-tab-link, .ecc-site-nav .ecc-tab-shop .ecc-menu-links a { color: #ff6; }
.ecc-site-nav .ecc-tab-shopdb > .ecc-tab-link { color: #98d878; }
.ecc-site-account { display: flex; align-items: center; margin-left: auto; padding: 0 14px; color: #d0d4d7; font-size: 11px; white-space: nowrap; }
.ecc-context { padding: 10px 20px; border-bottom: 1px solid var(--ecc-border); font-size: 11px; color: var(--ecc-muted); }
.ecc-home .container { padding: 28px 24px 0; text-align: center; }
.items { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.item { min-width: 0; display: block; padding: 24px 14px; background: var(--ecc-panel); border: 1px solid var(--ecc-border); border-radius: 4px; color: white; transition: border-color .16s; }
.item:hover { border-color: #6e9db9; text-decoration: none; }
.item img { display: block; width: auto; height: 132px; max-width: 100%; object-fit: contain; margin: 0 auto 17px; }
.item .subtitle { margin: 0; font-size: 12px; color: var(--ecc-muted); }
.item .title { margin: 0; font-size: 21px; line-height: 1.4; color: #eee; font-weight: 600; }
.playercount { margin: 24px 0 0; padding: 14px; background: #2d3338; border: 1px solid #48535c; border-radius: 4px; }
.playercount p { margin: 0; }
.ip { display: inline-block; padding: 5px 10px; margin: 0 3px; border: 1px solid #49758f; border-radius: 4px; background: #233a49; color: #ace0ff; font-weight: 600; }
button.ip { cursor: pointer; }
.extrapad { padding: 0; }
.about-ecc, .wrap { max-width: 960px; margin: 0 auto; padding: 34px 30px 44px; }
.about-ecc h1 { text-align: center; }
h1 { color: #fff; font-size: 29px; font-weight: 600; line-height: 1.3; letter-spacing: -.5px; margin: 0 0 20px; }
h2 { color: #eee; font-size: 22px; font-weight: 600; line-height: 1.4; margin: 32px 0 12px; }
p { margin: 0 0 16px; }
.about-ecc p:last-child { text-align: center; margin-bottom: 0; }
.about-ecc ul { list-style: none; padding: 0; margin: 26px 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; }
.about-ecc a { text-decoration: underline; }
.lede { color: var(--ecc-muted); font-size: 16px; margin: 0 0 24px; }
.cta { display: inline-flex; align-items: center; justify-content: center; margin: 6px 10px 6px 0; padding: 10px 18px; border: 1px solid #4c87ad; border-radius: 4px; background: #28678f; color: #fff; font-weight: 600; }
.cta:hover { background: #327dab; text-decoration: none; }
.cta.alt { background: #2b343d; border-color: #526273; color: #d8e6ef; }
.features, .quotes { list-style: none; padding: 0; margin: 20px 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.features li, .quotes li { background: var(--ecc-panel); border: 1px solid var(--ecc-border); border-radius: 4px; padding: 18px; min-width: 0; }
.features b { display: block; color: #fff; margin-bottom: 4px; }
.quotes p { font-style: italic; margin: 0 0 12px; }
.quotes cite { color: var(--ecc-link); font-size: 12px; font-style: normal; }
.shot { margin: 28px 0; }
.shot img { width: 100%; height: auto; display: block; border: 1px solid var(--ecc-border); border-radius: 4px; }
.shot figcaption { color: var(--ecc-muted); font-size: 12px; text-align: center; margin-top: 10px; }
.faq dt { font-weight: 600; color: #eee; margin-top: 20px; }
.faq dd { margin: 6px 0 0; color: var(--ecc-muted); }
.ecc-footer { padding: 23px 24px; border-top: 1px solid var(--ecc-border); background: #23282d; color: var(--ecc-muted); font-size: 11px; border-radius: 0 0 4px 4px; }
.ecc-footer p { margin: 12px 0 0; }
.ecc-footer-links { display: flex; gap: 10px 22px; flex-wrap: wrap; }
.ecc-footer-links a { color: #c0ccd4; padding: 4px 0; }
.ecc-skip { position: fixed; top: -70px; left: 15px; z-index: 100; background: #17394e; padding: 12px; color: white; }
.ecc-skip:focus { top: 10px; }
.ecc-site-nav a:focus-visible, .ecc-site-nav button:focus-visible { outline-offset: -3px; }
@media (max-width: 950px) {
	.item { padding: 20px 12px; }
	.item img { height: 110px; }
}
@media (max-width: 939.98px) {
	.ecc-site-nav { flex-wrap: wrap; align-items: center; gap: 0 10px; padding: 0 14px; }
	.ecc-site-links { order: 1; flex: 1 0 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 -14px; border-top: 1px solid var(--ecc-border); }
	.ecc-tab { flex-wrap: wrap; }
	.ecc-tab-link { flex: 1; min-width: 0; gap: 8px; padding: 0 16px; line-height: 44px; }
	.ecc-tab-home .ecc-tab-label { position: static; width: auto; height: auto; overflow: visible; clip-path: none; }
	.ecc-has-menu > .ecc-tab-link { padding-right: 16px; }
	.ecc-has-menu > .ecc-tab-link::after { content: none; }
	.ecc-site-account { min-height: 48px; padding: 0; }
	.ecc-js .ecc-nav-toggle { display: flex; align-items: center; gap: 9px; min-height: 48px; padding: 0; border: 0; background: none; color: #d7dde1; font-size: 12px; font-weight: 600; cursor: pointer; }
	.ecc-js .ecc-nav-toggle::after { content: ''; border-style: solid; border-width: 4px 4px 0; border-color: #ffffffbf transparent transparent; }
	.ecc-js .ecc-site-nav.is-open .ecc-nav-toggle::after { border-width: 0 4px 4px; border-color: transparent transparent #fff; }
	.ecc-js .ecc-site-links { display: none; position: absolute; top: 100%; left: -1px; right: -1px; margin: 0; padding: 4px 0; background: var(--ecc-nav); border: 1px solid var(--ecc-border); border-top: 0; box-shadow: 0 12px 24px #0005; }
	.ecc-js .ecc-site-nav.is-open .ecc-site-links { display: block; }
	.ecc-js .ecc-tab + .ecc-tab { border-top: 1px solid #ffffff0d; }
	.ecc-js .ecc-menu-toggle { position: relative; flex: none; width: 48px; height: 44px; }
	.ecc-js .ecc-menu-toggle::before { right: 20px; }
	.ecc-menu { position: static; flex: 1 0 100%; min-width: 0; border: 0; box-shadow: none; }
	.ecc-menu-header { display: none; }
	.ecc-menu-links { padding: 0 0 6px; background: none; }
	.ecc-menu-links a { padding: 13px 16px 13px 32px; white-space: normal; }
}
@media (max-width: 700px) {
	.ecc-shell { width: calc(100% - 24px); }
	.ecc-masthead { height: 108px; }
	.ecc-brand { width: 460px; max-width: 93%; }
	.ecc-tab-link { font-size: 11px; }
	.ecc-context { padding: 10px 14px; font-size: 10px; }
	.ecc-home .container { padding: 20px 14px 0; }
	.items { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.item { padding: 18px 10px; }
	.item img { height: 100px; margin-bottom: 12px; }
	.item .title { font-size: 18px; }
	.item .subtitle { font-size: 11px; }
	.playercount { margin-top: 20px; padding: 12px 8px; font-size: 12px; }
	.about-ecc, .wrap { padding: 26px 18px 32px; }
	h1 { font-size: 24px; }
	h2 { font-size: 20px; }
	.about-ecc ul, .features, .quotes { grid-template-columns: minmax(0, 1fr); }
	.lede { font-size: 14px; }
	.ecc-footer { padding: 20px 18px; }
}
@media (forced-colors: active) {
	.ecc-has-menu > .ecc-tab-link::after, .ecc-menu-toggle::before, .ecc-nav-toggle::after { forced-color-adjust: none; border-top-color: currentColor !important; border-bottom-color: currentColor !important; }
	.ecc-tab-link[aria-current] { outline: 2px solid Highlight; outline-offset: -4px; }
}
@media (prefers-reduced-motion: reduce) {
	.item { transition: none; }
}
