/* Club Español — club poster / living album. All presentation is scoped.
   Local font URLs resolve relative to this stylesheet. No remote dependencies. */
@font-face {
  font-family: 'Club PT Sans';
  src: url('assets/pt-sans.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Club PT Sans';
  src: url('assets/pt-sans-bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
body.club-site {
  --c-forest: #153f37;
  --c-tomato: #db432f;
  --c-link: #af3021;
  --c-saffron: #f3be40;
  --c-cream: #fff8e9;
  --c-paper: #fffdf7;
  --c-ink: #1d2d2a;
  --c-muted: #53635b;
  --c-line: #d5d8c8;
  --c-radius: 18px;
  --c-gutter: clamp(20px, 4.4vw, 64px);
  margin: 0;
  background: var(--c-cream);
  color: var(--c-ink);
  font: 400 18px/1.6 'Club PT Sans', 'PT Sans', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.club-site *,
body.club-site *::before,
body.club-site *::after { box-sizing: border-box; }
body.club-site :where(h1, h2, h3, h4, h5, h6, p, figure) { margin: 0; }
body.club-site :where(h1, h2, h3, h4, h5, h6) {
  color: inherit;
  font-family: inherit;
  font-weight: 700;
  text-wrap: balance;
}
body.club-site :where(p, li) { overflow-wrap: anywhere; }
body.club-site :where(img, video) { max-width: 100%; height: auto; }
body.club-site :where(iframe, embed, object) { max-width: 100%; }
body.club-site a {
  color: var(--c-link);
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
}
body.club-site a:hover { text-decoration-thickness: 2px; }
body.club-site :where(button, input, select, textarea) {
  font: inherit;
  color: inherit;
  max-width: 100%;
}
body.club-site button { cursor: pointer; }
body.club-site :where(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid var(--c-link);
  outline-offset: 5px;
}
body.club-site :where([id]) { scroll-margin-top: 32px; }
body.club-site ::selection { background: var(--c-saffron); color: var(--c-forest); }
body.club-site .c-wrap { width: min(100% - var(--c-gutter) * 2, 1280px); margin-inline: auto; }
body.club-site .c-skip {
  position: fixed;
  top: 10px;
  left: 16px;
  z-index: 10000;
  padding: 12px 20px;
  background: var(--c-paper);
  color: var(--c-forest);
  border: 2px solid currentColor;
  transform: translateY(-180%);
}
body.club-site .c-skip:focus { transform: translateY(0); }
body.club-site .c-strip {
  background: var(--c-forest);
  color: var(--c-cream);
  padding: 9px var(--c-gutter);
  text-align: center;
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: .035em;
}
body.club-site .c-strip a { color: inherit; }
body.club-site .c-header {
  width: min(100% - var(--c-gutter) * 2, 1280px);
  margin-inline: auto;
  min-height: 110px;
  padding-block: 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  border-bottom: 1px solid var(--c-line);
  position: relative;
  z-index: 20;
}
body.club-site .c-brand {
  display: inline-flex;
  flex-direction: column;
  flex-shrink: 0;
  color: var(--c-forest);
  text-decoration: none;
  line-height: 1.05;
}
body.club-site .c-brand span { font-size: clamp(24px, 2.5vw, 33px); font-weight: 700; letter-spacing: -.055em; }
body.club-site .c-brand small { margin-top: 8px; font-size: 12px; letter-spacing: .11em; line-height: 1.4; }
body.club-site .c-nav { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 2px 18px; }
body.club-site .c-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-block: 8px;
  color: var(--c-forest);
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
body.club-site .c-nav a:hover,
body.club-site .c-nav a[aria-current='page'] { border-color: var(--c-tomato); }
body.club-site .c-menu-button {
  display: none;
  min-width: 48px;
  min-height: 48px;
  padding: 10px 14px;
  border: 1px solid var(--c-forest);
  border-radius: 8px;
  background: transparent;
  color: var(--c-forest);
  font-weight: 700;
}
body.club-site .c-kicker,
body.club-site .c-issue {
  display: block;
  color: var(--c-forest);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  line-height: 1.5;
  text-transform: uppercase;
}
body.club-site .c-issue { display: inline-block; padding: 7px 11px; border: 1px dashed var(--c-forest); transform: rotate(-2deg); }
body.club-site .c-hero {
  display: grid;
  grid-template-columns: 1.04fr 1fr;
  align-items: center;
  gap: clamp(32px, 5vw, 76px);
  padding-block: clamp(48px, 6vw, 90px) 70px;
}
body.club-site .c-hero-copy { position: relative; min-width: 0; padding-bottom: 14px; }
body.club-site .c-hero-copy h1 {
  max-width: 11ch;
  margin-block: 25px;
  color: var(--c-forest);
  font-size: clamp(48px, 5.5vw, 80px);
  line-height: .99;
  letter-spacing: -.055em;
}
body.club-site .c-hero-copy h1 em {
  color: var(--c-link);
  font-style: normal;
  text-decoration: underline;
  text-decoration-color: var(--c-saffron);
  text-decoration-thickness: .08em;
  text-underline-offset: .1em;
}
body.club-site .c-hero-copy p { max-width: 42ch; font-size: clamp(19px, 1.7vw, 22px); line-height: 1.55; }
body.club-site .c-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; align-items: center; }
body.club-site .c-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 23px;
  border: 2px solid var(--c-forest);
  border-radius: 7px;
  background: var(--c-forest);
  color: var(--c-cream);
  text-decoration: none;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  transition: background-color .18s ease, transform .18s ease;
}
body.club-site .c-button:hover { background: var(--c-ink); transform: translateY(-2px); }
body.club-site .c-button.secondary { background: transparent; color: var(--c-forest); }
body.club-site .c-button.secondary:hover { background: var(--c-paper); }
body.club-site .c-hero-art { position: relative; min-width: 0; padding: 12px 18px 68px 8px; }
body.club-site .c-photo-main {
  width: 89%;
  margin-left: auto;
  padding: 10px 10px 16px;
  background: var(--c-paper);
  border: 1px solid var(--c-line);
  box-shadow: 8px 10px 0 var(--c-forest);
  transform: rotate(3deg);
}
body.club-site .c-photo-main img { display: block; width: 100%; aspect-ratio: 4 / 4.6; object-fit: cover; }
body.club-site .c-photo-small {
  position: absolute;
  width: 48%;
  left: 0;
  bottom: 0;
  padding: 8px 8px 12px;
  background: var(--c-paper);
  border: 1px solid var(--c-line);
  transform: rotate(-7deg);
}
body.club-site .c-photo-small img { width: 100%; display: block; aspect-ratio: 1.15; object-fit: cover; }
body.club-site .c-photo-caption { display: block; padding-top: 10px; color: var(--c-muted); font-size: 13px; line-height: 1.35; }
body.club-site .c-stamp {
  position: absolute;
  right: -2px;
  bottom: 24px;
  display: grid;
  place-content: center;
  width: 126px;
  min-height: 126px;
  padding: 15px;
  border: 2px solid var(--c-forest);
  border-radius: 50%;
  background: var(--c-saffron);
  color: var(--c-forest);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  transform: rotate(12deg);
}
body.club-site .c-marquee {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 30px;
  padding: 20px var(--c-gutter);
  border-block: 1px solid var(--c-forest);
  background: var(--c-saffron);
  color: var(--c-forest);
  font-size: clamp(17px, 1.8vw, 24px);
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
body.club-site .c-section { padding-block: clamp(55px, 7vw, 100px); }
body.club-site .c-section + .c-section { border-top: 1px solid var(--c-line); }
body.club-site .c-section-head { display: flex; gap: 24px; justify-content: space-between; align-items: flex-end; margin-bottom: 34px; }
body.club-site .c-section-head h2,
body.club-site .c-manifesto h2,
body.club-site .c-join h2 {
  color: var(--c-forest);
  font-size: clamp(32px, 3.7vw, 52px);
  line-height: 1.08;
  letter-spacing: -.035em;
}
body.club-site .c-section-head .c-kicker { margin-bottom: 13px; }
body.club-site .c-section-head p { max-width: 40ch; margin-top: 16px; color: var(--c-muted); }
body.club-site .c-section-head > a { flex-shrink: 0; min-height: 44px; display: inline-flex; align-items: center; font-weight: 700; }
body.club-site .c-formats,
body.club-site .c-collection { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
body.club-site .c-format {
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--c-line);
  border-radius: 4px 4px var(--c-radius) 4px;
  background: var(--c-paper);
  color: var(--c-ink);
  text-decoration: none;
  transition: border-color .18s ease, transform .18s ease;
}
body.club-site .c-format > img { display: block; width: 100%; aspect-ratio: 1.65; object-fit: cover; }
body.club-site .c-format-body { display: flex; flex-direction: column; align-items: flex-start; padding: 25px; min-width: 0; }
body.club-site .c-format-body small,
body.club-site .c-trip small { color: var(--c-muted); font-size: 12px; font-weight: 700; line-height: 1.4; letter-spacing: .09em; text-transform: uppercase; }
body.club-site .c-format h3 { margin-top: 12px; color: var(--c-forest); font-size: 28px; line-height: 1.12; letter-spacing: -.025em; }
body.club-site .c-format p { margin-top: 13px; margin-bottom: 22px; line-height: 1.5; }
body.club-site .c-format-body > span { display: inline-flex; align-items: center; min-height: 44px; margin-top: auto; color: var(--c-link); font-weight: 700; }
body.club-site .c-format:hover { border-color: var(--c-forest); transform: translateY(-4px); }
body.club-site .c-format.featured { grid-column: span 2; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr; background: var(--c-forest); color: var(--c-cream); }
body.club-site .c-format.featured > img { height: 100%; min-height: 300px; aspect-ratio: auto; }
body.club-site .c-format.featured :where(h3, small) { color: var(--c-cream); }
body.club-site .c-format.featured .c-format-body > span { color: var(--c-saffron); }
body.club-site .c-format.featured h3 { font-size: clamp(29px, 3vw, 40px); }
body.club-site :where(.c-format, .c-trip, .c-story) p:empty { display: none; }
body.club-site .c-manifesto {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  align-items: center;
  gap: clamp(30px, 6vw, 90px);
  padding: clamp(30px, 5vw, 70px);
  border-radius: 4px 60px 4px 4px;
  background: var(--c-forest);
  color: var(--c-cream);
}
body.club-site .c-manifesto h2 { color: var(--c-cream); }
body.club-site .c-manifesto .c-kicker { color: var(--c-saffron); margin-bottom: 20px; }
body.club-site .c-manifesto p { margin-top: 22px; font-size: 20px; }
body.club-site .c-manifesto a { color: var(--c-saffron); }
body.club-site .c-manifesto figure { min-width: 0; }
body.club-site .c-manifesto figure img { width: 100%; display: block; aspect-ratio: 1.08; object-fit: cover; border-radius: 3px; }
body.club-site .c-manifesto figcaption { margin-top: 12px; font-size: 14px; }
body.club-site .c-trip-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
body.club-site .c-trip { min-width: 0; display: flex; flex-direction: column; border-bottom: 1px solid var(--c-line); padding-bottom: 23px; }
body.club-site .c-trip > a { display: block; color: var(--c-forest); text-decoration: none; }
body.club-site .c-trip img { display: block; width: 100%; aspect-ratio: 1.35; object-fit: cover; border-radius: 4px; }
body.club-site .c-trip > div { padding-top: 21px; }
body.club-site .c-trip h3 { margin-block: 10px; font-size: 27px; line-height: 1.2; letter-spacing: -.025em; }
body.club-site .c-trip h3 a { color: var(--c-forest); text-decoration: none; }
body.club-site .c-trip a:hover img { outline: 3px solid var(--c-saffron); outline-offset: -3px; }
body.club-site .c-trip p { color: var(--c-muted); font-size: 17px; }
body.club-site .c-story-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
body.club-site .c-story { padding-top: 24px; border-top: 3px solid var(--c-forest); min-width: 0; }
body.club-site .c-story h3 { font-size: 28px; line-height: 1.2; letter-spacing: -.025em; }
body.club-site .c-story p { margin-block: 17px; color: var(--c-muted); }
body.club-site .c-story a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; }
body.club-site .c-join {
  margin-block: 24px 70px;
  padding: clamp(30px, 5vw, 64px);
  background: var(--c-saffron);
  border: 1px solid var(--c-forest);
  border-radius: 5px 5px 40px 5px;
  position: relative;
}
body.club-site .c-join h2 { max-width: 20ch; }
body.club-site .c-join p { max-width: 58ch; margin-block: 20px 27px; }
body.club-site .c-footer {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  gap: 35px;
  padding: 55px max(var(--c-gutter), calc((100vw - 1280px) / 2));
  background: var(--c-forest);
  color: var(--c-cream);
  font-size: 16px;
}
body.club-site .c-footer .c-brand,
body.club-site .c-footer a { color: var(--c-cream); }
body.club-site .c-footer :where(h3, h4) { margin-bottom: 15px; font-size: 19px; }
body.club-site .c-footer p { margin-top: 17px; max-width: 36ch; }
body.club-site .c-footer :where(ul, ol) { list-style: none; margin: 0; padding: 0; }
body.club-site .c-footer li a { display: inline-flex; min-height: 44px; align-items: center; }
body.club-site .c-footer a:focus-visible,
body.club-site .c-manifesto a:focus-visible,
body.club-site .c-strip a:focus-visible { outline-color: var(--c-saffron); }
body.club-site .c-colophon { grid-column: 1 / -1; padding-top: 22px; border-top: 1px solid #69847a; font-size: 13px; line-height: 1.6; }
/* Interior pages: a compact masthead, then a generous reading measure. */
body.club-site .c-breadcrumb { display: flex; flex-wrap: wrap; gap: 5px 10px; padding-block: 22px 10px; color: var(--c-muted); font-size: 14px; }
body.club-site .c-breadcrumb a { min-height: 44px; display: inline-flex; align-items: center; }
body.club-site .c-page-hero { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 50px; align-items: center; padding-block: 36px 55px; border-bottom: 1px solid var(--c-line); }
body.club-site .c-page-hero:not(:has(figure, .c-page-photo)) { grid-template-columns: minmax(0, 900px); }
body.club-site .c-page-copy { min-width: 0; }
body.club-site .c-page-copy h1 { margin-top: 15px; color: var(--c-forest); font-size: clamp(38px, 4.8vw, 68px); line-height: 1.03; letter-spacing: -.045em; overflow-wrap: anywhere; }
body.club-site .c-page-copy p { margin-top: 24px; font-size: 21px; line-height: 1.55; max-width: 56ch; }
body.club-site .c-page-photo { min-width: 0; }
body.club-site .c-page-photo img,
body.club-site .c-page-hero > figure img { display: block; width: 100%; aspect-ratio: 1.3; object-fit: cover; border-radius: 4px 35px 4px 4px; }
body.club-site .c-page-photo figcaption { margin-top: 10px; color: var(--c-muted); font-size: 13px; }
body.club-site .c-quicknav { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 27px; }
body.club-site .c-quicknav a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 15px; border: 1px solid var(--c-line); border-radius: 5px; background: var(--c-paper); color: var(--c-forest); font-size: 15px; font-weight: 700; text-decoration: none; }
body.club-site .c-quicknav a:hover { border-color: var(--c-forest); }
body.club-site .c-archive-note { margin-block: 25px; padding: 19px 23px; border: 1px dashed #899b8d; background: var(--c-paper); font-size: 16px; line-height: 1.55; color: var(--c-muted); }
body.club-site .c-reading-layout { display: grid; grid-template-columns: minmax(0, 760px) minmax(210px, 250px); gap: clamp(35px, 6vw, 100px); justify-content: space-between; align-items: start; padding-block: 50px 90px; }
body.club-site .c-prose { min-width: 0; max-width: 760px; font-size: 19px; line-height: 1.75; overflow-wrap: anywhere; }
body.club-site .c-prose > :first-child { margin-top: 0; }
body.club-site .c-prose :where(p, ul, ol, blockquote, figure, pre, table, .c-table-scroll) { margin-block: 0 1.35em; }
body.club-site .c-prose :where(h2, h3, h4, h5, h6) { color: var(--c-forest); margin-block: 1.7em .65em; line-height: 1.2; letter-spacing: -.025em; }
body.club-site .c-prose h1 { font-size: clamp(32px, 4vw, 48px); line-height: 1.15; margin-bottom: .8em; }
body.club-site .c-prose h2 { font-size: clamp(28px, 3vw, 38px); }
body.club-site .c-prose h3 { font-size: clamp(24px, 2.5vw, 29px); }
body.club-site .c-prose :where(h4, h5, h6) { font-size: 22px; }
body.club-site .c-prose :where(ul, ol) { padding-left: 1.4em; }
body.club-site .c-prose li { margin-block: .35em; }
body.club-site .c-prose li > :where(ul, ol) { margin-block: .4em; }
body.club-site .c-prose :where(strong, b) { font-weight: 700; }
body.club-site .c-prose blockquote { padding: 25px 30px; border: 1px solid var(--c-line); border-radius: 3px; background: var(--c-paper); color: var(--c-forest); font-size: 1.12em; }
body.club-site .c-prose blockquote p:last-child { margin-bottom: 0; }
body.club-site .c-prose hr { margin-block: 40px; border: 0; border-top: 1px solid var(--c-line); }
/* Imported images keep their intrinsic/attribute/inline dimensions. Never set width:100% here. */
body.club-site .c-prose img { max-width: 100%; height: auto; vertical-align: middle; }
body.club-site .c-prose img[width] { max-width: 100%; }
body.club-site .c-prose :where(img.emoji, img.wp-smiley) { width: 1.1em !important; height: 1.1em !important; max-width: 1.1em !important; margin: 0 .1em !important; vertical-align: -.15em; }
body.club-site .c-prose :where(figure, .wp-caption) { max-width: 100%; }
body.club-site .c-prose :where(figcaption, .wp-caption-text) { color: var(--c-muted); font-size: 14px; line-height: 1.5; margin-top: 10px; }
body.club-site .c-prose .alignleft { float: left; margin: 6px 24px 15px 0; }
body.club-site .c-prose .alignright { float: right; margin: 6px 0 15px 24px; }
body.club-site .c-prose .aligncenter { display: block; margin-inline: auto; }
body.club-site .c-prose::after { content: ''; display: table; clear: both; }
body.club-site .legacy-highlight { background: var(--c-saffron); color: var(--c-ink); padding-inline: .15em; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
body.club-site .legacy-underline { text-decoration: underline; text-underline-offset: .16em; }
body.club-site .legacy-emphasis { font-style: italic; }
body.club-site .legacy-bold { font-weight: 700; }
body.club-site .legacy-inline-icon { max-width: 32px; max-height: 32px; object-fit: contain; vertical-align: middle; }
body.club-site .legacy-social { max-width: 50px; max-height: 50px; object-fit: contain; }
body.club-site a:has(> .legacy-social) { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
body.club-site .legacy-image-button { display: block; max-width: min(100%, 240px); max-height: 80px; width: auto; height: auto; object-fit: contain; margin: 16px auto; }
body.club-site .c-table-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; border: 1px solid var(--c-line); border-radius: 5px; }
body.club-site .c-prose table { border-collapse: collapse; max-width: 100%; font-size: 16px; line-height: 1.5; }
body.club-site .c-table-scroll table { margin: 0; width: 100%; }
body.club-site .c-prose :where(th, td) { border: 1px solid var(--c-line); padding: 12px 14px; text-align: start; vertical-align: top; }
body.club-site .c-prose th { background: var(--c-forest); color: var(--c-cream); font-weight: 700; }
body.club-site .c-prose pre { overflow-x: auto; padding: 18px; background: var(--c-paper); border: 1px solid var(--c-line); font-size: 15px; }
body.club-site .c-sidebar { position: sticky; top: 26px; min-width: 0; padding: 24px; border: 1px solid var(--c-line); border-radius: 4px 4px 18px 4px; background: var(--c-paper); font-size: 16px; line-height: 1.5; }
body.club-site .c-sidebar :where(h2, h3) { color: var(--c-forest); font-size: 22px; line-height: 1.2; margin-bottom: 15px; }
body.club-site .c-sidebar p { margin-bottom: 16px; }
body.club-site .c-sidebar .c-button { width: 100%; padding-inline: 12px; font-size: 15px; }
body.club-site .c-toc { margin-block: 15px 25px; }
body.club-site .c-toc :where(ul, ol) { padding-left: 18px; margin: 0; }
body.club-site .c-toc a { display: inline-flex; min-height: 44px; align-items: center; padding-block: 8px; color: var(--c-forest); }
/* Native disclosure is recognizable without script, including headings in summary. */
body.club-site details { margin-block: 18px; padding: 0 22px; border: 1px solid var(--c-line); border-radius: 6px; background: var(--c-paper); min-width: 0; }
body.club-site summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 60px; padding-block: 16px; color: var(--c-forest); font-weight: 700; line-height: 1.35; cursor: pointer; list-style: none; }
body.club-site summary::-webkit-details-marker { display: none; }
body.club-site summary::after { content: '+'; flex: 0 0 26px; width: 26px; text-align: center; font-size: 26px; font-weight: 400; line-height: 1; }
body.club-site details[open] > summary::after { content: '−'; }
body.club-site summary :where(h2, h3, h4) { margin: 0; font-size: inherit; line-height: inherit; }
body.club-site details[open] { padding-bottom: 22px; }
body.club-site details[open] > summary { margin-bottom: 20px; border-bottom: 1px solid var(--c-line); }
body.club-site .c-original { margin-block: 45px; font-size: 17px; }
body.club-site .c-original > summary { font-size: 20px; }
body.club-site .c-collection { margin-block: 35px 65px; }
body.club-site .c-search { display: flex; flex-wrap: wrap; gap: 10px; margin-block: 30px; max-width: 760px; }
body.club-site .c-search label { flex-basis: 100%; font-weight: 700; }
body.club-site .c-search :where(input[type='search'], input[type='text']) { min-width: 0; flex: 1 1 220px; min-height: 50px; border: 1px solid #7e9185; border-radius: 5px; padding: 10px 15px; background: var(--c-paper); color: var(--c-ink); }
body.club-site .c-search input::placeholder { color: var(--c-muted); opacity: 1; }
body.club-site .c-search :where(button, input[type='submit']) { min-height: 50px; border: 2px solid var(--c-forest); border-radius: 5px; background: var(--c-forest); color: var(--c-cream); padding: 10px 23px; font-weight: 700; cursor: pointer; }
body.club-site .c-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-block: 30px 70px; }
body.club-site .c-pagination :where(a, span) { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 8px 13px; border: 1px solid var(--c-line); border-radius: 4px; color: var(--c-forest); text-decoration: none; }
body.club-site .c-pagination .current { background: var(--c-forest); color: var(--c-cream); border-color: var(--c-forest); }
body.club-site .c-empty { margin-block: 30px 60px; padding: clamp(24px, 5vw, 50px); border: 1px dashed #899b8d; background: var(--c-paper); }
body.club-site .c-empty h2 { font-size: 30px; margin-bottom: 15px; }
/* Families share the reading system, not a stack of interchangeable sales pages. */
body.club-site.family-format .c-page-hero { border-bottom: 3px solid var(--c-saffron); }
body.club-site.family-travel .c-page-photo img { aspect-ratio: 1.1; border-radius: 3px; box-shadow: 8px 8px 0 var(--c-saffron); }
body.club-site.family-about .c-page-copy h1 { max-width: 18ch; }
body.club-site.family-media .c-collection { gap: 32px; }
body.club-site.family-reviews .c-prose blockquote { font-size: 1.05em; border-top: 3px solid var(--c-forest); }
body.club-site.family-guide .c-page-hero { padding-bottom: 40px; }
body.club-site.family-index .c-page-copy h1 { max-width: 22ch; }
/* Tablet: keep an intentional album rather than shrinking two desktop columns. */
@media (max-width: 1100px) {
  body.club-site .c-header { gap: 18px; }
  body.club-site .c-nav { gap: 0 13px; }
  body.club-site .c-nav a { font-size: 15px; }
  body.club-site .c-format-body { padding: 22px; }
}
@media (max-width: 1000px) {
  body.club-site .c-hero { grid-template-columns: minmax(0, 1fr); gap: 35px; padding-block: 45px 65px; }
  body.club-site .c-hero-copy { max-width: 760px; }
  body.club-site .c-hero-copy h1 { max-width: 15ch; font-size: clamp(48px, 8vw, 76px); }
  body.club-site .c-hero-copy p { max-width: 56ch; }
  body.club-site .c-hero-art { width: min(100%, 600px); justify-self: center; padding-bottom: 55px; }
  body.club-site .c-photo-main { width: 77%; }
  body.club-site .c-photo-main img { aspect-ratio: 1.3; }
  body.club-site .c-photo-small { width: 42%; }
  body.club-site .c-stamp { right: 0; bottom: 5px; width: 108px; min-height: 108px; font-size: 21px; }
  body.club-site .c-formats,
  body.club-site .c-collection { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.club-site .c-manifesto { gap: 30px; padding: 35px; }
  body.club-site .c-manifesto p { font-size: 18px; }
  body.club-site .c-trip-grid,
  body.club-site .c-story-grid { gap: 20px; }
  body.club-site .c-trip h3,
  body.club-site .c-story h3 { font-size: 24px; }
  body.club-site .c-reading-layout { grid-template-columns: minmax(0, 760px); justify-content: center; gap: 35px; }
  body.club-site .c-sidebar { position: static; max-width: 760px; }
  body.club-site .c-toc :where(ul, ol) { columns: 2; column-gap: 30px; }
  body.club-site .c-toc li { break-inside: avoid; }
  body.club-site .c-page-hero { gap: 30px; grid-template-columns: minmax(0, 1fr); }
  body.club-site .c-page-hero > figure { max-width: 650px; }
  body.club-site .c-page-photo img,
  body.club-site .c-page-hero > figure img { aspect-ratio: 1.8; }
}
@media (max-width: 750px) {
  body.club-site { --c-gutter: 22px; font-size: 17px; }
  body.club-site .c-strip { font-size: 12px; padding-block: 8px; }
  body.club-site .c-header { min-height: 88px; padding-block: 17px; flex-wrap: wrap; gap: 16px; }
  body.club-site .c-brand span { font-size: 27px; }
  body.club-site .c-brand small { font-size: 10px; letter-spacing: .07em; }
  body.club-site .c-menu-button { display: inline-flex; align-items: center; justify-content: center; margin-left: auto; }
  body.club-site .c-menu-button[aria-expanded='true'] { background: var(--c-forest); color: var(--c-cream); }
  body.club-site .c-nav { display: none; flex-basis: 100%; flex-direction: column; align-items: stretch; gap: 0; padding-block: 10px; border-top: 1px solid var(--c-line); }
  body.club-site .c-nav.is-open { display: flex; }
  body.club-site .c-nav a { min-height: 48px; padding: 12px 4px; font-size: 17px; }
  body.club-site .c-hero { padding-top: 33px; gap: 30px; }
  body.club-site .c-hero-copy h1 { font-size: clamp(44px, 10.3vw, 68px); margin-block: 22px; }
  body.club-site .c-hero-copy p { font-size: 19px; }
  body.club-site .c-actions { gap: 10px; margin-top: 24px; }
  body.club-site .c-button { padding-inline: 18px; font-size: 16px; }
  body.club-site .c-hero-art { padding-right: 12px; padding-bottom: 55px; }
  body.club-site .c-photo-caption { font-size: 11px; }
  body.club-site .c-photo-main { box-shadow: 5px 6px 0 var(--c-forest); }
  body.club-site .c-photo-small { width: 45%; left: 4px; }
  body.club-site .c-stamp { width: 88px; min-height: 88px; right: 0; bottom: 2px; font-size: 18px; padding: 10px; }
  body.club-site .c-marquee { font-size: 17px; gap: 8px 18px; padding-block: 16px; }
  body.club-site .c-section { padding-block: 50px; }
  body.club-site .c-section-head { flex-direction: column; align-items: flex-start; gap: 14px; margin-bottom: 25px; }
  body.club-site .c-section-head h2,
  body.club-site .c-manifesto h2,
  body.club-site .c-join h2 { font-size: clamp(32px, 7.7vw, 44px); }
  body.club-site .c-formats,
  body.club-site .c-collection,
  body.club-site .c-trip-grid,
  body.club-site .c-story-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  body.club-site .c-format.featured { grid-column: auto; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; }
  body.club-site .c-format.featured > img { min-height: 0; height: auto; aspect-ratio: 1.6; }
  body.club-site .c-format-body { padding: 24px; }
  body.club-site .c-format h3 { font-size: 29px; }
  body.club-site .c-format.featured h3 { font-size: 32px; }
  body.club-site .c-manifesto { grid-template-columns: minmax(0, 1fr); padding: 28px 23px; border-top-right-radius: 35px; gap: 28px; }
  body.club-site .c-manifesto figure img { aspect-ratio: 1.25; }
  body.club-site .c-trip-grid { gap: 33px; }
  body.club-site .c-trip h3,
  body.club-site .c-story h3 { font-size: 28px; }
  body.club-site .c-trip img { aspect-ratio: 1.45; }
  body.club-site .c-join { margin-bottom: 45px; padding: 28px 24px; }
  body.club-site .c-footer { grid-template-columns: minmax(0, 1fr); gap: 30px; padding-block: 40px; }
  body.club-site .c-footer .c-colophon { grid-column: auto; }
  body.club-site .c-breadcrumb { padding-top: 14px; font-size: 13px; }
  body.club-site .c-page-hero { padding-block: 24px 35px; gap: 28px; }
  body.club-site .c-page-copy h1 { font-size: clamp(36px, 9vw, 55px); }
  body.club-site .c-page-copy p { margin-top: 20px; font-size: 19px; }
  body.club-site .c-page-photo img,
  body.club-site .c-page-hero > figure img { aspect-ratio: 1.3; }
  body.club-site .c-reading-layout { padding-block: 33px 55px; }
  body.club-site .c-prose { font-size: 18px; line-height: 1.75; }
  body.club-site .c-prose blockquote { padding: 21px; }
  body.club-site .c-prose :where(.alignleft, .alignright) { float: none; display: block; margin: 20px auto; }
  body.club-site .c-sidebar { padding: 23px; }
  body.club-site .c-toc :where(ul, ol) { columns: 1; }
  body.club-site details { padding-inline: 17px; }
  body.club-site .c-original > summary { font-size: 18px; }
  body.club-site .c-archive-note { padding: 18px; }
}
@media (max-width: 370px) {
  body.club-site { --c-gutter: 16px; }
  body.club-site .c-brand span { font-size: 24px; }
  body.club-site .c-menu-button { padding-inline: 10px; }
  body.club-site .c-actions { align-items: stretch; flex-direction: column; }
  body.club-site .c-stamp { width: 75px; min-height: 75px; font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  body.club-site *,
  body.club-site *::before,
  body.club-site *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
@media print {
  body.club-site { background: white; color: black; font-size: 12pt; }
  body.club-site :where(.c-strip, .c-header, .c-sidebar, .c-footer, .c-menu-button, .c-skip, .c-quicknav, .c-pagination) { display: none; }
  body.club-site .c-wrap { width: 100%; }
  body.club-site :where(.c-page-hero, .c-reading-layout) { display: block; padding-block: 15pt; }
  body.club-site .c-prose { max-width: none; font-size: 12pt; }
  body.club-site :where(h1, h2, h3) { break-after: avoid; }
  body.club-site :where(img, figure, blockquote, .c-format, .c-trip) { break-inside: avoid; }
  body.club-site a { color: inherit; }
}
