/* Foundry treatment for the workshops, about, and playtest pages. */
.foundry-page {
  --fs-paper: #fbfaf6;
  --fs-ink: #24272a;
  --fs-muted: #555e61;
  --fs-line: #dedfd8;
  --fs-coral: #e77465;
  background: var(--fs-paper);
  color: var(--fs-ink);
  font-family: 'Foundry Geist', Geist, Arial, sans-serif;
}
.foundry-page main { background: var(--fs-paper); }
.foundry-page.sales-page main { padding-top: 0; }
.foundry-page.session-page main { padding-top: 0; }
.foundry-page :is(h1,h2,h3) { color: var(--fs-ink); text-wrap: balance; }
.foundry-page :is(p,li) { text-wrap: pretty; }
.foundry-page :is(a,button,input,textarea):focus-visible { outline: 3px solid var(--fs-coral); outline-offset: 3px; }
.foundry-page .sales-kicker,
.foundry-try .eyebrow { color: #a7483f; font-weight: 680; letter-spacing: .105em; }
.foundry-page .sales-button,
.foundry-try .btn.coral { background: var(--fs-coral); border-color: var(--fs-coral); color: var(--fs-ink) !important; border-radius: 7px; box-shadow: none; }
.foundry-page .sales-button:hover,
.foundry-try .btn.coral:hover { background: #f08b7c; transform: translateY(-2px); }
.foundry-page .sales-text-link { color: var(--fs-ink) !important; text-decoration-color: currentColor; }
.foundry-page .sales-section--line { border-color: var(--fs-line); }
.foundry-page .sales-cta { background: #f1e6d5; color: var(--fs-ink); border: 1px solid #e5d7c3; border-radius: 18px; padding: clamp(34px,5vw,66px); margin-bottom: 80px; }
.foundry-page .sales-cta :is(h2,p) { color: var(--fs-ink); }
.foundry-page .sales-cta .sales-button--light { background: var(--fs-ink); border-color: var(--fs-ink); color: #fffaf2 !important; }
.foundry-page .sales-cta .sales-button--light:hover { background: #3e4548; }

/* Workshops: a concise service opening followed by a dated event ticket. */
.foundry-workshops .sales-hero { padding-top: clamp(76px,9vw,128px); padding-bottom: clamp(65px,7vw,100px); }
.foundry-workshops .sales-hero--split { grid-template-columns: minmax(0,1.25fr) minmax(265px,.75fr); gap: clamp(36px,6vw,96px); }
.foundry-workshops .sales-hero h1 { font-size: clamp(3.5rem,6.1vw,6rem); max-width: 12ch; line-height: 1.02; letter-spacing: -.064em; }
.foundry-workshops .sales-lede { max-width: 57ch; }
.foundry-workshops .sales-workshop-aside { background: #f1e6d5; color: var(--fs-ink); border: 1px solid #e4d4bc; border-radius: 18px; box-shadow: 8px 9px 0 #e5ddcc; transform: rotate(1.5deg); }
.foundry-workshops .sales-workshop-aside :is(strong,p,a,span) { color: var(--fs-ink); }
.foundry-workshops .sales-workshop-aside strong { line-height: .92; }
.foundry-workshops .sales-section:has(#current-workshop-title) { background: #f4ead9; border: 1px solid #e4d8c5; border-radius: 17px; padding: clamp(28px,4vw,56px); display: grid; grid-template-columns: 96px minmax(0,1fr); gap: clamp(24px,4vw,54px); align-items: center; }
.foundry-workshops .sales-section:has(#current-workshop-title)::before { content: "SEP\A 29"; white-space: pre; display: grid; place-items: center; width: 96px; height: 104px; background: var(--fs-paper); border: 1px solid #d9c8ac; border-radius: 9px; color: var(--fs-ink); text-align: center; font-size: 1.7rem; font-weight: 680; line-height: 1.05; letter-spacing: -.05em; transform: rotate(-3deg); }
.foundry-workshops .sales-section:has(#current-workshop-title) .sales-section-head { margin: 0; }
.foundry-workshops #current-workshop-title { font-size: clamp(2.2rem,3.6vw,3.9rem); max-width: none; }
.foundry-workshops .sales-section:has(#current-workshop-title) .sales-text-link { margin-top: 20px; }
.foundry-workshops .sales-free-workshop { background: #fffefa; border-radius: 16px; border: 1px solid var(--fs-line); overflow: hidden; }
.foundry-workshops .sales-free-workshop-art { background: #edece3; color: var(--fs-ink); }
.foundry-workshops .sales-workshop-grid { gap: 14px; }
.foundry-workshops .sales-workshop-card { background: #fffefa; border: 1px solid var(--fs-line); border-radius: 15px; box-shadow: none; }
.foundry-workshops .sales-workshop-card--feature { background: #f3e9d7; border-color: #e4d5be; }
.foundry-workshops .sales-section--academy { background: #eeefe7; border: 1px solid #dfe2d6; border-radius: 18px; padding: clamp(32px,5vw,68px); }
.foundry-workshops .sales-academy-price { background: #fffefa; border-color: #dfe2d6; border-radius: 13px; }

/* About: let Rachel's actual portrait lead; turn the paths into an editorial index. */
.foundry-about .sales-hero { padding-top: clamp(70px,8vw,112px); padding-bottom: clamp(80px,8vw,115px); }
.foundry-about .sales-hero--split { gap: clamp(40px,6vw,100px); }
.foundry-about .sales-hero h1 { max-width: 13ch; font-size: clamp(3.3rem,5.6vw,5.9rem); line-height: 1.02; letter-spacing: -.06em; }
.foundry-about .about-portrait { background: #f0e6d7; border: 1px solid #e0d1bc; border-radius: 18px; transform: rotate(1deg); box-shadow: 9px 10px 0 #e8e1d3; }
.foundry-about .about-portrait:before { background: #e7746559; }
.foundry-about .about-portrait figcaption { border-radius: 7px; box-shadow: 0 6px 22px #34312c18; }
.foundry-about .about-story { grid-template-columns: minmax(0,.65fr) minmax(0,1fr); }
.foundry-about .about-story-copy { color: var(--fs-muted); }
.foundry-about .about-belief { background: #f4ead9; border: 1px solid #e5d8c6; border-radius: 17px; }
.foundry-about .about-belief p { color: #454d4c; }
.foundry-about .about-cards { display: block; border-top: 1px solid var(--fs-line); }
.foundry-about .about-card { min-height: 0; display: grid; grid-template-columns: minmax(120px,.6fr) minmax(170px,1fr) minmax(220px,1.5fr) auto; align-items: center; column-gap: 26px; padding: 26px 0; border: 0; border-bottom: 1px solid var(--fs-line); border-radius: 0; background: transparent; }
.foundry-about .about-card .sales-kicker { margin: 0 !important; }
.foundry-about .about-card h3 { margin: 0; font-size: clamp(1.4rem,2vw,2rem); }
.foundry-about .about-card p:not(.sales-kicker) { margin: 0; }
.foundry-about .about-card .sales-text-link { margin: 0; white-space: nowrap; }
.foundry-about .about-speaking { border-color: var(--fs-line); }

/* The game itself remains the first action, with feedback next to the play area. */
.foundry-try main { padding-bottom: 90px; }
.foundry-try .try-hero { padding-top: clamp(65px,8vw,110px); padding-bottom: 42px; }
.foundry-try .try-hero h1 { max-width: 14ch; font-size: clamp(3.3rem,6.5vw,6.4rem); line-height: 1.02; letter-spacing: -.063em; }
.foundry-try .try-hero .lead { max-width: 60ch; color: var(--fs-muted); }
.foundry-try .try-game { padding-bottom: clamp(42px,5vw,70px); }
.foundry-try .try-game .card { background: #fffefa; border-color: var(--fs-line); border-radius: 18px; gap: clamp(25px,3.5vw,52px); padding: clamp(19px,3vw,37px); box-shadow: 5px 6px 0 #e9e6dc; }
.foundry-try .try-game .stage { border-radius: 10px; }
.foundry-try .try-game h2 { font-size: clamp(2rem,3.5vw,3.4rem); font-weight: 680; letter-spacing: -.055em; }
.foundry-try .try-game .desc { color: var(--fs-muted); }
.foundry-try .try-game .controls { background: #f3eadb; border-radius: 9px; }
.foundry-try .try-feedback { border-color: var(--fs-line); }
.foundry-try .try-feedback h3 { font-weight: 660; letter-spacing: -.04em; }
.foundry-try .try-feedback :is(textarea,input[type=email],input[type=text]) { border-radius: 7px; background: #fbfaf6; }
.foundry-try .try-feedback .chips span { border-radius: 7px; }
.foundry-try .try-feedback .thanks { border-radius: 9px; background: #f3eadb; }
.foundry-try .webinar-invite { border-color: var(--fs-line); }
.foundry-try .try-next { border-color: var(--fs-line); }
@media (max-width: 900px) {
  .foundry-about .about-card { grid-template-columns: minmax(130px,.6fr) 1fr; gap: 10px 24px; }
  .foundry-about .about-card p:not(.sales-kicker) { grid-column: 2; }
  .foundry-about .about-card .sales-text-link { grid-column: 2; }
  .foundry-workshops .sales-hero--split { gap: 35px; }
}
@media (max-width: 700px) {
  .foundry-page .sales-cta { margin-bottom: 48px; }
  .foundry-workshops .sales-hero--split,
  .foundry-about .sales-hero--split,
  .foundry-about .about-story { grid-template-columns: 1fr; }
  .foundry-workshops .sales-section:has(#current-workshop-title) { grid-template-columns: 1fr; gap: 20px; }
  .foundry-workshops .sales-section:has(#current-workshop-title)::before { width: 76px; height: 85px; font-size: 1.4rem; }
  .foundry-workshops .sales-workshop-aside { transform: none; box-shadow: none; }
  .foundry-about .about-portrait { transform: none; box-shadow: none; }
  .foundry-about .about-card { grid-template-columns: 1fr; gap: 7px; padding: 24px 0; }
  .foundry-about .about-card p:not(.sales-kicker),
  .foundry-about .about-card .sales-text-link { grid-column: auto; }
  .foundry-about .about-card .sales-text-link { margin-top: 8px; }
  .foundry-try .try-game .card { box-shadow: none; }
}
