/* FTC content styles. Shared colors, typography and navigation live in site.css. */
.ftc-page #main section[id] { scroll-margin-top: 24px; }
.ftc-page main p { font-size: var(--text-body); line-height: 1.9; }
.ftc-page h2 { margin: 0 0 22px; font-size: clamp(2rem, 3.8vw, 3rem); line-height: 1.45; letter-spacing: -.035em; }
.ftc-page h3 { margin: 0 0 14px; font-size: 1.625rem; line-height: 1.5; }
.ftc-page .section-heading { max-width: 900px; }
.ftc-page .ftc-kicker { margin: 0 0 18px; color: var(--orange-dark); font-size: var(--text-meta); font-weight: 900; letter-spacing: .1em; }
.ftc-page .ftc-small-note { margin-top: 18px; color: var(--muted); font-size: var(--text-small); line-height: 1.85; }
.ftc-page .ftc-source { margin: 24px 0 0; color: var(--muted); font-size: var(--text-meta); }
.ftc-page .ftc-photo-caption { margin: 12px 0 0; color: var(--muted); font-size: var(--text-meta); line-height: 1.7; }

.ftc-page .ftc-hero { overflow: hidden; padding: 56px 0 64px; color: var(--ink); background: var(--paper); }
.ftc-page .ftc-hero .container { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; }
.ftc-page .ftc-hero h1 { margin: 0 0 24px; font-size: clamp(2.25rem, 4.25vw, 3.5rem); line-height: 1.4; letter-spacing: -.045em; }
.ftc-page .ftc-hero h1 > span { display: block; }
.ftc-page .ftc-hero h1 .accent { position: relative; isolation: isolate; width: fit-content; color: var(--orange-dark); }
.ftc-page .ftc-hero h1 .accent::after { content: ""; position: absolute; z-index: -1; left: 0; right: 8px; bottom: 3px; height: 13px; background: var(--yellow); transform: rotate(-1deg); }
.ftc-page .ftc-hero p { color: var(--muted); }
.ftc-page .ftc-hero .eyebrow { color: var(--ink); font-size: var(--text-small); }
.ftc-page .ftc-hero .ftc-visit-hint { max-width: none; margin: 24px 0 0; padding-top: 18px; border-top: 1px solid var(--line); color: var(--ink); font-size: var(--text-small); font-weight: 750; }
.ftc-page .ftc-quick-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 18px 0 0; padding: 0; list-style: none; }
.ftc-page .ftc-quick-facts li { padding: 10px 12px; border: 1px solid var(--line); background: white; color: var(--muted); font-size: var(--text-meta); line-height: 1.55; }
.ftc-page .ftc-quick-facts strong { display: block; margin-bottom: 2px; color: var(--ink); font-size: var(--text-small); }
@media (max-width: 680px) { .ftc-page .ftc-quick-facts { grid-template-columns: 1fr; } }
.ftc-hero-media { position: relative; isolation: isolate; margin: 0 10px; border: 7px solid white; box-shadow: 0 14px 34px #102a4314; transform: rotate(2deg); }
.ftc-hero-media::before { content: ""; position: absolute; z-index: -1; inset: -24px 24px 24px -24px; border: 4px solid var(--yellow); transform: rotate(-4deg); }
.ftc-page .ftc-hero-media img { height: auto; aspect-ratio: 4 / 3; object-position: 63% center; border-radius: 0; }
.ftc-hero-media figcaption { padding: 11px 14px; color: white; background: var(--ink); font-size: var(--text-small); font-weight: 800; line-height: 1.5; }

.ftc-page .ftc-watch-layout { display: grid; gap: 32px; }
.ftc-page .ftc-reading-grid { grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr); gap: 32px 72px; }
.ftc-page .ftc-reading-grid > .section-heading { top: 110px; }
.ftc-page .ftc-watch-list li { grid-template-columns: 44px minmax(0, 1fr); gap: 18px; padding: 26px 0 30px; }
.ftc-page .ftc-watch-list li > span { padding-top: 2px; font-size: 28px; font-weight: 850; }
.ftc-page .ftc-watch-list h3 { font-size: 1.625rem; line-height: 1.5; }
.ftc-page .ftc-watch-list p + p { margin-top: 14px; }
.ftc-page .ftc-watch-tip { margin: 0; padding: 22px 26px; border-left: 3px solid var(--teal); color: var(--ink); background: var(--paper); }
.ftc-page .ftc-watch-layout > .ftc-source { margin: 0; }

.ftc-page .ftc-more-layout, .ftc-page .ftc-topic-grid, .ftc-page .ftc-culture-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; }
.ftc-page .ftc-more::before { content: none; }
.ftc-page .more-than-wordmark { margin: 0 0 18px; color: #c0dbdc; font-size: var(--text-meta); font-weight: 900; letter-spacing: .1em; }
.ftc-page .ftc-more h2 span { color: var(--yellow); }
.ftc-page .ftc-more p:not(.more-than-wordmark) { color: #d3dfe7; }
.ftc-page .ftc-more-summary { margin: 0; padding: 26px 0; border-color: #728597; font-size: var(--text-body); font-weight: 500; }
.ftc-page .ftc-explanation { padding: 26px 0 0; border-top: 2px solid var(--ink); }
.ftc-page .ftc-explanation h3 { font-size: 1.625rem; line-height: 1.5; }
.ftc-page .ftc-cycle { margin-top: 48px; }
.ftc-page .ftc-cycle li { font-size: var(--text-body); }
.ftc-page .ftc-cycle li::before { font-size: var(--text-meta); }
.ftc-page #teamwork { background: var(--sand); }
.ftc-page .ftc-activity-list { margin: 28px 0 0; padding: 0; list-style: none; }
.ftc-page .ftc-activity-list li { padding: 22px 0; border-top: 1px solid #c9bdab; }
.ftc-page .ftc-activity-list h3 { margin-bottom: 10px; color: var(--orange-dark); font-size: 1.25rem; }
.ftc-page .ftc-activity-list p { margin: 0; color: var(--muted); }
.ftc-page .ftc-parent-note, .ftc-page .ftc-source-details { margin-top: 32px; border-top: 1px solid #aebfb8; border-bottom: 1px solid #aebfb8; }
.ftc-page .ftc-parent-note summary, .ftc-page .ftc-source-details summary { padding: 20px 0; font-size: var(--text-body); font-weight: 800; line-height: 1.7; cursor: pointer; }
.ftc-page .ftc-details-body { max-width: 900px; padding: 0 0 24px; }
.ftc-page .ftc-details-body h3 { margin: 24px 0 10px; font-size: 1.25rem; }
.ftc-page .ftc-details-body p { margin: 12px 0; }
.ftc-page .ftc-reference-list { margin: 8px 0; padding-left: 24px; }
.ftc-page .ftc-reference-list li + li { margin-top: 14px; }
.ftc-page .ftc-culture { background: var(--teal-deep); }
.ftc-page .ftc-culture .ftc-kicker { color: #c9ece8; }
.ftc-page .ftc-culture p, .ftc-page .ftc-terms dd { color: #d1e8e7; }
.ftc-page .ftc-terms dt { font-size: clamp(1.5rem, 2.4vw, 1.875rem); }
.ftc-page .ftc-question-list { margin: 24px 0 0; padding: 0; list-style: none; }
.ftc-page .ftc-question-list li { margin-top: 14px; padding: 14px 18px; border: 1px solid var(--line); font-size: var(--text-body); font-weight: 750; line-height: 1.7; }

.ftc-page #previous-ftc { background: var(--sage); }
.ftc-page #previous-ftc .split { gap: 64px; }
.ftc-page #previous-ftc .split-copy .ftc-small-note { font-size: var(--text-small); }
.ftc-page #previous-ftc .split-copy .ftc-source { font-size: var(--text-meta); }
.ftc-page .ftc-previous-results { display: flex; flex-wrap: wrap; gap: 24px 48px; margin: 28px 0; padding: 22px 0; border-top: 1px solid #aebfb8; border-bottom: 1px solid #aebfb8; }
.ftc-page .ftc-previous-results dt { font-size: var(--text-small); color: var(--muted); }
.ftc-page .ftc-previous-results dd { margin: 6px 0 0; font-size: var(--text-body); }
.ftc-page .ftc-previous-results strong { margin-right: 5px; font-size: 2rem; line-height: 1.3; }
.ftc-page #previous-ftc .split-media img { min-height: 0; height: auto; aspect-ratio: 16 / 9; object-fit: contain; border: 7px solid white; border-radius: 0; }
.ftc-page .ftc-event { background: var(--white); }
.ftc-page .ftc-event-info { margin: 22px 0; }
.ftc-page .ftc-event-info > div { display: grid; grid-template-columns: 4.5em minmax(0, 1fr); gap: 12px 18px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.ftc-page .ftc-event-info dt { font-weight: 750; }
.ftc-page .ftc-event-info dd { margin: 0; }
.ftc-page .ftc-event-info small { display: block; margin-top: 4px; color: var(--muted); font-size: var(--text-meta); }
.ftc-page .ftc-start-next { margin-top: 40px; padding: 28px; border: 1px solid var(--line); background: var(--paper); }
.ftc-page .ftc-start-next h3 { font-size: 1.25rem; }
.ftc-page .ftc-start-next p { color: var(--muted); }
.ftc-page .ftc-start-next .button-row { align-items: center; }
.ftc-page .ftc-start-next .button-row > a:not(.button) { font-size: var(--text-small); text-underline-offset: 4px; }

@media (min-width: 981px) and (max-width: 1150px) {
  .ftc-page .ftc-hero .button { gap: 9px; padding-inline: 18px; }
}
@media (max-width: 980px) {
  .ftc-page .ftc-hero .container, .ftc-page .ftc-reading-grid, .ftc-page .ftc-more-layout, .ftc-page .ftc-topic-grid, .ftc-page .ftc-culture-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .ftc-page .ftc-reading-grid > .section-heading { position: static; }
  .ftc-page .ftc-hero h1 { font-size: clamp(2.5rem, 7vw, 4rem); }
  .ftc-page .ftc-hero-media { width: min(calc(100% - 20px), 680px); justify-self: center; margin-top: 12px; }
  .ftc-page .ftc-hero-media img { aspect-ratio: 3 / 2; }
  .ftc-page #previous-ftc .split { grid-template-columns: minmax(0, 1fr); gap: 32px; }
}
@media (max-width: 680px) {
  .ftc-page .ftc-hero { padding: 30px 0 48px; }
  .ftc-page .ftc-hero .container { row-gap: 0; }
  .ftc-page .ftc-hero .container > div { display: contents; }
  .ftc-page .ftc-hero .eyebrow { order: 0; }
  .ftc-page .ftc-hero h1 { order: 1; }
  .ftc-page .ftc-hero-media { order: 2; margin: 8px 10px 32px; }
  .ftc-page .ftc-hero .container > div > p:not(.eyebrow, .ftc-visit-hint) { order: 3; margin: 0 0 18px; }
  .ftc-page .ftc-hero .button-row { order: 4; margin-top: 8px; }
  .ftc-page .ftc-hero .ftc-visit-hint { order: 5; }
  .ftc-page .ftc-hero .ftc-quick-facts { order: 6; margin-top: 14px; }
  .ftc-page .ftc-hero h1 { font-size: clamp(1.75rem, 8.7vw, 3rem); line-height: 1.5; }
  .ftc-page .ftc-hero h1 .accent::after { height: 10px; bottom: 5px; }
  .ftc-page .ftc-hero .eyebrow { font-size: var(--text-meta); }
  .ftc-page h2 { font-size: clamp(1.75rem, 7.5vw, 2.375rem); margin-bottom: 16px; }
  .ftc-page h3, .ftc-page .ftc-watch-list h3, .ftc-page .ftc-explanation h3 { font-size: 1.5rem; }
  .ftc-page .ftc-kicker { margin-bottom: 14px; }
  .ftc-page .button-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 9px; }
  .ftc-page .button { padding: 14px 18px; min-height: 48px; }
  .ftc-hero-media { border-width: 5px; }
  .ftc-hero-media::before { inset: -14px 16px 16px -14px; border-width: 3px; }
  .ftc-hero-media figcaption { padding: 9px 10px; font-size: var(--text-meta); }
  .ftc-page .ftc-watch-list li { grid-template-columns: 32px minmax(0, 1fr); gap: 12px; padding: 22px 0; }
  .ftc-page .ftc-watch-list li > span { font-size: 24px; }
  .ftc-page .ftc-watch-tip { padding: 20px; }
  .ftc-page .ftc-event-info > div { grid-template-columns: 1fr; gap: 6px; }
  .ftc-page .ftc-start-next { padding: 24px 22px; }
  .ftc-page .ftc-activity-list h3, .ftc-page .ftc-details-body h3, .ftc-page .ftc-start-next h3 { font-size: 1.25rem; }
}
