footer.ft{background:var(--navy-d,#122B3B);color:#fff;padding:0;overflow:hidden;position:relative;isolation:isolate}
footer.ft::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(800px circle at 10% 0,rgba(255,81,0,.2),transparent 60%),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px) 0 0/72px 72px,linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px) 0 0/72px 72px;-webkit-mask:linear-gradient(#000 30%,transparent);mask:linear-gradient(#000 30%,transparent)}
.ft .ft-in{max-width:var(--max,1360px);margin:0 auto;padding:0 var(--px,clamp(20px,5vw,72px))}
.ft-top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,80px);padding:clamp(36px,4vw,56px) 0 clamp(28px,3vw,40px);align-items:start}
.ft .ft-big{margin:0;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:clamp(36px,4.6vw,68px);line-height:.9;letter-spacing:-.05em;color:#fff;max-width:none}
.ft .ft-big mark{background:var(--orange);color:#fff;padding:0 .12em .04em;margin-left:-.04em}
.ft-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:24px}
.ft .ft-cta .btn{padding:14px 22px;font-size:16px}
.ft .ft-so{display:inline-flex;align-items:center;color:#fff;font-weight:700;font-size:16px;padding:13px 20px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.4);transition:background .3s,box-shadow .3s,color .3s}.ft .ft-so:hover{background:#fff;color:var(--navy);box-shadow:inset 0 0 0 2px #fff}
.ft-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px clamp(20px,3vw,48px)}
.ft-c b{display:block;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid rgba(255,255,255,.18)}
.ft-c ul{list-style:none;margin:0;padding:0;display:grid;gap:0}
.ft .ft-c a{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:6px 0;color:rgba(255,255,255,.9);font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:clamp(15px,1.2vw,17px);letter-spacing:-.01em;line-height:1.2;transition:color .25s,padding .4s var(--ease)}
.ft-c a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--orange);transform:scaleX(0);transform-origin:0 50%;transition:transform .45s var(--ease)}
.ft-c a i{font-style:normal;color:var(--orange);opacity:0;transform:translateX(-8px);transition:opacity .3s,transform .4s var(--ease)}
.ft .ft-c a:hover{color:#fff;padding-left:8px}.ft-c a:hover::after{transform:none}.ft-c a:hover i{opacity:1;transform:none}
.ft-base{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:16px 0 20px;border-top:2px solid rgba(255,255,255,.18);font-size:13px;letter-spacing:.06em;color:rgba(255,255,255,.75)}
.ft-chips{display:flex;flex-wrap:wrap;gap:8px}
.ft .ft-ch{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;color:#fff;font-weight:600;font-size:13px;letter-spacing:.02em;border:2px solid rgba(255,255,255,.25);transition:background .3s,border-color .3s,transform .35s var(--ease),box-shadow .35s var(--ease)}
.ft-ch i{font-style:normal;color:var(--orange);transition:transform .35s var(--ease),color .3s}
.ft a.ft-ch:hover{color:#fff;background:var(--orange);border-color:var(--orange);transform:translate(-2px,-2px);box-shadow:4px 4px 0 rgba(255,255,255,.18)}.ft a.ft-ch:hover i{color:#fff;transform:translate(3px,-3px)}
.ft-lg b{font-weight:800;font-variant-numeric:tabular-nums}
.ft-dot{width:9px;height:9px;border-radius:50%;background:#2fd37a;box-shadow:0 0 0 0 rgba(47,211,122,.6);animation:ftp 2s infinite}@keyframes ftp{70%{box-shadow:0 0 0 10px rgba(47,211,122,0)}100%{box-shadow:0 0 0 0 rgba(47,211,122,0)}}
.ft-r{display:flex;align-items:center;gap:16px}
.ft-up{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#fff;padding:6px 12px;border:2px solid rgba(255,255,255,.35);transition:background .3s,border-color .3s}.ft-up i{font-style:normal;color:var(--orange);transition:transform .35s var(--ease),color .3s}.ft-up:hover,.ft-up:focus-visible{background:var(--orange);border-color:var(--orange)}.ft-up:hover i{color:#fff;transform:translateY(-3px)}
.ft .ft-hd,.ft .ft-c,.ft .ft-base{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .7s var(--ease)}
.ft.in .ft-hd,.ft.in .ft-c,.ft.in .ft-base{opacity:1;transform:none}.ft.in .ft-c:nth-child(2){transition-delay:.08s}.ft.in .ft-c:nth-child(3){transition-delay:.16s}.ft.in .ft-base{transition-delay:.2s}
@media(max-width:960px){.ft-top{grid-template-columns:minmax(0,1fr)}}@media(max-width:620px){.ft-map{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.ft-map{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.ft .ft-hd,.ft .ft-c,.ft .ft-base{opacity:1;transform:none;transition:none}.ft-dot{animation:none}}
.ft .ft-logo{display:inline-flex}.ft .ft-logo img{height:clamp(34px,3.2vw,46px);width:auto;display:block;margin:0;transition:transform .5s var(--ease)}.ft .ft-logo:hover img{transform:translateX(4px)}
.ft .ft-tag{margin:18px 0 0;font-size:clamp(16px,1.3vw,19px);line-height:1.5;color:rgba(255,255,255,.85);max-width:36ch}
.ft .ft-cta .btn{white-space:nowrap;height:auto;min-height:0}
