/* 2026-10-07: Round Houses only. Adapted from the existing Celtic bookshop
   r4h-book-card pattern; shared bookshop/navigation CSS is unchanged. */
.roundhouse-resources { margin: 2.5rem 0; color: #4a4a4a; }
.roundhouse-resources *, .roundhouse-resources *::before, .roundhouse-resources *::after { box-sizing: border-box; }
.roundhouse-resources section { margin: 2rem 0; }
.roundhouse-resources h2 { color: #164529; border-bottom: 2px solid #d5c5b5; padding-bottom: .5rem; }
.roundhouse-resources p, .roundhouse-resources li { line-height: 1.65; }
.roundhouse-resources a:focus-visible, .roundhouse-resources summary:focus-visible { outline: 3px solid #965e12; outline-offset: 3px; }
.roundhouse-resources .roundhouse-learning-links { padding-left: 1.5rem; }
.roundhouse-resources .roundhouse-learning-links li { margin: .75rem 0; }
.roundhouse-resources .r4h-book-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.1rem; margin: 1.5rem 0 2rem; }
.roundhouse-resources .r4h-book-card { display: flex; flex-direction: column; min-width: 0; border: 1px solid #d5c5b5; border-radius: 7px; overflow: hidden; background: #fff; box-shadow: 0 2px 8px rgba(10,50,20,.10); }
.roundhouse-resources .r4h-book-card__cover { display: flex; align-items: center; justify-content: center; padding: 1rem; background: linear-gradient(135deg,#082814,#1a5c30); }
.roundhouse-resources .r4h-book-card__cover img { display: block; width: auto; height: 160px; max-width: 100%; object-fit: contain; margin: 0; float: none; }
.roundhouse-resources .r4h-book-card__body { padding: 1rem; display: flex; flex-direction: column; flex: 1; }
.roundhouse-resources .r4h-book-card__title { font-family: Arial,sans-serif; font-size: 1.1rem; line-height: 1.35; margin: .35rem 0; padding: 0; color: #164529; }
.roundhouse-resources .r4h-book-card__meta { font-size: .85rem; color: #666; margin: .3rem 0 .7rem; }
.roundhouse-resources .r4h-book-card__blurb { font-size: 1rem; margin: 0 0 1rem; flex: 1; }
.roundhouse-resources .r4h-book-card__cta { display: block; background: linear-gradient(160deg,#f5a52a,#e3880e); color: #111; font: bold .85rem Arial,sans-serif; text-decoration: none; padding: .85rem .65rem; border-radius: 4px; text-align: center; margin-top: .75rem; border: 1px solid #c07510; }
.roundhouse-resources .r4h-book-card__cta:hover { background: #ffb430; }
.roundhouse-resources .roundhouse-review-link { font-size: 1rem; padding: .4rem 0; }
.roundhouse-resources .roundhouse-reading__label { color: #164529; font: bold .8rem Arial,sans-serif; letter-spacing: .04em; margin: 0; }
.roundhouse-resources .roundhouse-reading__note { font-size: .95rem; color: #595959; max-width: 75ch; }
.roundhouse-resources .roundhouse-review { border: 1px solid #d5c5b5; border-left: 4px solid #1a5c30; padding: 1.25rem; margin: 1rem 0; background: #faf8f1; scroll-margin-top: 6rem; }
.roundhouse-resources .roundhouse-review--featured { padding: clamp(1rem,3vw,2rem); }
.roundhouse-resources .roundhouse-review h3 { color: #164529; line-height: 1.4; margin: .65rem 0; padding: 0; }
.roundhouse-resources .roundhouse-review__text { max-width: 75ch; }
.roundhouse-resources .roundhouse-review__text p { margin: 1rem 0; }
.roundhouse-resources .roundhouse-review__credit { font-style: italic; }
.roundhouse-resources summary { cursor: pointer; font-weight: bold; padding: .5rem 0; line-height: 1.5; }
.roundhouse-resources .roundhouse-archive-note, .roundhouse-resources .roundhouse-other-books { border-top: 1px solid #d5c5b5; padding: .5rem 0; margin: 1rem 0; }
.roundhouse-resources .roundhouse-other-books li { margin: .75rem 0; }
.roundhouse-resources .roundhouse-bookshop-route { border-top: 2px solid #d5c5b5; padding-top: 1rem; }
.roundhouse-resources .roundhouse-bookshop-route a { display: inline-block; padding: .4rem 0; }
@media (max-width: 1024px) {
  .roundhouse-resources .r4h-book-grid { grid-template-columns: 1fr; }
  .roundhouse-resources .r4h-book-card { flex-direction: row; }
  .roundhouse-resources .r4h-book-card__cover { flex: 0 0 145px; }
  .roundhouse-resources .r4h-book-card__cover img { height: auto; max-height: 175px; width: 100%; }
}
@media (max-width: 480px) {
  .roundhouse-resources .r4h-book-card { flex-direction: column; }
  .roundhouse-resources .r4h-book-card__cover { flex: auto; }
  .roundhouse-resources .r4h-book-card__cover img { width: auto; height: 150px; }
  .roundhouse-resources .roundhouse-review { padding: 1rem; }
}

/* 2026-10-08: Keep book identification and purchase route within each review. */
.roundhouse-resources .roundhouse-review__layout { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 1.5rem; align-items: start; margin-top: 1rem; }
.roundhouse-resources .roundhouse-review__book { min-width: 0; padding: .75rem; background: #fff; border: 1px solid #d5c5b5; border-radius: 4px; }
.roundhouse-resources .roundhouse-review__book img { display: block; width: auto; max-width: 100%; height: 185px; object-fit: contain; margin: 0 auto .75rem; float: none; }
.roundhouse-resources .roundhouse-review__layout .roundhouse-review__text > p:first-child { margin-top: 0; }
@media (max-width: 600px) {
  .roundhouse-resources .roundhouse-review__layout { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
  .roundhouse-resources .roundhouse-review__book { width: min(100%, 220px); justify-self: center; }
}

/* 2026-10-08: Round Houses hero and article sidebar only. */
#full-page.roundhouse-page { display: block; width: 100%; max-width: 1480px; padding: 1.5rem clamp(1rem, 3vw, 3rem); margin: 0 auto; box-sizing: border-box; }
.roundhouse-page *, .roundhouse-page *::before, .roundhouse-page *::after { box-sizing: border-box; }
.roundhouse-page #main-body { width: 100%; max-width: none; padding: 0; margin: 2rem 0 0; }
.roundhouse-page .roundhouse-hero { position: relative; display: grid; grid-template-columns: minmax(280px, .9fr) minmax(0, 1.6fr); border-top: 4px solid #b78a40; background: #103b26; box-shadow: 0 3px 14px rgba(8,40,20,.14); }
.roundhouse-page .roundhouse-hero__title-panel { padding: clamp(1.5rem,3vw,3rem); display: flex; flex-direction: column; justify-content: center; color: #fff8e7; background: linear-gradient(115deg,rgba(8,40,24,.95),rgba(26,73,44,.9)),url('/Graphics/background/old_paper.jpeg') center/cover; }
.roundhouse-page .roundhouse-hero__eyebrow { margin: 0 0 .75rem; font: bold .8rem Arial,sans-serif; text-transform: uppercase; letter-spacing: .12em; color: #e3c68c; }
.roundhouse-page .roundhouse-hero h1 { margin: 0; padding: 0; width: auto; color: #fff8e7; font: normal clamp(2.3rem,4vw,3.6rem)/1.08 Georgia,serif; text-shadow: 0 2px 5px rgba(0,0,0,.3); }
.roundhouse-page .roundhouse-hero__intro { margin: 1rem 0; font-size: 1rem; line-height: 1.6; max-width: 32ch; color: #f3eddb; }
.roundhouse-page .roundhouse-hero__link { font: bold .9rem/1.6 Arial,sans-serif; color: #f0d194; text-decoration: underline; text-underline-offset: .25em; padding: .3rem 0; }
.roundhouse-page .roundhouse-hero__image { margin: 0; min-width: 0; display: flex; flex-direction: column; justify-content: center; background: #f8f5ea; }
.roundhouse-page .roundhouse-hero__image > img { display: block; width: 100%; max-width: 100%; height: auto; margin: 0; }
.roundhouse-page .roundhouse-hero figcaption { padding: .65rem 1rem; font: .8rem/1.5 Arial,sans-serif; color: #555; }
.roundhouse-page .roundhouse-hero figcaption .photo-credit { display: block; float: none; margin: .2rem 0 0; color: #666; font-size: .75rem; }
.roundhouse-page .roundhouse-columns { display: grid; grid-template-columns: minmax(0,1fr) 285px; gap: clamp(1.5rem,3vw,3rem); align-items: stretch; }
.roundhouse-page .roundhouse-article { min-width: 0; }
.roundhouse-page #historical-evidence { width: 100%; }
.roundhouse-page .roundhouse-resources { font-size: 1.1em; }
.roundhouse-page #roundhouse-resources { margin-top: 2rem; }
.roundhouse-page #roundhouse-reviews { margin-top: 2.5rem; }
.roundhouse-page .roundhouse-sidebar { min-width: 0; padding-left: 1.25rem; border-left: 1px solid #d5c5b5; font: 1rem/1.6 Arial,sans-serif; }
.roundhouse-page .roundhouse-sidebar__inner { position: sticky; top: 1.5rem; }
.roundhouse-page .roundhouse-sidebar section { margin: 0 0 1.5rem; }
.roundhouse-page .roundhouse-sidebar h2 { font: bold 1.2rem/1.35 Georgia,serif; color: #164529; padding: 0; margin: 0 0 .75rem; }
.roundhouse-page .roundhouse-sidebar__topics { padding: 1rem; background: #f7f3e8; border-top: 3px solid #1a5c30; }
.roundhouse-page .roundhouse-sidebar__eyebrow { font: bold .7rem/1.4 Arial,sans-serif; color: #766035; text-transform: uppercase; letter-spacing: .06em; margin: 0 0 .75rem; }
.roundhouse-page .roundhouse-sidebar p { font-size: .85rem; margin: .5rem 0; line-height: 1.6; }
.roundhouse-page .roundhouse-sidebar ul { list-style: none; margin: .75rem 0 0; padding: 0; }
.roundhouse-page .roundhouse-sidebar li { margin: .25rem 0; }
.roundhouse-page .roundhouse-sidebar li a { display: block; padding: .4rem 0; font-size: .85rem; line-height: 1.5; }
.roundhouse-page .roundhouse-sidebar__book { display: grid; grid-template-columns: 70px minmax(0,1fr); gap: .75rem; padding: 1rem 0; border-top: 1px solid #d5c5b5; }
.roundhouse-page .roundhouse-sidebar__book > img { display: block; width: 70px; height: auto; max-width: 100%; margin: 0; float: none; }
.roundhouse-page .roundhouse-sidebar__book h3 { font: bold .9rem/1.4 Arial,sans-serif; margin: 0; padding: 0; }
.roundhouse-page .roundhouse-sidebar__book h3 a { color: #164529; }
.roundhouse-page .roundhouse-sidebar__book p { font-size: .78rem; }
.roundhouse-page .roundhouse-sidebar__review, .roundhouse-page .roundhouse-sidebar__amazon { display: block; padding: .25rem 0; font-size: .8rem; line-height: 1.5; }
.roundhouse-page .roundhouse-sidebar__note { color: #666; font-size: .75rem; }
.roundhouse-page .roundhouse-sidebar__all-books { display: block; border-top: 1px solid #d5c5b5; margin-top: .75rem; padding: .75rem 0; font-size: .85rem; }
.roundhouse-page :is(.roundhouse-hero,.roundhouse-sidebar) a:focus-visible { outline: 3px solid #b78a40; outline-offset: 3px; }
.roundhouse-page :is(#roundhouse-materials,#roundhouse-hearth,#historical-evidence) { scroll-margin-top: 1.5rem; }
@media (min-width: 1101px) {
  .roundhouse-page .roundhouse-article .r4h-book-grid { grid-template-columns: minmax(0,1fr); gap: .9rem; }
  .roundhouse-page .roundhouse-article .r4h-book-card { flex-direction: row; }
  .roundhouse-page .roundhouse-article .r4h-book-card__cover { flex: 0 0 145px; }
  .roundhouse-page .roundhouse-article .r4h-book-card__cover img { height: 150px; }
}
@media (max-width: 1100px) {
  .roundhouse-page .roundhouse-columns { display: block; }
  .roundhouse-page .roundhouse-sidebar { display: none; }
}
@media (max-width: 700px) {
  .roundhouse-page .roundhouse-hero { grid-template-columns: minmax(0,1fr); }
  .roundhouse-page .roundhouse-hero__title-panel { padding: 1.5rem; }
  .roundhouse-page .roundhouse-hero h1 { font-size: clamp(2rem,7vw,2.8rem); }
  .roundhouse-page .roundhouse-hero__intro { max-width: none; }
}

.roundhouse-page #historical-evidence .quoting { width: auto; max-width: 100%; }

.roundhouse-page .roundhouse-sidebar nav { position: static; width: auto; }
.roundhouse-page .roundhouse-sidebar nav ul { margin: .75rem 0 0; padding: 0; }
.roundhouse-page .roundhouse-sidebar nav ul li { display: block; padding: 0; margin: .2rem 0; float: none; background: none; }
.roundhouse-page .roundhouse-sidebar nav ul li a { padding: .35rem 0; line-height: 1.5; color: #164529; text-decoration: underline; }
.roundhouse-page .roundhouse-sidebar__inner { max-height: calc(100vh - 3rem); overflow-y: auto; scrollbar-width: thin; }

.roundhouse-page .roundhouse-sidebar__inner { z-index: 2; transform: translateZ(0); }

/* 2026-10-08: Full-width Celtic header and historical quotation treatment.
   All overrides are confined to the Round Houses page. The title background
   reuses Nigel Cross's existing roundhouse thatch photograph. */
.roundhouse-content-page #top-navigation {
  background: linear-gradient(100deg, #163e2b, #071e15 65%, #123625) !important;
  margin-bottom: 0;
}
.roundhouse-content-page #top-navigation::before,
.roundhouse-content-page #top-navigation::after { content: none; }
.roundhouse-content-page #top-navigation > nav > ul > li:hover { background: #254c36; }
.roundhouse-content-page #top-navigation > nav > ul > li > a.celt-nav { background: #365e43; }
.roundhouse-content-page #top-navigation > nav > ul > li > a.roman-nav { background: rgba(255,255,255,.06); }
#full-page.roundhouse-page { max-width: none; padding: 0; margin: 0; }
.roundhouse-page #main-body {
  max-width: 1480px;
  padding: 0 clamp(1rem,3vw,3rem);
  margin: 2rem auto 0;
}
.roundhouse-page .roundhouse-hero { border-top: 0; }
.roundhouse-page .roundhouse-hero__title-panel {
  background: linear-gradient(100deg,rgba(6,37,22,.91),rgba(17,56,34,.78)),
    url('/Images/celtic_roundhouse/roundhouse_thatch.jpg') 48% 58% / cover;
}
.roundhouse-page #historical-evidence .quoting { margin: 1.5rem 0; padding: 0; }
.roundhouse-page #historical-evidence .quoting blockquote {
  margin: 1rem 0 1.5rem;
  padding: 1rem clamp(1rem,2vw,1.5rem);
  background: #f1f1f1;
  border-left: 4px solid #909090;
  color: #454545;
  line-height: 1.6;
}
.roundhouse-page #historical-evidence .quoting blockquote::before,
.roundhouse-page #historical-evidence .quoting blockquote::after { content: none; }
.roundhouse-page #historical-evidence > h2:first-child + br { display: none; }

/* Keep the Celtic navigation background aligned with the full-width hero. */
.roundhouse-content-page #top-navigation { width: 100%; max-width: none; margin-left: 0; margin-right: 0; }

/* 2026-10-08: Compact static navigation, thatch texture and article accents. */
.roundhouse-content-page #top-navigation { position: relative !important; min-height: 63px; height: 63px; box-sizing: border-box; }
.roundhouse-content-page #top-navigation > nav > ul > li > a.roman-nav { background: linear-gradient(160deg,#a52d2e,#7e2025); }
.roundhouse-page .roundhouse-hero__title-panel {
  background-image: linear-gradient(100deg,rgba(6,37,22,.87),rgba(17,56,34,.80)),url('/Images/celtic_roundhouse/roundhouse_thatch.jpg');
  background-position: center, 48% 60%;
  background-size: cover, auto 500%;
  background-repeat: no-repeat;
}
.roundhouse-page #historical-evidence :is(h2,h3) { color: #164529; }
.roundhouse-page #historical-evidence .quoting blockquote { border-left-color: #a35b50; }
.roundhouse-page #historical-evidence > h2:first-child { margin: 0 0 1.5rem; font-size: clamp(2rem,3vw,2.4rem); line-height: 1.2; }
@media (min-width: 1101px) {
  .roundhouse-page .roundhouse-sidebar { padding-top: calc(clamp(2rem,3vw,2.4rem) * 1.2 + 1.5rem); }
}
@media (min-width: 901px) {
  .roundhouse-content-page #top-navigation > nav { position: static; height: 63px; box-shadow: none; overflow: visible; }
  .roundhouse-content-page #top-navigation > nav > ul { display: flex; justify-content: center; align-items: center; gap: 12px; height: 63px; width: auto; margin: 0 0 0 18%; padding: 0; }
  .roundhouse-content-page #top-navigation > nav > ul > li { float: none; display: block; width: auto; padding: 0; margin: 0; background: none; }
  .roundhouse-content-page #top-navigation > nav > ul > li > a { padding: 11px 34px; line-height: 1; font-size: 16px; min-height: 0; letter-spacing: .06em; }
  .roundhouse-content-page #top-navigation #logo { top: 50%; transform: translateY(-50%) skew(-17deg); margin-top: 0; }
  .roundhouse-content-page #top-navigation > nav > ul > li > div { top: 63px; margin-top: 0; }
}

.roundhouse-content-page #top-navigation { height: 63px !important; min-height: 63px !important; padding-top: 0; padding-bottom: 0; }

/* Override the inherited topic-button sizing on desktop only. */
.roundhouse-content-page #top-navigation > nav > ul > li > a.roman-nav { background: linear-gradient(160deg,#a52d2e,#7e2025) !important; }
@media (min-width: 901px) {
  .roundhouse-content-page #top-navigation > nav > ul > li > a { box-sizing: border-box; height: 40px !important; min-height: 0 !important; padding: 11px 28px !important; line-height: 18px !important; margin: 0 !important; }
  .roundhouse-content-page #top-navigation #logo { top: 50% !important; transform: translateY(-50%) skew(-17deg) !important; }
}

@media (min-width: 901px) {
 .roundhouse-content-page #top-navigation > nav { padding: 0 !important; margin: 0 !important; }
 .roundhouse-content-page #top-navigation > nav > ul { position: absolute; top: 0 !important; left: 18%; right: 0; height: 63px !important; margin: 0 !important; padding: 0 !important; transform: none !important; }
 .roundhouse-content-page #top-navigation > nav > ul > li { position: static; transform: none !important; }
 .roundhouse-content-page #top-navigation #logo { top: 18px !important; transform: skew(-17deg) !important; }
}

@media (min-width: 901px) {
 .roundhouse-content-page #top-navigation > nav > ul { display: flex !important; align-items: center !important; }
 .roundhouse-content-page #top-navigation > nav > ul > li { width: auto !important; height: 40px !important; min-height: 0 !important; padding: 0 !important; align-self: center; }
 .roundhouse-content-page #top-navigation > nav > ul > li > a { position: static !important; display: block !important; transform: none !important; width: auto !important; }
}

/* 2026-10-08: Reuse the Celtic bookshop brand and Black Book lettering assets. */
@font-face { font-family: "Source Serif 4"; src: url('/Fonts/SourceSerif4-latin-variable-v4.004.woff2') format('woff2'); font-style: normal; font-weight: 200 900; font-display: swap; }
@font-face { font-family: "Llyfr Du"; src: url('/Fonts/LlyfrDu-Ink-Test.woff2?v=29') format('woff2') tech(color-COLRv1),url('/Fonts/LlyfrDu-Test.woff2?v=29') format('woff2'); font-display: swap; }
.roundhouse-content-page #top-navigation { display: flex; align-items: center; padding-left: clamp(24px,2.3vw,50px) !important; padding-right: clamp(24px,2.3vw,50px); }
.roundhouse-content-page #top-navigation > .roundhouse-site-brand { display: flex; align-items: center; gap: 14px; margin: 0 !important; padding: 0; flex: 0 0 auto; text-decoration: none; letter-spacing: 0; }
.roundhouse-content-page #top-navigation .roundhouse-site-brand #logo { position: static !important; display: flex; align-items: center; margin: 0 !important; padding: 0; width: auto; transform: none !important; }
.roundhouse-content-page .roundhouse-site-brand #logo > span { margin-right: 2px; padding: 5px 6px; font-size: 13px; }
.roundhouse-content-page .roundhouse-site-brand__wordmark { color: #f7efdf; font: 425 clamp(27px,1.9vw,40px)/1 "Source Serif 4",Georgia,serif; letter-spacing: .005em; white-space: nowrap; }
.roundhouse-content-page .roundhouse-site-brand__wordmark small { display: block; margin-top: 4px; color: #d6c6a0; font: 8px/1.2 Arial,sans-serif; letter-spacing: .16em; }
.roundhouse-page .roundhouse-hero h1 { position: relative; display: flex; align-items: center; gap: 12px; padding: 14px 0; margin: 0; min-height: 140px; text-shadow: none; }
.roundhouse-page .roundhouse-title__initial { flex: 0 0 auto; color: #c4553f; font: 400 clamp(135px,11vw,175px)/.8 "Llyfr Du",Georgia,serif; font-feature-settings: "ss03"; }
.roundhouse-page .roundhouse-title__lines { display: flex; flex-direction: column; gap: 10px; min-width: 0; color: #f6f1e6; font: 400 clamp(28px,2.5vw,40px)/1.2 "Llyfr Du",Georgia,serif; letter-spacing: .01em; text-transform: lowercase; }
.roundhouse-page .roundhouse-title__lines > span { display: block; }
@media (min-width: 901px) {
 .roundhouse-content-page #top-navigation > nav { flex: 1 1 auto; min-width: 0; }
 .roundhouse-content-page #top-navigation > nav > ul { position: static; justify-content: flex-end; height: 63px !important; width: auto; }
 .roundhouse-content-page #top-navigation > nav > ul > li { flex: 0 0 auto; }
}
@media (max-width: 900px) {
 .roundhouse-content-page #top-navigation { padding-left: 16px !important; padding-right: 16px; }
 .roundhouse-content-page #top-navigation > .roundhouse-site-brand { gap: 9px; }
 .roundhouse-content-page .roundhouse-site-brand__wordmark { font-size: clamp(18px,3.8vw,27px); }
 .roundhouse-content-page .roundhouse-site-brand__wordmark small { font-size: 6px; letter-spacing: .1em; }
 .roundhouse-content-page .roundhouse-site-brand #logo > span { font-size: 11px; padding: 4px; }
 .roundhouse-page .roundhouse-title__lines { font-size: clamp(28px,5vw,36px); }
}

@media (min-width: 901px) {
 .roundhouse-content-page #top-navigation > nav { flex: 0 0 auto; width: auto !important; margin-left: auto !important; padding-left: 24px !important; }
 .roundhouse-content-page #top-navigation > nav > ul { width: auto !important; left: auto; right: auto; }
}
@media (max-width: 900px) {
 .roundhouse-content-page #top-navigation .mobile-nav-toggle { margin-left: auto !important; }
}
@media (min-width: 701px) and (max-width: 1100px) {
 .roundhouse-page .roundhouse-title__initial { font-size: 120px; }
 .roundhouse-page .roundhouse-title__lines { font-size: 24px; }
}
