/* Redesigned site footer (footer-v2.php). Source: "Footer v2.html". */
/* ===== TAF START ===== */
/* style.css paints every span/p/li #ccc and hides the cursor; let the footer own its colours */
.taf span,.taf li{color:inherit}
.taf a:hover{text-decoration:none}
.taf{
  --red:#e3101e;--red-hi:#ff2b38;--ink:#0b0b0e;--paper:#f2ece4;--mute:rgba(242,236,228,.55);--line:rgba(227,16,30,.35);
  --mx:50%;--my:50%;
  padding:clamp(16px,3vw,40px);background:#050507;color:#f5f5f7;
}
.taf *{box-sizing:border-box}
.taf__card{position:relative;overflow:hidden;border-radius:clamp(16px,2vw,28px);background:var(--ink);
  border:1px solid rgba(227,16,30,.18);padding:clamp(20px,3.2vw,48px);container-type:inline-size;isolation:isolate}
/* cursor spotlight + grain */
.taf__card::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(500px circle at var(--mx) var(--my),rgba(227,16,30,.16),transparent 60%);transition:opacity .4s}
.taf__card::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.07;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* top row */
.taf__top{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:4cqw;align-items:start}
.taf__kicker{font:600 11px/1 Inter,sans-serif;letter-spacing:.32em;color:var(--red);text-transform:uppercase;margin:0 0 1.2cqw .4cqw;display:flex;gap:10px;align-items:center}
.taf__kicker::before{content:"";width:22px;height:1px;background:var(--red)}
.taf__word{font-family:Anton,Impact,sans-serif;line-height:.86;color:var(--red);margin:0;white-space:nowrap;
  letter-spacing:-.005em;text-transform:uppercase;user-select:none;font-size:15cqw}
.taf__word span{display:inline-block;transform-origin:50% 100%;will-change:transform;
  transform:translateY(105%);clip-path:inset(0 0 0 0);transition:color .25s}
.taf__wordmask{overflow:hidden;display:block;padding-top:.04em}
.taf.in .taf__word span{animation:taf-rise .9s cubic-bezier(.2,.85,.25,1) forwards;animation-delay:calc(var(--i) * 60ms)}
.taf__word span.hit{animation:taf-bounce .5s cubic-bezier(.3,1.6,.5,1)!important;transform:none}
.taf__tag{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(28px,4.4cqw,64px);line-height:1.02;color:var(--red);margin:0;text-align:left}
.taf__tag em{color:var(--paper);font-style:italic}
.taf__tag .w{display:inline-block;opacity:0;transform:translateY(14px);filter:blur(6px)}
.taf.in .taf__tag .w{transition:.8s cubic-bezier(.2,.85,.25,1);transition-delay:calc(.5s + var(--i) * 90ms);opacity:1;transform:none;filter:none}
.taf__clock{margin-top:2cqw;font:500 12px/1.4 Inter,sans-serif;color:var(--mute);display:flex;gap:10px;align-items:center}
.taf__clock i{width:7px;height:7px;border-radius:50%;background:#2bd46b;box-shadow:0 0 8px #2bd46b;animation:taf-blink 1.6s infinite}
.taf__clock b{color:var(--paper);font-weight:600;font-variant-numeric:tabular-nums}

/* columns */
.taf__cols{display:grid;grid-template-columns:1fr .7fr .7fr 1.5fr;gap:3cqw;margin-top:clamp(28px,4cqw,56px);padding-top:clamp(18px,2cqw,28px);border-top:1px solid var(--line)}
.taf__label{font:600 10px/1 Inter,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--red);margin:0 0 14px}
.taf__list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.taf a,.taf button{color:inherit;font:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:none}
.taf__link{position:relative;display:inline-flex;align-items:center;gap:6px;color:var(--paper);font-size:13.5px;line-height:1.35;transition:color .25s,transform .3s cubic-bezier(.2,.85,.25,1)}
.taf__link::after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.2,.85,.25,1)}
.taf__link:hover{color:#fff;transform:translateX(4px)}
.taf__link:hover::after{transform:scaleX(1);transform-origin:left}
.taf__link .arr{font-size:11px;color:var(--red);opacity:0;transform:translate(-4px,4px);transition:.3s}
.taf__link:hover .arr{opacity:1;transform:none}
.taf__addr{color:var(--mute);font-size:13px;line-height:1.55;margin:0}
.taf__copytip{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--red);opacity:0;transition:opacity .25s}
.taf__link.copied .taf__copytip{opacity:1}

/* newsletter */
.taf__news p{color:var(--paper);font-size:13px;margin:0 0 6px}
.taf__news p.taf__label{color:var(--red);font-size:10px;margin:0 0 14px}
.taf__form{position:relative;display:flex;align-items:center;margin-top:8px}
.taf__email{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--paper);
  font-family:"Instrument Serif",Georgia,serif;font-size:clamp(30px,3.6cqw,48px);padding:6px 48px 10px 0;caret-color:var(--red)}
.taf__email::placeholder{color:var(--red);opacity:.85;transition:opacity .3s}
.taf__email:focus::placeholder{opacity:.35}
.taf__underline{position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--line)}
.taf__underline::after{content:"";position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.2,.85,.25,1)}
.taf__form:focus-within .taf__underline::after,.taf__form.typed .taf__underline::after{transform:scaleX(1)}
.taf__send{position:absolute;right:0;bottom:12px;width:42px;height:42px;border-radius:50%!important;display:grid;place-items:center;color:var(--red)!important;font-size:24px!important;transition:background .3s,color .3s,transform .4s cubic-bezier(.3,1.5,.5,1)}
.taf__send:hover{background:var(--red)!important;color:#fff!important;transform:translateX(4px) rotate(-8deg)}
.taf__form.err .taf__underline{background:#ff6a00}
.taf__form.err{animation:taf-shake .35s}
.taf__ok{position:absolute;inset:0;display:flex;align-items:center;gap:10px;font-family:"Instrument Serif",serif;font-size:clamp(26px,3cqw,40px);color:var(--paper);
  opacity:0;transform:translateY(10px);pointer-events:none;transition:.5s}
.taf__ok b{color:var(--red);font-weight:400}
.taf__form.done .taf__email,.taf__form.done .taf__send{opacity:0;pointer-events:none}
.taf__form.done .taf__ok{opacity:1;transform:none}
.taf__fine{color:var(--mute);font-size:11px;margin-top:12px}

/* bottom bar */
.taf__bottom{display:grid;grid-template-columns:1fr .7fr .7fr 1.5fr;gap:3cqw;align-items:center;margin-top:clamp(28px,4cqw,56px);font-size:11px;color:var(--mute)}
.taf__bottom nav{display:flex;gap:14px;flex-wrap:wrap}
.taf__bottom a:hover{color:var(--red)}
.taf__top-btn{display:inline-flex;align-items:center;gap:10px;justify-self:end;color:var(--paper)!important;font-size:11px!important;letter-spacing:.2em;text-transform:uppercase}
.taf__top-btn svg{width:34px;height:34px;transform:rotate(-90deg)}
.taf__top-btn circle{fill:none;stroke-width:2}
.taf__top-btn .bg{stroke:var(--line)}
.taf__top-btn .pr{stroke:var(--red);stroke-dasharray:94.2;stroke-dashoffset:94.2;transition:stroke-dashoffset .1s}
.taf__top-btn:hover .ar{transform:translateY(-3px)}
.taf__top-btn .ar{display:inline-block;transition:transform .3s;color:var(--red);font-size:14px}

/* walking squad bot (replaces the logo) */
.taf__right{display:flex;flex-direction:column;align-self:stretch}
.taf__walk{position:relative;margin-top:auto;padding-top:clamp(24px,3cqw,44px);height:calc(clamp(120px,10.5cqw,160px) + clamp(24px,3cqw,44px));min-width:0}
.taf__ground{position:absolute;left:0;right:0;bottom:0;height:1px;background:repeating-linear-gradient(90deg,rgba(227,16,30,.45) 0 6px,transparent 6px 12px);
  -webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.taf__bot{--h:clamp(120px,10.5cqw,160px);position:absolute;left:0;bottom:0;height:var(--h);width:calc(var(--h) * .673);
  transform:translateX(var(--x,0px));cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;
  opacity:0;transition:opacity .6s 1.1s}
.taf.in .taf__bot{opacity:1}
.taf__bot-face{position:absolute;inset:0;transform:scaleX(var(--dir,1));transition:transform .25s}
.taf__bot-body{position:absolute;inset:0;transform-origin:50% 100%;transform:translateY(var(--by,0px)) rotate(var(--rot,0deg)) scale(var(--sx,1),var(--sy,1))}
.taf__bot-face{transition:transform .22s cubic-bezier(.5,0,.3,1.4)}
.taf__bot-body{filter:drop-shadow(0 6px 14px rgba(0,0,0,.5))}
.taf__bot .rig{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-user-drag:none;will-change:transform}
.taf__bot .rig img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-user-drag:none}
.taf__bot .legL{transform-origin:35% 72%;transform:rotate(var(--ll,0deg))}
.taf__bot .legR{transform-origin:62% 72%;transform:rotate(var(--lr,0deg))}
.taf__bot .torso{transform-origin:50% 72%;transform:rotate(var(--tr,0deg))}
.taf__bot .head{transform-origin:40% 40%;transform:translateY(var(--hy,0px)) rotate(var(--hr,0deg))}
.taf__bot .blink{position:absolute;top:19.3%;width:8%;height:6.6%;border-radius:2px;background:#0e2f3d;transform:scaleY(var(--eb,0));transform-origin:50% 0}
.taf__bot .blink.l{left:35.6%}.taf__bot .blink.r{left:55.4%}
.taf__dust{position:absolute;inset:0;pointer-events:none}
.taf__dust i{position:absolute;bottom:0;width:10px;height:10px;border-radius:50%;background:rgba(242,236,228,.35);
  animation:taf-puff .6s ease-out forwards}
@keyframes taf-puff{0%{opacity:.9;transform:translate(0,0) scale(.4)}100%{opacity:0;transform:translate(var(--dx),-14px) scale(1.6)}}
.taf__bot-shadow{position:absolute;left:50%;bottom:-4px;width:70%;height:10px;translate:-50% 0;border-radius:50%;
  background:radial-gradient(closest-side,rgba(227,16,30,.55),rgba(227,16,30,0));transform:scaleX(var(--ss,1));opacity:var(--so,1)}
.taf__bot:focus-visible .taf__bot-body img{filter:drop-shadow(0 0 0 2px var(--red)) drop-shadow(0 0 12px rgba(227,16,30,.7))}
/* speech bubble */
.taf__say{position:absolute;z-index:3;bottom:calc(100% + 10px);left:50%;translate:-50% 0;white-space:nowrap;padding:9px 12px;border-radius:12px;
  background:#f4f1ec;color:#0b0b0e;font:600 12px/1.25 Inter,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.45);
  opacity:0;transform:translateY(8px) scale(.8);transform-origin:50% 100%;transition:opacity .25s,transform .35s cubic-bezier(.3,1.5,.5,1);pointer-events:none}
.taf__say::after{content:"";position:absolute;left:50%;top:100%;translate:-50% 0;border:6px solid transparent;border-top-color:#f4f1ec}
.taf__say a{color:var(--red);font-weight:700;pointer-events:auto}
.taf__bot.talk .taf__say{opacity:1;transform:none;pointer-events:auto}
/* little "!" when he notices the cursor */
.taf__bang{position:absolute;left:62%;top:-6px;font:800 18px/1 Inter,sans-serif;color:var(--red);opacity:0;transform:translateY(6px) scale(.5);transition:all .3s cubic-bezier(.3,1.5,.5,1)}
.taf__bot.notice .taf__bang{opacity:1;transform:none}

@keyframes taf-rise{to{transform:translateY(0)}}
@keyframes taf-bounce{0%{transform:scaleY(1)}35%{transform:scaleY(.82) scaleX(1.06)}70%{transform:scaleY(1.12)}100%{transform:scaleY(1)}}
@keyframes taf-blink{50%{opacity:.3}}
@keyframes taf-shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}

@media (max-width:820px){
  .taf__top{grid-template-columns:minmax(0,1fr)}
  .taf__word{font-size:25cqw}
  .taf__walk{margin-top:44px}
  .taf__cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);row-gap:28px}
  .taf__cols>div:first-child{grid-column:1/-1}
  .taf__link{overflow-wrap:anywhere}
  .taf__news{grid-column:1/-1}
  .taf__bottom{grid-template-columns:1fr 1fr;row-gap:12px}
}
@media (prefers-reduced-motion:reduce){
  .taf *{animation:none!important;transition:none!important}
  .taf .taf__word span{transform:none}
  .taf .taf__tag .w{opacity:1;transform:none;filter:none}
  .taf .taf__bot{opacity:1}
}
/* ===== TAF END ===== */
