:root{--navy:#062847;--navy2:#041d34;--gold:#d6a13a;--cream:#fbf7ef;--ink:#0b213b;--line:#e8e2d8;--muted:#65758b;--blue:#3558a6}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream)}a{color:inherit;text-decoration:none}button{font:inherit}.topbar{height:86px;background:#fff;display:flex;align-items:center;gap:36px;padding:0 42px;border-bottom:1px solid #eee;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;min-width:230px}.brand-logo{width:58px;height:58px;object-fit:contain;background:transparent;border-radius:0;padding:0;box-shadow:none}.brand strong{font-family:Georgia,serif;font-size:44px;line-height:.8;letter-spacing:4px}.brand em{display:block;color:var(--gold);letter-spacing:9px;font-style:normal;font-size:14px}.wheel{font-size:48px;color:var(--gold)}nav{display:flex;gap:30px;flex:1;justify-content:center;text-transform:uppercase;font-weight:700;font-size:14px}nav a:hover{color:var(--gold)}.login-btn,.btn{background:var(--navy);color:#fff;padding:14px 22px;border-radius:5px;font-weight:700;border:0;display:inline-block;cursor:pointer}.btn.gold{background:var(--gold);color:#071d34}.hero{min-height:480px;background-size:cover;background-position:center;position:relative;display:grid;grid-template-columns:1fr 360px;align-items:center;padding:70px 64px}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,36,.72),rgba(4,20,36,.25),rgba(4,20,36,.05))}.hero>*{position:relative}.hero-copy{color:#fff;max-width:540px}.hero h1{font-family:Georgia,serif;font-size:60px;line-height:1.05;margin:0 0 20px}.hero h1 span{color:var(--gold)}.hero p{font-size:20px;line-height:1.45}.event-card{background:linear-gradient(180deg,var(--navy),var(--navy2));color:#fff;padding:24px;border-radius:4px;box-shadow:0 18px 40px rgba(0,0,0,.3)}.event-card h3{margin-top:0;border-bottom:1px solid rgba(214,161,58,.35);padding-bottom:14px}.event-item{display:grid;grid-template-columns:58px 1fr;gap:14px;margin:18px 0}.datebox{background:#fff;color:var(--ink);border-radius:4px;text-align:center;overflow:hidden;font-weight:800}.datebox small{display:block;background:var(--gold);padding:5px}.datebox b{font-size:26px;display:block;padding:8px}.quicklinks{display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-bottom:1px solid var(--line)}.quicklinks a{text-align:center;padding:24px;border-right:1px solid var(--line);font-weight:700;text-transform:uppercase;font-size:13px}.quicklinks span{font-size:28px;display:block;margin-bottom:8px}.section{padding:46px 64px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px;box-shadow:0 8px 24px rgba(20,37,60,.05)}.panel h2,.panel h3{margin-top:0}.list-row{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.muted{color:var(--muted);font-size:14px}.layout{display:grid;grid-template-columns:230px 1fr;min-height:calc(100vh - 86px)}.sidebar{background:linear-gradient(180deg,var(--navy),var(--navy2));color:#fff;padding:24px}.sidebar .brand{min-width:auto;margin-bottom:30px}.sidebar .brand-logo{width:44px;height:44px;padding:0}.sidebar .brand strong{font-size:28px}.sidebar .brand em{font-size:11px;letter-spacing:6px}.side-link{display:block;padding:13px 12px;border-radius:6px;margin:4px 0}.side-link:hover,.side-link.active{background:rgba(255,255,255,.12)}.content{padding:34px}.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.stat{background:#fff;border:1px solid var(--line);padding:22px;border-radius:8px}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{text-align:left;padding:14px;border-bottom:1px solid var(--line);font-size:14px}.form{max-width:760px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px}.form label{display:block;font-weight:700;margin:16px 0 6px}.form input,.form textarea,.form select{width:100%;padding:12px;border:1px solid #cfd7e3;border-radius:5px;font:inherit}.form textarea{min-height:140px}.notice{padding:12px 16px;border-radius:5px;background:#eaf6ef;margin:12px 0}.footer{background:var(--navy2);color:#fff;display:flex;justify-content:space-between;padding:24px 42px}.footer a{margin-left:20px}.about-page{display:grid;gap:24px}.about-intro{max-width:940px}.about-intro h1{font-family:Georgia,serif;font-size:46px;margin:0 0 12px}.about-intro p{font-size:20px;line-height:1.5;margin:0}.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.fact{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px}.fact strong{display:block;color:var(--blue);font-family:Georgia,serif;font-size:38px;line-height:1}.fact span{display:block;margin-top:8px;color:var(--muted);line-height:1.35}.about-grid .panel p{line-height:1.55}.officers-panel{display:grid;gap:16px}.officer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.officer-grid div{border:1px solid var(--line);border-radius:6px;padding:14px;background:#fbfcff}.officer-grid span{display:block;color:var(--muted);font-size:13px}.officer-grid strong{display:block;margin-top:5px}.admin-events-grid{display:grid;grid-template-columns:minmax(360px,1fr) minmax(320px,520px);gap:24px;align-items:start}.calendar-panel{user-select:none}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.calendar-toolbar h2{margin:0;text-align:center}.icon-btn{width:40px;height:40px;border:1px solid #cfd7e3;background:#fff;color:var(--navy);border-radius:6px;font-weight:800;cursor:pointer}.icon-btn:hover{border-color:var(--blue);color:var(--blue)}.calendar-weekdays,.admin-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekdays span{text-align:center;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.admin-calendar{margin-top:6px}.cal-day{height:92px;border:1px solid #d9e0e8;background:#fff;border-radius:6px;text-align:left;padding:8px;cursor:pointer;display:flex;flex-direction:column;gap:6px;overflow:hidden;color:var(--ink)}.cal-day:hover{border-color:var(--blue);box-shadow:0 4px 12px rgba(53,88,166,.12)}.cal-day.dim{background:#f6f3ec;color:#9aa4b2}.cal-day.today{border-color:var(--gold)}.cal-day.selected{background:#eaf2ff;border-color:var(--blue);box-shadow:inset 0 0 0 2px rgba(53,88,166,.28)}.cal-number{font-weight:800}.cal-events{display:flex;flex-direction:column;gap:3px;min-height:0}.cal-events span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#edf5ef;color:#244f31;border-radius:4px;padding:2px 4px;font-size:11px}.form-split{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:1100px){.admin-events-grid,.fact-grid,.officer-grid{grid-template-columns:1fr 1fr}.admin-events-grid{align-items:stretch}}@media(max-width:900px){.topbar{height:auto;flex-wrap:wrap;padding:18px}.brand-logo{width:52px;height:52px}.hero{grid-template-columns:1fr;padding:42px 24px}.event-card{margin-top:24px}.quicklinks,.grid,.statgrid,.layout,.admin-events-grid,.fact-grid,.officer-grid,.form-split{grid-template-columns:1fr}nav{order:3;flex-wrap:wrap}.sidebar{display:none}.section{padding:34px 22px}.content{padding:24px}.cal-day{height:74px}.about-intro h1{font-size:36px}}

.event-card-link{color:var(--gold);font-weight:700;display:inline-block;margin-top:4px;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.quicklinks{grid-template-columns:repeat(6,1fr);background:#fff;border-top:1px solid rgba(6,40,71,.08)}
@media(max-width:900px){.quicklinks{grid-template-columns:1fr}}
.quicklinks a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:82px;padding:18px 14px;letter-spacing:.08em;border-top:2px solid transparent;transition:background .18s ease,border-color .18s ease,color .18s ease}
.quicklinks a:hover{background:#fbfcff;border-top-color:var(--gold);color:var(--navy)}
.quicklinks strong{font-size:14px}
.quicklinks small{color:var(--muted);font-size:12px;font-weight:400;letter-spacing:0;text-transform:none}
