.hapo-footer{position:relative;isolation:isolate;overflow:hidden;background:#030303;color:#a4a4a4;font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.5}
.hapo-footer *{box-sizing:border-box}
.hapo-footer--full{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.hapo-footer__inner{position:relative;z-index:1;width:min(1280px,calc(100% - 48px));margin:auto;padding-top:80px}
.hapo-footer__brand-logo{position:absolute;top:80px;left:0;z-index:2}
.hapo-footer__logo{display:block;width:356px;max-width:100%;height:auto}
.hapo-footer__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:minmax(520px,auto) minmax(299px,auto);column-gap:20px;position:relative}
.hapo-footer__grid:after{content:"";position:absolute;left:50%;top:520px;width:100vw;height:1px;transform:translateX(-50%);background:#5b5b5b}
.hapo-footer__column{min-width:0}
.hapo-footer__column--brand{grid-column:span 5;padding:114px 40px 60px 0}
.hapo-footer__column--services{grid-column:span 2}
.hapo-footer__column--about{grid-column:span 2}
.hapo-footer__column--policies{grid-column:span 3}
.hapo-footer__column--legal{grid-column:span 6;padding:57px 38px 35px 0}
.hapo-footer__column--certification{grid-column:span 2;padding:60px 0 30px}
.hapo-footer__column--community,.hapo-footer__column--fanpage{grid-column:span 2;padding:60px 0 30px;text-align:center}
.hapo-footer__heading{margin:0 0 25px;color:#f5f5f5;font-size:16px;font-weight:700;line-height:1.35}
.hapo-footer__column-content p{margin:0 0 10px}
.hapo-footer__column-content ul{list-style:none;margin:0;padding:0}
.hapo-footer__column-content li{margin:0 0 20px}
.hapo-footer__column-content a{color:inherit;text-decoration:none;transition:color .22s ease,transform .22s ease}
.hapo-footer__column-content li a{display:inline-block}
.hapo-footer__column-content a:hover{color:#23d467}
.hapo-footer__column-content li a:hover{transform:translateX(4px)}
.hapo-footer__column-content a:focus-visible{outline:2px solid #36db75;outline-offset:4px;border-radius:2px}
.hapo-footer__company{margin-bottom:31px!important;color:#f7f7f7;font-size:16px;font-weight:700;white-space:nowrap}
.hapo-footer__social{margin-top:91px}
.hapo-footer__social>div{display:flex;gap:20px;margin-top:10px}
.hapo-footer__social a,.hapo-footer__social div>span{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#08c55b;color:#fff;font-size:20px;font-weight:750;line-height:1}
.hapo-footer__social div>:nth-child(3){font-size:11px}
.hapo-footer__social a:hover{color:#fff;background:#25de70;transform:translateY(-4px) scale(1.05);box-shadow:0 7px 24px #00c65b55}
.hapo-footer__legal-name{color:#777;font-size:17px;font-weight:700}
.hapo-footer__column--legal small{display:block;margin-top:77px;font-size:12px}
.hapo-footer__column--certification .hapo-footer__media-note{margin-top:8px}
.hapo-footer__media-note{display:grid;place-items:center;min-height:92px;padding:12px;border:1px dashed #525252;border-radius:6px;color:#777;font-size:12px;text-align:center}
.hapo-footer__column--community .hapo-footer__media-note,.hapo-footer__column--fanpage .hapo-footer__media-note{width:140px;height:140px;margin:0 auto 14px}
.hapo-footer__qr-label{color:#f5f5f5}
.hapo-footer__reference-media{background-image:url("../images/hapo-footer/reference.jpg");background-repeat:no-repeat;transition:transform .25s ease,filter .25s ease}
.hapo-footer__reference-media:hover{transform:translateY(-4px);filter:brightness(1.1)}
.hapo-footer__reference-media--badge{width:165px;height:68px;background-position:-1035px -658px}
.hapo-footer__reference-media--community,.hapo-footer__reference-media--fanpage{width:140px;height:140px;margin:0 auto 16px}
.hapo-footer__reference-media--community{background-position:-1260px -661px}
.hapo-footer__reference-media--fanpage{background-position:-1460px -661px}
.hapo-footer__column-content img{max-width:100%;height:auto;transition:transform .3s ease,filter .3s ease}
.hapo-footer__column-content a:hover img{transform:translateY(-4px);filter:brightness(1.1)}
.hapo-footer__shapes{pointer-events:none;position:absolute;inset:0;width:100%;height:100%;opacity:.32;stroke:#1aca68;stroke-width:1.2;fill:none}
.hapo-footer__shapes path{stroke-dasharray:1;stroke-dashoffset:1;animation:hapo-footer-shape 9s ease-in-out infinite}
.hapo-footer__shapes path:nth-child(2){animation-delay:1.4s}.hapo-footer__shapes path:nth-child(3){animation-delay:2.8s}.hapo-footer__shapes path:nth-child(4){animation-delay:4.2s}.hapo-footer__shapes path:nth-child(5){animation-delay:5.6s}
@keyframes hapo-footer-shape{0%,12%{stroke-dashoffset:1;opacity:0}32%{stroke-dashoffset:0;opacity:1}58%{stroke-dashoffset:0;opacity:1}78%,100%{stroke-dashoffset:0;opacity:0}}
@media(max-width:1100px){.hapo-footer__inner{width:min(100% - 48px,900px)}.hapo-footer__grid{grid-template-rows:auto auto}.hapo-footer__grid:after{top:auto;bottom:300px}.hapo-footer__column--brand{grid-column:span 6}.hapo-footer__column--services,.hapo-footer__column--about,.hapo-footer__column--policies{grid-column:span 2}.hapo-footer__company{white-space:normal}.hapo-footer__column--legal{grid-column:span 6}}
@media(max-width:767px){.hapo-footer__inner{width:calc(100% - 36px);padding-top:45px}.hapo-footer__brand-logo{top:45px}.hapo-footer__logo{width:min(280px,80vw)}.hapo-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:26px 18px}.hapo-footer__grid:after{display:none}.hapo-footer__column--brand{grid-column:1/-1;padding:115px 0 4px}.hapo-footer__column--services,.hapo-footer__column--about,.hapo-footer__column--policies{grid-column:span 1}.hapo-footer__column--legal{grid-column:1/-1;margin-top:12px;padding:30px 0 5px;border-top:1px solid #555}.hapo-footer__column--certification,.hapo-footer__column--community,.hapo-footer__column--fanpage{grid-column:span 1;padding:0 0 20px}.hapo-footer__social{margin-top:32px}.hapo-footer__company{font-size:14px}.hapo-footer__heading{font-size:14px}.hapo-footer__column-content li{margin-bottom:13px}.hapo-footer__column--legal small{margin-top:28px}.hapo-footer__column--community .hapo-footer__media-note,.hapo-footer__column--fanpage .hapo-footer__media-note{max-width:100%;height:120px}}
@media(prefers-reduced-motion:reduce){.hapo-footer__shapes path{animation:none;stroke-dashoffset:0;opacity:.22}.hapo-footer__column-content a,.hapo-footer__column-content img{transition:none}}
