/* OraLee Branch — Forest Green / Earth Theme */

[data-brand="oralee"] {
    --color-primary: #2d5016;
    --color-primary-rgb: 45, 80, 22;
    --color-primary-dark: #1a3a0a;
    --color-primary-light: #4d7c0f;
    --color-accent: #65a30d;
    --color-accent-rgb: 101, 163, 13;

    --color-bg: #fafdf7;
    --color-bg-elevated: #ffffff;
    --color-bg-card: #ffffff;
    --color-bg-card-hover: #f0fdf0;
    --color-bg-subtle: #e8f5e0;

    --color-text: #1a2e05;
    --color-text-secondary: #3f6212;
    --color-text-tertiary: #84cc16;
    --color-text-inverse: #ffffff;

    --color-border: rgba(26, 46, 5, 0.08);
    --color-border-hover: rgba(26, 46, 5, 0.15);

    --gradient-hero: linear-gradient(135deg, #14532d 0%, #166534 40%, #1a2e05 100%);
    --gradient-accent: linear-gradient(135deg, var(--color-primary) 0%, var(--color-accent) 100%);
    --gradient-text: linear-gradient(135deg, #4d7c0f 0%, #65a30d 100%);
    --gradient-card: linear-gradient(145deg, rgba(45,80,22,0.03) 0%, rgba(101,163,13,0.03) 100%);
    --gradient-glow: radial-gradient(ellipse at 50% 0%, rgba(45,80,22,0.12) 0%, transparent 60%);

    --pattern-dots: radial-gradient(circle, rgba(26,46,5,0.04) 1px, transparent 1px);
    --pattern-size: 24px 24px;

    color-scheme: light;
}

/* Elegant serif headings */
[data-brand="oralee"] h1,
[data-brand="oralee"] h2,
[data-brand="oralee"] h3 {
    font-family: 'Playfair Display', Georgia, serif;
}

/* Hero text on gradient */
[data-brand="oralee"] .hero--gradient { color: #fff; }
[data-brand="oralee"] .hero--gradient .hero__subtitle { color: rgba(255,255,255,0.85); }
[data-brand="oralee"] .hero--gradient .hero__eyebrow {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.3);
    color: #ffffff;
}

/* Header on gradient hero */
[data-brand="oralee"] .site-header { color: #ffffff; }
[data-brand="oralee"] .site-header .nav-link { color: rgba(255, 255, 255, 0.85); }
[data-brand="oralee"] .site-header .nav-link:hover { color: #ffffff; background: rgba(255, 255, 255, 0.15); }
[data-brand="oralee"] .site-header .logo { color: #ffffff; }
[data-brand="oralee"] .site-header.scrolled { background: rgba(255, 255, 255, 0.95); }
[data-brand="oralee"] .site-header.scrolled .nav-link { color: var(--color-text-secondary); }
[data-brand="oralee"] .site-header.scrolled .nav-link:hover { color: var(--color-text); background: var(--color-border); }
[data-brand="oralee"] .site-header.scrolled .logo { color: var(--color-text); }

/* Publication list styling */
.pub-list { display: grid; gap: var(--space-3); }
.pub-item {
    padding: var(--space-4);
    background: var(--color-bg-card);
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-primary);
    border-radius: var(--radius-md);
    position: relative;
}
.pub-item:hover {
    border-left-color: var(--color-accent);
    box-shadow: var(--shadow-sm);
}
.pub-item__cite {
    display: inline-block;
    font-size: var(--text-xs);
    font-weight: 700;
    color: var(--color-primary);
    background: rgba(var(--color-primary-rgb), 0.08);
    padding: 2px 10px;
    border-radius: var(--radius-full);
    margin-bottom: var(--space-1);
}
.pub-item__title {
    font-size: var(--text-base);
    font-weight: 600;
    color: var(--color-text);
    margin-bottom: var(--space-1);
    line-height: var(--leading-snug);
}
.pub-item__authors {
    font-size: var(--text-sm);
    color: var(--color-text-secondary);
    margin-bottom: 2px;
}
.pub-item__journal {
    font-size: var(--text-sm);
    color: var(--color-text-tertiary);
}

/* Timeline */
.timeline { position: relative; padding-left: var(--space-6); }
.timeline::before {
    content: '';
    position: absolute;
    left: 8px;
    top: 4px;
    bottom: 4px;
    width: 2px;
    background: var(--color-border);
}
.timeline__item {
    position: relative;
    padding-bottom: var(--space-4);
    display: flex;
    align-items: flex-start;
    gap: var(--space-3);
}
.timeline__item:last-child { padding-bottom: 0; }
.timeline__marker {
    position: absolute;
    left: calc(-1 * var(--space-6) + 4px);
    top: 6px;
    width: 10px;
    height: 10px;
    border-radius: var(--radius-full);
    background: var(--color-primary);
    border: 2px solid var(--color-bg);
    box-shadow: 0 0 0 2px var(--color-primary);
}
.timeline__content {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.timeline__content strong {
    color: var(--color-text);
    font-size: var(--text-base);
}
