/* taisho.day - Cinematic Taisho-Era Editorial */
* { margin: 0; padding: 0; box-sizing: border-box; }
:root {
    --taisho-cream: #FAF5E8;
    --cherry-blossom: #F5E0E0;
    --matcha-light: #E0F0E0;
    --chrysanthemum: #F5F0D0;
    --taisho-plum: #6B2044;
    --modernist-teal: #2A6A6A;
    --gold-leaf: #C8A03A;
    --ink-sumi: #1A1A14;
    --aged-paper: #7A6A50;
}
body {
    background: var(--taisho-cream);
    color: var(--ink-sumi);
    font-family: 'Zen Old Mincho', serif;
    font-size: 1.05rem;
    line-height: 1.85;
    font-weight: 400;
    overflow-x: hidden;
    display: flex;
}

/* Era Sidebar */
.era-sidebar {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    width: 160px;
    padding: 3rem 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    z-index: 5;
}
.timeline-line {
    position: absolute;
    left: 50%;
    top: 3rem;
    bottom: 3rem;
    width: 1px;
    background: var(--gold-leaf);
    opacity: 0.3;
}
.year {
    font-family: 'Cormorant Infant', serif;
    font-size: 1rem;
    font-weight: 600;
    color: var(--taisho-plum);
    position: relative;
    z-index: 1;
    background: var(--taisho-cream);
    padding: 0.15rem 0.5rem;
}
.year-event {
    font-size: 0.7rem;
    color: var(--aged-paper);
    text-align: center;
    position: relative;
    z-index: 1;
    margin-bottom: 1rem;
}

/* Main Column */
.main-column {
    margin-left: 160px;
    max-width: 700px;
    padding: 0 2rem;
    width: 100%;
}

/* Hero */
#hero {
    text-align: center;
    padding: 5rem 0 3rem;
}
.art-nouveau-frame {
    margin: 0 auto 1rem;
}
.art-nouveau-frame svg {
    display: block;
    margin: 0 auto;
    max-width: 100%;
}
.hero-title {
    font-family: 'Zen Old Mincho', serif;
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: var(--taisho-plum);
}
.hero-western {
    font-family: 'Cormorant Infant', serif;
    font-size: 1.2rem;
    color: var(--modernist-teal);
    margin-top: 0.25rem;
}
.hero-subtitle {
    font-size: 1rem;
    color: var(--aged-paper);
    margin-top: 0.25rem;
}

/* Editorial Sections */
.editorial-section {
    padding: 3rem 2rem;
    margin-bottom: 1rem;
}
.bg-pink { background: var(--cherry-blossom); }
.bg-green { background: var(--matcha-light); }
.bg-gold { background: var(--chrysanthemum); }
.section-frame {
    text-align: center;
    margin-bottom: 1.5rem;
}
.section-frame svg {
    max-width: 100%;
}
.section-title {
    font-family: 'Zen Old Mincho', serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--taisho-plum);
    margin-bottom: 1rem;
}
.body-text {
    font-size: 1.05rem;
    color: var(--ink-sumi);
    margin-bottom: 1rem;
}

/* Section animation */
.section {
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}
.section.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Footer */
#footer {
    text-align: center;
    padding: 3rem 0;
    border-top: 1px solid var(--gold-leaf);
}
.footer-text {
    font-family: 'Cormorant Infant', serif;
    font-size: 0.9rem;
    font-style: italic;
    color: var(--aged-paper);
}

/* Responsive */
@media (max-width: 800px) {
    .era-sidebar { display: none; }
    .main-column { margin-left: 0; }
}
