/* Gambit: warm paper, peach, deep teal and one small marker of colour. */
:root {
  --paper: #ECE9DF;
  --bright: #F4F1E8;
  --peach: #F0DBC2;
  --ink: #1A1A18;
  --soft: #46453F;
  --line: #D8D3C4;
  --teal: #1B4A46;
  --magenta: #E5369A;
  --mark: #F49BCB;
  --serif: 'Newsreader', Georgia, serif;
  --display: var(--serif);
  --sans: 'Hanken Grotesk', Arial, sans-serif;
  --rd-space: max(24px, calc((100vw - 1120px) / 2));
  --rd-section: clamp(48px, 7vw, 88px);
}
body { background: var(--paper); color: var(--ink); font: 20px/1.62 var(--serif); }
h1, h2, h3, h4 { font-family: var(--serif); font-weight: 500; letter-spacing: -.02em; line-height: 1.1; text-transform: none; }
h1 { font-size: clamp(48px, 6vw, 80px); }
h2 { font-size: clamp(36px, 4.1vw, 54px); }
h3 { font-size: clamp(28px, 3vw, 36px); }
em, h1 em, h2 em, h3 em { font-style: italic; }
mark { white-space: nowrap; }
mark:before { display: block; inset: 64% -.04em .04em; background: var(--mark); transform: rotate(-1deg); }
.wrap { max-width: 1168px; padding-inline: 24px; }
.rd-pad { padding-inline: var(--rd-space); }
.rd-kicker { display: block; margin-bottom: 20px; font: 500 13px/1.5 var(--sans); letter-spacing: .04em; }
.rd-dot { color: var(--teal); }
.rd-small { font: 14px/1.65 var(--sans); }
.rd-text-link, .rd-inline-link { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.rd-text-link { font: 500 16px/1.6 var(--sans); }
.rd-text-link:hover, .rd-inline-link:hover { text-decoration-color: var(--magenta); text-decoration-thickness: 2px; }
.rd-actions { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 30px; }
.rd-button, .btn { display: inline-flex; align-items: center; justify-content: center; gap: 20px; max-width: 100%; min-height: 48px; padding: 14px 24px; border: 1px solid var(--teal); border-radius: 100px; background: var(--teal); color: var(--paper); font: 500 15px/1.4 var(--sans); text-align: center; transition: background 160ms, transform 160ms; }
.rd-button:hover, .btn:hover { background: #143D39; }
.rd-button:active, .btn:active { transform: translateY(1px); }
.rd-button.pink, .btn.pink { background: var(--magenta); color: var(--ink); border-color: var(--magenta); }
.rd-button.pink:hover, .btn.pink:hover { background: var(--mark); border-color: var(--mark); }
.rd-button.cream, .btn.light { background: var(--paper); color: var(--teal); border-color: var(--paper); }
.rd-button.black { background: var(--teal); color: var(--paper); border-color: var(--teal); }
.rd-button.outline { background: transparent; color: inherit; border-color: currentColor; }
.rd-button.outline:hover { text-decoration: underline; text-underline-offset: 4px; }
.rd-button:disabled { cursor: not-allowed; opacity: .65; }

/* Shared navigation and footer. */
.header, body[data-page=about] .header, body[data-page=speaking] .header { background: var(--paper); color: var(--teal); border-bottom: 1px solid var(--line); }
.header-inner { max-width: 1168px; min-height: 88px; padding-inline: 24px; gap: 30px; }
.wordmark, .header .wordmark, footer .wordmark { font: 500 44px/1 var(--serif); letter-spacing: -.055em; }
.wordmark .brand-dot { display: inline-block; width: 3px; height: .72em; margin-left: 5px; background: var(--magenta); border-radius: 0; align-self: center; }
#nav { gap: 24px; font: 500 14px/1.4 var(--sans); }
#nav a { padding-block: 12px; }
#nav a[aria-current=page], body[data-page=about] #nav a[aria-current] { border-color: var(--magenta); }
.menu-toggle { color: var(--teal); border: 1px solid var(--teal); border-radius: 100px; padding: 8px 15px; min-height: 44px; }
footer { background: var(--teal); color: var(--paper); padding-block: 48px 24px; border: 0; }
footer .wrap { max-width: 1168px; padding-inline: 24px; }
footer .footer-top { grid-template-columns: .8fr 1fr 1fr 1.2fr; gap: 32px; }
footer .footer-top p { font: 26px/1.3 var(--serif); }
footer .footer-links { font: 14px/1.7 var(--sans); gap: 10px; }
footer .text-link { font: 14px/1.7 var(--sans); border-color: currentColor; }
footer .footer-bottom { color: var(--paper); border-color: #ECE9DF55; line-height: 1.6; }

/* Home: a personal introduction with a separate, original portrait. */
.rd-home-hero { display: grid; grid-template-columns: 1.2fr 1fr; gap: clamp(40px, 6vw, 88px); align-items: center; padding-block: 64px 72px; }
.rd-home-copy h1 { color: var(--teal); font-size: clamp(48px, 5.5vw, 76px); line-height: 1.08; }
.rd-home-copy > p { max-width: 530px; margin: 24px 0 0; font-size: 21px; line-height: 1.55; }
.rd-home-copy > .rd-home-promise { margin-top: 22px; font-size: 28px; font-style: italic; color: var(--teal); }
.rd-home-affiliation { display: inline-block; margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--line); font: 13px/1.65 var(--sans); text-decoration: underline; text-underline-offset: 4px; }
.rd-home-portrait { min-width: 0; }
.rd-home-photo { display: block; width: 100%; height: 490px; object-fit: cover; object-position: 52% 52%; border-radius: 22px; }
.rd-home-portrait figcaption { display: flex; justify-content: space-between; gap: 16px; padding-top: 16px; font: 12px/1.6 var(--sans); }
.rd-home-portrait figcaption a { white-space: nowrap; text-decoration: underline; text-underline-offset: 4px; }
.rd-home-speaking { background: var(--peach); }
.rd-home-speaking-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; padding-block: var(--rd-section); }
.rd-home-speaking-grid h2 { color: var(--teal); }
.rd-home-speaking-grid p { margin: 24px 0; max-width: 460px; font-size: 22px; }
.rd-speaking-preview img { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; object-position: 60% center; border-radius: 14px; }
.rd-speaking-preview figcaption { margin-top: 12px; font: 12px/1.6 var(--sans); }
.rd-section-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: end; margin-bottom: 36px; }
.rd-section-heading p { margin: 0 0 16px; max-width: 530px; }
.rd-section-heading h2 { color: var(--teal); }
.rd-mindstone-band, .rd-mindstone-programmes { padding-block: var(--rd-section); }
.rd-programmes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.rd-programme { display: flex; flex-direction: column; align-items: flex-start; padding: 28px; border: 1px solid var(--line); border-radius: 14px; background: var(--bright); }
.rd-programme .rd-kicker { margin-bottom: 24px; font-size: 12px; }
.rd-programme h3 { color: var(--teal); font-size: 30px; }
.rd-programme p { font-size: 19px; line-height: 1.55; margin: 20px 0 28px; }
.rd-programme .rd-text-link { margin-top: auto; font-size: 14px; }
.rd-programme-note { margin: 28px 0 0; }
.rd-mindstone-hero { background: var(--peach); padding-block: var(--rd-section); }
.rd-mindstone-hero h1 { color: var(--teal); }
.rd-mindstone-hero > p { max-width: 650px; font-size: 25px; margin: 28px 0; }
.rd-village-teaser { display: grid; grid-template-columns: 1.2fr .8fr; gap: 80px; align-items: center; padding-block: var(--rd-section); }
.rd-village-teaser h2 { color: var(--teal); }
.rd-village-teaser p { font-size: 23px; max-width: 480px; margin: 24px 0; }
.rd-guide-paper { width: 100%; max-width: 370px; justify-self: center; padding: 32px; background: var(--peach); color: var(--ink); border: 1px solid var(--line); border-radius: 14px; }
.rd-guide-paper > strong { display: block; font: 500 37px/1.12 var(--serif); color: var(--teal); letter-spacing: -.02em; }
.rd-guide-paper small { display: block; border-top: 1px solid var(--ink); margin-top: 28px; padding-top: 16px; font: 13px/1.6 var(--sans); }
.rd-guide-map { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; font: 12px/1.5 var(--sans); }
.rd-guide-map span { border: 1px solid var(--teal); border-radius: 100px; padding: 6px 10px; }
.rd-journal-band { display: grid; grid-template-columns: 1.3fr .7fr; gap: 72px; align-items: center; padding-block: var(--rd-section); background: var(--teal); color: var(--paper); }
.rd-journal-band h2 { font-size: clamp(38px, 4.5vw, 60px); }
.rd-journal-band p { font-size: 23px; margin: 24px 0 0; }
.rd-journal-band > div:last-child { display: grid; justify-items: start; gap: 24px; }

/* About and speaking retain Emma's existing biography, sessions and evidence. */
.rd-about-hero { display: grid; grid-template-columns: 1.1fr .9fr; gap: 80px; align-items: center; background: var(--peach); padding-block: 64px; }
.rd-about-intro h1 { color: var(--teal); }
.rd-about-intro > p { font-size: 28px; line-height: 1.45; margin: 28px 0; }
.rd-about-photo { display: block; width: 100%; height: 490px; object-fit: cover; object-position: center 35%; border-radius: 22px; }
.rd-biography { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; padding-block: var(--rd-section); }
.rd-biography h2 { color: var(--teal); }
.rd-biography p { font-size: 22px; }
.rd-about-cta { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding-block: 56px; border-top: 1px solid var(--line); }
.rd-about-cta h2 { color: var(--teal); }
.rd-about-cta .rd-button { flex-shrink: 0; }
.rd-speaking-hero { padding-block: 64px; background: var(--paper); color: var(--teal); }
.rd-speaking-hero > p { font-size: 27px; margin: 24px 0; }
.rd-speaking-photo { padding-inline: var(--rd-space); background: var(--paper); }
.rd-speaking-photo img { display: block; width: 100%; height: clamp(280px, 35vw, 460px); object-fit: cover; object-position: 55% 48%; border-radius: 14px; }
.rd-speaking-photo figcaption { padding-block: 12px 32px; font: 13px/1.5 var(--sans); }
.rd-session-section { background: var(--teal); color: var(--paper); padding-block: var(--rd-section); }
.rd-session-section > p { font-size: 23px; margin: 24px 0 40px; }
.rd-topic { padding: 0; border-top: 1px solid #ECE9DF66; }
.rd-topic:last-child { border-bottom: 1px solid #ECE9DF66; }
.rd-topic summary { display: grid; grid-template-columns: 38px 1fr 25px; gap: 20px; align-items: center; padding-block: 26px; }
.rd-topic summary:after { display: none; }
.rd-topic summary h3 { font-size: clamp(25px, 3vw, 38px); }
.rd-topic-number { font: 14px var(--sans); }
.rd-topic-toggle:after { content: '+'; font: 28px/1 var(--sans); }
.rd-topic[open] .rd-topic-toggle:after { content: '−'; }
.rd-topic-content { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 40px; padding: 8px 40px 32px 58px; }
.rd-topic-content h4 { font: 500 13px/1.5 var(--sans); margin-bottom: 12px; }
.rd-topic-content p { color: inherit; font-size: 20px; line-height: 1.55; margin: 0 0 16px; }
.rd-format { display: inline-block; padding: 5px 12px; border: 1px solid #ECE9DF66; border-radius: 100px; font: 12px/1.5 var(--sans); }
.rd-topic-detail, .rd-topic-content .rd-text-link { grid-column: 1/-1; }
.rd-topic-content .rd-text-link { justify-self: start; }
.rd-event-strip { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding-block: 40px; background: var(--peach); }
.rd-event-strip h2 { font-size: 36px; color: var(--teal); }
.rd-event-strip p { margin: 0; font: 14px/1.7 var(--sans); }
.rd-event-strip p span { margin-inline: 12px; }
.rd-evidence { padding-block: var(--rd-section); }
.rd-evidence > h2 { color: var(--teal); }
.rd-evidence .event-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.rd-evidence .event-gallery figure:first-child { grid-column: auto; }
.rd-evidence .event-photo { aspect-ratio: 3/2; }
.rd-evidence .poster-type { display: none; }
.rd-evidence .event-gallery img { filter: none; border-radius: 14px; }
.rd-evidence figcaption { font: 13px/1.6 var(--sans); }
.rd-event-film { margin-top: 36px; border-top: 1px solid var(--line); padding-top: 20px; }
.rd-event-film > summary { font: 16px/1.6 var(--sans); }
.rd-event-film .arrival-film { margin-top: 24px; }
.workshop-proof { padding-block: 64px; }
.workshop-proof .proof-heading h2 { font: 500 clamp(36px, 4vw, 52px)/1.15 var(--serif); }
.workshop-proof .workshop-quote blockquote { font-family: var(--serif); }
.rd-billboard { background: var(--paper); }
.rd-billboard > a { display: block; }
.rd-billboard img { width: 100%; height: auto; display: block; }
.rd-billboard-caption { display: flex; justify-content: space-between; gap: 24px; padding-block: 20px; font: 13px/1.6 var(--sans); }
.rd-green-cta { background: var(--teal); color: var(--paper); padding-block: var(--rd-section); }
.rd-green-cta h2 { max-width: 850px; margin-bottom: 28px; }
.rd-green-cta .rd-small { margin: 20px 0 0; }

/* Resources and the existing assessment entry point. */
.rd-resource-hero { display: grid; grid-template-columns: 1.2fr .8fr; gap: 64px; align-items: center; padding-block: 64px; }
.rd-resource-hero h1 { color: var(--teal); }
.rd-resource-hero p { font-size: 24px; margin: 24px 0 0; }
.rd-prompt-papers { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
.rd-prompt-papers span { border: 1px solid var(--line); padding: 22px 16px; background: var(--peach); border-radius: 8px; font: 500 25px var(--serif); color: var(--teal); }
.rd-prompt-papers span:nth-child(2) { background: var(--bright); }
.rd-assessment-feature { display: flex; align-items: center; justify-content: space-between; gap: 48px; background: var(--peach); padding-block: 56px; }
.rd-assessment-feature h2 { color: var(--teal); }
.rd-assessment-feature p { max-width: 580px; margin: 20px 0 0; font-size: 22px; }
.rd-assessment-feature .rd-small { font-size: 14px; }
.rd-assessment-feature .rd-button { flex-shrink: 0; }
.rd-resource-list { padding-block: 32px 56px; }
.rd-resource { display: flex; justify-content: space-between; align-items: center; gap: 40px; padding-block: 32px; border-bottom: 1px solid var(--line); }
.rd-category { font: 13px/1.5 var(--sans); color: var(--soft); }
.rd-resource h2 { margin: 12px 0; font-size: 33px; color: var(--teal); }
.rd-resource p { font-size: 21px; margin: 0; max-width: 700px; }
.rd-resource .rd-button { flex-shrink: 0; }
.rd-resource-list > .rd-small { margin: 24px 0 0; max-width: 750px; }
.rd-resource-village { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; padding-block: var(--rd-section); background: var(--teal); color: var(--paper); }
.rd-resource-village p { font-size: 24px; margin: 24px 0; }
.rd-map-preview { display: block; }
.rd-map-preview img { width: 100%; height: auto; border-radius: 14px; display: block; }
.rd-resource-end, .rd-village-close { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding-block: 56px; }
.rd-resource-end h2, .rd-village-close h2 { color: var(--teal); }

/* Village and newsletter use the same type and colour rhythm. */
.rd-village-hero { background: var(--peach); padding-block: 48px 64px; }
.rd-back { display: inline-block; margin-bottom: 32px; font: 14px/1.5 var(--sans); text-decoration: underline; text-underline-offset: 5px; }
.rd-village-hero h1 { color: var(--teal); }
.rd-village-intro { font-size: 27px; margin: 24px 0 36px; }
.rd-village-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 72px; align-items: center; }
.rd-village-grid > p { font-size: 27px; max-width: 580px; }
.rd-village-grid .rd-guide-paper { background: var(--paper); }
.rd-village-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; padding-block: var(--rd-section); }
.rd-village-steps h2 { color: var(--teal); }
.rd-village-steps p { font-size: 23px; max-width: 490px; margin-top: 24px; }
.rd-village-steps ol { list-style: none; padding: 0; margin: 0; counter-reset: steps; }
.rd-village-steps li { position: relative; padding: 20px 0 24px 46px; border-top: 1px solid var(--line); counter-increment: steps; }
.rd-village-steps li:before { content: '0' counter(steps); position: absolute; left: 0; top: 24px; font: 14px var(--sans); }
.rd-village-steps li strong, .rd-village-steps li span { display: block; }
.rd-village-steps li span { font-size: 20px; margin-top: 12px; }
.rd-village-signup { padding-block: var(--rd-section); background: var(--teal); color: var(--paper); }
.rd-village-signup > p { font-size: 24px; margin: 24px 0; }
.rd-signup-form { max-width: 900px; }
.rd-signup-form label { display: block; font: 14px/1.5 var(--sans); margin-bottom: 12px; }
.rd-signup-form > div { display: flex; gap: 12px; }
.rd-signup-form input { min-width: 0; flex: 1; border-radius: 8px; }
.rd-signup-form .rd-small { margin: 16px 0 0; }
.rd-journal-hero { position: relative; background: var(--teal); color: var(--paper); padding-block: var(--rd-section); }
.rd-journal-hero h1 { max-width: 800px; font-size: clamp(52px, 7vw, 92px); }
.rd-journal-hero > .rd-kicker { margin-top: 28px; }
.rd-journal-hero > p { max-width: 620px; font-size: 27px; }
.rd-lines { display: none; }
.rd-journal-thoughts { padding-top: 56px; }
.rd-boundary { font-size: clamp(38px, 5vw, 64px); color: var(--teal); }
.rd-journal-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; padding-block: 40px; }
.rd-journal-intro h3 { font: 500 34px/1.2 var(--serif); }
.rd-journal-intro p { font-size: 23px; }
.rd-journal-questions { padding-bottom: 56px; }
.rd-journal-questions ol { list-style: none; padding: 0; margin: 0; counter-reset: questions; }
.rd-journal-questions li { counter-increment: questions; padding-block: 20px; border-top: 1px solid var(--line); font-size: 27px; }
.rd-journal-questions li:before { content: '0' counter(questions); display: inline-block; width: 54px; font: 14px var(--sans); }
.rd-journal-close { padding-block: var(--rd-section); background: var(--peach); color: var(--teal); }
.rd-journal-close h2 { margin-bottom: 32px; }

/* Keep older, directly linked prototype views legible in the same brand. */
.bottom-cta, .block-peach { background: var(--peach); }
.bottom-cta h2, .page-hero h1 { font-size: clamp(42px, 5vw, 68px); }
.portrait { border-radius: 14px; filter: none; }
.eyebrow { display: block; font: 13px/1.5 var(--sans); }
.text-link { font: 16px/1.7 var(--sans); }

@media (max-width: 1000px) {
  .header-inner { min-height: 80px; flex-wrap: wrap; padding-block: 16px; gap: 0; }
  .header .wordmark { font-size: 40px; }
  .menu-toggle { display: block; margin-left: auto; font: 14px var(--sans); background: none; }
  .menu-toggle span { margin-left: 10px; }
  #nav { display: none; flex: 0 0 100%; margin: 20px 0 0; padding: 12px 0 4px; border-top: 1px solid var(--line); align-items: flex-start; gap: 2px; }
  #nav.open { display: flex; flex-direction: column; }
  #nav a { font-size: 16px; }
  .rd-home-hero, .rd-home-speaking-grid, .rd-about-hero, .rd-section-heading, .rd-journal-band, .rd-biography { gap: 40px; }
  .rd-home-hero { grid-template-columns: 1.1fr .9fr; }
  .rd-home-copy h1 { font-size: 56px; }
  .rd-home-photo { height: 450px; }
  .rd-home-portrait figcaption { flex-direction: column; gap: 4px; }
  .rd-programme { padding: 22px; }
  .rd-programme h3 { font-size: 27px; }
  .rd-event-strip { display: block; }
  .rd-event-strip p { margin-top: 20px; }
}
@media (max-width: 760px) {
  body { font-size: 19px; }
  .rd-home-hero, .rd-home-speaking-grid, .rd-about-hero, .rd-biography, .rd-section-heading, .rd-programmes, .rd-village-teaser, .rd-journal-band, .rd-resource-hero, .rd-resource-village, .rd-village-grid, .rd-village-steps, .rd-journal-intro { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .rd-home-hero { padding-block: 40px 48px; }
  .rd-home-copy h1 { font-size: clamp(46px, 10.5vw, 64px); }
  .rd-home-copy > .rd-home-promise { font-size: 25px; }
  .rd-home-copy > p { font-size: 20px; }
  .rd-home-photo { height: auto; aspect-ratio: 4/3; object-position: center 48%; }
  .rd-home-portrait figcaption { flex-direction: row; }
  .rd-home-speaking-grid { padding-block: 48px; }
  .rd-speaking-preview { order: 2; }
  .rd-home-speaking-grid p { font-size: 21px; }
  .rd-section-heading { gap: 24px; margin-bottom: 28px; }
  .rd-programmes { gap: 16px; }
  .rd-programme { padding: 28px; }
  .rd-programme .rd-kicker { margin-bottom: 16px; }
  .rd-programme h3 { font-size: 32px; }
  .rd-programme p { margin-block: 16px 24px; }
  .rd-about-hero, .rd-speaking-hero, .rd-resource-hero { padding-block: 40px; }
  .rd-about-photo { height: auto; aspect-ratio: 4/3; object-position: center 35%; }
  .rd-about-intro > p, .rd-mindstone-hero > p { font-size: 24px; }
  .rd-about-cta, .rd-assessment-feature, .rd-resource, .rd-resource-end, .rd-village-close { flex-direction: column; align-items: flex-start; gap: 28px; }
  .rd-about-cta { padding-block: 40px; }
  .rd-biography p { font-size: 21px; }
  .rd-topic summary { grid-template-columns: 26px 1fr 22px; gap: 12px; padding-block: 24px; }
  .rd-topic-content { grid-template-columns: minmax(0, 1fr); padding: 0 0 28px 38px; gap: 12px; }
  .rd-topic-content p { font-size: 19px; }
  .rd-topic-detail, .rd-topic-content .rd-text-link { grid-column: auto; }
  .rd-evidence .event-gallery { grid-template-columns: minmax(0, 1fr); }
  .rd-speaking-photo img { height: 280px; }
  .rd-billboard-caption { flex-direction: column; }
  .rd-resource-hero { gap: 28px; }
  .rd-prompt-papers { justify-content: flex-start; }
  .rd-resource h2 { font-size: 31px; }
  .rd-resource p, .rd-village-steps p { font-size: 21px; }
  .rd-resource-village { padding-block: 48px; }
  .rd-village-grid > p { font-size: 24px; margin-bottom: 0; }
  .rd-signup-form > div { flex-direction: column; }
  .rd-journal-intro h3 { font-size: 31px; }
  .rd-journal-intro p { font-size: 21px; }
  .rd-journal-questions li { font-size: 24px; }
  .rd-journal-questions li:before { width: 38px; }
  footer .footer-top { grid-template-columns: 1fr 1fr; gap: 32px 20px; }
  footer .footer-bottom { display: block; }
  footer .footer-bottom span { display: block; margin-bottom: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .rd-button, .btn { transition: none; }
}

/* Live sign-up, cohort and quick-links additions, 10 November 2026 */
.rd-substack { max-width: 480px; width: 100%; }
.rd-substack iframe { display: block; width: 100%; max-width: 480px; height: 320px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.rd-substack .rd-small { margin: 12px 0 0; font-size: 14px; }
.rd-cohort { display: grid; grid-template-columns: 1.2fr .8fr; gap: 72px; align-items: center; padding-block: var(--rd-section); background: var(--peach); }
.rd-cohort h2, .rd-cohort h1 { color: var(--teal); }
.rd-cohort h1 { font-size: clamp(36px, 4.1vw, 54px); }
.rd-cohort p { font-size: 22px; max-width: 520px; margin: 24px 0 0; }
.rd-cohort .rd-substack .rd-small { margin-top: 12px; font-size: 14px; }
.rd-village-signup .rd-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; }
.rd-village-signup .rd-text-link { color: var(--paper); }
.rd-village-more { margin: 56px 0 20px; font: 500 24px/1.3 var(--serif, Newsreader, Georgia, serif); }
.rd-resource-end .rd-substack { flex-shrink: 0; }
.rd-links { max-width: 640px; margin-inline: auto; padding-block: 56px 88px; text-align: center; }
.rd-links h1 { font-size: clamp(40px, 7vw, 64px); color: var(--teal); }
.rd-links-list { display: grid; gap: 14px; margin-top: 40px; }
.rd-links-list .rd-button { justify-content: center; width: 100%; }
@media (max-width: 900px) { .rd-cohort { grid-template-columns: minmax(0, 1fr); gap: 32px; } }

/* Motion, 10 November 2026. Follows the Gambit design system: restrained, 120–220ms
   ease-out, transform and opacity only. Off when the device asks for reduced motion
   or the footer Motion switch is off. */
:root { --ease-out: cubic-bezier(0.23, 1, 0.32, 1); }
@keyframes rd-caret { 50% { opacity: 0; } }
@keyframes rd-swipe { from { transform: rotate(-1deg) scaleX(0); } }
@keyframes rd-pop { from { opacity: 0; transform: scale(.97); } }
@keyframes rd-fade { from { opacity: 0; } }
@media (prefers-reduced-motion: no-preference) {
  html:not([data-motion=off]) .wordmark .brand-dot { animation: rd-caret 1.1s steps(1) infinite; }
  html:not([data-motion=off]) .rd-home-hero mark:before,
  html:not([data-motion=off]) .rd-links mark:before { transform-origin: left center; animation: rd-swipe 220ms var(--ease-out) 150ms backwards; }
  html:not([data-motion=off]) dialog[open] { animation: rd-pop 180ms var(--ease-out); }
  html:not([data-motion=off]) dialog[open]::backdrop { animation: rd-fade 180ms var(--ease-out); }
  html:not([data-motion=off]) .rd-topic[open] .rd-topic-content { animation: rd-fade 200ms var(--ease-out); }
  @supports (interpolate-size: allow-keywords) {
    html:not([data-motion=off]) { interpolate-size: allow-keywords; }
    html:not([data-motion=off]) .rd-topic::details-content { block-size: 0; overflow: clip; transition: block-size 200ms var(--ease-out), content-visibility 200ms allow-discrete; }
    html:not([data-motion=off]) .rd-topic[open]::details-content { block-size: auto; }
  }
}
/* Touch screens: a tapped button should not stay in its hover colour. */
@media (hover: none) {
  .rd-button:not(.pink):not(.cream):not(.outline):hover, .btn:not(.pink):not(.light):not(.outline):hover { background: var(--teal); }
  .rd-button.pink:hover, .btn.pink:hover { background: var(--magenta); border-color: var(--magenta); }
}

/* Speaking page: short bio and booking questions, 11 November 2026 */
.rd-speaking-bio { max-width: 660px; margin: 20px 0 28px; font-size: 20px; }
.rd-faq { padding-block: var(--rd-section); }
.rd-faq h2 { color: var(--teal); margin-bottom: 32px; }
.rd-faq dl { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 56px; }
.rd-faq dl > div { padding: 24px 0; border-top: 1px solid var(--line); }
.rd-faq dt { font: 500 22px/1.3 var(--serif); margin-bottom: 8px; }
.rd-faq dd { margin: 0; font-size: 18px; max-width: 60ch; }
@media (max-width: 800px) { .rd-faq dl { grid-template-columns: minmax(0, 1fr); } }
