/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Template: generatepress
Author: Tom Usborne
Author URI: https://generatepress.com/about
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 3.6.1.1772308234
Updated: 2026-02-28 14:50:34
*/

/* ============================================================
   BRAND TOKENS
   Matches variable names in brand.css exactly.
   Only truly global rules -- variables are additive and
   Bilal's file already uses the same names.
   ============================================================ */

:root {
    --bg-primary:       #F5F0E6;
    --bg-alt:           #E8DCC8;
    --text-primary:     #1A1A1A;
    --text-secondary:   #4A4A4A;
    --accent-primary:   #C41E3A;
    --accent-secondary: #2D2D2D;
    --highlight:        #D4A017;
    --divider:          #B8A590;
    --bg-dark:          #1A1A1A;
    --text-light:       #D4C4B0;

    --font-mono:  'Courier Prime', Courier, monospace;
    --font-body:  'Source Sans Pro', -apple-system, sans-serif;
    --font-stamp: 'Special Elite', Impact, sans-serif;
}


/* ============================================================
   GLOBAL -- safe on all pages
   No color or typography -- only footer and block group
   ============================================================ */

.footer-widgets {
    background-color: transparent !important;
}

/* ============================================================
   STANDARD PAGES ONLY
   Scoped to body.home, body.page, body.single-post
   body.single-case-file is never touched
   ============================================================ */

/* Background and text color */
body.home,
body.page,
body.single-post {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

body.home #page,
body.home #content,
body.home #primary,
body.home .site-main,
body.page #page,
body.page #content,
body.page #primary,
body.page .site-main,
body.single-post #page,
body.single-post #content,
body.single-post #primary,
body.single-post .site-main {
    background-color: var(--bg-primary);
}

/* GP separate containers */
body.home .separate-containers .inside-article,
body.home .inside-page-header,
body.page .separate-containers .inside-article,
body.page .inside-page-header,
body.single-post .separate-containers .inside-article,
body.single-post .inside-page-header {
    background-color: var(--bg-primary);
}

/* Content area padding -- home has no padding so hero sits flush */
body.home .entry-content,
body.home .page-content,
body.home .inside-article {
    background-color: var(--bg-primary);
    padding: 0; !important;
}

body.page .entry-content,
body.page .page-content,
body.page .inside-article,
body.single-post .entry-content,
body.single-post .page-content,
body.single-post .inside-article {
    background-color: var(--bg-primary);
    padding: 40px 24px; !important;
}

/* Links */
body.home a,
body.page a,
body.single-post a {
    color: var(--accent-primary);
    text-decoration: none;
}

body.home a:hover,
body.page a:hover,
body.single-post a:hover {
    text-decoration: underline;
}

body.home a:active,
body.page a:active,
body.single-post a:active {
    color: var(--accent-primary);
}

/* Entry title */
body.home .entry-title,
body.home .entry-header .entry-title,
body.home .page-header .page-title,
body.page .entry-title,
body.page .entry-header .entry-title,
body.page .page-header .page-title,
body.single-post .entry-title,
body.single-post .entry-header .entry-title {
    font-family: var(--font-mono);
    color: var(--accent-primary);
    text-align: center;
}

body.home .entry-title a,
body.page .entry-title a       { color: var(--accent-primary); }

body.home .entry-title a:hover,
body.page .entry-title a:hover { color: var(--text-secondary); text-decoration: none; }

/* Hide duplicate page title on home -- hero carries the branding */
body.home .entry-title {
    display: none;
}

/* Headings -- direct children only */
body.home .entry-content > h1,
body.home .entry-content > h2,
body.home .entry-content > h3,
body.home .entry-content > h4,
body.page .entry-content > h1,
body.page .entry-content > h2,
body.page .entry-content > h3,
body.page .entry-content > h4,
body.single-post .entry-content > h1,
body.single-post .entry-content > h2,
body.single-post .entry-content > h3 {
    font-family: var(--font-mono);
    color: var(--text-primary);
}

/* Paragraphs -- direct children only */
body.home .entry-content > p,
body.home .page-content > p,
body.page .entry-content > p,
body.page .page-content > p,
body.single-post .entry-content > p,
body.single-post .page-content > p {
    font-family: var(--font-body);
    font-size: 1.05rem;
    line-height: 1.8;
    color: var(--text-primary);
    margin-bottom: 16px;
}

/* Block group paragraphs inherit color from their container
   so inline colors in hero/subscribe sections pass through */
body.home .wp-block-group p,
body.page .wp-block-group p {
    color: inherit;
}

/* HR */
body.home .entry-content hr,
body.page .entry-content hr {
    border: none;
    border-top: 2px solid var(--divider);
    max-width: 200px;
    margin: 40px auto;
}

/* Sidebar */
body.page .sidebar .widget,
body.single-post .sidebar .widget {
    background-color: var(--bg-alt);
    border: 1px solid var(--divider);
    border-radius: 6px;
}


/* ============================================================
   SITE PAGE COMPONENTS
   About, Episodes, Contact
   ============================================================ */

.content-section {
    background-color: var(--bg-primary);
    padding: 60px 20px;
}

.content-container {
    max-width: 720px;
    margin: 0 auto;
}

.section-heading {
    font-family: var(--font-mono);
    font-size: clamp(1.5rem, 3vw, 2.2rem);
    color: var(--accent-primary);
    margin-bottom: 16px;
}

.section-subheading {
    font-family: var(--font-mono);
    font-size: 1.5rem;
    color: var(--accent-primary);
    margin-bottom: 12px;
}

.section-divider {
    border: none;
    border-top: 2px solid var(--divider);
    max-width: 200px;
    margin: 40px auto;
}

/* Dark subscribe section */
.subscribe-section {
    background-color: var(--bg-dark);
    padding: 60px 20px;
    text-align: center;
}

.subscribe-heading {
    font-family: var(--font-mono);
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: var(--bg-primary);
    margin-bottom: 12px;
}

.subscribe-subtext {
    font-family: var(--font-body);
    font-size: 1.1rem;
    color: var(--text-light);
    margin-bottom: 32px;
}

.subscribe-embed-wrapper {
    display: flex;
    justify-content: center;
}

.subscribe-embed-wrapper iframe {
    max-width: 480px;
    width: 100%;
    border: 1px solid var(--text-secondary);
    background: var(--bg-dark);
}

/* Episode cards */
.episode-card {
    background: var(--bg-alt);
    border: 1px solid var(--divider);
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 20px;
}

.episode-card h2,
.episode-card h3 {
    color: var(--text-primary);
}

/* Buttons */
.button,
.wp-block-button__link,
button[type="submit"],
input[type="submit"] {
    background-color: var(--accent-primary);
    color: var(--bg-primary);
    font-family: var(--font-mono);
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border: none;
    border-radius: 6px;
    padding: 12px 24px;
    cursor: pointer;
    display: inline-block;
    text-decoration: none;
}

.button:hover,
.wp-block-button__link:hover,
button[type="submit"]:hover,
input[type="submit"]:hover {
    background-color: var(--text-primary);
    color: var(--bg-primary);
    text-decoration: none;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 768px) {

    body.page .entry-content,
    body.page .inside-article,
    body.single-post .entry-content,
    body.single-post .inside-article {
        padding: 30px 16px;
    }

    .content-section,
    .subscribe-section {
        padding: 40px 16px;
    }
}