:root{--stone:#120d0a;--stone2:#1d1410;--wood:#3a2517;--edge:#6b4b32;--hi:#9b7650;--lo:#070403;--parch:#e7d8b5;--parch2:#d6c299;--ink:#2a1a0e;--gold:#e0b44c;--gold2:#ffe29a;--crim:#8c1d18;--crim2:#5e0f0c;--link:#8a2f0d;--tan:#d9c8a4;--ok:#5fe07a;--bad:#ff6a5c;--emer:#2fae7a}
*{box-sizing:border-box}
html{background:var(--stone);scroll-behavior:smooth}
body{margin:0;font:13px/1.55 Verdana,Geneva,Tahoma,sans-serif;color:var(--tan);min-height:100vh;
background:linear-gradient(rgba(10,6,4,.78),rgba(10,6,4,.9)),url(../images/new/stone.jpg) 0 0/384px 384px,var(--stone)}
a{color:var(--link);text-decoration:none;transition:color .15s}a:hover{color:#c0561c;text-decoration:underline}
img{max-width:100%;height:auto}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* ---------- HERO ---------- */
#hero{position:relative;height:300px;background:#0a0605 url(../images/new/hero.jpg) center 30%/cover no-repeat;border-bottom:3px solid var(--lo);box-shadow:0 4px 0 var(--edge),0 12px 30px rgba(0,0,0,.6)}
#hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,4,3,.88) 0,rgba(8,4,3,.55) 38%,rgba(8,4,3,0) 70%),linear-gradient(0deg,rgba(8,4,3,.85),transparent 45%)}
#hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.hero-in{position:relative;z-index:1;max-width:1240px;height:100%;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:flex;align-items:center;gap:18px}.logo:hover{text-decoration:none}
.crest{width:128px;height:128px;-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 58%,transparent 71%);mask-image:radial-gradient(circle at 50% 50%,#000 58%,transparent 71%);filter:drop-shadow(0 0 14px rgba(224,180,76,.45));animation:glow 4s ease-in-out infinite}
.brand{display:block;font:bold 62px/1 Georgia,"Palatino Linotype",serif;letter-spacing:4px;color:var(--gold2);background:linear-gradient(#fff3c9,#e0b44c 55%,#9c6a1c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(2px 3px 0 #000) drop-shadow(0 0 18px rgba(224,100,40,.35))}
.brand span{display:inline}
.brand small{display:block;margin-top:8px;font:italic 15px Georgia,serif;letter-spacing:6px;text-transform:uppercase;color:#c9a96a;-webkit-text-fill-color:#c9a96a;filter:none}
.tag{margin:0;align-self:flex-end;padding-bottom:26px;font:italic 15px Georgia,serif;color:#e8c87d;text-shadow:1px 1px 3px #000;letter-spacing:1px}
@keyframes glow{0%,100%{filter:drop-shadow(0 0 10px rgba(224,180,76,.35))}50%{filter:drop-shadow(0 0 22px rgba(255,120,40,.65))}}

/* ---------- NAV ---------- */
#top{position:sticky;top:0;z-index:20;background:linear-gradient(#2a1b11,#150e09);border-bottom:2px solid var(--lo);box-shadow:0 2px 0 var(--edge),0 6px 16px rgba(0,0,0,.5)}
#top .bar{max-width:1240px;margin:0 auto;padding:0 12px}
#top nav{display:flex;flex-wrap:wrap;justify-content:center}
#top nav a{position:relative;color:var(--tan);padding:13px 22px;font:bold 12px Georgia,serif;text-transform:uppercase;letter-spacing:2px;transition:color .15s,background .15s}
#top nav a::after{content:"";position:absolute;left:18px;right:18px;bottom:6px;height:2px;background:var(--gold);transform:scaleX(0);transition:transform .2s}
#top nav a:hover{color:var(--gold2);background:rgba(255,255,255,.05);text-decoration:none}
#top nav a:hover::after{transform:scaleX(1)}

/* ---------- LAYOUT ---------- */
#layout{max-width:1240px;margin:26px auto;padding:0 16px;display:grid;grid-template-columns:210px minmax(0,1fr) 210px;gap:18px;align-items:start}

/* ---------- CARDS ---------- */
.card{position:relative;background:linear-gradient(#241912,#18100b);padding:0 0 12px;margin-bottom:16px;border:1px solid #000;box-shadow:inset 0 0 0 1px var(--edge),inset 0 0 0 3px #120b07,inset 0 0 0 4px rgba(224,180,76,.28),0 6px 14px rgba(0,0,0,.5)}
.card h3{margin:5px 5px 10px;padding:7px 10px;font:bold 11px Georgia,serif;letter-spacing:2px;white-space:nowrap;text-transform:uppercase;text-align:center;color:var(--gold2);background:linear-gradient(#7a1c16,#4a0c09);border:1px solid #000;box-shadow:inset 0 1px 0 rgba(255,180,120,.35);text-shadow:1px 1px 0 #000}
.card h3::before,.card h3::after{content:"\25C6";color:var(--gold);font-size:8px;margin:0 8px;vertical-align:middle}
.card>*:not(h3){margin-left:12px;margin-right:12px}
.menu{list-style:none;padding:0;margin-top:0;margin-bottom:0}.menu li{list-style:none;margin:0;padding:0;background:none}.menu li::marker{content:""}
.menu a,.linkbtn{display:block;padding:5px 10px;color:var(--tan);background:none;border:0;font:inherit;text-align:left;width:100%;cursor:pointer;border-left:3px solid transparent;transition:all .15s}
.menu a:hover,.linkbtn:hover{background:linear-gradient(90deg,rgba(140,29,24,.45),transparent);color:var(--gold2);border-left-color:var(--gold);text-decoration:none;padding-left:14px}
.card form label{display:block;color:var(--gold);margin:6px 0 3px;font-weight:bold;font-size:11px;letter-spacing:1px;text-transform:uppercase}
.card form .inputbox{width:100%}

/* ---------- CONTENT (parchment) ---------- */
#content{position:relative;color:var(--ink);padding:26px 30px;min-height:460px;overflow-x:auto;
background:radial-gradient(ellipse at 20% 10%,rgba(255,250,225,.55),transparent 55%),radial-gradient(ellipse at 85% 90%,rgba(150,100,40,.18),transparent 60%),var(--parch);
border:1px solid #000;box-shadow:inset 0 0 0 3px #f1e6c8,inset 0 0 0 4px var(--edge),inset 0 0 70px rgba(110,70,20,.35),0 8px 22px rgba(0,0,0,.6)}
#content table{border-collapse:collapse;max-width:100%}
#content td,#content th{padding:6px 9px;vertical-align:top}
#content table.contentpaneopen,#content table.contentpaneopen td{width:100%}
#content table tr:nth-child(even) td{background:rgba(90,60,20,.08)}
#content h1,#content h2,#content h3,#content h4{color:#6a1c10;margin:.2em 0 .8em;font-family:Georgia,"Palatino Linotype",serif}
#content h4{font-size:21px;text-align:center;padding-bottom:10px;border-bottom:0;background:linear-gradient(90deg,transparent,var(--edge),transparent) bottom/100% 2px no-repeat}
#content hr{border:0;height:2px;background:linear-gradient(90deg,transparent,var(--edge),transparent)}
#content a{color:var(--link);font-weight:bold}

/* ---------- FORMS / BUTTONS ---------- */
input[type=text],input[type=password],input[type=email],input[type=number],textarea,select,.inputbox{background:#f7efd9;color:var(--ink);border:1px solid #000;box-shadow:inset 1px 1px 3px rgba(60,35,10,.45);padding:7px 9px;font:inherit;max-width:100%;transition:box-shadow .15s}
.card .inputbox{background:#efe3c3}
input:focus,textarea:focus,select:focus{outline:0;background:#fffaea;box-shadow:inset 1px 1px 3px rgba(60,35,10,.35),0 0 0 2px var(--gold)}
input[type=submit],input[type=button],button,.mybutton,.donateButton,a.button{background:linear-gradient(#a6271f,#6a120d);color:var(--gold2)!important;border:1px solid #000;box-shadow:inset 0 1px 0 rgba(255,190,140,.4),inset 0 0 0 2px rgba(224,180,76,.35),0 2px 4px rgba(0,0,0,.5);padding:8px 20px;font:bold 12px Georgia,serif;text-transform:uppercase;letter-spacing:2px;cursor:pointer;display:inline-block;text-decoration:none;text-shadow:1px 1px 0 #000;transition:filter .15s,transform .1s}
input[type=submit]:hover,button:hover,.mybutton:hover,.donateButton:hover{filter:brightness(1.2);text-decoration:none}
input[type=submit]:active,.donateButton:active,button:active{transform:translateY(1px)}
.card .mybutton{width:100%;margin-top:12px}

/* ---------- STATUS ---------- */
.status_on,.status_off{margin:2px 0 6px;font:bold 15px Georgia,serif;letter-spacing:1px}
.status_on{color:var(--ok);text-shadow:0 0 10px rgba(95,224,122,.5)}.status_off{color:var(--bad)}
.muted{color:var(--tan);margin-top:2px;margin-bottom:2px}.card .muted a{color:var(--gold)}.card .muted a:hover{color:var(--gold2)}

/* ---------- LEGACY CONTENT PIECES ---------- */
#content .news{position:relative;margin:0 0 22px;padding:0;background:rgba(255,248,225,.45);border:1px solid var(--edge);box-shadow:0 3px 8px rgba(60,35,10,.35)}
#content .newsTitle{background:linear-gradient(#7a1c16,#4a0c09);color:var(--gold2);font:bold 16px Georgia,serif;padding:10px 16px;letter-spacing:1px;border-bottom:2px solid #000;text-shadow:1px 1px 0 #000}
#content .newsBody{color:var(--ink);padding:16px 18px;white-space:pre-line;line-height:1.7}
#content .newsFooter{color:#7a5a38;font-size:11px;padding:6px 16px;border-top:1px solid var(--edge);text-align:right;font-style:italic}
#content .news .content{padding:6px 14px 14px}
#content .title,.rules{background:rgba(255,248,225,.55);color:var(--ink);border:1px solid var(--edge);box-shadow:inset 0 0 0 2px rgba(224,180,76,.3);padding:12px 18px;font-weight:bold}
.rules{font-weight:normal}.rules p{margin:.6em 0}
#content .title{display:inline-block;color:#6a1c10;font-family:Georgia,serif;font-size:15px}
.donationMenu{background:linear-gradient(#7a1c16,#4a0c09);border:1px solid #000;padding:8px 14px;margin:6px 0}.donationMenu a{color:var(--gold2)!important}
.donations{width:100%;margin:6px 0;background:rgba(255,248,225,.5);border:1px solid var(--edge)}
#content table[border="1"],#content table[border="1"] td,#content table[border="1"] th{border:1px solid var(--edge)}
#content tr[bgcolor] td,#content td[bgcolor],#content th{background:linear-gradient(#cdb683,#bda57a)!important;color:var(--ink)}
#content font[color=red]{color:#a1281f}#content font[color=green]{color:#1f6a2a}

/* ---------- FOOTER ---------- */
#footer{max-width:1240px;margin:8px auto 34px;padding:22px 16px;text-align:center;color:#a18a68;font-size:11px;background:linear-gradient(90deg,transparent,var(--edge),transparent) top/100% 1px no-repeat;letter-spacing:1px}
#footer a{color:var(--gold)}#footer a:hover{color:var(--gold2)}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1000px){#layout{grid-template-columns:1fr}#left,#right{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0 16px}.brand{font-size:44px}.tag{display:none}#hero{height:240px}.crest{width:96px;height:96px}}
@media(max-width:560px){.brand{font-size:32px;letter-spacing:2px}.brand small{font-size:11px;letter-spacing:3px}.crest{width:72px;height:72px}#hero{height:180px}#top nav a{padding:10px 12px;font-size:11px;letter-spacing:1px}#content{padding:18px 16px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
#content label{color:var(--ink)!important}
