/* Limestone, sea glass and terracotta, with quiet surfaces beneath the text. */
:root {
  --paper: #f8f1e5;
  --ink: #422c32;
  --muted: #655e53;
  --line: #d2c3ad;
  --accent: #9d4b34;
  --sea: #245f62;
  --sea-deep: #183f46;
  --sea-glass: #dbe9e0;
  --sand: #efdfc5;
}

body { background: var(--paper); }
header { background: #fbf5e9; }
.hero.welcome {
  background:
    radial-gradient(ellipse at 100% 4%, #d7e8df 0, transparent 58%),
    radial-gradient(ellipse at 0 100%, #eed6bb 0, transparent 64%),
    var(--paper);
}
.places {
  background: #d8e6df;
  color: #365e59;
  border-color: #b5ccc0;
}
.about, .about-photo.portrait-rotation { background: #e1ece4; }
#books {
  background: linear-gradient(155deg, #fbf3e6 8%, #eaf0e4 60%, #f5e7d6 100%);
}
.hero-library {
  background: linear-gradient(140deg, #deebe2, #eed9b9);
}
.library-orbit { background: #e7cfad; border-color: #c6b28f; }
.library-caption { border-color: #b9b798; }
.cover {
  background: linear-gradient(145deg, #f5e9d3, #e9d0ac);
}
.book:nth-child(3n + 2) .cover {
  background: linear-gradient(145deg, #e5efe7, #c7dfd8);
}
.book:nth-child(3n) .cover {
  background: linear-gradient(145deg, #f5e5d9, #e5c0ac);
}
.catalogue-search input, .contact-panel { background: #fff9ee; }
.filters button[aria-pressed=true] { background: var(--sea); border-color: var(--sea); }
.places-teaser {
  background:
    radial-gradient(ellipse at 100% 100%, #356d66 0, transparent 58%),
    linear-gradient(120deg, var(--sea-deep), #20575c);
  color: var(--paper);
}
.places-teaser .eyebrow { color: #f7e5c7; }
.places-teaser .button { border-color: #b6cec0; color: #fff6e8; }
.places-teaser .button:hover { background: #326d6b; border-color: #d4e0cc; }
.places-teaser a:focus-visible, .contact-intro a:focus-visible { outline-color: #f7e5c7; }
.themes { background: linear-gradient(145deg, #f9efdf, #f0dfc8); }
.guide { background: #e3e9da; }
.guide-card, .series, .series > a { border-color: #bdc8b3; }
.guide-card:hover { background: #d5e1ce; }
.faq { background: #fbf4e8; }
.contact {
  background: linear-gradient(120deg, #193f46, #285a5a);
}
.contact .eyebrow { color: #f4dbb8; }
.topic-choice:has(input:checked) { background: #e4eade; border-color: var(--sea); }
.contact-panel input:not([type=radio]), .contact-panel select, .contact-panel textarea {
  background: #fffaf0;
}
.contact-panel textarea[readonly] { background: #ede5d4; }
footer { background: #eee0c8; }
.detail-cover { background: linear-gradient(145deg, #dce8de, #ecd6b8); }
.place-jumps a:hover { background: #dce8dc; }
