/* footer: atlas-style colophon. Owned by the get/faq/footer agent. Loads after base.css. */
.footer { overflow: hidden; }
.footer__top { padding-block: var(--s8); row-gap: var(--s7); }
.footer__tag { max-width: 11em; }
.footer__cols { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: var(--gap); row-gap: var(--s6); }
.footer__col { grid-column: auto !important; margin-top: 0 !important; }
.footer__col .label { color: var(--gold); padding-bottom: var(--s3); border-bottom: 1px solid var(--line-soft); }
.footer__col li + li { margin-top: var(--s3); }
.footer__col a { font-size: 17px; }
@media (max-width: 599px) { .footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.footer__mark { position: relative; padding-block: var(--s5); }
.footer__mark .fit__in { will-change: transform; }
.footer__credit { padding-block: var(--s4) var(--s5); }
.footer__credit .fig { max-width: 60em; line-height: 1.5; text-transform: none; letter-spacing: .06em; font-size: 14px; }
.footer__base { align-items: center; }
.footer__base .label:nth-of-type(2) { flex: 1 1 280px; }

.footer__top-btn { display: inline-flex; align-items: center; gap: var(--s3); min-height: 44px; padding: 0 var(--s4); border: 1px solid var(--line-strong); color: var(--gold); transition: color .35s var(--ease), background-color .35s var(--ease), border-color .35s var(--ease); }
.footer__top-btn .ic { width: 18px; height: 18px; transform: rotate(-90deg); transition: transform .35s var(--ease); }
.footer__top-btn:hover { background: var(--gold); color: var(--bg); border-color: var(--gold); }
.footer__top-btn:hover .ic { transform: rotate(-90deg) translateX(4px); }
.footer__top-btn .label { color: inherit; }
/* calm outline wordmark: hairline stroke only, never filled */
.footer__mark .fit__in { color: transparent; -webkit-text-stroke: 1px rgba(217,179,108,.34); }
.footer__top-btn:focus-visible, .footer__col a:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 3px; }
