/* Titan family footer V2 — design by Archie (11 Oct 2026), chosen for every Titan site.
   TITANS is set in Technovier Thin, the TITAN.ATLAS wordmark face: a 1,208-byte subset (T I A N S . L only),
   (own family name so it never collides with a site's own "Technovier"), the same file titanatlas.world serves (sha256 b0dfe86f…a216db). Copying it to these sites was approved by the owner on 11 Oct 2026. */
@font-face { font-family: "Titan Footer Technovier"; src: url("/assets/titan-footer-20261011/titan-footer-technovier-thin-20261011.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: block; }
/* Titan family footer. Selectors carry the class twice so a host page's footer typography cannot override them. Scoped under .titan-footer; no typeface is set (the site's brand stack is inherited).
   Palette tokens are the only values to change. */
.titan-footer.titan-footer[role="group"] {
  --tf-bg: #050b14;
  --tf-saffron: #ffa21f;
  --tf-red: #ff2b22;
  --tf-white: #f4f8fc;
  --tf-american-blue: #1459ff;
  --tf-tech-teal: #19d9cf;
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100vw;
  padding: clamp(28px, 5vw, 64px) 16px clamp(28px, 4vw, 56px);
  background:
    radial-gradient(ellipse 60% 70% at 50% 30%, rgba(20, 89, 255, 0.10), rgba(5, 11, 20, 0) 70%),
    var(--tf-bg);
  color: var(--tf-white);
  text-align: center;
  overflow: hidden;
}
.titan-footer.titan-footer[role="group"] *, .titan-footer.titan-footer[role="group"] *::before, .titan-footer.titan-footer[role="group"] *::after { box-sizing: border-box; }
.titan-footer.titan-footer[role="group"] .titan-footer__mark {
  display: block;
  width: min(100%, 1200px);
  height: auto;
  margin: 0 auto;
}
.titan-footer.titan-footer[role="group"] .titan-footer__line1 {
  margin: clamp(10px, 2vw, 22px) 0 0;
  font-size: clamp(18px, 3.4vw, 40px);
  font-weight: 700;
  letter-spacing: 0.32em;
  text-indent: 0.32em;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--tf-white);
}
.titan-footer.titan-footer[role="group"] .titan-footer__word {
  margin: clamp(10px, 2vw, 24px) 0 0;
  font-size: clamp(30px, 6.4vw, 76px);
  font-weight: 400;
  letter-spacing: 0.14em;
  text-indent: 0.14em;
  line-height: 1.1;
  text-transform: uppercase;
  font-family: "Titan Footer Technovier", "Work Sans", sans-serif !important; /* some host pages force body * fonts with !important */
  font-synthesis: none;
}
.titan-footer.titan-footer[role="group"] .titan-footer__titans {
  font-family: "Titan Footer Technovier", "Work Sans", sans-serif !important;
  background: linear-gradient(90deg, var(--tf-saffron) 0%, #ffd27a 22%, var(--tf-tech-teal) 70%, #6df3ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--tf-tech-teal);
}
.titan-footer.titan-footer[role="group"] .titan-footer__rule {
  display: block;
  width: clamp(120px, 22vw, 260px);
  height: 3px;
  margin: clamp(12px, 2vw, 22px) auto;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--tf-saffron), var(--tf-tech-teal));
}
.titan-footer.titan-footer[role="group"] .titan-footer__line2 {
  margin: 0;
  font-size: clamp(15px, 2.9vw, 34px);
  font-weight: 900;
  letter-spacing: 0.26em;
  text-indent: 0.26em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--tf-white);
}
.titan-footer.titan-footer[role="group"] .titan-footer__building { color: var(--tf-red); }
.titan-footer.titan-footer[role="group"] .titan-footer__binary { color: var(--tf-white); }
.titan-footer.titan-footer[role="group"] .titan-footer__worlds {
  background: linear-gradient(90deg, var(--tf-american-blue) 0%, #2a86ff 38%, var(--tf-tech-teal) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--tf-american-blue);
}
.titan-footer.titan-footer[role="group"] .titan-footer__words { display: inline-block; white-space: nowrap; }
@media (min-width: 2200px) {
  .titan-footer.titan-footer[role="group"] { padding: 96px 32px 88px; }
  .titan-footer.titan-footer[role="group"] .titan-footer__mark { width: min(100%, 1800px); }
  .titan-footer.titan-footer[role="group"] .titan-footer__word { font-size: 112px; }
  .titan-footer.titan-footer[role="group"] .titan-footer__line2 { font-size: 50px; }
  .titan-footer.titan-footer[role="group"] .titan-footer__rule { width: 340px; height: 4px; }
}
@media (max-width: 520px) {
  .titan-footer.titan-footer[role="group"] .titan-footer__mark { width: 150%; max-width: none; margin-left: -25%; }
  .titan-footer.titan-footer[role="group"] .titan-footer__word { letter-spacing: 0.1em; text-indent: 0.1em; }
  .titan-footer.titan-footer[role="group"] .titan-footer__line2 { letter-spacing: 0.14em; text-indent: 0.14em; }
}
@media (forced-colors: active) {
  .titan-footer.titan-footer[role="group"] .titan-footer__worlds { background: none; -webkit-text-fill-color: currentColor; color: CanvasText; }
  .titan-footer.titan-footer[role="group"] .titan-footer__titans { background: none; -webkit-text-fill-color: currentColor; color: CanvasText; }
}

/* Footer-only clearance for existing fixed mobile controls. */
@media (max-width:640px){.titan-footer.titan-footer[role="group"]{padding-bottom:calc(128px + env(safe-area-inset-bottom, 0px));}}
