/* A warm local palette: woodland greens, harvest yellow, and strawberry red. */
:root {
  --paper: #fffcf4;
  --white: #fffefb;
  --ink: #3d4e40;
  --green: #527d52;
  --muted: #7d806c;
  --line: #e3e3d4;
  --accent: #ce6554;
  --yellow: #f3cf76;
  --youtube: #e9624e;
  --leaf: #527d52;
  --leaf-soft: #eff4e6;
  --gold: #f5d98a;
  --berry: #d56554;
}

body { background: var(--paper); color: var(--ink); }
.topline { background: #f9edbd; color: #6b7355; border-color: #eee1b3; }
.brand strong, .hero-copy h1 { color: #385b41; }
.brand small, .footer-brand small { color: #7b8e66; }
.brand-dot { color: var(--berry); }
.youtube-link { background: #fff2e8; border-color: #f0d2bd; color: #bf6853; }
.youtube-link svg { color: var(--youtube); }
.youtube-link:hover { background: #ffe6d5; color: #b04e3d; }
.menu-button span { background: var(--leaf); }
.hero { position: relative; }
.hero-copy h1 { letter-spacing: .035em; }
.hero-copy .eyebrow { color: #8b8b55; letter-spacing: .11em; }
.small-star { color: #c7a54c; }
.underlined:after { background: #efd17b; transform: rotate(-1deg); }
.hero-description { font-size: 13px; line-height: 2.2; color: #738065; }
.hero-footnote { color: #8b8c71; }
.open-dot { background: #9aab63; }
.hero-vertical { color: #8d9c74; }
.hero-photo.channel-portrait.real-photo { border-color: #d4d9b9; background: #e9edda; }
.hero-photo.real-photo:after { background: linear-gradient(transparent 68%, #30493166); }
.story-note { background: #f7df9c; box-shadow: 4px 7px 0 #d8c68924; }
.story-note>button { color: #5b7044; }
.story-note>button:hover { color: #c66c54; }
.note-kicker, .note-bottom { color: #9a8854; }
.note-bottom { border-color: #cfbc7b66; }
.library-stamp { background: #fffaf0; border-color: #a6b48b; color: #7c9568; }
.visual-caption a { color: #9c9b85; }
.button-green { background: var(--youtube); border-color: var(--youtube); }
.button-green:hover { background: #d85243; border-color: #d85243; }
.button-outline { background: #f6f8ed; border-color: #cbd7b5; color: #6f885a; }
.button-outline:hover { background: #eaf1db; color: #4c734d; }

.channel-strip { background: #f1f4e6; border-color: #e0e6ce; }
.strip-inner strong { color: #6c8856; }
.strip-description { color: #8c937a; }
.strip-inner>a { color: #8f8d68; }
.live-dot { background: #d68b63; box-shadow: 0 0 0 5px #e7c7a51c; }
.section-heading .eyebrow, .about-copy .eyebrow { color: #969c7e; }
.section-heading h2 { color: #55724d; }
.section-aside { color: #939882; }
.shelf-card { background: #eaf1db; border-color: #d9e3c6; }
.shelf-card:nth-child(2) { background: #fcf0c3; border-color: #ecdfb1; }
.shelf-card:nth-child(3) { background: #fae6d9; border-color: #eed6c6; }
.shelf-card:nth-child(4) { background: #e6efd7; border-color: #d4e1c0; }
.shelf-card:nth-child(5) { background: #f3e9d5; border-color: #e5d9bd; }
.shelf-card:before { background: #9bb371; }
.shelf-card:nth-child(2):before { background: #dfbe63; }
.shelf-card:nth-child(3):before { background: #dcab8d; }
.shelf-card:nth-child(4):before { background: #8fa86b; }
.shelf-card:nth-child(5):before { background: #bba578; }
.shelf-card strong { color: #697c52; }
.shelf-card small, .shelf-card .shelf-number { color: #a0a489; }

.people-section { background: #f1f5e9; border-color: #e2e8d5; }
.people-section .eyebrow { color: #99a77c; }
.people-intro>p { color: #7f8a70; }
.people-intro-note, .people-controls>p { color: #9aa288; }
.people-filters>button { border-color: #d6dfc4; color: #8d9a76; background: #fffef9; }
.people-filters>button.active { background: #78935e; border-color: #78935e; color: white; }
.people-filters>button:hover:not(.active) { background: #e8efd9; }
.person-card { background: #fffefb; border-color: #dfe5d1; box-shadow: 0 3px 0 #dce4ca44; }
.person-role, .person-content h3>small { color: #99a087; }
.person-content h3 { color: #647f4f; }
.person-question { color: #7d896d; }
.person-interest { background: #fffae9ef; color: #a48c5b; }
.person-play { background: var(--youtube); }
.person-actions { border-color: #e8ecdf; }
.person-actions button { color: #ca7b62; }
.person-actions button:last-child { color: #95a27d; }
.person-actions button:hover { color: #66884f; }
.people-note { color: #9da58f; }
.person-context { background: #f3f6e9; border-color: #e0e6ce; }
.person-context>strong { color: #729158; }
.person-context>span, .person-context>p, .person-context>p>span { color: #9ba78b; }
.person-context>button { color: #c58069; border-color: #ead3bd; }

.collection-section { background: #fffefb; border-color: #e7e7d9; }
.collection-count strong { color: #859e64; }
.search-form { background: #f7f9ef; border-color: #d5dfbf; }
.search-form>svg { color: #a3b38a; }
.search-form input::placeholder { color: #a0ac91; }
.search-form button { background: var(--youtube); }
.search-form button:hover { background: #d85243; }
.suggestions button { color: #9ba983; }
.topic-button.active { background: #849c65; }
.topic-button.active>span { color: #f6f9ed; }
.topic-button:not(.active):hover { background: #f1f5e7; }
.topic-button>span { color: #a2ae8e; }
.sidebar-note { color: #a0a58e; }
.sidebar-note button { color: #c38b67; border-color: #e5d6b9; }
.type-tabs>button.active { color: #ca8066; }
.type-tabs>button.active:after { background: #db9c7a; }
.type-tabs>button>span:not(:empty) { background: #f3f5eb; color: #a1ab92; }
.type-tabs>button.active>span:not(:empty) { background: #f9ebde; color: #bf8c6b; }
.region-control { border-color: #e0e6d0; background: #fcfdf7; }
.view-buttons button.active { background: #eff4e2; color: #90a76a; }
.video-card { border-color: #eaecdf; }
.format-badge { background: #fff9e8ef; color: #a18b58; }
.format-badge.live { background: #d9896df0; color: white; }
.duration { background: #425742e8; }
.card-open:hover h3 { color: #89a364; }
.topic-tag { background: #f2f5e8; color: #9baa86; }
.bookmark-button { color: #b0b99c; }
.bookmark-button:hover, .bookmark-button.saved { background: #faf0cb; color: #c5aa5f; }
.bookmark-button.saved svg { fill: #ddc37b; }

.about-illustration { background: #f3eedc; }
.about-small { color: #a8a17e; }
.book { border-color: #9eaa80; }
.b1 { background: #bdcba0; }
.b2 { background: #f3d890; }
.b3 { background: #e7bda2; }
.b4 { background: #97af77; }
.b5 { background: #d9cfaa; }
.book-shelf { background: #8ca46c; }
.about-copy h2 { color: #6d8956; }
.about-copy>p:not(.eyebrow) { color: #859178; font-size: 12px; line-height: 2.15; }
.about-copy .gratitude-line { color: #b5835f; }
.illustration-star { color: #cc9d68; }
.text-link { color: #97a77c; border-color: #d1dcc0; }
.connection-section { background: #f8e8cc; color: #6c7c56; }
.connection-inner .eyebrow { color: #b1a074; }
.connection-inner h2 { color: #879b67; }
.connection-inner p:not(.eyebrow) { color: #ac9e7e; }
.office-card { background: #fffaf0; border-color: #e9dabb; box-shadow: 0 5px 0 #d9c7a21c; }
.office-kicker { color: #c0af8a; }
.office-name strong { color: #96a478; }
.office-bottom { color: #b4b198; border-color: #ebe3ce; }
.circle-arrow { background: #df9b7b; border-color: #df9b7b; }
.footer-links a, .footer-links button { color: #a5ac94; }
.footer .footer-brand strong { color: #a5b391; }
.footer-thanks { font-family: var(--serif); color: #a5af8d; font-size: 14px; letter-spacing: .04em; margin: 0 0 24px; }
.footer-bottom { color: #b8bba9; border-color: #e8eadf; }
.player-container { background: #455940; }
.player-consent { background: #3d523133; }
.player-consent button { background: var(--youtube); }
.toast { background: #8ca16e; border-color: #dbe3ca; }
.dialog-close { background: #fff5de; color: #c99170; }
.info-dialog a { color: #9daa82; }

/* Keep body copy and controls readable against the pale local palette. */
.person-question, .people-intro>p, .about-copy>p:not(.eyebrow) { color: #66725d; }
.person-role, .people-note { color: #77816c; }
.type-tabs>button, .people-filters>button { color: #77856b; }
.type-tabs>button.active { color: #ad634b; }
.shelf-card strong { color: #576b44; }
.office-name strong { color: #667d4e; }
.office-bottom, .connection-inner p:not(.eyebrow) { color: #8a7f63; }
.footer-links a, .footer-links button { color: #78876b; }
.footer .footer-brand strong { color: #6f8656; }
.footer-thanks { color: #879768; }
.footer-bottom { color: #929b84; }
.hero-copy .eyebrow, .section-heading .eyebrow, .about-copy .eyebrow { color: #7a8562; }
.hero-footnote { color: #7b8467; }
.note-kicker, .note-bottom { color: #7c714c; }
.visual-caption a { color: #7d856e; }
.shelf-card small, .shelf-card .shelf-number { color: #7c8864; }
.topic-tag { color: #76875e; }
.bookmark-button { color: #8c9d75; }
.connection-inner h2 { color: #647d48; }
.footer-thanks { color: #708555; }
.footer-bottom { color: #7e876f; }
.about-copy>p.gratitude-line { color: #bb7659; font-family: var(--serif); font-size: 15px; line-height: 2; }

@media(max-width:900px) {
  .hero-copy h1 { font-size: 38px; }
}
@media(max-width:600px) {
  .hero-copy h1 { font-size: clamp(30px, 9.4vw, 38px); line-height: 1.65; }
  .hero-description { font-size: 12px; line-height: 2.15; }
  .hero-footnote { font-size: 8px; }
  .people-intro>p { font-size: 12px; }
  .about-copy h2 { font-size: 27px; }
  .about-illustration p { font-size: 18px; }
  .footer-thanks { font-size: 12px; margin-bottom: 20px; }
  .connection-inner h2 { font-size: 28px; }
}
