/*
 * RIZ Custom Theme v4.1 (Corrected)
 * Applies specific refinements to v4 based on user feedback.
 */

/* -- 1. Font Imports and Variables -- */
:root {
    --navy-dark: #0A1D35;
    --accent-blue: #143e81;
    --button-blue-grey: #778899;
    --text-light: #F8F9FA;
    --text-dark: #343a40;
    --text-gray: #6c757d;
    --border-gray: #dee2e6;
    --font-heading: 'Roboto Mono', monospace;
    --font-body: 'Roboto Flex', sans-serif;
}

body {
    font-family: var(--font-body);
    color: var(--text-dark);
    padding-top: 90px;
}

h2, h3 {
    font-family: var(--font-heading);
}

/* -- 2. Fixed Navigation Bar -- */
.tm-navbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1030;
    background-color: #ffffff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    padding: 0.75rem 0; /* Adjusted padding */
}
.tm-navbar .navbar-brand {
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--navy-dark);
    display: flex; /* Use flexbox for alignment */
    align-items: center;
}
.navbar-brand-icon {
    height: 40px; /* Control icon size */
    margin-right: 15px; /* Space between icon and text */
}
.tm-navbar .tm-nav-link {
    color: var(--text-dark);
    font-size: 1rem;
}
.tm-navbar .tm-nav-link:hover,
.tm-navbar .nav-item.active .tm-nav-link {
    color: var(--accent-blue);
    font-weight: 700;
}

/* -- 3. Section Layout and Backgrounds -- */
.page-section {
    padding: 100px 0;
}
.bg-parallax {
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.bg-parallax .container {
    position: relative;
    z-index: 2;
}
.bg-parallax::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(10, 29, 53, 0.85);
    z-index: 1;
}
/* This selector was updated to include blockquotes for the new subline */
.bg-parallax h2, .bg-parallax p, .bg-parallax blockquote {
    color: var(--text-light);
}

/* -- 4. Specific Section Styling -- */

/* Hero Section */
#home {
    padding: 120px 0 100px 0;
    display: flex;
    align-items: center;
    background-image: url('../images/background-black-neon-hex.jpg');
}
#home h1 {
    font-family: var(--font-heading);
    color: #fff;
    font-size: 3.5rem; /* Larger hero title */
}

/* Tagline Section */
#tagline-section {
    padding: 60px 0;
    background-color: #f8f9fa;
}
#tagline-section h2 {
    font-size: 2rem;
    color: var(--text-dark);
    font-weight: 700;
}

/* "What is RIZ" Section */
#what-is-riz {
    background-image: url('../images/background-blue-hex2.jpg');
}
#what-is-riz h2 {
    font-size: 2.2rem; /* Adjusted for one line */
    margin-bottom: 40px;
    white-space: nowrap; /* Keeps heading on one line for larger screens */
}
#what-is-riz p {
    font-size: 1.1rem;
    line-height: 1.8;
}

/* RIZ Games Section */
#riz-games .tm-section-title {
    margin-bottom: 20px; /* Fix for layout issue */
}
#riz-games .intro-paragraph {
    margin-top: 0;
    margin-bottom: 60px;
}
#riz-games h3 {
    color: var(--navy-dark);
}
.game-entry {
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid var(--border-gray);
}
.game-entry:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0; /* Add padding-bottom zeroing here */
}
.game-entry .btn-play {
    background-color: var(--button-blue-grey);
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    display: inline-block;
    margin-top: 15px;
    font-weight: 700;
    transition: background-color 0.3s ease;
}
.game-entry .btn-play:hover {
    background-color: var(--navy-dark); /* CHANGED: Hover color updated to navy */
    color: white;
}
.game-description p {
    margin-bottom: 1rem; /* Space between paragraphs in description */
}

/* About D&O Section - ADDED new style for subline */
#about-do .tm-section-title {
    margin-bottom: 20px;
}
.do-subline {
    font-family: var(--font-body);
    font-style: italic;
    font-size: 1.5rem;
    margin-bottom: 40px;
    font-weight: 400;
}


/* Contact Section */
#contact {
    background-color: #fff;
}
#contact .form-control {
    background-color: #f8f9fa;
    border: 1px solid var(--border-gray);
    color: var(--text-dark);
}
.btn-submit {
    background-color: var(--button-blue-grey);
    color: white;
    padding: 12px 40px; /* This is an existing style I am not touching */
    border: none;
    border-radius: 5px;
    font-weight: 700;
    transition: background-color 0.3s ease;
}
.btn-submit:hover {
    background-color: var(--navy-dark); /* CHANGED: Hover color updated to navy */
}

/* Footer */
.tm-footer {
    position: relative;
    padding: 30px 15px;
    background-color: var(--navy-dark);
    color: var(--text-gray);
}
.tm-footer a {
    color: var(--accent-blue);
    font-weight: 700;
    text-decoration: underline;
}

/* Media query to allow title to wrap on smaller screens */
@media (max-width: 991.98px) {
    #what-is-riz h2 {
        white-space: normal;
    }
}