* {
    position: relative;
    margin: 0;
    padding: 0;
    letter-spacing: 0;
    font-family: "Noto Sans TC", sans-serif;
    border: none;
    outline: none;
    background-color: transparent;
    word-wrap: break-word;
    box-sizing: border-box;
    -ms-overflow-style: none;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    touch-action: manipulation;
    -webkit-touch-callout: inherit;
    -webkit-user-select: inherit;
    -khtml-user-select: inherit;
    -moz-user-select: inherit;
    -ms-user-select: inherit;
    user-select: inherit;
}

*::before,
*::after {
    box-sizing: border-box;
}

*::-webkit-scrollbar {
    display: none;
}

* [user-select="0"] {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

* [user-select="1"] {
    -webkit-touch-callout: initial;
    -webkit-user-select: initial;
    -khtml-user-select: initial;
    -moz-user-select: initial;
    -ms-user-select: initial;
    user-select: initial;
}

a {
    text-decoration: none;
}

img {
    content: url("data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==");
    object-fit: cover;
}

img.out {
    content: url("data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==") !important;
}

img[src]:not([src=""]) {
    content: unset;
}

textarea {
    resize: none;
}

input,
textarea,
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input::placeholder,
textarea::placeholder {
    color: rgba(0, 0, 0, 0.2039215686);
    opacity: 1;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.2039215686);
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.2039215686);
}

a[href]:not([href=""]),
button {
    cursor: pointer;
}

html {
    position: fixed;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

body {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden scroll;
}

body>header:nth-child(1) {
    position: relative;
    display: flex;
    flex-flow: column;
    width: 100%;
    background-size: cover;
    background-position: center;
}

body>header:nth-child(1)::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5019607843);
    backdrop-filter: blur(0.25rem);
    -webkit-backdrop-filter: blur(0.25rem);
}

body>header:nth-child(1)>nav {
    position: sticky;
    z-index: 2;
    top: 0;
    width: 100%;
    transition: 0.3s;
    background-color: rgba(0, 0, 0, 0);
    backdrop-filter: blur(0);
    -webkit-backdrop-filter: blur(0);
}

body>header:nth-child(1)>nav.show {
    backdrop-filter: blur(1rem);
    -webkit-backdrop-filter: blur(1rem);
}

@media screen and (max-width: 479.99px) {
    body>header:nth-child(1)>nav:has(ul.show) {
        position: fixed;
        right: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5019607843);
        backdrop-filter: blur(1rem);
        -webkit-backdrop-filter: blur(1rem);
    }

    body>header:nth-child(1)>nav:has(ul.show)>section strong {
        opacity: 0;
    }
}

body>header:nth-child(1)>section {
    position: relative;
    z-index: 1;
}

body>header:nth-child(1)>section.top,
body>header:nth-child(1)>nav>section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    margin: 0 auto;
    width: 100%;
    max-width: 1280px;
    transition: 0.3s;
}

body>header:nth-child(1)>section.top>section,
body>header:nth-child(1)>nav>section>section {
    display: flex;
    gap: 1.5rem;
}

body>header:nth-child(1)>section.top>section.right,
body>header:nth-child(1)>nav>section>section.right {
    justify-content: flex-end;
}

body>header:nth-child(1)>section.top>section>a,
body>header:nth-child(1)>nav>section>section>a {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: #fff;
}

body>header:nth-child(1)>section.top>section>a i,
body>header:nth-child(1)>nav>section>section>a i {
    font-size: 1.25rem;
    color: inherit;
}

body>header:nth-child(1)>section.top>section>button.tab,
body>header:nth-child(1)>nav>section>section>button.tab {
    color: #fff;
    overflow: hidden;
    transition: 0.3s;
}

@media screen and (min-width: 480px) {

    body>header:nth-child(1)>section.top>section>button.tab,
    body>header:nth-child(1)>nav>section>section>button.tab {
        margin-left: -1.5rem;
        width: 0;
    }
}

body>header:nth-child(1)>section.top>section>button.tab i,
body>header:nth-child(1)>nav>section>section>button.tab i {
    font-size: 1.25rem;
    color: inherit;
    pointer-events: none;
}

body>header:nth-child(1)>section.top>section>a.button,
body>header:nth-child(1)>nav>section>section>a.button {
    display: flex;
    align-items: center;
    padding: 0 1rem;
    gap: 0.75rem;
    line-height: 2.5rem;
    color: #fff;
    backdrop-filter: blur(1rem);
    -webkit-backdrop-filter: blur(1rem);
    border-radius: 0.5rem;
    border: 1px solid #fff;
    transition: 0.3s;
}

body>header:nth-child(1)>section.top>section>a.button:hover,
body>header:nth-child(1)>nav>section>section>a.button:hover {
    background-color: #fff;
    border: 1px solid #fff;
    color: #000;
}

body>header:nth-child(1)>section.top>section>a.button:nth-child(1),
body>header:nth-child(1)>nav>section>section>a.button:nth-child(1) {
    background-color: #fff;
    border: 1px solid #fff;
    color: #000;
}

body>header:nth-child(1)>section.top>section>a.button>i,
body>header:nth-child(1)>nav>section>section>a.button>i {
    color: inherit;
}

body>header:nth-child(1)>section.top>section>img.logo,
body>header:nth-child(1)>nav>section>section>img.logo {
    object-fit: contain;
    height: 2rem;
}

body>header:nth-child(1)>section.top>section>strong,
body>header:nth-child(1)>nav>section>section>strong {
    flex-shrink: 0;
    line-height: 2rem;
    font-size: 1.5rem;
    color: #fff;
}

body>header:nth-child(1)>section.top>section>ul,
body>header:nth-child(1)>nav>section>section>ul {
    display: flex;
    list-style: none;
    gap: 1.5rem;
    overflow: hidden;
    z-index: 1;
    position: fixed;
    flex-flow: column;
    top: 0;
    bottom: 0;
    right: -22.5rem;
    padding: 2rem;
    width: 100%;
    max-width: 22.5rem;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6941176471);
    backdrop-filter: blur(1rem);
    -webkit-backdrop-filter: blur(1rem);
    opacity: 0;
    transition: 0.3s;
}

@media screen and (max-width: 479.99px) {

    body>header:nth-child(1)>section.top>section>ul.show,
    body>header:nth-child(1)>nav>section>section>ul.show {
        right: 0;
        opacity: 1;
    }
}

@media screen and (min-width: 480px) {

    body>header:nth-child(1)>section.top>section>ul,
    body>header:nth-child(1)>nav>section>section>ul {
        position: relative;
        flex-flow: row;
        right: 0;
        padding: 0;
        width: initial;
        max-width: unset;
        background-color: transparent;
        backdrop-filter: blur(0);
        -webkit-backdrop-filter: blur(0);
        opacity: 1;
        overflow: visible;
    }

    body>header:nth-child(1)>section.top>section>ul>li,
    body>header:nth-child(1)>nav>section>section>ul>li {
        position: relative;
        color: #fff;
        line-height: 3rem;
        white-space: nowrap;
        cursor: pointer;
    }

    body>header:nth-child(1)>section.top>section>ul>li:hover>ul,
    body>header:nth-child(1)>nav>section>section>ul>li:hover>ul {
        padding: 0.5rem 1rem;
        max-height: 50vh;
        opacity: 1;
    }

    body>header:nth-child(1)>section.top>section>ul>li>ul,
    body>header:nth-child(1)>nav>section>section>ul>li>ul {
        position: absolute;
        top: 3rem;
        right: -1rem;
        padding: 0 1rem;
        width: 8rem;
        max-height: 0;
        background-color: rgba(0, 0, 0, 0.7019607843);
        border-radius: 1rem;
        opacity: 0;
        overflow: hidden;
        list-style: none;
        backdrop-filter: blur(1rem);
        -webkit-backdrop-filter: blur(1rem);
        transition: 0.3s;
    }

    body>header:nth-child(1)>section.top>section>ul>li>ul li,
    body>header:nth-child(1)>nav>section>section>ul>li>ul li {
        color: #fff;
    }

    body>header:nth-child(1)>section.top>section>ul>li>ul:hover,
    body>header:nth-child(1)>nav>section>section>ul>li>ul:hover {
        max-height: 50vh;
        opacity: 1;
    }
}

body>header:nth-child(1)>section.top>section>ul>li,
body>header:nth-child(1)>nav>section>section>ul>li {
    color: #fff;
}

body>header:nth-child(1)>section.top>section>ul>li>ul,
body>header:nth-child(1)>nav>section>section>ul>li>ul {
    display: flex;
    flex-flow: column;
    gap: 0.5rem;
    padding: 1rem 1rem 0;
    list-style: none;
}

body>header:nth-child(1)>section.top>section>ul>li>ul>li,
body>header:nth-child(1)>nav>section>section>ul>li>ul>li {
    color: #fff;
}

body>header:nth-child(1)>section.top>section>ul>button.close,
body>header:nth-child(1)>nav>section>section>ul>button.close {
    position: absolute;
    bottom: 1rem;
    width: calc(100% - 4rem);
    line-height: 2.5rem;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0.5rem;
}

@media screen and (min-width: 480px) {

    body>header:nth-child(1)>section.top>section>ul>button.close,
    body>header:nth-child(1)>nav>section>section>ul>button.close {
        display: none;
    }
}

body>header:nth-child(1)>section.body {
    display: flex;
    justify-content: center;
    padding: 5rem 1rem 8rem;
    align-items: center;
    margin: 0 auto;
    width: 100%;
    max-width: 1280px;
    transition: 0.3s;
}

body>header:nth-child(1)>section.body>article {
    display: flex;
    flex-flow: column;
    align-items: center;
    padding: 0 0.5rem;
    width: 100%;
}

@media screen and (min-width: 480px) {
    body>header:nth-child(1)>section.body>article {
        padding: 0 1rem;
    }
}

body>header:nth-child(1)>section.body>article>h1 {
    margin-top: 0.5rem;
    text-align: center;
    font-size: 2.5rem;
    color: #fff;
}

@media screen and (min-width: 480px) {
    body>header:nth-child(1)>section.body>article>h1 {
        font-size: 3rem;
    }
}

body>header:nth-child(1)>section.body>article>h2 {
    text-align: center;
    font-size: 1.5rem;
    font-weight: 500;
    color: #fff;
}

body>header:nth-child(1)>section.body>article>h2 a {
    text-decoration: underline;
    color: inherit;
}

@media screen and (min-width: 480px) {
    body>header:nth-child(1)>section.body>article>h2 {
        font-size: 1.75rem;
    }
}

body>header:nth-child(1)>section.body>article>p {
    margin-top: 2rem;
    max-width: 30rem;
    line-height: 2rem;
    text-align: center;
    font-size: 1rem;
    color: #fff;
}

body>header:nth-child(1)>section.body>article>p a {
    text-decoration: underline;
    color: inherit;
}

@media screen and (min-width: 480px) {
    body>header:nth-child(1)>section.body>article>p {
        font-size: 1.25rem;
    }
}

body>header:nth-child(1)>section.body>article>section {
    display: flex;
    margin-top: 3rem;
    gap: 1.5rem;
    transition: 0.3s;
}

body>header:nth-child(1)>section.body>article>section>a {
    display: flex;
    align-items: center;
    padding: 0 1rem;
    gap: 0.75rem;
    line-height: 2.5rem;
    color: #fff;
    backdrop-filter: blur(1rem);
    -webkit-backdrop-filter: blur(1rem);
    border-radius: 0.5rem;
    border: 1px solid #fff;
    transition: 0.3s;
}

body>header:nth-child(1)>section.body>article>section>a:hover {
    background-color: #ffffff;
    border: 1px solid #ffffff;
    color: #000;
}

body>header:nth-child(1)>section.body>article>section>a:nth-child(1) {
    background-color: #ffffff;
    border: 1px solid #ffffff;
    color: #000;
}

body>header:nth-child(1)>section.body>article>section>a>i {
    font-size: 1rem;
    color: inherit;
}

body>section:nth-child(2) {
    position: relative;
    display: flex;
    flex-flow: column;
    gap: 4rem;
    padding: 4rem 1rem;
    background-color: #fff;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

body>section:nth-child(2)::before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    background-image: linear-gradient(to left bottom, transparent 0% 49.5%, #fff 50.5% 100%);
    top: calc(1px - 1.5rem);
    height: 1.5rem;
    transition: 0.3s;
}

@media screen and (min-width: 40rem) {
    body>section:nth-child(2)::before {
        top: calc(1px - 3rem);
        height: 3rem;
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(2)::before {
        top: calc(1px - 4rem);
        height: 4rem;
    }
}

body>section:nth-child(2)::after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    background-image: linear-gradient(to right bottom, #fff 0% 49.5%, transparent 50.5% 100%);
    bottom: calc(1px - 1.5rem);
    height: 1.5rem;
    transition: 0.3s;
}

@media screen and (min-width: 40rem) {
    body>section:nth-child(2)::after {
        bottom: calc(1px - 3rem);
        height: 3rem;
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(2)::after {
        bottom: calc(1px - 4rem);
        height: 4rem;
    }
}

body>section:nth-child(2)>section {
    display: flex;
    flex-flow: column;
    margin: 0 auto;
    width: 100%;
    max-width: 1280px;
}

body>section:nth-child(2)>section.header {
    justify-content: center;
    align-items: center;
    gap: 0.25rem;
}

body>section:nth-child(2)>section.header>p {
    font-size: 1rem;
}

body>section:nth-child(2)>section.header>strong {
    font-size: 1.75rem;
}

body>section:nth-child(2)>section.list {
    flex-flow: row wrap;
    justify-content: flex-start;
    gap: 1.5rem;
    transition: 0.3s;
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(2)>section.list.x2 {
        gap: 3rem;
    }
}

body>section:nth-child(2)>section.list.x2 article {
    width: 100%;
}

@media screen and (min-width: 30rem) {
    body>section:nth-child(2)>section.list.x2 article {
        width: calc((100% - 1.5rem) / 2);
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(2)>section.list.x2 article {
        width: calc((100% - 3rem) / 2);
    }
}

body>section:nth-child(2)>section.list.x4 article {
    width: 100%;
}

@media screen and (min-width: 30rem) {
    body>section:nth-child(2)>section.list.x4 article {
        width: calc((100% - 1.5rem) / 2);
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(2)>section.list.x4 article {
        width: calc((100% - 4.5rem) / 4);
    }
}

@media screen and (min-width: 50rem) {
    body>section:nth-child(2)>section.list.x5 {
        justify-content: center;
        gap: 2rem;
    }
}

@media screen and (min-width: 80rem) {
    body>section:nth-child(2)>section.list.x5 {
        gap: 1rem;
    }
}

body>section:nth-child(2)>section.list.x5 article {
    width: 100%;
}

@media screen and (min-width: 30rem) {
    body>section:nth-child(2)>section.list.x5 article {
        width: calc((100% - 1.5rem) / 2);
    }
}

@media screen and (min-width: 50rem) {
    body>section:nth-child(2)>section.list.x5 article {
        width: calc((100% - 4rem) / 3);
    }
}

@media screen and (min-width: 80rem) {
    body>section:nth-child(2)>section.list.x5 article {
        width: calc((100% - 4rem) / 5);
    }
}

@media screen and (min-width: 50rem) {
    body>section:nth-child(2)>section.list:not(.x2):not(.x4):not(.x5) {
        gap: 2rem;
    }
}

body>section:nth-child(2)>section.list article {
    display: flex;
    flex-flow: column;
    gap: 1rem;
    width: 100%;
    transition: 0.3s;
}

@media screen and (min-width: 30rem) {
    body>section:nth-child(2)>section.list article {
        width: calc((100% - 1.5rem) / 2);
    }
}

@media screen and (min-width: 50rem) {
    body>section:nth-child(2)>section.list article {
        width: calc((100% - 4rem) / 3);
    }
}

body>section:nth-child(2)>section.list article section {
    display: flex;
    flex-flow: column;
    gap: 0.25rem;
}

body>section:nth-child(2)>section.list article section>strong {
    width: 100%;
    text-align: center;
    font-size: 1.25rem;
}

body>section:nth-child(2)>section.list article section>ul {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    list-style: none;
}

body>section:nth-child(2)>section.list article section>ul>li {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
}

body>section:nth-child(2)>section.list article section>ul>li::before {
    content: "";
    margin-right: 0.5rem;
    width: 1px;
    height: 0.75rem;
    background-color: #000;
}

body>section:nth-child(2)>section.list article section>ul>li:nth-child(1)::before {
    margin-right: 0;
    width: 0;
    opacity: 0;
}

body>section:nth-child(2)>section.list article section>ul>li i {
    font-size: 0.75rem;
}

body>section:nth-child(2)>section.list article section>ul>li a {
    font-weight: 500;
    transition: 0.3s;
}

@media (hover: hover) and (pointer: fine) {
    body>section:nth-child(2)>section.list article section>ul>li a:hover {
        color: blue;
    }
}

body>section:nth-child(2)>section.list article figure {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    width: 100%;
}

body>section:nth-child(2)>section.list article figure>a {
    position: relative;
    aspect-ratio: 16/10;
    width: 100%;
    border-radius: var(--default-radius);
    border: 1px solid rgba(0, 0, 0, 0.0392156863);
    overflow: hidden;
}

body>section:nth-child(2)>section.list article figure>a::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5019607843);
    opacity: 0;
    transition: 0.3s;
}

@media (hover: hover) and (pointer: fine) {
    body>section:nth-child(2)>section.list article figure>a:hover::after {
        opacity: 1;
    }

    body>section:nth-child(2)>section.list article figure>a:hover img {
        transform: scale(110%);
    }
}

body>section:nth-child(2)>section.list article figure>a img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.3s;
}

body>section:nth-child(2)>section.list article figure>figcaption {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
}

body>section:nth-child(2)>section.list article figure>figcaption p {
    line-height: 1.75rem;
    text-align: center;
    color: rgba(0, 0, 0, 0.8);
}

body>section:nth-child(2)>section.list article figure>figcaption a,
body>section:nth-child(2)>section.list article figure>figcaption button {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0 1rem;
    line-height: 2.5rem;
    font-size: 0.875rem;
    border-radius: 0.5rem;
    background-color: #000;
    color: #fff;
    transition: 0.3s;
}

@media (hover: hover) and (pointer: fine) {

    body>section:nth-child(2)>section.list article figure>figcaption a:hover,
    body>section:nth-child(2)>section.list article figure>figcaption button:hover {
        background-color: blue;
    }
}

body>section:nth-child(3) {
    position: relative;
    display: flex;
    flex-flow: column;
    gap: 4rem;
    padding: 8rem 1rem;
    background-color: #fff;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

body>section:nth-child(3)>section {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    margin: 0 auto;
    gap: 3rem 1.5rem;
    width: 100%;
    max-width: 1280px;
}

body>section:nth-child(3)>section div,
body>section:nth-child(3)>section a {
    display: flex;
    flex-flow: column;
    align-items: center;
    color: #fff;
    width: calc((100% - 1.5rem) / 2);
}

@media screen and (min-width: 64rem) {

    body>section:nth-child(3)>section div,
    body>section:nth-child(3)>section a {
        width: calc((100% - 4.5rem) / 4);
    }
}

body>section:nth-child(3)>section div img,
body>section:nth-child(3)>section div i,
body>section:nth-child(3)>section a img,
body>section:nth-child(3)>section a i {
    margin-bottom: 1rem;
    width: 8rem;
    height: 8rem;
    line-height: 8rem;
    text-align: center;
    font-size: 4rem;
    background-color: rgba(0, 0, 0, 0.5019607843);
    border-radius: 10%;
    transition: 0.3s;
}

body>section:nth-child(3)>section div img:hover,
body>section:nth-child(3)>section div i:hover,
body>section:nth-child(3)>section a img:hover,
body>section:nth-child(3)>section a i:hover {
    font-size: 3.5rem;
}

body>section:nth-child(3)>section div p,
body>section:nth-child(3)>section div strong,
body>section:nth-child(3)>section a p,
body>section:nth-child(3)>section a strong {
    color: inherit;
}

body>section:nth-child(3)>section div strong,
body>section:nth-child(3)>section a strong {
    font-size: 1.5rem;
}

body>section:nth-child(4) {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 4rem;
    padding: 4rem 1rem;
    background-color: #fff;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

body>section:nth-child(4)::before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    background-image: linear-gradient(to right bottom, transparent 0% 49.5%, #fff 50.5% 100%);
    top: calc(1px - 1.5rem);
    height: 1.5rem;
    transition: 0.3s;
}

@media screen and (min-width: 40rem) {
    body>section:nth-child(4)::before {
        top: calc(1px - 3rem);
        height: 3rem;
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(4)::before {
        top: calc(1px - 4rem);
        height: 4rem;
    }
}

body>section:nth-child(4)::after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    background-image: linear-gradient(to left bottom, #fff 0% 49.5%, transparent 50.5% 100%);
    bottom: calc(1px - 1.5rem);
    height: 1.5rem;
    transition: 0.3s;
}

@media screen and (min-width: 40rem) {
    body>section:nth-child(4)::after {
        bottom: calc(1px - 3rem);
        height: 3rem;
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(4)::after {
        bottom: calc(1px - 4rem);
        height: 4rem;
    }
}

body>section:nth-child(4)>section {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1280px;
}

body>section:nth-child(4)>section.header {
    flex-flow: column;
    gap: 0.25rem;
}

body>section:nth-child(4)>section.header>p {
    font-size: 1rem;
}

body>section:nth-child(4)>section.header>strong {
    font-size: 1.75rem;
}

body>section:nth-child(4)>section.list {
    flex-flow: row wrap;
    gap: 1.5rem;
}

body>section:nth-child(4)>section.list figure {
    top: 0;
    border-radius: 0.75rem;
    border: 1px solid rgba(0, 0, 0, 0.0509803922);
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    overflow: hidden;
    width: 100%;
    transition: 0.3s;
}

@media screen and (min-width: 30rem) {
    body>section:nth-child(4)>section.list figure {
        width: calc((100% - 1.5rem) / 2);
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(4)>section.list figure {
        width: calc((100% - 4.5rem) / 4);
    }
}

@media (hover: hover) and (pointer: fine) {
    body>section:nth-child(4)>section.list figure:hover {
        top: -2px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1019607843);
    }
}

body>section:nth-child(4)>section.list figure>a {
    display: block;
    width: 100%;
    aspect-ratio: 1/1;
    overflow: hidden;
}

body>section:nth-child(4)>section.list figure>a img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.3s;
}

body>section:nth-child(4)>section.list figure figcaption {
    display: flex;
    flex-flow: column;
    padding: 1rem;
    line-height: 1.75rem;
    width: 100%;
}

body>section:nth-child(4)>section.list figure figcaption strong {
    line-height: 2rem;
    font-size: 1.25rem;
}

body>section:nth-child(4)>section.list figure figcaption p {
    color: rgba(0, 0, 0, 0.5019607843);
}

body>section:nth-child(4)>section.list figure figcaption a {
    display: flex;
    flex-flow: column;
    gap: 0.5rem;
}

body>section:nth-child(5) {
    position: relative;
    display: flex;
    flex-flow: column;
    gap: 4rem;
    padding: 8rem 1rem;
    background-color: #fff;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

body>section:nth-child(5) span {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5019607843);
    backdrop-filter: blur(0.25rem);
    -webkit-backdrop-filter: blur(0.25rem);
}

body>section:nth-child(5)>section {
    display: flex;
    margin: 0 auto;
    width: 100%;
    max-width: 1280px;
}

body>section:nth-child(5)>section.header {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 0.25rem;
}

body>section:nth-child(5)>section.header>p {
    font-size: 1rem;
    color: #fff;
}

body>section:nth-child(5)>section.header>strong {
    font-size: 1.75rem;
    color: #fff;
}

body>section:nth-child(5)>section.list {
    flex-flow: row wrap;
    gap: 1.5rem;
}

body>section:nth-child(5)>section.list article {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem 1rem 1.5rem;
    background-color: rgba(0, 0, 0, 0.5019607843);
    border-radius: 1rem;
    backdrop-filter: blur(1rem);
    -webkit-backdrop-filter: blur(1rem);
    width: 100%;
    transition: 0.3s;
}

@media screen and (min-width: 30rem) {
    body>section:nth-child(5)>section.list article {
        width: calc((100% - 1.5rem) / 2);
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(5)>section.list article {
        width: calc((100% - 4.5rem) / 4);
    }
}

body>section:nth-child(5)>section.list article img,
body>section:nth-child(5)>section.list article>i {
    position: relative;
    width: 5rem;
    height: 5rem;
    line-height: 5rem;
    text-align: center;
    font-size: 2.5rem;
    color: #ddd;
}

body>section:nth-child(5)>section.list article strong {
    font-size: 1.25rem;
    color: #fff;
}

body>section:nth-child(5)>section.list article p {
    line-height: 1.75rem;
    text-align: center;
    color: #ddd;
}

body>section:nth-child(5)>section.list article a {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-top: 0.5rem;
    padding: 0 1rem;
    line-height: 2.5rem;
    font-size: 0.875rem;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0.5rem;
    transition: 0.3s;
}

@media (hover: hover) and (pointer: fine) {
    body>section:nth-child(5)>section.list article a:hover {
        background-color: #fff;
        color: #000;
    }
}

body>section:nth-child(6) {
    position: relative;
    display: flex;
    flex-flow: column;
    gap: 4rem;
    padding: 4rem 1rem;
    background-color: #222;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

body>section:nth-child(6)::before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    background-image: linear-gradient(to left bottom, transparent 0% 49.5%, #222 50.5% 100%);
    top: calc(1px - 1.5rem);
    height: 1.5rem;
    transition: 0.3s;
}

@media screen and (min-width: 40rem) {
    body>section:nth-child(6)::before {
        top: calc(1px - 3rem);
        height: 3rem;
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(6)::before {
        top: calc(1px - 4rem);
        height: 4rem;
    }
}

body>section:nth-child(6)::after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    background-image: linear-gradient(to right bottom, #222 0% 49.5%, transparent 50.5% 100%);
    bottom: calc(1px - 1.5rem);
    height: 1.5rem;
    transition: 0.3s;
}

@media screen and (min-width: 40rem) {
    body>section:nth-child(6)::after {
        bottom: calc(1px - 3rem);
        height: 3rem;
    }
}

@media screen and (min-width: 64rem) {
    body>section:nth-child(6)::after {
        bottom: calc(1px - 4rem);
        height: 4rem;
    }
}

body>section:nth-child(6)>section {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    margin: 0 auto;
    width: 100%;
    max-width: 1280px;
}

body>section:nth-child(6)>section.header {
    flex-flow: column;
    gap: 0.25rem;
}

body>section:nth-child(6)>section.header>p {
    font-size: 1rem;
    color: #fff;
}

body>section:nth-child(6)>section.header>strong {
    font-size: 1.75rem;
    color: #fff;
}

body>section:nth-child(6)>section>section {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 1rem;
}

@media screen and (min-width: 50rem) {
    body>section:nth-child(6)>section>section:nth-child(1) {
        width: calc(100% - 30rem);
    }

    body>section:nth-child(6)>section>section:nth-child(2) {
        width: 28.5rem;
    }
}

body>section:nth-child(6)>section>section>strong {
    font-size: 1.5rem;
    color: #fff;
}

body>section:nth-child(6)>section>section>p {
    position: relative;
    line-height: 1.75rem;
    color: #fff;
}

body>section:nth-child(6)>section>section>p:nth-child(1) {
    margin-top: 0;
    font-size: 1rem;
}

body>section:nth-child(6)>section>section>section.yt {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    background-color: rgb(50, 50, 50);
}

body>section:nth-child(6)>section>section>section.yt>iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

body>section:nth-child(6)>section>section>section.button {
    display: flex;
    gap: 1.5rem;
}

body>section:nth-child(6)>section>section a {
    display: block;
    margin-top: 1rem;
    padding: 0 1rem;
    line-height: 2.5rem;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0.5rem;
    transition: 0.3s;
}

@media (hover: hover) and (pointer: fine) {
    body>section:nth-child(6)>section>section a:hover {
        background-color: #fff;
        color: #000;
    }
}

body>footer {
    position: relative;
    display: flex;
    flex-flow: column;
    padding: 8rem 1rem 1.5rem;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    /* center */
}

body>footer span {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6941176471);
    backdrop-filter: blur(0.5rem);
    -webkit-backdrop-filter: blur(0.5rem);
}

body>footer>section {
    display: flex;
    flex-flow: row wrap;
    gap: 1.5rem;
    margin: 0 auto;
    width: 100%;
    max-width: 1280px;
}

body>footer>section>section.block {
    display: flex;
    flex-flow: column;
    gap: 1.5rem;
    width: 100%;
    transition: 0.3s;
}

@media screen and (min-width: 30rem) {
    body>footer>section>section.block {
        width: calc((100% - 1.5rem) / 2);
    }
}

@media screen and (min-width: 64rem) {
    body>footer>section>section.block {
        width: calc((100% - 4.5rem) / 4);
    }
}

body>footer>section>section.block strong {
    font-size: 1.25rem;
    color: #fff;
}

body>footer>section>section.block p {
    font-size: 0.875rem;
    line-height: 1.75rem;
    color: #fff;
}

body>footer>section>section.block>section.contact {
    display: flex;
    flex-flow: row wrap;
    gap: 1rem;
}

body>footer>section>section.block>section.contact a {
    font-size: 0.875rem;
}

@media (hover: hover) and (pointer: fine) {
    body>footer>section>section.block>section.contact a:hover i {
        transform: scale(110%);
    }
}

body>footer>section>section.block>section.contact a i {
    font-size: 1.5rem;
    color: #fff;
    transition: 0.3s;
}

body>footer>section>section.block>section.list {
    display: flex;
    flex-flow: column;
}

body>footer>section>section.block>section.list a {
    padding: 0.75rem 0;
    line-height: 1.75rem;
    font-size: 0.875rem;
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5019607843);
}

body>footer>section>section.block>section.list a:nth-child(1) {
    padding: 0 0 0.75rem;
}

body>footer>section>section.block>section.input {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    gap: 1rem;
    width: 100%;
}

body>footer>section>section.block>section.input form {
    display: flex;
    flex-flow: column;
    gap: 0.75rem;
    width: 100%;
}

body>footer>section>section.block>section.input form label {
    width: 100%;
    color: #fff;
}

body>footer>section>section.block>section.input form label input {
    padding: 0 0.75rem;
    width: 100%;
    line-height: 2.5rem;
    font-size: 0.875rem;
    background-color: #fff;
    border-radius: 0.5rem;
}

body>footer>section>section.block>section.input a {
    display: block;
    padding: 0 1rem;
    line-height: 2rem;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0.5rem;
    transition: 0.3s;
    font-size: 0.875rem;
}

@media (hover: hover) and (pointer: fine) {
    body>footer>section>section.block>section.input a:hover {
        background-color: #fff;
        color: #000;
    }
}

body>footer>section>section.block>section.grid {
    display: flex;
    flex-flow: row wrap;
    gap: 0.5rem;
}

body>footer>section>section.block>section.grid a {
    position: relative;
    width: calc((100% - 1rem) / 3);
    aspect-ratio: 1/1;
    border-radius: 0.125rem;
    overflow: hidden;
}

@media (hover: hover) and (pointer: fine) {
    body>footer>section>section.block>section.grid a:hover img {
        transform: scale(110%);
    }
}

body>footer>section>section.block>section.grid a img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    transition: 0.3s;
}

body>footer>section>section.page {
    display: flex;
    justify-content: center;
    gap: 1rem;
    padding: 2rem 0;
    width: 100%;
    border-top: 1px solid rgba(255, 255, 255, 0.5019607843);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5019607843);
}

body>footer>section>section.page>a {
    color: #fff;
}

body>footer>section>section.page>a>i {
    color: inherit;
}

body>footer>section>section.bottom {
    display: flex;
    flex-flow: column;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
}

@media screen and (min-width: 40rem) {
    body>footer>section>section.bottom {
        flex-flow: row;
        justify-content: space-between;
    }
}

body>footer>section>section.bottom>p {
    color: #fff;
}