/*
Theme Name: MacScott Alexander Hamilton
Theme URI: https://alexanderhamilton.live
Description: Child theme for AlexanderHamilton.Live — 18th-century elegance meets modern tour booking.
Author: Scott MacScott / XRAI Studio
Template: macscott-base
Version: 1.0.0
License: Private
Text Domain: macscott-alexanderhamilton
*/

/* ── Design Tokens ───────────────────────────────────────────────────────── */
:root {
    --color-primary:    #1C2951;   /* Midnight Blue / Indigo */
    --color-secondary:  #BFA04A;   /* Aged Gold */
    --color-sepia:      #6B4226;   /* Sepia Brown */
    --color-cream:      #F8F2E3;   /* Cream Paper */
    --color-ink:        #1A1A1A;   /* Near-black ink */

    --color-text:       #2E2010;
    --color-heading:    #1C2951;
    --color-accent:     #BFA04A;
    --color-muted:      #7A6A58;
    --color-bg:         #FFFDF8;
    --color-border:     #DDD5BF;

    --color-header-bg:  #1C2951;
    --color-nav:        #F8F2E3;
    --color-footer-bg:  #111827;
    --color-footer-text:#D6CCB8;

    --font-heading: 'Playfair Display', Georgia, serif;
    --font-body:    'Source Serif 4', 'Source Serif Pro', Georgia, serif;

    --container-width: 1140px;
}

/* ── Google Fonts ─────────────────────────────────────────────────────────── */
/* Loaded via functions.php filter */

/* ── Header ──────────────────────────────────────────────────────────────── */
.site-header {
    background: var(--color-primary);
    border-bottom: 3px solid var(--color-secondary);
}

.site-logo__text {
    color: var(--color-cream);
    font-family: var(--font-heading);
    font-size: 1.6rem;
    letter-spacing: 0.03em;
}

.site-logo a { color: var(--color-cream); }
.site-logo img { max-height: 70px; }

/* ── Navigation ──────────────────────────────────────────────────────────── */
.nav-menu a { color: var(--color-cream); }
.nav-menu a:hover { color: var(--color-secondary); }
.nav-menu .current-menu-item > a {
    color: var(--color-secondary);
    border-bottom: 2px solid var(--color-secondary);
}
.nav-menu .sub-menu {
    background: var(--color-primary);
    border-color: var(--color-secondary);
}
.nav-menu .sub-menu a { color: var(--color-cream); }
.nav-toggle span { background: var(--color-cream); }

/* ── Hero ─────────────────────────────────────────────────────────────────── */
.page-hero {
    background-color: var(--color-primary);
    background-blend-mode: multiply;
    padding: 7rem 1.5rem;
    border-bottom: 4px solid var(--color-secondary);
}

.page-hero h1 {
    font-family: var(--font-heading);
    font-size: clamp(2.5rem, 6vw, 5rem);
    color: var(--color-cream);
    text-shadow: 0 2px 12px rgba(0,0,0,0.5);
    letter-spacing: 0.02em;
}

.page-hero p { color: var(--color-cream); opacity: 0.9; }

/* ── Body / Typography ───────────────────────────────────────────────────── */
body { background-color: var(--color-bg); }

.entry-content h1,
.entry-content h2,
.entry-content h3 {
    font-family: var(--font-heading);
    color: var(--color-primary);
    letter-spacing: 0.01em;
}

/* Gold rule under h2 */
.entry-content h2::after {
    content: '';
    display: block;
    width: 60px;
    height: 2px;
    background: var(--color-secondary);
    margin-top: 0.4rem;
}

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.btn {
    background: var(--color-secondary);
    color: var(--color-ink);
    border-color: var(--color-secondary);
    font-family: var(--font-heading);
    letter-spacing: 0.06em;
}
.btn:hover {
    background: var(--color-primary);
    color: var(--color-cream);
    border-color: var(--color-primary);
}
.btn--outline {
    color: var(--color-secondary);
    border-color: var(--color-secondary);
}
.btn--outline:hover {
    background: var(--color-secondary);
    color: var(--color-ink);
}

/* ── Sections ─────────────────────────────────────────────────────────────── */
.section-cream  { background: var(--color-cream); padding: 4rem 0; }
.section-navy   { background: var(--color-primary); color: var(--color-cream); padding: 4rem 0; }
.section-navy h2 { color: var(--color-secondary); font-family: var(--font-heading); }
.section-navy p  { color: var(--color-cream); }

/* ── Tour info / booking card ────────────────────────────────────────────── */
.tour-card {
    background: #fff;
    border: 1px solid var(--color-border);
    border-top: 4px solid var(--color-secondary);
    padding: 2rem;
    margin-bottom: 2rem;
}
.tour-card h3 {
    font-family: var(--font-heading);
    color: var(--color-primary);
    margin-bottom: 0.75rem;
}

/* ── Reviews / Testimonials ──────────────────────────────────────────────── */
.review {
    background: var(--color-cream);
    border-left: 4px solid var(--color-secondary);
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.5rem;
    font-style: italic;
}
.review cite {
    display: block;
    font-style: normal;
    font-weight: 700;
    color: var(--color-primary);
    margin-top: 0.5rem;
}

/* ── Gutenberg / Astra compat ────────────────────────────────────────────── */
:root {
    --ast-global-color-0: #1C2951;
    --ast-global-color-1: #BFA04A;
    --ast-global-color-2: #6B4226;
    --ast-global-color-3: #F8F2E3;
    --ast-global-color-4: #111827;
    --ast-global-color-5: #2E2010;
    --ast-global-color-6: #FFFDF8;
    --ast-global-color-7: #DDD5BF;
    --ast-global-color-8: #7A6A58;
}

.wp-block-cover {
    min-height: 420px;
    background-color: var(--color-primary);
    color: var(--color-cream);
}
.wp-block-cover,
.wp-block-cover .wp-block-cover__inner-container { color: var(--color-cream); }
.wp-block-cover p,
.wp-block-cover h1,
.wp-block-cover h2,
.wp-block-cover h3 { color: var(--color-cream); }

.has-ast-global-color-0-background-color { background-color: var(--ast-global-color-0) !important; }
.has-ast-global-color-1-background-color { background-color: var(--ast-global-color-1) !important; }
.has-ast-global-color-3-background-color { background-color: var(--ast-global-color-3) !important; }
.has-ast-global-color-0-color { color: var(--ast-global-color-0) !important; }
.has-ast-global-color-1-color { color: var(--ast-global-color-1) !important; }
.has-ast-global-color-3-color { color: var(--ast-global-color-3) !important; }

/* ── Footer ──────────────────────────────────────────────────────────────── */
.site-footer { background: var(--color-footer-bg); }
.site-footer h3 {
    font-family: var(--font-heading);
    color: var(--color-secondary);
    margin-bottom: 0.75rem;
}
.site-footer a { color: var(--color-footer-text); }
.site-footer a:hover { color: var(--color-secondary); }
