/* Sober Woke wavy footer, used on every page. Needs only this file.
   Outline and shadow colour flips in dark mode via --pop-line. */
:root{--pop-line:#1A1A1A;--tint-a:#E4F58A}
@media (prefers-color-scheme: dark){:root{--pop-line:#F2F2F2}}
.spark{position:absolute;fill:var(--accent);stroke:var(--pop-line);stroke-width:1.2;stroke-linejoin:round;overflow:visible;pointer-events:none}
@media (prefers-reduced-motion:no-preference){
  @keyframes twinkle{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.18) rotate(14deg)}}
  .spark.tw{animation:twinkle 3.6s ease-in-out infinite}
  .spark.tw2{animation:twinkle 4.4s ease-in-out .9s infinite}
}

/* ---------- wavy footer panel ---------- */
.footer-pop{border-top:none;padding:56px 0 34px}
.fp-panel{
  position:relative;display:grid;grid-template-columns:1fr minmax(0,1.25fr) 1fr;align-items:center;
  padding:96px 56px 96px;min-height:470px;color:#1A1A1A;
}
.fp-bg{position:absolute;inset:0;filter:drop-shadow(7px 7px 0 var(--pop-line));z-index:0}
.fp-bg div{width:100%;height:100%;background:var(--accent);clip-path:url(#fp-wave-wide)}
.fp-links,.fp-center{position:relative;z-index:1}
.fp-glass,.fp-panel .spark{z-index:2}
.fp-links{display:flex;flex-direction:column;align-items:center;gap:18px}
.fp-links a{
  font-family:'Manrope',sans-serif;font-weight:800;font-size:16px;letter-spacing:.04em;text-transform:uppercase;
  color:#1A1A1A;text-decoration:none;
}
.fp-links a:hover{text-decoration:underline;text-decoration-color:#fff;text-decoration-thickness:4px;text-underline-offset:6px}
.fp-center{display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center}
.fp-logo{
  font-family:'Manrope',sans-serif;font-weight:800;font-size:clamp(34px,4.6vw,54px);letter-spacing:-.02em;
  color:#1A1A1A;text-decoration:none;line-height:1.1;white-space:nowrap;
}
.fp-logo em{background:#1A1A1A;color:var(--accent);padding:.03em .2em;border-radius:6px}
.fp-social a{color:#1A1A1A;display:inline-flex}
.fp-social a:hover{color:#fff;filter:drop-shadow(2px 2px 0 #1A1A1A)}
.fp-help{
  font-weight:700;font-size:13px;color:#1A1A1A;background:#fff;border:2px solid #1A1A1A;border-radius:999px;
  padding:9px 18px;text-decoration:none;box-shadow:3px 3px 0 #1A1A1A;max-width:300px;line-height:1.4;
}
.fp-help:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 #1A1A1A}
.fp-badge{position:absolute;top:-40px;right:7%;width:112px;height:112px;transform:rotate(12deg);z-index:2;overflow:visible}
.fp-badge polygon{fill:#fff;stroke:#1A1A1A;stroke-width:3;stroke-linejoin:round}
.fp-badge text{font-family:'Manrope',sans-serif;font-weight:800;fill:#1A1A1A}
.fp-badge .t1{font-size:17px;letter-spacing:.06em}.fp-badge .t2{font-size:15px;letter-spacing:.02em}
.fp-glass{position:absolute;left:1.5%;bottom:-36px;width:108px;height:108px;transform:rotate(-8deg);filter:drop-shadow(5px 5px 0 #1A1A1A)}
.fp-panel .spark.fs1{width:34px;height:34px;left:13%;bottom:-14px;fill:#fff}
.fp-panel .spark.fs2{width:24px;height:24px;left:2%;bottom:80px;fill:#1A1A1A}
.fp-note{margin:34px auto 0;max-width:70ch;text-align:center;font-size:12px;color:var(--ink-soft)}
.fp-legal{margin:16px 0 0;text-align:center;font-size:12px;font-weight:600;color:var(--ink);line-height:2}
.fp-legal a{text-decoration:none;margin:0 8px;font-weight:700}
.fp-legal a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:3px;text-underline-offset:4px}
@media (max-width:800px){
  .fp-panel{
    grid-template-columns:1fr 1fr;grid-template-areas:"center center" "left right";
    gap:34px 10px;padding:64px 22px 80px;min-height:0;
  }
  .fp-center{grid-area:center}.fp-left{grid-area:left}.fp-right{grid-area:right}
  .fp-bg div{clip-path:url(#fp-wave-narrow)}
  .fp-bg{filter:drop-shadow(5px 5px 0 var(--pop-line))}
  .fp-links{gap:14px}
  .fp-links a{font-size:14px}
  .fp-badge{top:-34px;right:4%;width:88px;height:88px}
  .fp-glass{left:50%;bottom:-24px;width:84px;height:84px;margin-left:-42px}
  .fp-panel .spark.fs1{left:auto;right:14%;bottom:16px}
  .fp-panel .spark.fs2{left:12%;bottom:14px}
  .footer-pop{padding-bottom:50px}
}

/* footer links: plain text, no pill outlines, one line each */
.fp-links a{display:block;border:0;border-radius:0;padding:0;background:none;white-space:nowrap;text-align:center}
@media (max-width:800px){
  .fp-panel{padding:60px 18px 72px;gap:26px 8px}
  .fp-links{gap:12px}
  .fp-links a{font-size:12.5px;letter-spacing:.03em}
}
@media (max-width:360px){
  .fp-panel{padding-left:12px;padding-right:12px}
  .fp-links a{white-space:normal;font-size:12px;letter-spacing:.02em}
}

/* newsletter box that sits above the footer panel on inner pages */
.footer-pop .newsletter{margin:0 0 72px;background:var(--tint-a);color:#1A1A1A;border:2px solid var(--pop-line);border-radius:16px;box-shadow:5px 5px 0 var(--pop-line)}
.footer-pop .newsletter p{color:rgba(26,26,26,.8)}
.footer-pop .newsletter-form input{background:#fff;color:#1A1A1A;border:2px solid #1A1A1A;border-radius:999px}
.footer-pop .newsletter-form .btn{border:2px solid #1A1A1A;box-shadow:3px 3px 0 #1A1A1A;color:#1B2400}
.fp-page{margin:34px auto 0;max-width:70ch;text-align:center;font-size:13px;color:var(--ink-soft)}
.fp-page a{text-decoration:underline}

/* footer is as wide as the homepage on every page, and the text below clears the hanging sticker */
.footer-pop > .wrap{max-width:1040px}
.fp-panel + .fp-page,.fp-panel + .fp-note,.fp-panel + .fp-legal{margin-top:64px}
