/* Footer extends the established palette. The target has its own stage. */
#join.footer-home{background:var(--wasc-news);color:var(--wasc-frost);padding:0;isolation:isolate}
#join.footer-home{position:relative}
#join.footer-home>.character-sky{display:block;position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.25}
#join.footer-home>.container,#join.footer-home>.parcel-landing{position:relative;z-index:1}
#join .footer-invitation{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:80px 0 64px;border-top:1px solid #f4f8fa66;border-bottom:1px solid #f4f8fa66}
#join .footer-invitation h2{font:500 clamp(56px,6.8vw,96px)/.96 var(--display);letter-spacing:-.03em;margin:0 0 26px}
#join .footer-invitation>div>p{font:20px/1.45 var(--body);max-width:36ch;margin:0}
#join .footer-signup{width:100%;max-width:none;margin:0}
#join .footer-signup label{display:block;font:24px/1.2 var(--body);margin-bottom:16px}
#join .footer-email-row{display:flex;align-items:stretch;border:1px solid var(--wasc-frost)}
#join .footer-email-row input{min-width:0;width:100%;border:0;border-radius:0;background:transparent;color:var(--wasc-frost);font:18px/1.4 var(--body);padding:18px 16px;caret-color:var(--wasc-verdict)}
#join .footer-email-row input::placeholder{color:var(--wasc-frost);opacity:.8}
#join .footer-email-row button{display:flex;align-items:center;justify-content:center;gap:12px;flex:none;border:0;border-radius:0;padding:16px 20px;background:var(--wasc-verdict);color:var(--wasc-news);font:500 18px/1.2 var(--body);cursor:pointer}
#join .footer-email-row button:hover{background:var(--wasc-frost)}
#join .footer-email-row svg{width:24px;height:24px}
#join #join-status{font:12px/1.5 var(--body);margin:12px 0 0;color:var(--wasc-frost)}
#join .footer-main{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:56px;padding:68px 0 64px}
#join .footer-logotype{display:block;width:max-content;max-width:100%;color:var(--wasc-frost);font:700 clamp(48px,5.8vw,82px)/.9 Founders,sans-serif;letter-spacing:-.035em;text-decoration:none}
#join .footer-logotype span{display:block;text-align:right;color:var(--wasc-verdict);font-size:.43em;letter-spacing:-.02em;margin-top:10px}
#join .footer-links{display:grid;grid-template-columns:1.15fr 1fr .7fr;gap:28px;margin-top:60px}
#join .footer-links h3{font:500 16px/1.2 var(--body);color:var(--wasc-verdict);margin:0 0 18px}
#join .footer-links a{display:block;width:fit-content;max-width:100%;font:16px/1.4 var(--body);padding:8px 0;text-decoration:none}
#join .footer-links a:hover{text-decoration:underline;text-underline-offset:5px}
#join .footer-object{min-width:0;color:var(--wasc-verdict)}
#join .footer-object-stage{height:350px;position:relative}
#footer-target{width:100%;height:100%;display:block;cursor:grab;touch-action:none;position:relative;z-index:1}
#footer-target.dragging{cursor:grabbing;touch-action:none}
#footer-target-fallback{position:absolute;inset:15%;width:70%;height:70%}
#footer-target-fallback[hidden]{display:none}
#join .footer-object-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #d6d96a66;padding-top:12px;font:14px/1.4 var(--body)}
#join .footer-object-controls button{background:none;color:inherit;border:0;text-decoration:underline;text-underline-offset:5px;font:inherit;min-height:44px;padding:8px 0 8px 20px;cursor:pointer}
#join .footer-utility{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0 30px;border-top:1px solid #f4f8fa66;font:13px/1.4 var(--body);background:none}
#join .footer-utility>span{width:auto}
#join .footer-utility nav{display:flex;flex-wrap:wrap;gap:24px}
#join .footer-utility a{padding-block:10px;text-decoration:none}
#join .footer-utility a:hover{text-decoration:underline;text-underline-offset:5px}
#join .footer-back-top{display:flex;align-items:center;gap:10px}
#join .footer-back-top svg{width:18px;height:18px}
#join :is(a,button,input,canvas):focus-visible{outline:2px solid var(--wasc-verdict);outline-offset:5px}
#join ::selection{background:var(--wasc-verdict);color:var(--wasc-news)}
#join .parcel-landing{border-top:1px solid #f4f8fa66;margin-bottom:36px}
#join .parcel-landing[hidden]{display:none}
@media(max-width:1000px){#join .footer-invitation{gap:36px}#join .footer-main{grid-template-columns:1.5fr 1fr;gap:25px}#join .footer-links{gap:16px}#join .footer-links a{font-size:14px}#join .footer-object-stage{height:290px}#join .footer-email-row button{padding:14px}}
@media(max-width:700px){#join .footer-invitation{grid-template-columns:1fr;gap:32px;padding:48px 0}#join .footer-invitation h2{font-size:64px}#join .footer-invitation>div>p{font-size:18px}#join .footer-signup label{font-size:20px}#join .footer-email-row input{font-size:16px;padding:16px 12px}#join .footer-email-row button{font-size:16px;padding:14px 12px;gap:8px}#join .footer-email-row button svg{width:18px}#join .footer-main{display:flex;flex-direction:column;gap:32px;padding:48px 0 32px}#join .footer-brand-and-links{width:100%}#join .footer-logotype{font-size:clamp(44px,12vw,72px)}#join .footer-links{grid-template-columns:1fr 1fr;gap:30px 20px;margin-top:38px}#join .footer-links nav:last-child{grid-column:1/-1}#join .footer-links nav:last-child a{display:inline-block;margin-right:20px}#join .footer-links h3{margin-bottom:10px}#join .footer-links a{font-size:15px;min-height:40px}#join .footer-object{width:100%;max-width:380px}#join .footer-object-stage{height:280px}#join .footer-utility{flex-wrap:wrap;gap:10px 20px;font-size:12px}#join .footer-utility>span{width:100%}#join .footer-utility nav{gap:20px}#join .footer-back-top{margin-left:auto}}

/* Consistent touch rows for legal links, cookie disclosure and mode control. */
@media(max-width:700px){
 #join .footer-utility{display:flex;flex-direction:column;align-items:stretch;gap:16px}
 #join .footer-utility nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;width:100%;align-items:start}
 #join .footer-utility nav>a,#join .footer-utility nav>button,#join .footer-utility nav .cookie-study>summary{display:flex;align-items:center;justify-content:flex-start;box-sizing:border-box;min-height:44px;margin:0;padding:10px 0;text-align:left;font:inherit;line-height:1.4}
 #join .footer-utility .footer-back-top{margin-left:0;align-self:flex-start;min-height:44px;box-sizing:border-box}
}
