:root {
	--turquoise: #057F9C;
	--teal: #065a5b;
	--brown: #796A58;
    accent-color: var(--teal);
}
html {scrollbar-gutter: stable;}
a {
	text-decoration: none;
	color: #B52F26;
}
a:hover {
	text-decoration: none;
	border-bottom: 1px dotted #faf4f4;
	color: #B52F26;
}
a.img, .aff a {padding:0 5px 5px 0; border: none;}
body {
	margin: 0;
	background-color: #110902;
}
::-webkit-scrollbar { width: 12px;}
::-webkit-scrollbar-thumb { background-color: #3D3127;}
::-webkit-scrollbar-track { background-color: #110902;}
.site-banner {
  width: 100%;
  aspect-ratio: 4451 / 1808;
  background: url(images/banner.webp) top center / cover no-repeat;
  display: block;
}
/* ── Hide the radio inputs ──────────────────────────── */
input[type="radio"][name="nav"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* ── Horizontal Menu Bar ───────────────────────────── */
nav {
	margin: -95px auto 0;
    display: flex;
	justify-content: space-between;
	width: 500px;
    border-bottom: 6px solid var(--turquoise);    
}
nav label {
  display: block;
  padding: 0.85rem 1.25rem;
  color: #eee;
  cursor: pointer;
  font-family: sans-serif;
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
    border-radius: 3px 3px 0 0;
  transition: background 0.2s, color 0.2s;
  user-select: none;
}
nav label:hover {
  background: #0594b7;
  color: #fff;
}

/* ── Active label highlight ─────────────────────────────── */
#r-home:checked   ~ nav label[for="r-home"],
#r-join:checked   ~ nav label[for="r-join"],
#r-codes:checked  ~ nav label[for="r-codes"],
#r-fans:checked   ~ nav label[for="r-fans"],
#r-update:checked ~ nav label[for="r-update"] {
  background: var(--turquoise);
  color: #fff;
}
div#accordion-wrap {
	position: relative;
    width: 500px;
    margin: 0 auto;
}
/* ── Sections: hidden by default ───────────────────── */
.section {
  display: none;
  border-top: none;
  overflow: hidden;
}
.section > div {
  padding: 1.25rem 1.5rem;
  font-family: "Oswald", sans-serif;
  color: #000;
}

/* ── Show + animate the checked section ─────────────── */
#r-join:checked   ~ #accordion-wrap #s-join,
#r-codes:checked ~ #accordion-wrap #s-codes,
#r-fans:checked   ~ #accordion-wrap #s-fans,
#r-update:checked   ~ #accordion-wrap #s-update,
#r-home:checked    ~ #accordion-wrap #s-home {
  display: block;
}

/* Slide the content down from above — always travels its own
   height, so speed is the same regardless of section length */
#r-join:checked   ~ #accordion-wrap #s-join   > div,
#r-codes:checked  ~ #accordion-wrap #s-codes  > div,
#r-fans:checked   ~ #accordion-wrap #s-fans   > div,
#r-update:checked ~ #accordion-wrap #s-update > div,
#r-home:checked   ~ #accordion-wrap #s-home   > div {
  animation: slideDown 0.55s ease forwards;
  background: #d9cba4bd;
  border: 1px solid #ddd;
}

/* Slides content down from the menu bar */
@keyframes slideDown {
  from { transform: translateY(-100%); }
  to   { transform: translateY(0); }
}

ul {
	list-style-position: outside;
	list-style-type: decimal;
	}
em {
	color: var(--teal);
}
.center, .award {text-align: center;}
h1 {
	font: 2.25em "Bebas Neue", sans-serif;
	color: #fff;
	letter-spacing: 2px;
	text-align: center;
}
h1:nth-of-type(2) {margin-top: 85px;}
h6 {
	margin: 0 0 0 4px;
	color: var(--teal);
	font-weight: bold;
	font-size: 1.75em;
	letter-spacing: .1em;
	font-variant-caps: small-caps;
	}
blockquote { 
    margin: 0 auto;	
    padding: 3px 6px;	
    width: 65%;	
	color: #d6d0bd;
    border: 1px solid var(--brown);
    line-height: 18px;
}
blockquote span {color: var(--brown);}
.left {
	float:left;
	margin-right: 12px;
	}
.right {
	float:right;
	margin-left: 3px;
	}
.req:before{
	content: "*";
	color: red; 
}
.codecopy {
	float: left;
	width: 45%;
	padding: 0 10px;
}
.codecopy a, .codes a { border: 0; }
.control-copytextarea {
	position: relative;
	top: 73px;
    left: 84px;
    font-size: .75em;
  	cursor: pointer;	
}
.codecopy textarea, .codecopy textarea:focus {
	margin: 5px;
	width: 200px;
	height: 50px;
	color: var(--brown);
	font-family: inherit;
	font-size: .95em;
	border: 1px dotted var(--brown);
	overflow: hidden;
}
.codes h6 {
    padding-top: 14px;
    margin-bottom: 5px;
}
label { display: block;}
div.form {
    float: left;
    width: 45%;
}
.show_join_form, .show_update_form {
    background-color: #d8d5d433;
    padding: 10px;
}
input, textarea, select {
	margin: 0px;
	padding: 4px;
	width: 165px;
	background: none;
	font-size: .95em;
	font-family: inherit;
	border: 1px solid var(--teal);
	outline: none;
	box-sizing: border-box;
}
input:focus, textarea:focus, select:focus {
	border: 1px solid #a88e70;
	color: #d5d5d5;
	background-color: var(--brown);
}
input[type=radio], input[type=checkbox] {
	display: inline;
	width: 20px;
	margin-left: 10px;
	outline: none;
}
textarea {
	width: 368px;
    height: 60px;
}
.jsubbtn, .usubbtn, .jresbtn, .uresbtn {
	margin: 8px auto 0;
	text-align: center;
	letter-spacing: .08em;
	font-family: inherit;
}
.jsubbtn, .usubbtn { margin-left: 60px;	}
.jsubbtn:hover, .jresbtn:hover, 
.usubbtn:hover, .uresbtn:hover {
	position: relative;
	top: 1px;
	left: 1px;
}
.show_join_credits, .show_update_credits {font-size: .7em;}
.show_lostpass_credits {display: none;}
.show_join_processed_emailsent, .show_join_processed_noemail, .show_join_processed_errormail, 
.show_update_process_nohold, .show_update_process_hold, .show_lostpass_processed_done, 
.show_join_error, .show_update_error, .show_lostpass_error {
    margin: 0 auto;
	padding: 8px;	
    width: 70%;
	background-color: #ded8c6cf;
    color: #762527;
}
p.show_update_intro_link_to_join { display: none; }
.clear { clear:both; }
p.center a { color: #d6d0bd; }
table {
    margin: 0 auto;
	width: 100%;
    border: 1px solid var(--teal);
}
th, td {padding: 2px;}
td { vertical-align: baseline; }
th {
    font-size: 1.1em;
	color: #b5a78a;
    background-color: var(--brown);
	text-align: left;
}
tr { border-bottom: 1px outset #5a4830ab; }
.show_members_showing_what {
	text-transform: uppercase;
	font-size: 1.15em;
	text-align: right;
	}
.flaglist {
	margin: 0 auto;
	width: 28%;
	}
.flag {
	vertical-align: middle;
	padding-bottom: 3px;
	}
.small { font-size: .75em; }
footer { 
	margin-top: 25px;
    font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
    font-size: .7em;
    text-align: center;
    font-style: oblique;
    color: #565151;
 }
footer a { color: #878377; }
footer a:hover { color: #b3ae9f;}
footer div:nth-child(2) { font-style: normal; letter-spacing: normal; }
footer div:nth-child(2) a { border: 0; }
footer div:nth-child(3) { letter-spacing: normal; }
.imgleft {
	position: absolute;
    left: -200px;
	bottom: 0;
	width: 40%;
  	background: #110902 url(images/left.webp) top center / cover no-repeat;
	aspect-ratio: 512 / 679;
	opacity: 0;
}
.imgright {
	position: absolute;
    left: 500px;
	bottom: 0;
	width: 40%;
  	background: #110902 url(images/right.webp) top center /cover no-repeat;
	aspect-ratio: 494 / 679;
	opacity: 0;
}
#accordion-wrap .imgleft,
#accordion-wrap .imgright {
  opacity: 0;
}

#r-home:checked   ~ #accordion-wrap .imgleft,
#r-home:checked   ~ #accordion-wrap .imgright { animation: fadeIn-home   1.0s ease .85s both; }

#r-join:checked   ~ #accordion-wrap .imgleft,
#r-join:checked   ~ #accordion-wrap .imgright { animation: fadeIn-join   1.0s ease .85s both; }

#r-codes:checked  ~ #accordion-wrap .imgleft,
#r-codes:checked  ~ #accordion-wrap .imgright { animation: fadeIn-codes  1.0s ease .85s both; }

#r-fans:checked   ~ #accordion-wrap .imgleft,
#r-fans:checked   ~ #accordion-wrap .imgright { animation: fadeIn-fans   1.0s ease .85s both; }

#r-update:checked ~ #accordion-wrap .imgleft,
#r-update:checked ~ #accordion-wrap .imgright { animation: fadeIn-update 1.0s ease .85s both; }

@keyframes fadeIn-home   { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeIn-join   { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeIn-codes  { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeIn-fans   { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeIn-update { from { opacity: 0; } to { opacity: 1; } }
.logo {
	margin: 15px auto;
	background: url(images/logo.webp) top center no-repeat;
	width: 88px;
	height: 88px;
}