@font-face{
    font-family:'NeueHaasGroteskDisplayPro';
    src:url("../webfonts/NeueHaasGroteskDisplayPro45Light/font.5e2a163feb1a.woff2") format("woff2"),
        url("../webfonts/NeueHaasGroteskDisplayPro45Light/font.87325ef36f3d.woff") format("woff");
    font-weight:300;
    font-style:normal;
}

@font-face{
    font-family:'NeueHaasGroteskDisplayPro';
    src:url("../webfonts/NeueHaasGroteskDisplayPro55Roman/font.52935c1b2647.woff2") format("woff2"),
        url("../webfonts/NeueHaasGroteskDisplayPro55Roman/font.473bac2a756c.woff") format("woff");
    font-weight:400;
    font-style:normal;
}

@font-face{
    font-family:'NeueHaasGroteskDisplayPro';
    src:url("../webfonts/NeueHaasGroteskDisplayPro65Medium/font.ba47fdf16c37.woff2") format("woff2"),
        url("../webfonts/NeueHaasGroteskDisplayPro65Medium/font.8bcdff9a42c6.woff") format("woff");
    font-weight:500;
    font-style:normal;
}

input,
textarea,
button,
select{
    font-family:'NeueHaasGroteskDisplayPro',sans-serif;
}

html,body{
    font-family:'NeueHaasGroteskDisplayPro',sans-serif;
    font-weight:400;
    height:100%;
}

body{
    background:#f9f9f9;
}

body{
    margin:0;
    font-family:'NeueHaasGroteskDisplayPro',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
    color:#111;
    background:#f9f9f9;
}

.wrapper{
    max-width:780px;
    margin:0 auto;
    padding:0 20px 80px 20px;
}

.btn-back{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 18px;
  border-radius:999px;
  background:#ffd956;
  border:1px solid #ffd956;
  color:#000;
  text-decoration:none;
  font-weight:500;
  font-size:16px;
  cursor:pointer;
  -webkit-tap-highlight-color: transparent;
}

.btn-back__icon{
  width:18px;
  height:18px;
  display:block;
  pointer-events:none;
}

.btn-back__text{
  margin: 2px 0 0 0;
}


.tab{
    position:sticky;
    top:14px;
    z-index:50;
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:14px auto 0 auto;
    padding:12px 16px;
    background:rgba(255,255,255,0.92);
    border:1px solid #f1f1f1;
    border-radius:999px;
    box-shadow:0 10px 24px rgba(0,0,0,.08);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
}

.tab .left{
    display:flex;
    align-items:center;
    gap:10px;
}

.tab .left img{
    height:20px;
    width:auto;
    display:block;
}

.tab .right{
    display:flex;
    align-items:center;
    gap:10px;
}

.tab .right img{
    width:18px;
    height:18px;
    opacity:.8;
}

.tab .right a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 18px;
    border-radius:999px;
    background:#ffd956;
    border:1px solid #f0d14f;
    color:#111;
    text-decoration:none;
    font-weight:500;
    font-size:14px;
}

.header{
    margin:56px 0 26px 0;
}

.header h1{
    margin:0 0 14px 0;
    font-size:56px;
    line-height:1.02;
    letter-spacing:-0.02em;
    font-weight:600;
}

.header p{
    margin:0;
    max-width:640px;
    font-size:14px;
    line-height:1.6;
    color:#6b6b6b;
}

#sub_header{
    font-weight:500;
    font-size:20px;
    color:black;
}

.content{
    padding:18px 0;
}

.content + .content{
    margin-top:18px;
}

.content p{
    margin:8px 0;
    font-size:16px;
    line-height:1.7;
    color:#6b6b6b;
    font-weight: 400;
}

.content p strong{
    display:block;
    margin:0 0 10px 0;
    font-size:24px;
    font-weight:600;
    color:#1a1a1a;
}

a{
    color:#111;
    text-decoration:underline;
    text-underline-offset:2px;
}

hr{
    border:none;
    height:1px;
    background-color:#D4D4D4;
}



.footer_bg{
    background:#f9f9f9;
    padding:50px 20px 0 20px;
}

.footer{
    border:1px solid white;
    border-radius:15px;
    background:white;
    padding:80px;
}

.footer_header{
    display:flex;
}

.footer_header_left{
    width:25%;
    box-sizing:border-box;
}

.footer_header_left img{
    width:143px;
    padding:0 0 20px 0;
}

.footer_header_left p{
    font-size:14px;
    font-weight:400;
    color:#757575;
}

.footer_address p{
    font-size: 16px !important;
    font-style:normal;
    margin:0;
}

.footer_header_center .footer_address p {
    font-size: 16px;
}

.footer_address p{
    font-size:16px;
    font-weight:400;
    margin:0 0 6px 0;
    color:black !important;
}

.footer_contact_label{
    padding:20px 0 0 0;
    font-size:14px;
    font-weight:400;
    color:#757575;
    margin:0;
}

.footer_contact_email{
    font-size:16px;
    font-weight:500;
    margin:0;
    color:black !important;
}

.footer_header_left_icons{
    display:flex;
    gap:12px;
}

.footer_header_left_icons img{
    padding:20px 0 0 0;
    width:24px;
}

.footer_header_center{
    margin:57px 0 0 0;
    width:25%;
    box-sizing:border-box;
}

.footer_header_center p{
    font-size:14px;
    font-weight:400;
    color:#757575;
}

.footer_header_right{
    padding:160px 0 50px 0;
    width:50%;
    box-sizing:border-box;
}

.footer_big{
    font-size:106px;
    text-align:end;
    font-weight:500;
    margin:0;
}

.footer_bottom{
    padding:30px 0 0 0;
    display:flex;
    justify-content:space-between;
}

.footer_bottom p{
    font-size:14px;
    font-weight:300;
    margin:0;
}

.footer_bottom a{
    font-size:14px;
    font-weight:300;
    color:black;
}

.anime_to_top_slow_mid_long{
    opacity:0;
    transform:translateY(40px);
    transition:opacity 1.0s ease-out,transform 1.0s ease-out;
    pointer-events:none;
}

.anime_to_top_slow_mid_long.is-visible{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}

@media (max-width:768px){
    .wrapper{
        max-width:720px;
    }

    .header{
        margin-top:42px;
    }

    .header h1{
        font-size:40px;
    }

    .header p{
        font-size:13px;
    }
}

@media (max-width:480px){
    .wrapper{
        padding:0 16px 60px 16px;
    }

    .tab{
        top:10px;
        padding:10px 12px;
    }

    .tab .left img{
        height:18px;
    }

    .tab .right a{
        padding:8px 14px;
        font-size:13px;
    }

    .header h1{
        font-size:32px;
    }

    .content p strong{
        font-size:15px;
    }
}

@media (max-width:991px){
    .footer{
        padding:50px;
    }

    .footer_header_left img{
        width:120px;
    }

    .footer_big{
        font-size:60px;
    }

    .footer_header_center{
        margin:55px 0 0 0;
    }

    .footer_header_left p,
    .footer_header_center p,
    .footer_bottom p,
    .footer_bottom a{
        font-size:13px;
    }

    .footer_header_left_icons img{
        width:20px;
    }
}

@media (max-width:576px){
    .footer_header_right{
        display:none;
    }

    .footer_address{
        padding:0 0 20px 0;
    }

    .footer{
        padding:24px;
        border-radius:20px;
    }

    .footer_header{
        flex-direction:column;
        gap:32px;
    }

    .footer_header_left,
    .footer_header_center,
    .footer_header_right{
        width:100%;
        margin:0;
        margin-left:0px !important;
    }

    .footer_big{
        font-size:48px;
        text-align:left;
    }

    .footer_bottom{
        flex-direction:column;
        gap:12px;
        align-items:flex-start;
        padding-top:30px;
    }

    .footer_header_left img{
        width:120px;
    }

    .footer_header_left_icons img{
        width:30px;
    }
}

/* special settings */
@media (max-width: 850px){
    .footer_big span{
        display:none;
    }

    .footer_header_left{
        width:90%;
    }

    .footer_header_center{
        width:70%;
        margin-left:10%;
        margin-right:-30%;
    }
}