/* White paper, pale blue details and readable, text-led cards. */
:root {
  --ice: #eaf2f6;
  --ice-light: #f5f9fb;
  --ice-line: #cbdce5;
  --blue-ink: #355c70;
}

/* Upcoming cards and their detail view share the same cool palette. */
.event-card,
.interior-page .event-card {
  background: #fff;
  border-color: var(--ice-line);
  box-shadow: 0 5px 18px #001a2f08;
  transition: border-color .2s, background-color .2s;
}
.event-card:hover,
.calendar-details .event-card:hover {
  border-color: #8baabc;
  background: var(--ice-light);
}
.event-card .event-date {
  align-self: stretch;
  padding: 8px;
  border: 0;
  background: var(--ice);
  color: var(--blue-ink);
}
.event-date strong,
.event-category,
.event-arrow { color: var(--blue-ink); }
.event-meta { color: #526875; }
.event-modal { background: #fff; }
.event-modal-content {
  background-image: linear-gradient(#ffffffed, #ffffffed), var(--page-illustration, url('/assets/pattern-events.webp'));
}
.event-modal-heading,
.event-modal-facts { border-color: var(--ice-line); }
.event-modal-stamp { background: var(--ice); border-color: var(--ice-line); color: var(--blue-ink); }
.event-modal-facts dt { color: var(--blue-ink); }
.event-modal-reservation { background: var(--ice); }
.interior-page .event-calendar,
.event-calendar td,
.calendar-controls button { border-color: var(--ice-line); }
.interior-page .event-calendar th { background: var(--ice); border-color: var(--ice-line); }
.calendar-blank { background: var(--ice-light); }
.calendar-day:hover { background: var(--ice); }
.calendar-day[aria-pressed="true"] { background: var(--navy); color: #fff; }

/* Publicly sourced speaking records sit close to the personal profile. */
.activity-records { --activity-surface: #fff; --record-muted: #566169; --record-rule: #001a2f26; --record-accent: #71603d; position: relative; isolation: isolate; padding: 68px 6% 72px; border-top: 1px solid #a9925e55; background: var(--activity-surface); color: var(--navy); }
/* Match the site's paper / navy / gold palette; preserve the artwork ratio. */
.activity-records::before { content: ''; position: absolute; inset: 0 0 auto; aspect-ratio: 3 / 2; z-index: -1; background: url('/assets/pattern-profile.webp') center top / 100% auto no-repeat; mask-image: linear-gradient(#000 20%, transparent 100%); opacity: .1; pointer-events: none; }
.activity-heading { margin-bottom: 30px; text-align: center; }
.activity-heading .chapter-label { font: 400 15px/1.5 Georgia, serif; letter-spacing: .2em; color: var(--record-accent); }
.activity-heading h2 { margin: 14px 0 5px; color: var(--navy); font-size: clamp(27px, 3vw, 37px); }
.activity-heading > p:last-child { color: var(--record-muted); font-size: 15px; line-height: 1.8; }
.activity-lead > span { display: block; text-wrap: balance; }
.activity-source-link { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; margin-top: 6px; padding: 4px 0; border-bottom: 1px solid #a9925e66; color: var(--record-accent); font-size: 13px; }
.activity-source-link:hover { color: var(--navy); border-color: var(--navy); }
.activity-list { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; max-width: 1000px; margin-inline: auto; }
.activity-item { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(260px, 40%) minmax(0, 1fr); align-items: stretch; min-width: 0; min-height: 205px; overflow: hidden; padding: 0; border: 0; border-bottom: 1px solid var(--record-rule); background: transparent; box-shadow: none; color: var(--navy); }
.activity-thumbnail { position: relative; overflow: hidden; width: 100%; height: 100%; min-height: 205px; background: var(--paper); }
.activity-thumbnail img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 34%; transition: transform .35s ease; }
.activity-item:hover .activity-thumbnail img { transform: scale(1.025); }
.activity-copy { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; width: 100%; padding: 20px 26px 21px; }
.activity-item time { color: var(--record-accent); font: 400 16px/1.5 Georgia, serif; letter-spacing: .08em; }
.activity-type { margin: 10px 0 2px; color: var(--record-muted); font-size: 12px; letter-spacing: .12em; }
.activity-item h3 { color: var(--navy); font: 500 clamp(19px, 2vw, 24px)/1.5 var(--serif); text-wrap: balance; }
.activity-item h3 + p { margin-top: 8px; color: var(--record-muted); font-size: 14px; line-height: 1.8; }
.activity-item a { margin-top: auto; padding-top: 9px; border-bottom: 1px solid #a9925e66; color: var(--record-accent); font-size: 14px; line-height: 1.6; }
.activity-item a:hover { border-color: var(--navy); color: var(--navy); }
.activity-footnote { max-width: 1000px; margin: 17px auto 0; color: var(--record-muted); font-size: 13px; line-height: 1.7; }
.activity-list-link { display: flex; width: fit-content; align-items: center; gap: 18px; margin: 25px auto 0; padding: 8px 0 6px; border-bottom: 1px solid var(--gold); color: var(--navy); font-size: 15px; letter-spacing: .04em; }
.activity-list-link::after { content: "→"; color: var(--record-accent); font: 20px/1 Georgia, serif; transition: transform .2s ease; }
.activity-list-link:hover::after { transform: translateX(5px); }
@media (max-width: 700px) {
  .activity-records { padding: 50px 16px 56px; }
  .activity-list { grid-template-columns: 1fr; gap: 12px; }
  .activity-item { grid-template-columns: 36% minmax(0, 64%); min-height: 188px; padding: 0; }
  .activity-thumbnail { min-height: 188px; }
  .activity-thumbnail img { object-position: 48% center; }
  .activity-copy { padding: 12px 13px 13px; }
  .activity-item time { font-size: 13px; }
  .activity-type { margin-top: 5px; font-size: 10px; }
  .activity-item h3 { font-size: 15px; line-height: 1.4; }
  .activity-item h3 + p { display: -webkit-box; margin-top: 4px; overflow: hidden; font-size: 12px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .activity-item a { margin-top: auto; padding-top: 5px; font-size: 12px; }
}

/* Compact editorial feed: one lead row and four equal-width stories. */
.blog-showcase { --journal-text: #f2f5f7; --journal-rule: #cbd8e047; }
.interior-page .blog-showcase { --journal-text: var(--navy); --journal-rule: #001a2f33; }
.journal-gallery-wrap { position: relative; isolation: isolate; max-width: 1040px; margin-inline: auto; padding: 38px; background: #fff; color: var(--navy); }
.journal-gallery-wrap::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image: url('/assets/concept-illustration.webp'), url('/assets/concept-illustration.webp'); background-position: center top, center bottom; background-size: 100% auto; background-repeat: no-repeat; opacity: .12; }
.journal-hero { margin: 0 0 29px; padding: 0 0 29px; border-bottom: 1px solid #dce5e9; }
.journal-hero-link { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); align-items: stretch; gap: 38px; min-height: 360px; color: var(--navy); }
.journal-image { display: block; position: relative; overflow: hidden; aspect-ratio: 16 / 10; background: #e4eaec; }
.journal-image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.journal-hero-link > .journal-image { order: 2; width: 100%; height: 100%; aspect-ratio: auto; }
.journal-hero-link > .journal-image img { object-position: center 57%; }
.journal-hero-copy { order: 1; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-width: 0; }
.journal-latest-label { display: flex; align-items: center; gap: 10px; margin: 0 0 13px; color: #526875; font: 500 12px/1.6 var(--sans); letter-spacing: .04em; }
.journal-latest-label::before { content: ''; width: 20px; height: 1px; background: var(--gold); }
.journal .journal-hero h3 { margin: 0; color: var(--navy); font: 600 clamp(28px, 3vw, 40px)/1.5 var(--sans); letter-spacing: -.02em; overflow-wrap: anywhere; }
.journal-title-line { display: block; }
.journal-title-phrase { display: inline-block; white-space: nowrap; }
.journal-read-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 18px; color: #355367; font: 500 13px/1.7 var(--sans); }
.journal-arrow { width: 22px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.4; transition: transform .25s; }
.journal-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.journal-gallery-card { min-width: 0; }
.journal-gallery-link { display: block; height: 100%; padding-bottom: 12px; border: 1px solid #d3e0e6; background: #fffffff2; box-shadow: 0 4px 13px #001a2f0d; color: var(--navy); }
.journal-gallery-card--medium .journal-gallery-link { display: grid; grid-template-columns: minmax(150px, 46%) minmax(0, 1fr); grid-template-rows: auto 1fr; min-height: 238px; padding-bottom: 0; }
.journal-gallery-card--medium .journal-image { grid-row: 1 / 3; width: 100%; height: 100%; aspect-ratio: auto; }
.journal-gallery-card--medium .journal-gallery-category { align-self: end; margin: 24px 20px 7px; }
.journal .journal-gallery-card--medium h3 { padding: 0 20px 24px; font-size: 18px; line-height: 1.65; }
.journal-gallery-card--small .journal-image { aspect-ratio: 16 / 8; }
.journal-gallery-category { margin: 10px 10px 5px; color: #587080; font: 500 11px/1.6 var(--sans); }
.journal .journal-gallery-card h3 { margin: 0; padding-inline: 10px; color: inherit; font: 600 15px/1.55 var(--sans); letter-spacing: -.01em; overflow-wrap: anywhere; }
.journal-hero-link:hover .journal-image img, .journal-gallery-link:hover .journal-image img { transform: scale(1.025); }
.journal-hero-link:hover .journal-arrow { transform: translateX(4px); }
.journal-hero-link:hover h3, .journal-gallery-link:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.journal-hero-link:focus-visible, .journal-gallery-link:focus-visible { outline-offset: 6px; }
.blog-showcase .journal-heading { gap: 14px; border: 0; margin-bottom: 36px; padding: 0; }
.blog-showcase .journal-heading .chapter-label { font: 400 15px/1.5 Georgia, serif; letter-spacing: .2em; }
.blog-showcase .journal-heading h2 { margin: 17px 0 0; }
.blog-showcase .journal-heading > p { font-size: 15px; line-height: 1.9; }
.blog-showcase .journal-footer { display: flex; justify-content: center; max-width: 1000px; margin: 23px auto 0; padding: 0; }
.blog-showcase .section-page-link { min-height: 44px; margin: 0; padding: 9px 0; border: 0; border-bottom: 1px solid var(--journal-rule); color: var(--journal-text); font-size: 14px; }
.blog-showcase .section-page-link > span { color: inherit; }
.blog-showcase .section-page-link:hover { background: transparent; text-decoration: underline; text-underline-offset: 5px; }
@media (max-width: 999px) { .journal-gallery { gap: 20px 16px; } }

/* The video chapter borrows the site's line art and frames the live feed. */
.video-section,
.interior-page .section-page > .video-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-block: 80px 72px;
  border: 0;
  background: #eaf2f6;
  color: var(--navy);
}
.video-section::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: url('/assets/pattern-video.webp'), url('/assets/pattern-video.webp');
  background-position: center top, center bottom;
  background-size: 100% auto;
  background-repeat: no-repeat;
  opacity: .12;
}
.video-section .chapter-inner { position: relative; max-width: 1080px; }
.video-section .video-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin: 0 0 36px;
  padding: 0;
  border: 0;
  text-align: center;
}
.video-section .video-heading .chapter-label,
.interior-page .video-section .video-heading .chapter-label {
  margin: 0;
  color: #416171;
  font: 400 15px/1.5 Georgia, serif;
  letter-spacing: .2em;
}
.video-section .video-heading h2,
.video-section .video-heading h1,
.interior-page .video-section .video-heading h1 {
  margin: 0;
  color: var(--navy);
  font: 500 clamp(29px, 3vw, 39px)/1.45 var(--serif);
  letter-spacing: .025em;
  white-space: nowrap;
}
.video-section .youtube-videos {
  padding: clamp(16px, 3vw, 30px);
  gap: 20px;
  background: var(--navy);
  box-shadow: 12px 12px 0 #b6cbd5;
}
.video-section .video-status {
  display: grid;
  place-items: center;
  min-height: 210px;
  margin: 0;
  padding: 30px;
  border: 1px solid #8aa7b68c;
  background: transparent;
  color: #f2f5f7;
  font: 500 18px/1.9 var(--serif);
  text-align: center;
}
.video-section .youtube-card {
  min-width: 0;
  padding: 10px 10px 16px;
  border: 0;
  background: #fff;
  color: var(--navy);
}
.video-section .youtube-card h3 { margin: 13px 0 8px; font: 500 18px/1.65 var(--serif); color: var(--navy); }
.video-section .youtube-card a,
.video-section .youtube-card time { color: #486577; }
.video-section .youtube-channel-link {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  width: fit-content;
  min-height: 44px;
  margin: 25px 0 0 auto;
  padding: 6px 0;
  border-bottom: 1px solid #7899a8;
  color: var(--navy);
  font-size: 15px;
  text-align: right;
}
.video-section .youtube-channel-link[hidden] { display: none; }
.video-section .video-bottom {
  margin-top: 42px;
  padding-top: 16px;
  border-top: 1px solid #b8cbd4;
}
.video-section .video-bottom > span { color: #536d7b; }
.video-section .video-bottom a > span { color: #416171; }
.video-section .section-page-link {
  margin: 13px 0 0 auto;
  padding: 8px 0;
  border: 0;
  border-bottom: 1px solid #7899a8;
  color: var(--navy);
  font-size: 15px;
}
.video-section .section-page-link > span { color: #416171; }

/* An illustrated white invitation set into a navy closing chapter. */
.support-minimal,
.interior-page .section-page > .support-minimal {
  position: relative;
  padding-block: 80px 95px;
  background: var(--navy);
  color: #eef3f5;
}
.support-minimal-layout {
  position: relative;
  isolation: isolate;
  display: block;
  padding: clamp(34px, 4vw, 50px);
  background: #fff;
  color: var(--navy);
}
.support-minimal-layout::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: url('/assets/pattern-services.webp'), url('/assets/pattern-services.webp');
  background-position: center top, center bottom;
  background-size: 100% auto;
  background-repeat: no-repeat;
  opacity: .10;
}
.support-minimal .support-heading,
.interior-page .support-minimal .support-heading { max-width: 760px; margin: 0 auto 42px; text-align: center; }
.support-minimal-layout .support-heading { margin-bottom: 0; }
.support-minimal .chapter-label { color: #627889; font: 400 15px/1.5 Georgia, serif; letter-spacing: .18em; }
.support-minimal .support-heading h2,
.support-minimal .support-heading h1 {
  margin: 18px 0 20px;
  color: var(--navy);
  font: 500 clamp(28px, 2.8vw, 36px)/1.6 var(--serif);
  letter-spacing: .02em;
  white-space: nowrap;
}
.support-minimal .support-heading h2 > span { display: inline-block; }
.support-minimal .support-heading > p:last-of-type { color: #526875; font-size: 16px; line-height: 1.95; }
.support-overview-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  min-height: 50px;
  margin-top: 28px;
  padding: 11px 18px;
  background: var(--navy);
  color: #fff;
  font-size: 15px;
}
.support-links { max-width: 780px; margin-inline: auto; border-top: 1px solid var(--ice-line); text-align: left; }
.support-row {
  display: block;
  align-items: center;
  gap: 17px;
  padding: 22px 0;
  border-bottom: 1px solid var(--ice-line);
  color: var(--navy);
}
.support-row::before { content: none; }
.support-row h3 { color: var(--navy); font: 500 23px/1.55 var(--serif); white-space: nowrap; }
.support-row p { margin-top: 5px; color: #526875; font-size: 14px; line-height: 1.8; }
.support-integrity-note { max-width: 780px; margin: 25px auto 0; color: #526875; font-size: 13px; line-height: 1.8; text-align: left; }
.interior-page .support-minimal .chapter-inner {
  padding: clamp(30px, 5vw, 60px);
  background: linear-gradient(#ffffffec, #ffffffec), url('/assets/pattern-services.webp') center top / cover no-repeat;
  color: var(--navy);
}
.support-detail-list { border-top: 1px solid var(--ice-line); margin-top: 38px; }
.support-detail { padding: 30px 0; border-bottom: 1px solid var(--ice-line); scroll-margin-top: 35px; }
.support-detail h2 { margin: 0 0 12px; font: 500 26px/1.6 var(--serif); white-space: nowrap; }
.support-detail > p { font-size: 17px; line-height: 1.95; }
.support-topic-list { display: flex; flex-wrap: wrap; gap: 8px 24px; padding: 0; margin: 18px 0 0; list-style: none; font-size: 15px; color: #526875; }
.support-topic-list li::before { content: '—'; margin-right: 8px; color: #7e9baa; }
.support-simple-list { max-width: 820px; margin: 42px auto 0; padding: 0; border-top: 1px solid var(--ice-line); list-style: none; text-align: left; }
.support-simple-list li { position: relative; display: grid; grid-template-columns: minmax(220px, .8fr) minmax(0, 1.4fr); gap: 34px; padding: 28px 12px 28px 34px; border-bottom: 1px solid var(--ice-line); }
.support-simple-list li::before { content: ''; position: absolute; top: 38px; left: 4px; width: 9px; height: 9px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 5px rgba(197,169,110,.16); }
.support-simple-list strong { color: var(--navy); font: 500 22px/1.6 var(--serif); }
.support-simple-list span { color: #526875; font-size: 15px; line-height: 1.9; }
.consultation-panel { scroll-margin-top: 30px; max-width: 900px; margin: 50px auto 0; padding: clamp(28px, 5vw, 52px); background: var(--navy); color: #f2f6f8; text-align: center; }
.consultation-panel .chapter-label { color: #d8c38e; font: 400 15px/1.5 Georgia, serif; letter-spacing: .2em; }
.consultation-panel h2 { margin: 12px 0 14px; color: #fff; font: 500 clamp(24px, 3vw, 34px)/1.5 var(--serif); }
.consultation-panel h2 + p { max-width: 620px; margin: 0 auto; color: #d8e4e9; font-size: 16px; line-height: 1.9; }
.consultation-link { display: inline-flex; align-items: center; justify-content: center; min-height: 54px; margin-top: 25px; padding: 12px 28px; background: #fff; color: var(--navy); font-size: 16px; font-weight: 600; }
.consultation-link:hover { background: #eaf2f6; }
.consultation-note { max-width: 590px; margin: 15px auto 0; color: #c4d2d9; font-size: 13px; line-height: 1.8; }
body:not(.interior-page) .study-footer {
  border-top: 1px solid #78909c55;
  background: var(--navy);
  color: #c6d5dd;
}
body:not(.interior-page) .study-footer > p:first-child { color: #f1f4f5; }
body:not(.interior-page) .study-footer > p:first-child span,
body:not(.interior-page) .study-footer .study-note { color: #a9bbc4; }

@media (max-width: 760px) {
  .event-card .event-date { padding: 6px 4px; }
  .blog-showcase.chapter { padding-inline: 20px; padding-block: 55px; }
  .journal-gallery-wrap { padding: 17px; }
  .journal-hero { margin-bottom: 20px; padding-bottom: 20px; }
  .journal-hero-link { display: block; min-height: 0; }
  .journal-hero-link > .journal-image { height: auto; aspect-ratio: 16 / 10; }
  .journal-hero-copy { padding: 18px 4px 4px; }
  .journal-latest-label { margin-bottom: 8px; font-size: 11px; }
  .journal .journal-hero h3 { font-size: clamp(22px, 6.4vw, 29px); line-height: 1.52; letter-spacing: -.015em; }
  .journal-read-link { margin-top: 10px; font-size: 12px; }
  .journal-gallery { gap: 20px 14px; }
  .journal-gallery-card--medium { grid-column: 1 / -1; }
  .journal-gallery-card--medium .journal-gallery-link { grid-template-columns: 42% minmax(0, 1fr); min-height: 168px; }
  .journal-gallery-card--medium .journal-gallery-category { margin: 16px 13px 5px; }
  .journal .journal-gallery-card--medium h3 { padding: 0 13px 16px; font-size: 15px; line-height: 1.55; }
  .journal-gallery-card--small .journal-image { aspect-ratio: 1; }
  .journal-gallery-category { margin: 9px 8px 4px; font-size: 11px; }
  .journal .journal-gallery-card h3 { padding-inline: 8px; }
  .journal .journal-gallery-card h3 { font-size: 15px; line-height: 1.55; }
  .blog-showcase .journal-heading { margin-bottom: 25px; }
  .blog-showcase .journal-heading h2 { margin-top: 14px; }
  .blog-showcase .journal-footer { margin-top: 20px; }
  .blog-showcase .section-page-link { font-size: 14px; }
  .interior-page .section-page > .blog-showcase { padding-inline: 12px; }
  .video-section,
  .interior-page .section-page > .video-section { padding: 58px 12px 64px; }
  .video-section .video-heading { gap: 10px; margin-bottom: 26px; }
  .video-section .video-heading .chapter-label { font-size: 15px; }
  .video-section .video-heading h2,
  .video-section .video-heading h1,
  .interior-page .video-section .video-heading h1 { font-size: clamp(18px, 5.6vw, 28px); line-height: 1.55; }
  .video-section .youtube-videos { padding: 15px; box-shadow: 8px 8px 0 #b6cbd5; }
  .video-section .video-status { min-height: 180px; padding: 24px 18px; font-size: 16px; }
  .video-section .video-bottom { margin-top: 29px; }
  .support-minimal,
  .interior-page .section-page > .support-minimal { padding: 58px 12px 70px; }
  .support-minimal-layout { padding: 30px 16px; }
  .support-minimal .support-heading,
  .interior-page .support-minimal .support-heading { margin-bottom: 30px; }
  .support-minimal-layout .support-heading { margin-bottom: 0; }
  .support-minimal .support-heading h2,
  .support-minimal .support-heading h1,
  .interior-page .section-page .support-minimal .support-heading h1 { font-size: clamp(16px, 5vw, 25px); margin-block: 15px; }
  .support-minimal .support-heading > p:last-of-type { font-size: 15px; }
  .support-row { padding: 19px 0; }
  .support-row h3 { font-size: clamp(16px, 4.6vw, 21px); }
  .support-row p { font-size: 14px; }
  .support-overview-link { margin-top: 22px; }
  .interior-page .support-minimal .chapter-inner { padding: 28px 16px; }
  .support-detail { padding-block: 24px; }
  .support-detail h2 { font-size: clamp(18px, 5.1vw, 24px); }
  .support-detail > p { font-size: 16px; }
  .support-topic-list { display: grid; gap: 8px; }
  .support-simple-list { margin-top: 30px; }
  .support-simple-list li { display: block; padding: 22px 6px 22px 28px; }
  .support-simple-list li::before { top: 31px; left: 3px; width: 8px; height: 8px; }
  .support-simple-list strong { display: block; margin-bottom: 5px; font-size: 19px; }
  .support-simple-list span { font-size: 14px; line-height: 1.8; }
}

/* A tighter editorial rhythm for desktop screens. */
@media (min-width: 761px) {
  .concept {
    min-height: 0;
    padding: 68px 6% 72px;
  }
  .concept-content {
    display: grid;
    grid-template-columns: minmax(240px, 260px) minmax(0, 1fr);
    align-items: start;
    column-gap: clamp(52px, 7vw, 92px);
    row-gap: 10px;
    max-width: 1040px;
    text-align: left;
  }
  .concept-lead { padding: 4px 0 14px 25px; border-left: 1px solid #bda872; }
  .concept h2 { max-width: 260px; margin: 21px 0 0; font-size: clamp(23px, 1.9vw, 27px); line-height: 1.75; }
  .concept h2 span { display: block; white-space: nowrap; }
  .concept-body { max-width: 650px; padding-top: 76px; }
  .concept-prose { font-size: 15.5px; line-height: 2; }
  .concept-prose p + p { margin-top: 18px; }
  .concept-closing { margin: 20px 0 16px; font-size: 19px; line-height: 1.8; }
  .concept-signoff { justify-content: flex-start; }
  .concept-page-link { grid-column: 1 / -1; justify-self: center; margin: 20px auto 0; }

  .profile-map { padding: 48px 24px 18px; }
  .profile-map-heading h2 { margin-top: 16px; }
  .portrait-map { height: 470px; margin-top: 8px; }
  .portrait-engraving { width: 480px; }
  .portrait-callout { width: 252px; min-height: 146px; padding: 22px 25px; }
  .portrait-callout > span { font-size: 12px; }
  .portrait-callout p { font-size: 19px; }
  .callout-work { top: 4px; left: 1%; }
  .callout-words { top: 196px; right: 1%; }
  .callout-together { bottom: 58px; left: 7%; }
  .profile-page-link { margin-top: -28px; }

  .activity-records { padding-block: 54px 58px; }
  .activity-heading { margin-bottom: 22px; }
  .activity-list { gap: 12px; }
  .activity-footnote { margin-top: 12px; }
  .activity-list-link { margin-top: 17px; }

  .blog-showcase.chapter { padding-block: 70px 74px; }
  .blog-showcase .journal-heading { margin-bottom: 26px; }
  .journal-gallery-wrap { padding: 28px; }
  .journal-hero { margin-bottom: 20px; padding-bottom: 20px; }
  .journal-hero-link { min-height: 290px; gap: 30px; }
  .journal-gallery { gap: 15px; }
  .journal-gallery-card--medium .journal-gallery-link { min-height: 200px; }
  .journal-gallery-card--medium .journal-gallery-category { margin: 19px 17px 6px; }
  .journal .journal-gallery-card--medium h3 { padding: 0 17px 19px; }
  .blog-showcase .journal-footer { margin-top: 16px; }

  .video-section,
  .interior-page .section-page > .video-section { padding-block: 58px 54px; }
  .video-section .video-heading { margin-bottom: 24px; }
  .video-section .youtube-videos { padding: 22px; }
  .video-section .video-status { min-height: 160px; padding: 24px; }
  .video-section .youtube-channel-link { margin-top: 18px; }
  .video-section .video-bottom { margin-top: 26px; padding-top: 12px; }
  .video-section .section-page-link { margin-top: 8px; }

  .support-minimal,
  .interior-page .section-page > .support-minimal { padding-block: 54px 60px; }
  .support-minimal-layout { padding: 38px 46px; }
  .support-minimal .support-heading h2 { margin-block: 12px 14px; }
  .support-overview-link { margin-top: 20px; }
}

/* Keep the editorial mission layout composed on compact laptops and tablets. */
@media (min-width: 761px) and (max-width: 980px) {
  .concept-content {
    grid-template-columns: 1fr;
    gap: 30px;
    max-width: 680px;
    text-align: center;
  }
  .concept-lead { padding: 0; border-left: 0; }
  .concept h2 { max-width: none; }
  .concept h2 span { white-space: normal; }
  .concept-body { max-width: 640px; padding-top: 0; }
  .concept-signoff { justify-content: center; }
  .concept-page-link { margin-inline: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .event-card, .journal-image img, .journal-arrow { transition: none; }
  .journal-hero-link:hover .journal-image img, .journal-gallery-link:hover .journal-image img { transform: none; }
}
