/* --- Professional Authority Theme --- */
:root {
    --navy: #1a365d;
    --gold: #c0a062;
    --light-bg: #f8fafc;
    --text-main: #334155;
    --white: #ffffff;
}

body { 
    font-family: 'Georgia', serif; /* Serif font for authority */
    line-height: 1.8; color: var(--text-main); background: var(--light-bg); margin: 0; 
}

.container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }

/* Header & Nav */
nav { background: var(--navy); padding: 20px 0; color: white; }
.nav-content { display: flex; justify-content: space-between; align-items: center; }
.logo { font-size: 1.6rem; font-weight: bold; color: var(--gold); text-decoration: none; letter-spacing: 1px; }

/* Hero Section */
.hero { background: var(--white); padding: 80px 0 60px; text-align: center; border-bottom: 4px solid var(--gold); }
h1 { font-size: 3rem; color: var(--navy); margin: 0; }
.hero-subtitle { font-style: italic; color: #64748b; font-size: 1.2rem; margin-top: 10px; }

/* Generator Card (The Tool) */
.tool-section { margin-top: -50px; }
.generator-card { 
    background: var(--white); padding: 40px; border-radius: 4px; 
    box-shadow: 0 20px 40px rgba(0,0,0,0.1); border: 1px solid #e2e8f0;
}
.tool-header { border-bottom: 2px solid var(--gold); margin-bottom: 30px; padding-bottom: 10px; }
.tool-header h2 { margin: 0; color: var(--navy); font-size: 1.5rem; }

/* Grid for Knowledge Hub */
.knowledge-hub { padding: 60px 0; }
.section-title { text-align: center; color: var(--navy); margin-bottom: 40px; font-size: 2rem; }
.knowledge-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.info-card { background: white; padding: 25px; border-top: 5px solid var(--navy); transition: 0.3s; text-decoration: none; color: inherit; }
.info-card:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.05); }
.info-card h3 { color: var(--navy); margin-top: 0; }

/* Buttons */
.btn-gold { background: var(--gold); color: white; border: none; padding: 15px 30px; font-weight: bold; cursor: pointer; border-radius: 2px; }