/* Shared resource pages, wallet shortlist and footer. */
/* Keep the cycle readable before two comfortable columns actually fit. */
.cycle-experience { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.cycle-visual, .cycle-experience .process, .cycle-experience .process-step { min-width: 0; }
.cycle-orbit { aspect-ratio: 1; }
.cycle-link-name { display: none; }
.cycle-paths { position: absolute; inset: 0; display: block; }
.cycle-experience .process-step { scroll-margin-top: calc(var(--header-h) + 1rem); }
@media (min-width: 901px) and (min-height: 601px) {
  .cycle-orbit { width: min(100%, 24rem, max(10rem, calc(100svh - 32rem))); }
}
@media (max-width: 900px), (max-height: 600px) {
  .how-section .split-intro { grid-template-columns: minmax(0, 1fr); gap: 1.2rem; margin-bottom: 2rem; }
  .how-section .split-intro h2 { font-size: clamp(2rem, 6vw, 3.3rem); max-width: 22ch; }
  .how-section .split-intro h2 br { display: none; }
  .how-section .split-intro > p { max-width: 65ch; margin-bottom: 0; }
  .cycle-experience { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .cycle-visual { position: relative; top: auto; padding: clamp(1rem, 3vw, 1.5rem); }
  .cycle-topline { flex-direction: row; flex-wrap: wrap; gap: .35rem 1rem; }
  .cycle-orbit { width: min(100%, 16rem); margin: .7rem auto; }
  .cycle-center > span { font-size: clamp(2rem, 7vw, 3rem); }
  .cycle-center small, .cycle-traveler { display: none; }
  .cycle-visual figcaption strong { font-size: 1.1rem; }
  .cycle-visual figcaption p { min-height: 0; line-height: 1.7; }
  .cycle-navigation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem; margin-top: 1rem; }
  .cycle-navigation a { flex: 1 1 5.5rem; min-height: 44px; width: auto; height: auto; padding: .45rem .5rem; border: 1px solid var(--control-line); border-radius: .5rem; font-size: .72rem; color: var(--ink); }
  .cycle-navigation a { display: flex; justify-content: center; gap: .4rem; }
  .cycle-link-name { display: inline; }
  .cycle-experience .process { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 2rem; margin: 0; }
  .cycle-experience .process-step { min-height: 0; padding: 1.5rem 0; grid-template-columns: 1.7rem minmax(0, 1fr); gap: .5rem .6rem; align-content: start; }
  .cycle-experience .process-step h3 { font-size: 1.45rem; }
  .cycle-experience .process-step p { font-size: .94rem; line-height: 1.8; margin: 0; max-width: 60ch; }
  .how-section .context-note { text-align: left; line-height: 1.8; }
  .cycle-read-more { justify-content: flex-start; gap: .4rem 1.5rem; }
}
@media (min-width: 600px) and (max-width: 900px), (min-width: 600px) and (max-height: 600px) {
  .cycle-visual { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: .5rem 1.5rem; }
  .cycle-topline { grid-column: 1 / -1; }
  .cycle-orbit { grid-column: 1; grid-row: 2 / 4; margin-block: .5rem; }
  .cycle-visual figcaption { grid-column: 2; align-self: end; }
  .cycle-navigation { grid-column: 2; align-self: start; margin-top: .5rem; }
  .cycle-experience .process { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cycle-experience .process-step { border-bottom: 1px solid var(--line); }
}
@media (max-width: 599px) {
  .cycle-orbit { width: clamp(10rem, 46vw, 13rem); }
  .cycle-visual figcaption strong { font-size: 1rem; }
}
/* Controls follow their actual surface, including panels that stay dark. */
:root { --control-line: #7a8794; --control-hover: #e2e7ec; --accent: #99421e; --ink-soft: #526071; }
h1 { color: var(--ink); }
.signal-icon { color: var(--accent); }
html[data-theme="dark"] { --control-line: #70849b; --control-hover: #1b2c40; }
.marquee-section, .waitlist-section, .bitcoin-market {
  color-scheme: dark;
  --ink: #f6f2ea; --ink-soft: #b8c5d3; --muted-dark: #b8c5d3;
  --accent: #f2b27f; --blue: #8bb8ff;
  --control-line: #8193a8; --control-hover: #223346;
}
.section-dark .kicker { color: var(--accent); }
.button-outline, .icon-button, .motion-toggle, .model-toggle,
.reader-theme, .footer-motion, .example-turns button,
.news-pagination button { border-color: var(--control-line); }
.button-outline:hover, .icon-button:hover, .motion-toggle:hover,
.reader-theme:hover { color: var(--ink); background-color: var(--control-hover); border-color: var(--accent); }
.motion-toggle[aria-pressed="true"] { color: var(--accent); border-color: var(--accent); background-color: var(--control-hover); }
.marquee-copy .text-link, .marquee-copy .text-link span { color: var(--accent); }
.marquee-copy .principle-list { color: var(--ink-soft); }
.waitlist-section .form-note a { color: var(--accent); }
.waitlist-section .form-status { color: #b7dbc9; }
html .waitlist-section .form-status.error { color: #ffb5a9; }
.waitlist-section .email-field input { border-color: var(--control-line); }
.waitlist-section .email-field input:focus { border-color: var(--blue); }
.waitlist-section .email-field input[aria-invalid="true"] { border-color: #ffb5a9; }
.waitlist-section .email-field input::placeholder { color: #b3c0d0; }
.waitlist-section .email-field svg { color: #b3c0d0; }
.market-context .news-filters button[aria-pressed="true"] { border-color: var(--accent); }
.market-context .news-filters button:hover { color: var(--ink); background-color: var(--control-hover); }
.news-pagination button:disabled { opacity: 1; color: var(--ink-soft); border-style: dashed; cursor: not-allowed; }
html[data-theme="light"] .model-toggle, html[data-theme="light"] .example-turns button { border-color: var(--control-line); }
html[data-theme="light"] .site-header.scrolled .icon-button { border-color: var(--control-line); }
.resource-footer .footer-motion { border-color: var(--control-line); }
html { scroll-padding-top: calc(var(--header-h) + 1.5rem); }
main section[id] { scroll-margin-top: 0; }
.site-nav { gap: clamp(1rem, 1.7vw, 1.7rem); font-size: .85rem; }
.provider-section { padding-block: 5rem 3.25rem; border-block: 1px solid var(--line-dark); background: #091320; }
.provider-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: end; }
.provider-intro h2 { font-size: clamp(2.5rem, 4.5vw, 4.5rem); line-height: 1.03; letter-spacing: -.055em; margin: 0; }
.provider-intro h2 em { font-family: Georgia, serif; font-weight: 400; color: #dda365; }
.provider-intro p:not(.kicker) { max-width: 31rem; color: #aebac8; line-height: 1.8; }
.provider-controls { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 2.7rem; color: #9bafc3; font-size: .7rem; }
.provider-controls .motion-toggle { min-height: 44px; }
.provider-marquee { overflow: hidden; margin: 1rem 0 1.5rem; mask-image: linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); }
.provider-track { display: flex; width: max-content; animation: provider-drift 42s linear infinite; animation-play-state: var(--provider-play, paused); }
.provider-track ul { display: flex; list-style: none; gap: 1rem; padding: 0 1rem 0 0; margin: 0; }
.provider-track li { width: 265px; }
.provider-chip { display: flex; align-items: center; gap: .85rem; width: 100%; min-height: 86px; padding: 1rem 1.1rem; border: 1px solid #8298b125; border-radius: 14px; background: linear-gradient(120deg,#71849a15,#20385212); color: #e3e9ef; transition: border-color .2s,background .2s; text-decoration: none; }
.provider-chip:hover { border-color: #a7bed26b; background-color: #647e9920; }
.provider-chip strong { display: block; font-size: .96rem; font-weight: 650; }
.provider-chip small { display: block; margin-top: .3rem; font-size: .62rem; color: #a5b6c6; line-height: 1.4; }
.provider-icon { width: 42px; height: 42px; flex: 0 0 42px; display: grid; place-items: center; background: #f2f4f7; border-radius: 11px; }
.provider-icon img { object-fit: contain; width: 28px; height: 28px; }
.provider-arrow { margin-left: auto; font-size: .9rem; color: #899fb5; }
.provider-disclosure { font-size: .72rem; line-height: 1.8; color: #92a5b9; }
.provider-marquee:hover .provider-track,.provider-marquee:focus-within .provider-track,html[data-motion="paused"] .provider-track { animation-play-state: paused; }
@keyframes provider-drift { to { transform: translateX(-50%); } }
.resource-footer { background: #07101b; color: #ecf0f5; padding-top: 1.5rem; }
.resource-footer .footer-breadcrumbs { display: flex; gap: .7rem; align-items: center; min-height: 44px; font-size: .7rem; color: #9db0c4; padding-bottom: 1rem; }
.footer-heading { display: flex; justify-content: space-between; align-items: center; gap: 2rem; padding: 1.5rem 0 2.5rem; border-top: 1px solid #b0c5df20; }
.footer-heading p { color: #acbbc9; font-size: .84rem; margin: 0; }
.footer-columns { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 2rem; padding-bottom: 2.5rem; }
.resource-footer h2 { font-size: .72rem; font-family: inherit; text-transform: uppercase; letter-spacing: .1em; font-weight: 600; color: #a7bacd; margin-bottom: 1rem; }
.footer-columns nav { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.footer-columns nav a,.footer-breadcrumbs a { display: inline-flex; align-items: center; min-height: 44px; font-size: .8rem; color: #d2dce6; }
.resource-footer nav a::after { display: none; }
.footer-providers { border-top: 1px solid #b0c5df20; padding-top: 2rem; }
.footer-providers ul,.provider-directory { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; list-style: none; margin: 0 0 1rem; padding: 0; }
.footer-providers .provider-chip { min-height: 78px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 2rem; border-top: 1px solid #b0c5df20; padding-top: 1.5rem; margin-top: 2rem; color: #8ea2b7; font-size: .7rem; line-height: 1.8; }
.footer-bottom p:first-child { max-width: 44rem; }
.resource-header { display: flex; justify-content: space-between; align-items: center; min-height: var(--header-h); gap: 1rem; }
.resource-back { font-size: .78rem; min-height: 44px; display: inline-flex; align-items: center; gap: .4rem; }
.resource-content { max-width: 920px; padding-top: calc(var(--header-h) + 4rem); padding-bottom: 5rem; }
.resource-content h1 { font-size: clamp(2.8rem,7vw,5rem); line-height: 1.07; max-width: 100%; }
.resource-content section { margin-top: 2.75rem; }
.resource-content section h2 { font-size: 1.5rem; margin-bottom: 1rem; }
.resource-content p,.resource-content li { font-size: .98rem; line-height: 1.9; color: #b4c1ce; }
.resource-content a:not(.provider-chip):not(.button) { color: #efb77d; text-decoration: underline; text-underline-offset: .2em; }
.resource-content .policy-status { padding: 1rem 1.3rem; border-left: 2px solid #cc975f; background: #b3977010; font-size: .82rem; }
.document-toc { display: flex; flex-wrap: wrap; gap: .4rem 1.5rem; margin: 1.5rem 0; }
.document-toc a { display: inline-flex; align-items: center; min-height: 44px; }
.table-scroll { overflow-x: auto; }
.resource-content table { width: 100%; border-collapse: collapse; font-size: .82rem; color: #c8d4df; }
.resource-content th,.resource-content td { text-align: left; padding: .8rem; border: 1px solid #7890a944; }
.provider-directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
html[data-theme="light"] .provider-section { background: #ede9e1; color: #162536; border-color: #263e5525; }
html[data-theme="light"] .provider-intro p:not(.kicker),html[data-theme="light"] .provider-controls,html[data-theme="light"] .provider-disclosure { color: #546678; }
html[data-theme="light"] .provider-intro h2 em { color: #805223; }
html[data-theme="light"] .provider-chip { background: #ffffffb0; border-color: #24415d30; color: #182f45; }
html[data-theme="light"] .provider-chip small { color: #465c70; }
html[data-theme="light"] .resource-footer { background: #e8e4dc; color: #142637; }
html[data-theme="light"] .resource-footer h2,html[data-theme="light"] .footer-heading p,html[data-theme="light"] .footer-bottom,html[data-theme="light"] .resource-footer .footer-breadcrumbs { color: #4c6175; }
html[data-theme="light"] .footer-columns nav a,html[data-theme="light"] .footer-breadcrumbs a { color: #263d52; }
html[data-theme="light"] .resource-content p,html[data-theme="light"] .resource-content li,html[data-theme="light"] .resource-content table { color: #3d5266; }
html[data-theme="light"] .resource-content a:not(.provider-chip):not(.button) { color: #825020; }
@media (max-width: 1050px) and (min-width: 821px) { .nav-wrap { gap: 1rem; }.nav-cta { display: none; }.site-nav { gap: 1rem; font-size: .8rem; } }
@media (max-width: 700px) {
 .provider-section { padding-block: 3.5rem 2.5rem; }.provider-intro { grid-template-columns: 1fr; gap: 1rem; }.provider-intro h2 { font-size: 2.9rem; }.provider-controls { margin-top: 1.3rem; }.provider-controls>span { max-width: 12rem; line-height: 1.6; }
 .footer-heading { align-items: flex-start; flex-direction: column; gap: 1rem; }.footer-columns { grid-template-columns: 1fr 1fr; gap: 2rem 1rem; }.footer-columns>div:last-child { grid-column: 1 / -1; }.footer-providers ul { grid-template-columns: repeat(2,minmax(0,1fr)); }.footer-providers .provider-chip { flex-wrap: wrap; gap: .5rem; padding: .8rem; }.footer-providers .provider-arrow { display: none; }.footer-providers .provider-icon { width: 32px; height: 32px; flex-basis: 32px; }.footer-providers .provider-icon img { width: 22px; height: 22px; }.footer-providers .provider-chip strong { font-size: .83rem; }.footer-bottom { flex-direction: column; gap: .3rem; }
 .resource-header .brand { font-size: 1.15rem; }.resource-header .brand-symbol { width: 2rem; height: 2rem; }.resource-back { font-size: .7rem; }.resource-content { padding-top: calc(var(--header-h) + 2.5rem); }.provider-directory { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .provider-track { animation: none; width: auto; }.provider-track ul { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); padding: 0; width: 100%; }.provider-track li { width: auto; }.provider-track ul[aria-hidden="true"] { display: none; }.provider-marquee { margin-inline: auto; width: var(--shell); mask-image: none; } }
@media (prefers-reduced-motion: reduce) and (max-width: 700px) { .provider-track ul { grid-template-columns: 1fr; } }
@media (forced-colors: active) { .provider-chip { border: 1px solid LinkText; }.provider-marquee { mask-image: none; }.provider-track { animation: none; } }

.provider-section.is-provider-visible { --provider-play: running; }
.resource-page { background: #091320; }
.resource-page .site-header.scrolled { background: #091320f2; }
html[data-theme="light"] .resource-page { background: #f5f1e8; }
html[data-theme="light"] .resource-page .site-header.scrolled { background: #f5f1e8f2; }
@media (max-width: 700px) { .footer-providers .provider-chip { height: 100%; min-height: 135px; flex-direction: column; align-items: flex-start; flex-wrap: nowrap; } }

/* Standalone provider marks: invisible link targets retain accessible names. */
.provider-chip,
.footer-providers .provider-chip,
html[data-theme="light"] .provider-chip { position: relative; justify-content: center; align-items: center; flex-direction: row; width: 100%; min-height: 72px; height: auto; padding: 12px; border: 0; border-radius: 0; background: none; box-shadow: none; color: #e3e9ef; }
.provider-chip:hover { background: none; }
.provider-chip:focus-visible { outline: 2px solid currentColor; outline-offset: -4px; }
html[data-theme="light"] .provider-chip { color: #182f45; }
.provider-chip > span:not(.provider-icon):not(.provider-arrow) { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.provider-chip .provider-arrow { display: none; }
.provider-chip .provider-icon { width: 44px; height: 44px; flex: 0 0 44px; background: none; border-radius: 0; }
.provider-chip .provider-icon img { width: 40px; height: 40px; transition: opacity .2s; }
.provider-chip:hover .provider-icon img { opacity: .75; }
.provider-icon img[src$="trezor.png"],
.provider-icon img[src$="ledger.png"] { filter: invert(1); mix-blend-mode: screen; }
html[data-theme="light"] .provider-icon img[src$="trezor.png"],
html[data-theme="light"] .provider-icon img[src$="ledger.png"] { filter: none; mix-blend-mode: multiply; }
.provider-track li { width: clamp(104px, 16vw, 180px); }
.footer-providers ul,.provider-directory { grid-template-columns: repeat(6,minmax(0,1fr)); }
@media (max-width: 700px) { .footer-providers ul,.provider-directory { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (prefers-reduced-motion: reduce) { .provider-chip .provider-icon img { transition: none; } }
@media (forced-colors: active) { .provider-chip:focus-visible { outline-color: LinkText; } }

.provider-icon:has(img[src$="trezor.png"]),.provider-icon:has(img[src$="ledger.png"]) { mix-blend-mode: screen; }
html[data-theme="light"] .provider-icon:has(img[src$="trezor.png"]),html[data-theme="light"] .provider-icon:has(img[src$="ledger.png"]) { mix-blend-mode: multiply; }

/* Remove the white favicon canvas at render time; retain the original asset. */
.provider-icon img[src$="trezor.png"] { filter: url(#provider-knockout); }
html[data-theme="light"] .provider-icon img[src$="trezor.png"] { filter: url(#provider-knockout) brightness(0); }

/* The closing chapter shares the existing heart, orbit and travelling light. */
.provider-filter { position: absolute; }
.resource-footer { --footer-ink: #edf0f4; --footer-muted: #a6b7c8; --footer-line: #a5bfdb2b; --footer-gold: #e1b77b; position: relative; padding-top: 1.25rem; background: #07101b; color: var(--footer-ink); overflow: clip; }
.footer-topline { display: flex; justify-content: space-between; align-items: center; gap: 1rem; border-bottom: 1px solid var(--footer-line); }
.resource-footer .footer-breadcrumbs { padding-bottom: 0; }
.footer-return { display: inline-flex; align-items: center; gap: 1rem; min-height: 48px; color: var(--footer-muted); font-size: .75rem; }
.footer-return span { transition: transform .25s; }
.footer-return:hover span { transform: translateY(-3px); }
.footer-story { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2.5rem,7vw,7rem); padding: 3.25rem 0 2.5rem; }
.footer-story::before { content: ''; position: absolute; top: -1px; left: 0; width: 25%; height: 1px; background: linear-gradient(90deg,transparent,var(--footer-gold),transparent); transform: translateX(-100%); animation: footer-light 16s linear infinite; animation-play-state: var(--footer-play, paused); pointer-events: none; }
.footer-eyebrow { font-size: .66rem; letter-spacing: .13em; text-transform: uppercase; color: var(--footer-muted); margin: 0 0 1.25rem; }
.resource-footer .footer-manifesto h2 { font-size: clamp(2.6rem,4.8vw,4.3rem); line-height: 1.07; letter-spacing: -.045em; text-transform: none; font-weight: 500; color: var(--footer-ink); margin: 0 0 1.25rem; text-wrap: balance; }
.footer-manifesto h2 em { font-family: Georgia,serif; font-weight: 400; color: var(--footer-gold); }
.footer-intent { max-width: 34rem; font-size: .88rem; line-height: 1.85; color: var(--footer-muted); }
.footer-signature { display: flex; gap: 1.4rem; align-items: center; margin-top: 1.6rem; }
.footer-orbit { position: relative; width: 150px; height: 120px; flex: 0 0 150px; }
.footer-orbit svg { width: 100%; height: 100%; stroke: #698db154; stroke-width: 1; }
.footer-orbit .brand-symbol { position: absolute; inset: 0; margin: auto; width: 47px; height: 47px; animation-play-state: var(--footer-play, paused); }
.footer-orbit-trace { transform-origin: 120px 90px; animation: footer-orbit 28s linear infinite; animation-play-state: var(--footer-play, paused); }
.footer-orbit-trace circle:first-child { stroke: var(--footer-gold); stroke-dasharray: 12 88; }
.footer-orbit-trace circle:last-child { fill: var(--footer-gold); stroke: none; }
.footer-stage { display: inline-flex; gap: .5rem; align-items: center; font-size: .63rem; text-transform: uppercase; letter-spacing: .09em; color: var(--footer-gold); }
.footer-stage::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.footer-signature p { font-size: .75rem; color: var(--footer-muted); margin: .4rem 0 0; }
.footer-signature a,.footer-answer a { display: inline-flex; align-items: center; gap: .8rem; min-height: 44px; font-size: .78rem; color: var(--footer-gold); text-decoration: underline; text-decoration-color: transparent; text-underline-offset: .3em; transition: text-decoration-color .2s; }
.footer-signature a:hover,.footer-answer a:hover { text-decoration-color: currentColor; }
.footer-paths { align-self: start; }
.footer-paths details { border-bottom: 1px solid var(--footer-line); }
.footer-paths summary { display: grid; grid-template-columns: 1.6rem minmax(0,1fr) 1rem; gap: .7rem; align-items: center; min-height: 68px; padding-block: .9rem; cursor: pointer; list-style: none; font-size: clamp(.98rem,1.5vw,1.16rem); color: var(--footer-ink); }
.footer-paths summary::-webkit-details-marker { display: none; }
.footer-step { font-size: .66rem; color: var(--footer-muted); font-variant-numeric: tabular-nums; }
.footer-expand { display: block; color: var(--footer-gold); font-size: 1.3rem; font-weight: 400; text-align: center; transition: transform .25s; }
.footer-paths details[open] .footer-expand { transform: rotate(45deg); }
.footer-paths details[open] .footer-step { color: var(--footer-gold); }
.footer-answer { padding: 0 1.5rem 1.05rem 2.3rem; }
.footer-answer p { font-size: .82rem; line-height: 1.85; color: var(--footer-muted); margin: 0; }
.footer-paths summary:hover { color: var(--footer-gold); }
.footer-conversation { display: flex; flex-direction: column; align-items: flex-start; padding-top: 1.5rem; gap: .4rem; min-height: 60px; font-size: .75rem; color: var(--footer-muted); }
.footer-conversation>span { color: var(--footer-gold); }
.footer-navigation { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 2rem; padding-block: 1.3rem; border-block: 1px solid var(--footer-line); }
.footer-navigation .brand { font-size: 1rem; }
.footer-navigation nav { display: flex; flex-wrap: wrap; gap: .2rem 1.5rem; }
.footer-navigation nav a,.footer-closure nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: .75rem; color: var(--footer-muted); }
.resource-footer nav a:hover { color: var(--footer-gold); }
.footer-motion { border: 1px solid var(--footer-line); border-radius: 24px; background: none; color: var(--footer-muted); min-height: 44px; padding: .5rem .9rem; font: inherit; font-size: .65rem; cursor: pointer; }
.footer-motion:hover { border-color: var(--footer-gold); color: var(--footer-gold); }
.footer-providers { display: grid; grid-template-columns: 1fr 1.4fr; gap: .2rem 3rem; align-items: center; border-top: 0; padding-block: 1.5rem 1rem; }
.resource-footer .footer-providers h2 { font-size: .85rem; line-height: 1.6; letter-spacing: 0; text-transform: none; color: var(--footer-muted); margin: 0; }
.footer-providers ul { margin: 0; grid-row: 1 / 3; grid-column: 2; gap: .3rem; }
.footer-providers .provider-chip { min-height: 60px; padding: 8px; }
.footer-providers .provider-icon img { width: 30px; height: 30px; }
.footer-providers .provider-icon { transition: transform .25s; }
.footer-providers .provider-chip:hover .provider-icon,.footer-providers .provider-chip:focus-visible .provider-icon { transform: translateY(-3px); }
.provider-caption { min-height: 1.7em; margin: 0; font-size: .7rem; line-height: 1.7; color: var(--footer-gold); }
.footer-providers .provider-disclosure { grid-column: 1 / -1; margin: .55rem 0 0; font-size: .65rem; color: var(--footer-muted); }
.provider-disclosure a { text-decoration: underline; text-underline-offset: .2em; }
.footer-closure { border-top: 1px solid var(--footer-line); padding-top: 1.2rem; display: grid; grid-template-columns: 1fr auto; gap: .3rem 3rem; color: var(--footer-muted); }
.footer-closure>p { max-width: 39rem; margin: 0; font-size: .65rem; line-height: 1.85; }
.footer-closure nav { display: flex; flex-wrap: wrap; column-gap: 1rem; justify-content: flex-end; }
.footer-closure nav a { font-size: .65rem; }
.footer-closure .footer-owner { grid-column: 1 / -1; display: flex; justify-content: space-between; max-width: none; gap: .5rem; padding-top: .5rem; }
.footer-owner a { text-decoration: underline; text-underline-offset: .2em; }
.resource-footer :focus-visible { outline: 2px solid var(--footer-gold); outline-offset: 3px; }
.resource-footer.is-footer-visible { --footer-play: running; }
.resource-footer:not(.is-footer-visible) .brand-symbol,.resource-footer:not(.is-footer-visible) .brand-coin,.resource-footer:not(.is-footer-visible) .brand-hearted { animation-play-state: paused; }
html[data-motion="paused"] .resource-footer { --footer-play: paused; }
html[data-theme="light"] .resource-footer { --footer-ink: #172b3d; --footer-muted: #4a6073; --footer-line: #23456330; --footer-gold: #805321; background: #e8e4dc; }
html[data-theme="light"] .resource-footer .footer-manifesto h2 { color: var(--footer-ink); }
@keyframes footer-light { to { transform: translateX(500%); } }
@keyframes footer-orbit { to { transform: rotate(360deg); } }
@media (max-width: 900px) { .footer-story { gap: 2.5rem; }.footer-signature { gap: .7rem; }.footer-orbit { width: 110px; flex-basis: 110px; }.footer-providers { grid-template-columns: 1fr 1.4fr; gap: .3rem 1rem; }.footer-closure { grid-template-columns: 1fr; }.footer-closure nav { justify-content: flex-start; } }
@media (max-width: 700px) {
 .footer-story { grid-template-columns: 1fr; padding-block: 2.3rem 1.8rem; gap: 2rem; }
 .resource-footer .footer-manifesto h2 { font-size: clamp(2.5rem,10vw,3.5rem); }
 .footer-intent { font-size: .84rem; }
 .footer-signature { margin-top: .7rem; gap: 1rem; }.footer-orbit { height: 95px; width: 120px; flex-basis: 120px; }
 .footer-paths .footer-eyebrow { margin-bottom: .4rem; }
 .footer-navigation { gap: .7rem; }.footer-navigation nav { order: 3; width: 100%; justify-content: space-between; gap: .2rem .75rem; }.footer-navigation nav a { font-size: .68rem; }
 .footer-providers { grid-template-columns: 1fr; padding-top: 1.5rem; }
 .footer-providers ul { grid-row: auto; grid-column: 1; grid-template-columns: repeat(6,minmax(0,1fr)); order: 1; }
 .footer-providers .provider-chip { padding: 0; min-height: 56px; }.footer-providers .provider-icon { width: 32px; flex-basis: 32px; }.footer-providers .provider-icon img { width: 28px; height: 28px; }
 .footer-providers h2 { order: 0; }.footer-providers .provider-caption { order: 2; }.footer-providers .provider-disclosure { order: 3; font-size: .65rem; }
 .footer-closure .footer-owner { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
 .footer-story::before,.footer-orbit-trace { animation: none; }
 .resource-footer *, .resource-footer *::before, .resource-footer *::after { transition: none !important; scroll-behavior: auto !important; }
 .footer-providers .provider-chip:hover .provider-icon,.footer-providers .provider-chip:focus-visible .provider-icon { transform: none; }
}
@media (forced-colors: active) { .footer-orbit { display: none; }.footer-paths details { border-color: CanvasText; }.footer-paths summary,.resource-footer a { forced-color-adjust: auto; }.footer-stage::before { background: CanvasText; } }
