/* Shared editorial geometry. Keep widths, gutters and surface spacing here. */
:root {
  --house-width: 1200px;
  --house-gutter: clamp(24px, 4vw, 64px);
  --house-space: clamp(48px, 6vw, 88px);
  --house-gap: clamp(32px, 4vw, 56px);
  --house-padding: clamp(28px, 4.5vw, 60px);
}
body .wrap,
body main > :is(.page-intro, .section, .manifesto, .membership-paths, .membership-common, .member-profile, .invitation),
body.page-experience main > :is(#participation, #between, .region-network, .monday-club),
body.page-members main > .member-profile,
body.page-index main > .home-chair {
  width: calc(100% - var(--house-gutter) * 2);
  max-width: var(--house-width);
  margin-inline: auto;
}
body main > section {
  margin-block: var(--house-space) 0;
}
body main > .page-intro {
  margin-top: 0;
  padding: clamp(56px, 6vw, 88px) 0 0;
}
body main > :is(.section, .manifesto) { padding-block: 0; }
body main > :is(.house-panel, .home-chair, .membership-common, .member-profile, .monday-club, .participation, .lifestyle-journal),
body.page-experience main > :is(#participation, #between, .region-network, .monday-club),
body.page-members main > .member-profile,
body.page-index main > .home-chair,
body.page-conversations main > .case-example {
  margin-block: var(--house-space) 0;
  padding: var(--house-padding);
  border-radius: 22px;
}
body main > .lifestyle-journal { background: #142820; }
body.page-index main > :is(.membership-paths, .manifesto, .invitation) {
  margin-top: var(--house-space);
}
body main > .membership-paths { padding-block: 0; }
body main > .invitation {
  margin-block: var(--house-space) 0;
  padding: var(--house-space) 0;
}
body main > .home-hero { margin: 0; }
body .hero-copy.wrap { width: 100%; max-width: none; }
body .membership-reassurance { padding-block: 28px 0; }
body :is(.lifestyle-split, .member-opening, .membership-opening, .application-intro,
  .member-invitation, .chair-layout, .home-chair, .exchange-section, .board-welcome,
  .membership-common, .membership-paths, .membership-practical) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--house-gap);
}
body .lifestyle-split { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
body .member-profile > .wrap {
  width: 100%; max-width: none; padding: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--house-gap);
}
body .profile-copy { padding-top: 0; }
body .membership-paths article { padding: var(--house-padding); display: flex; flex-direction: column; }
body .membership-paths article .text-link { margin-top: auto; padding-top: 20px; }
body .membership-common .common-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
body :is(.house-panel, .participation, .member-profile) > .wrap { width: 100%; max-width: none; padding: 0; }
body .membership-design-intro { display: block; margin-bottom: 40px; }
body :is(.lifestyle-cards, .programme-grid) { gap: 32px; }
body.page-experience #method { padding-block: 0; }
body.page-experience #method .lifestyle-photo { align-self: start; }
body.page-experience #method .lifestyle-photo img { height: clamp(440px, 45vw, 620px); min-height: 0; max-height: none; }
body .monday-club { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; }
body .monday-signature { margin: 0; }
body .monday-copy { max-width: none; }
body.page-membership .fees-grid { gap: 32px; align-items: stretch; }
body.page-membership .fee-card { padding: 28px; }
body .membership-comparison table { table-layout: fixed; min-width: 1080px; }
body .membership-comparison tr > :first-child { width: 25%; }
body .membership-comparison tr > :not(:first-child) { width: 15%; }
body .membership-comparison :is(th, td) { overflow-wrap: break-word; }
body .comparison-scroll { overflow-x: auto; }
body.page-stories .story-collection { gap: 40px; align-items: stretch; }
body.page-stories .story-collection .story-card:nth-child(even) { padding-top: 0; }
body .story-tile { display: flex; flex-direction: column; }
body .story-tile-copy { display: flex; flex-direction: column; flex: 1; }
body .story-tile-copy .story-byline { margin-top: auto; padding-top: 24px; }
body .house-collection .row { display: block; margin: 0; }
body .house-collection .row > * { width: 100%; padding: 0; }
body main .row { --bs-gutter-x: 2rem; row-gap: 32px; }
body .terms-copy, body .story-body { max-width: 790px; }
body .application-shell { max-width: 900px; }
body .house-documents { max-width: 1000px; }
body .story-body { padding-top: 0; }
body .story-body > .fireside-invitation { margin-block: 56px; }
body footer { margin-top: 40px; }
@media (min-width: 1600px) { :root { --house-width: 1280px; } }
@media (max-width: 1000px) {
  body :is(.lifestyle-split, .membership-common, .chair-layout, .member-opening,
    .membership-opening, .application-intro, .member-invitation, .exchange-section, .board-welcome),
  body .member-profile > .wrap { grid-template-columns: 1fr; }
  body .lifestyle-split { grid-template-columns: 1fr !important; }
  body .lifestyle-photo { width: 100%; }
  body.page-experience #method .lifestyle-photo img { height: 440px; }
  body.page-membership .fees-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  :root { --house-gutter: 20px; --house-space: 48px; --house-gap: 32px; --house-padding: 28px; }
  body :is(.membership-paths, .membership-practical, .home-chair, .monday-club),
  body .membership-common .common-benefits { grid-template-columns: 1fr; }
  body .home-chair { gap: 32px; }
  body .page-intro .lead { margin-top: 28px; }
  body.page-membership .fees-grid { grid-template-columns: 1fr; }
  body.page-stories .story-collection { grid-template-columns: 1fr; gap: 32px; }
  body .lifestyle-cards, body .programme-grid { grid-template-columns: 1fr; gap: 36px; }
  body.page-experience #method .lifestyle-photo img { height: 340px; }
  body .membership-paths article { padding: 28px; }
  body .membership-panel { padding: 28px; }
  body .story-tile-copy { padding: 28px; }
  body .application-shell { padding: 28px; }
  body .hero-copy.wrap { width: 100%; }
}
/* Explicit section margins also outrank the legacy .wrap shorthand. */
body main > section.wrap { margin-block: var(--house-space) 0; }
body main > section.page-intro { margin-top: 0; }
body.page-experience main > #method,
body.page-conversations main > .leadership-pressures {
  width: calc(100% - var(--house-gutter) * 2);
  max-width: var(--house-width);
  margin: var(--house-space) auto 0;
  padding: var(--house-padding);
  border-radius: 22px;
}
body.page-experience #method .method-steps { grid-template-columns: 1fr; }
body main > .story-browse { margin-top: var(--house-space); }
body.page-stories main > .story-collection { margin-top: 40px; }

body.page-index main > :is(.manifesto, .lifestyle-journal, .house-collection) {
  width: calc(100% - var(--house-gutter) * 2);
  max-width: var(--house-width);
  margin-inline: auto;
  padding: var(--house-padding);
  border-radius: 22px;
}
body.page-index main > .manifesto { padding-block: var(--house-padding) !important; }
body main > .page-intro { max-width: var(--house-width); padding-bottom: 24px; }
body.page-privacy .terms-copy { max-width: 790px; }
@media (max-width: 1000px) {
  body :is(.home-chair, .monday-club, .membership-paths, .membership-practical) {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 900px) {
  body :is(.lifestyle-cards, .programme-grid) { grid-template-columns: 1fr; }
  body .lifestyle-cards img { height: 340px; }
}
