/* VKIT-OWNED. Not Parul's — never written by scripts/sync-editorial-site.mjs,
 * because it is not in her dist. Overrides for bugs that appear when her
 * stylesheets meet her own newer markup, fixed here so a re-sync cannot undo
 * them and so her files stay byte-identical to what she pushed.
 *
 * Injected into every editorial page's head (editorial/metadata.ts) AFTER her
 * sheets, and imported by the kit for the Next-rendered pages that wear her
 * chrome. Rules are written to win on specificity as well as order.
 */

/* 2026-10-05: one calm, useful footer hierarchy across every marketing page. */
.footer.footer-v3.footer-clean{
  padding:0;
  background:#111318;
  color:#fff;
}
.footer-clean .footer-conversion.signup-conversion{
  margin:0;
  border-radius:0;
  padding:clamp(46px,6vw,86px) clamp(24px,6vw,92px);
}
.footer-clean .fc-cta-kicker{
  margin:0 0 16px;
  color:#dcea82;
  font:700 11px/1.4 monospace;
  letter-spacing:.12em;
}
.footer-clean .fc-main{
  padding:clamp(50px,6vw,82px) 5% 28px;
}
.footer-clean .fc-overview{
  display:grid;
  grid-template-columns:minmax(220px,.8fr) minmax(0,2.2fr);
  gap:clamp(48px,7vw,112px);
  align-items:start;
}
.footer-clean .fc-brand{
  max-width:315px;
}
.footer-clean .fc-wordmark{
  display:inline-block;
  background:transparent;
  border-radius:0;
}
.footer-clean .fc-wordmark img{
  width:132px;
  height:72px;
  object-fit:contain;
}
.footer-clean .fc-brand>p{
  margin:24px 0 32px;
  color:#b8bec9;
  font-size:16px;
  line-height:1.55;
}
.footer-clean .fc-motion{
  position:relative;
  width:min(100%,310px);
  height:190px;
  margin:0 0 26px;
  overflow:hidden;
  border:1px solid #303744;
  border-radius:18px;
  background:
    radial-gradient(circle at 50% 48%,#2459ce55 0 18%,transparent 48%),
    linear-gradient(145deg,#191d25,#101217);
}
.footer-clean .fc-motion:before,
.footer-clean .fc-motion:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:210px;
  height:1px;
  background:linear-gradient(90deg,transparent,#547ee8,transparent);
  transform-origin:center;
  opacity:.55;
}
.footer-clean .fc-motion:before{transform:translate(-50%,-50%) rotate(23deg)}
.footer-clean .fc-motion:after{transform:translate(-50%,-50%) rotate(-23deg)}
.footer-clean .fc-motion-mark{
  position:absolute;
  left:50%;
  top:50%;
  z-index:2;
  display:grid;
  place-items:center;
  width:88px;
  height:58px;
  border:1px solid #577ee0;
  border-radius:14px;
  background:#fff;
  box-shadow:0 0 32px #2459ce77;
  transform:translate(-50%,-50%);
}
.footer-clean .fc-motion-mark img{width:66px;height:auto}
.footer-clean .fc-motion-node{
  position:absolute;
  z-index:3;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid #3c4452;
  border-radius:13px;
  background:#f8f8f6;
  box-shadow:0 10px 24px #0007;
  animation:fc-node-float 4.8s ease-in-out infinite;
}
.footer-clean .fc-motion-node img{width:25px;height:25px;object-fit:contain}
.footer-clean .fc-motion-node.is-instagram{left:18px;top:24px}
.footer-clean .fc-motion-node.is-linkedin{right:20px;top:28px;animation-delay:-1.6s}
.footer-clean .fc-motion-node.is-x{left:34px;bottom:22px;animation-delay:-3.1s}
.footer-clean .fc-motion-copy{
  position:absolute;
  right:18px;
  bottom:20px;
  z-index:3;
  margin:0;
  color:#f3f5f8;
  font:700 10px/1.35 monospace;
  letter-spacing:.08em;
  text-align:right;
  text-transform:uppercase;
}
@keyframes fc-node-float{
  0%,100%{transform:translateY(0) rotate(-2deg)}
  50%{transform:translateY(-7px) rotate(2deg)}
}
.footer-clean .fc-provider{
  display:flex;
  align-items:center;
  gap:10px;
  color:#d9dde4;
  font-size:12px;
}
.footer-clean .fc-provider img{
  width:104px;
  height:auto;
  margin-left:-7px;
}
.footer-clean .fc-directory{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(28px,4vw,64px);
  margin:0;
}
.footer-clean .fc-group h2{
  margin:0 0 22px;
  color:#8f97a5;
  font:700 10px/1.4 monospace;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer-clean .fc-group a{
  display:block;
  width:fit-content;
  margin:0 0 13px;
  color:#f3f4f7;
  font-size:14px;
  line-height:1.4;
  transition:color .18s ease,transform .18s ease;
}
.footer-clean .fc-group a:hover{
  color:#dcea82;
  transform:translateX(3px);
}
.footer-clean .fc-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin-top:56px;
  padding-top:24px;
  border-top:1px solid #ffffff1f;
  color:#8f97a5;
  font:11px/1.5 monospace;
}
.footer-clean .fc-bottom>div{
  display:flex;
  gap:24px;
}
.footer-clean .fc-bottom a:hover{color:#fff}
@media(max-width:1000px){
  .footer-clean .fc-overview{grid-template-columns:1fr;gap:44px}
  .footer-clean .fc-brand{max-width:440px}
}
@media(max-width:760px){
  .footer-clean .footer-conversion.signup-conversion{margin:0;border-radius:0;padding:42px 6%}
  .footer-clean .fc-main{padding:48px 6% 24px}
  .footer-clean .fc-directory{grid-template-columns:1fr 1fr;gap:34px 24px}
  .footer-clean .fc-brand>p{font-size:15px;margin:18px 0 25px}
  .footer-clean .fc-bottom{align-items:flex-start;flex-direction:column;margin-top:42px}
}
@media(prefers-reduced-motion:reduce){
  .footer-clean .fc-motion-node{animation:none}
}
@media(max-width:460px){
  .footer-clean .fc-directory{grid-template-columns:1fr 1fr;gap:38px 18px}
  .footer-clean .fc-group h2{font-size:9px;margin-bottom:17px}
  .footer-clean .fc-group a{font-size:13px;margin-bottom:11px}
  .footer-clean .fc-bottom>div{flex-wrap:wrap}
}
@media(max-width:340px){
  .footer-clean .fc-directory{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .footer-clean .fc-group a{transition:none}
  .footer-clean .fc-group a:hover{transform:none}
}

/* The Cloudflare Turnstile widget on the AI tools, injected by creator-tools.js
   above the submit button. Parul's form is a flex column with its own rhythm,
   so this only needs to sit in that rhythm and not overflow a narrow phone. */
.tool-turnstile{margin:4px 0 2px;min-height:65px}
.tool-turnstile iframe{max-width:100%}

/* Original CSA pledge badge, shared across the marketing footer. */
.footer-clean .fc-ai-pledge{margin-top:12px;width:48px;max-width:100%}
.footer-clean .fc-ai-pledge img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:3px}

.footer-clean .fc-ai-pledge a{display:block;width:48px;height:48px;border-radius:3px}
.footer-clean .fc-ai-pledge a:focus-visible{outline:2px solid #fff;outline-offset:4px}

/* The tools disclosure already supplies a divider. Avoid a second rule beneath it. */
.footer-clean .fc-tools+.fc-bottom{border-top:0;margin-top:20px}
