/* ==========================================================================
    Layout
========================================================================== */
/*padding-top*/
.pt-5  { padding-top: clamp(5px, 1vw, 5px); }
.pt-10 { padding-top: clamp(5px, 2vw, 10px); }
.pt-15 { padding-top: clamp(5px, 2.5vw, 15px); }
.pt-20 { padding-top: clamp(5px, 3vw, 20px); }
.pt-25 { padding-top: clamp(5px, 3.5vw, 25px); }
.pt-30 { padding-top: clamp(5px, 4vw, 30px); }
.pt-35 { padding-top: clamp(5px, 4.5vw, 35px); }
.pt-40 { padding-top: clamp(5px, 5vw, 40px); }
.pt-45 { padding-top: clamp(5px, 5.5vw, 45px); }
.pt-50 { padding-top: clamp(5px, 6vw, 50px); }
.pt-55 { padding-top: clamp(5px, 6.5vw, 55px); }
.pt-60 { padding-top: clamp(5px, 7vw, 60px); }
.pt-65 { padding-top: clamp(5px, 7.5vw, 65px); }
.pt-70 { padding-top: clamp(5px, 8vw, 70px); }
.pt-75 { padding-top: clamp(5px, 8.5vw, 75px); }
.pt-80 { padding-top: clamp(5px, 9vw, 80px); }
.pt-85 { padding-top: clamp(5px, 9.5vw, 85px); }
.pt-90 { padding-top: clamp(5px, 10vw, 90px); }
.pt-95 { padding-top: clamp(5px, 10.5vw, 95px); }
.pt-100 { padding-top: clamp(5px, 11vw, 100px); }

/*padding-bottom*/
.pb-5   { padding-bottom: clamp(5px, 1vw, 5px); }
.pb-10  { padding-bottom: clamp(5px, 2vw, 10px); }
.pb-15  { padding-bottom: clamp(5px, 2.5vw, 15px); }
.pb-20  { padding-bottom: clamp(5px, 3vw, 20px); }
.pb-25  { padding-bottom: clamp(5px, 3.5vw, 25px); }
.pb-30  { padding-bottom: clamp(5px, 4vw, 30px); }
.pb-35  { padding-bottom: clamp(5px, 4.5vw, 35px); }
.pb-40  { padding-bottom: clamp(5px, 5vw, 40px); }
.pb-45  { padding-bottom: clamp(5px, 5.5vw, 45px); }
.pb-50  { padding-bottom: clamp(5px, 6vw, 50px); }
.pb-55  { padding-bottom: clamp(5px, 6.5vw, 55px); }
.pb-60  { padding-bottom: clamp(5px, 7vw, 60px); }
.pb-65  { padding-bottom: clamp(5px, 7.5vw, 65px); }
.pb-70  { padding-bottom: clamp(5px, 8vw, 70px); }
.pb-75  { padding-bottom: clamp(5px, 8.5vw, 75px); }
.pb-80  { padding-bottom: clamp(5px, 9vw, 80px); }
.pb-85  { padding-bottom: clamp(5px, 9.5vw, 85px); }
.pb-90  { padding-bottom: clamp(5px, 10vw, 90px); }
.pb-95  { padding-bottom: clamp(5px, 10.5vw, 95px); }
.pb-100 { padding-bottom: clamp(5px, 11vw, 100px); }

/* padding-right */
.pr-5   { padding-right: clamp(5px, 1vw, 5px); }
.pr-10  { padding-right: clamp(5px, 2vw, 10px); }
.pr-15  { padding-right: clamp(5px, 2.5vw, 15px); }
.pr-20  { padding-right: clamp(5px, 3vw, 20px); }
.pr-25  { padding-right: clamp(5px, 3.5vw, 25px); }
.pr-30  { padding-right: clamp(5px, 4vw, 30px); }
.pr-35  { padding-right: clamp(5px, 4.5vw, 35px); }
.pr-40  { padding-right: clamp(5px, 5vw, 40px); }
.pr-45  { padding-right: clamp(5px, 5.5vw, 45px); }
.pr-50  { padding-right: clamp(5px, 6vw, 50px); }
.pr-55  { padding-right: clamp(5px, 6.5vw, 55px); }
.pr-60  { padding-right: clamp(5px, 7vw, 60px); }
.pr-65  { padding-right: clamp(5px, 7.5vw, 65px); }
.pr-70  { padding-right: clamp(5px, 8vw, 70px); }
.pr-75  { padding-right: clamp(5px, 8.5vw, 75px); }
.pr-80  { padding-right: clamp(5px, 9vw, 80px); }
.pr-85  { padding-right: clamp(5px, 9.5vw, 85px); }
.pr-90  { padding-right: clamp(5px, 10vw, 90px); }
.pr-95  { padding-right: clamp(5px, 10.5vw, 95px); }
.pr-100 { padding-right: clamp(5px, 11vw, 100px); }


/* padding-left */
.pl-5   { padding-left: clamp(5px, 1vw, 5px); }
.pl-10  { padding-left: clamp(5px, 2vw, 10px); }
.pl-15  { padding-left: clamp(5px, 2.5vw, 15px); }
.pl-20  { padding-left: clamp(5px, 3vw, 20px); }
.pl-25  { padding-left: clamp(5px, 3.5vw, 25px); }
.pl-30  { padding-left: clamp(5px, 4vw, 30px); }
.pl-35  { padding-left: clamp(5px, 4.5vw, 35px); }
.pl-40  { padding-left: clamp(5px, 5vw, 40px); }
.pl-45  { padding-left: clamp(5px, 5.5vw, 45px); }
.pl-50  { padding-left: clamp(5px, 6vw, 50px); }
.pl-55  { padding-left: clamp(5px, 6.5vw, 55px); }
.pl-60  { padding-left: clamp(5px, 7vw, 60px); }
.pl-65  { padding-left: clamp(5px, 7.5vw, 65px); }
.pl-70  { padding-left: clamp(5px, 8vw, 70px); }
.pl-75  { padding-left: clamp(5px, 8.5vw, 75px); }
.pl-80  { padding-left: clamp(5px, 9vw, 80px); }
.pl-85  { padding-left: clamp(5px, 9.5vw, 85px); }
.pl-90  { padding-left: clamp(5px, 10vw, 90px); }
.pl-95  { padding-left: clamp(5px, 10.5vw, 95px); }
.pl-100 { padding-left: clamp(5px, 11vw, 100px); }

/*padding-block*/
.py-5   { padding-block: clamp(5px, 1vw, 5px); }
.py-10  { padding-block: clamp(5px, 2vw, 10px); }
.py-15  { padding-block: clamp(5px, 2.5vw, 15px); }
.py-20  { padding-block: clamp(5px, 3vw, 20px); }
.py-25  { padding-block: clamp(5px, 3.5vw, 25px); }
.py-30  { padding-block: clamp(5px, 4vw, 30px); }
.py-35  { padding-block: clamp(5px, 4.5vw, 35px); }
.py-40  { padding-block: clamp(5px, 5vw, 40px); }
.py-45  { padding-block: clamp(5px, 5.5vw, 45px); }
.py-50  { padding-block: clamp(5px, 6vw, 50px); }
.py-55  { padding-block: clamp(5px, 6.5vw, 55px); }
.py-60  { padding-block: clamp(5px, 7vw, 60px); }
.py-65  { padding-block: clamp(5px, 7.5vw, 65px); }
.py-70  { padding-block: clamp(5px, 8vw, 70px); }
.py-75  { padding-block: clamp(5px, 8.5vw, 75px); }
.py-80  { padding-block: clamp(5px, 9vw, 80px); }
.py-85  { padding-block: clamp(5px, 9.5vw, 85px); }
.py-90  { padding-block: clamp(5px, 10vw, 90px); }
.py-95  { padding-block: clamp(5px, 10.5vw, 95px); }
.py-100 { padding-block: clamp(5px, 11vw, 100px); }
.py-120 { padding-block: clamp(5px, 13vw, 120px); }
.py-150 { padding-block: clamp(5px, 16.5vw, 150px); }
.py-160 { padding-block: clamp(5px, 17vw, 160px); }

/* margin-top */
.mt-5   { margin-top: clamp(5px, 1vw, 5px); }
.mt-10  { margin-top: clamp(5px, 2vw, 10px); }
.mt-15  { margin-top: clamp(5px, 2.5vw, 15px); }
.mt-20  { margin-top: clamp(5px, 3vw, 20px); }
.mt-25  { margin-top: clamp(5px, 3.5vw, 25px); }
.mt-30  { margin-top: clamp(5px, 4vw, 30px); }
.mt-35  { margin-top: clamp(5px, 4.5vw, 35px); }
.mt-40  { margin-top: clamp(5px, 5vw, 40px); }
.mt-45  { margin-top: clamp(5px, 5.5vw, 45px); }
.mt-50  { margin-top: clamp(5px, 6vw, 50px); }
.mt-55  { margin-top: clamp(5px, 6.5vw, 55px); }
.mt-60  { margin-top: clamp(5px, 7vw, 60px); }
.mt-65  { margin-top: clamp(5px, 7.5vw, 65px); }
.mt-70  { margin-top: clamp(5px, 8vw, 70px); }
.mt-75  { margin-top: clamp(5px, 8.5vw, 75px); }
.mt-80  { margin-top: clamp(5px, 9vw, 80px); }
.mt-85  { margin-top: clamp(5px, 9.5vw, 85px); }
.mt-90  { margin-top: clamp(5px, 10vw, 90px); }
.mt-95  { margin-top: clamp(5px, 10.5vw, 95px); }
.mt-100 { margin-top: clamp(5px, 11vw, 100px); }
.mt-110 { margin-top: clamp(5px, 11.5vw, 110px); }
.mt-120 { margin-top: clamp(5px, 12vw, 120px); }


/* margin-bottom */
.mb-5   { margin-bottom: clamp(5px, 1vw, 5px); }
.mb-10  { margin-bottom: clamp(5px, 2vw, 10px); }
.mb-15  { margin-bottom: clamp(5px, 2.5vw, 15px); }
.mb-20  { margin-bottom: clamp(5px, 3vw, 20px); }
.mb-25  { margin-bottom: clamp(5px, 3.5vw, 25px); }
.mb-30  { margin-bottom: clamp(5px, 4vw, 30px); }
.mb-35  { margin-bottom: clamp(5px, 4.5vw, 35px); }
.mb-40  { margin-bottom: clamp(5px, 5vw, 40px); }
.mb-45  { margin-bottom: clamp(5px, 5.5vw, 45px); }
.mb-50  { margin-bottom: clamp(5px, 6vw, 50px); }
.mb-55  { margin-bottom: clamp(5px, 6.5vw, 55px); }
.mb-60  { margin-bottom: clamp(5px, 7vw, 60px); }
.mb-65  { margin-bottom: clamp(5px, 7.5vw, 65px); }
.mb-70  { margin-bottom: clamp(5px, 8vw, 70px); }
.mb-75  { margin-bottom: clamp(5px, 8.5vw, 75px); }
.mb-80  { margin-bottom: clamp(5px, 9vw, 80px); }
.mb-85  { margin-bottom: clamp(5px, 9.5vw, 85px); }
.mb-90  { margin-bottom: clamp(5px, 10vw, 90px); }
.mb-95  { margin-bottom: clamp(5px, 10.5vw, 95px); }
.mb-100 { margin-bottom: clamp(5px, 11vw, 100px); }


/* margin-block */
.my-5   { margin-block: clamp(5px, 1vw, 5px); }
.my-10  { margin-block: clamp(5px, 2vw, 10px); }
.my-15  { margin-block: clamp(5px, 2.5vw, 15px); }
.my-20  { margin-block: clamp(5px, 3vw, 20px); }
.my-25  { margin-block: clamp(5px, 3.5vw, 25px); }
.my-30  { margin-block: clamp(5px, 4vw, 30px); }
.my-35  { margin-block: clamp(5px, 4.5vw, 35px); }
.my-40  { margin-block: clamp(5px, 5vw, 40px); }
.my-45  { margin-block: clamp(5px, 5.5vw, 45px); }
.my-50  { margin-block: clamp(5px, 6vw, 50px); }
.my-55  { margin-block: clamp(5px, 6.5vw, 55px); }
.my-60  { margin-block: clamp(5px, 7vw, 60px); }
.my-65  { margin-block: clamp(5px, 7.5vw, 65px); }
.my-70  { margin-block: clamp(5px, 8vw, 70px); }
.my-75  { margin-block: clamp(5px, 8.5vw, 75px); }
.my-80  { margin-block: clamp(5px, 9vw, 80px); }
.my-85  { margin-block: clamp(5px, 9.5vw, 85px); }
.my-90  { margin-block: clamp(5px, 10vw, 90px); }
.my-95  { margin-block: clamp(5px, 10.5vw, 95px); }
.my-100 { margin-block: clamp(5px, 11vw, 100px); }

/* ==========================================================================
    Lib
========================================================================== */

html.lenis, html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}