/* ========== Global ========== */
* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: radial-gradient(circle at top, #2f3a57 0%, #090b15 45%, #020309 100%);
    color: #e5e7ff;
}

/* links */
a {
    color: #ffb35a;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

/* ========== Header & Branding ========== */
header {
    background: rgba(8, 10, 22, 0.96);
    color: #f8f5ff;
    border-bottom: 2px solid #ff7a1a;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.7);
}

.header-inner {
    max-width: 1100px;
    margin: 0 auto;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    gap: 14px;
}

header img.logo-small {
    width: 60px;
    border-radius: 50%;
    border: 2px solid #ff7a1a;
    -webkit-user-drag: none;
    user-drag: none;
}

.site-title {
    flex: 1;
}

.site-title h1 {
    margin: 0;
    font-size: 1.4rem;
    letter-spacing: 0.04em;
    color: #ffcf84;
}

.site-title p {
    margin: 0;
    font-size: 0.9rem;
    color: #b8c0ff;
}

/* ========== Navigation ========== */
nav {
    background: #05060d;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    max-width: 1100px;
    margin: 0 auto;
}

nav li {
    margin: 0;
}

nav a {
    display: block;
    padding: 9px 14px;
    font-size: 0.95rem;
    color: #e5e7ff;
}

nav a:hover {
    background: rgba(255, 138, 46, 0.25);
    color: #111;
}

nav a.active {
    background: linear-gradient(135deg, #ff8a2e, #ffd98a);
    color: #151515;
    font-weight: 600;
}

/* ========== Main Content ========== */
main {
    max-width: 1100px;
    margin: 22px auto 40px auto;
    padding: 0 15px 40px 15px;
}

main h2, main h3 {
    color: #ffcf84;
}

main p, main li {
    line-height: 1.7;
    color: #d6dbff;
}

/* ========== Hero Logo (home page) ========== */
.hero-logo {
    text-align: center;
    margin: 28px 0 10px 0;
}

.hero-logo img {
    width: 220px;
    border-radius: 50%;
    border: 3px solid #ff7a1a;
    -webkit-user-drag: none;
    user-drag: none;
}

.hero-logo .logo-caption {
    font-size: 12px;
    color: #b3b3c7;
    margin-top: 5px;
}

/* ========== Generic Page Logo (if used) ========== */
img.logo {
    max-width: 100%;
}

/* ========== Footer ========== */
footer {
    margin-top: 20px;
    padding: 15px;
    background: #05060d;
    color: #a5aac8;
    text-align: center;
    font-size: 0.85rem;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

/* ========== Tables / Lists (future-proof) ========== */
table {
    border-collapse: collapse;
    width: 100%;
}
th, td {
    border: 1px solid rgba(255, 255, 255, 0.15);
    padding: 6px 10px;
}
th {
    background: rgba(255, 255, 255, 0.06);
}

/* ========== Basic responsiveness ========== */
@media (max-width: 600px) {
    .header-inner {
        padding: 10px;
    }
    .site-title h1 {
        font-size: 1.2rem;
    }
    nav a {
        font-size: 0.9rem;
        padding: 8px 10px;
    }
}
