:root {
    color-scheme:dark;
    --bg:#080c15;
    --panel:#0e1421;
    --border:#202939;
    --text:#f5f7fc;
    --muted:#929eaf;
    --blue:#428dff;
    --cyan:#70c7ff;
    --font:Inter,"Segoe UI",Arial,sans-serif
}

* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth;
    scroll-padding-top:95px
}

body {
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:var(--font);
    font-size:15px;
    line-height:1.65
}

a {
    color:inherit;
    text-decoration:none
}

button {
    font:inherit;
    color:inherit;
    cursor:pointer
}

button,a {
    -webkit-tap-highlight-color:transparent
}

button {
    border:0
}

button:disabled {
    cursor:wait
}

img {
    max-width:100%;
    display:block
}

button:focus-visible,a:focus-visible,summary:focus-visible {
    outline:2px solid var(--cyan);
    outline-offset:6px
}

[hidden] {
    display:none!important
}

::selection {
    background:#327cf9;
    color:white
}

.wrap {
    width:min(1240px,calc(100% - 96px));
    margin-inline:auto
}

.header {
    height:88px;
    padding:0 48px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    background:#080c15f2;
    border-bottom:1px solid #ffffff0b;
    position:sticky;
    top:0;
    z-index:20;
    backdrop-filter:blur(18px)
}

.brand {
    display:inline-flex;
    align-items:center;
    font-size:24px;
    font-weight:900;
    letter-spacing:-1px;
    white-space:nowrap;
    line-height:1
}

.brand span:not(.brand-icon) {
    color:var(--blue)
}

.brand-icon {
    background:linear-gradient(140deg,#317aff,#66c9ff);
    color:white;
    font-size:33px;
    padding:4px 13px;
    border-radius:9px;
    margin-right:12px;
    font-weight:900;
    box-shadow:0 0 28px #267bff22
}

.brand-dot {
    margin-left:1px
}

.header nav {
    display:flex;
    gap:30px;
    height:100%;
    align-items:center
}

.header nav a {
    font-size:13px;
    color:#aab4c4;
    position:relative;
    transition:color .2s
}

.header nav a:hover,.header nav a.active {
    color:#fff
}

.header nav a.active:after {
    content:"";
    position:absolute;
    bottom:-32px;
    height:2px;
    left:0;
    right:0;
    background:var(--blue)
}

.button {
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    background:linear-gradient(110deg,#2874f1,#428fff);
    border:1px solid #5b9aff;
    border-radius:6px;
    padding:14px 24px;
    color:white;
    font-size:14px;
    font-weight:650;
    transition:transform .2s, background .2s,box-shadow .2s;
    box-shadow:0 5px 22px #196aff18
}

.button:hover {
    transform:translateY(-2px);
    box-shadow:0 6px 26px #2c80ff38
}

.button-small {
    padding:10px 17px;
    font-size:12px
}

.button-ghost {
    background:#101929a8;
    border-color:#38445b;
    box-shadow:none
}

.button-ghost:hover {
    background:#1c2a40
}

.menu-button {
    display:none;
    background:transparent;
    font-size:25px
}

.hero {
    position: relative;
    isolation: isolate;
    min-height: 650px;
    overflow: hidden;
    background: #000000;
}

.hero-art {
    position: absolute;
    inset: 0;
    z-index: -3;
    background: url('../bilder/ninja1.png') right center / auto 175% no-repeat;
    opacity: 0.88;
    animation: hero-in 1.2s ease-out;
}

.hero:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(
            90deg,
            #000 0%,
            #000 34%,
            rgba(0,0,0,.96) 48%,
            rgba(0,0,0,.72) 62%,
            rgba(0,0,0,.35) 76%,
            transparent 88%
        ),
        linear-gradient(
            0deg,
            #000 0%,
            rgba(0,0,0,.18) 32%,
            transparent 58%
        );
}

.hero:after {
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:linear-gradient(180deg,#080c1525,transparent 50%,#080c15a6)
}

.hero-grid {
    position:absolute;
    inset:0;
    z-index:-1;
    background-image:linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);
    background-size:68px 68px;
    mask-image:linear-gradient(90deg,black,transparent 60%)
}

.hero-content {
    padding-top:78px;
    padding-bottom:95px
}

.eyebrow {
    display:flex;
    align-items:center;
    gap:11px;
    font-size:10px;
    letter-spacing:2.6px;
    color:var(--cyan);
    font-weight:750;
    text-transform:uppercase
}

.line {
    height:2px;
    width:25px;
    background:var(--blue)
}

h1 {
    font-size:clamp(48px,5.2vw,76px);
    font-weight:950;
    line-height:1.05;
    letter-spacing:-3px;
    margin:25px 0 23px
}

h1 span {
    color:var(--blue)
}

.hero-content>p {
    color:#aab6ca;
    font-size:16px;
    line-height:1.85
}

.hero-content strong {
    color:white
}

.actions {
    display:flex;
    gap:13px;
    flex-wrap:wrap;
    margin-top:27px
}

.hero-meta {
    display:flex;
    gap:20px;
    margin-top:36px;
    font-size:9px;
    font-weight:600;
    letter-spacing:1.25px;
    color:#95a4ba
}

.hero-meta span+span {
    border-left:1px solid #364053;
    padding-left:20px
}

.hero-meta i,.blue-dot {
    display:inline-block;
    height:6px;
    width:6px;
    border-radius:50%;
    background:var(--blue);
    margin-right:7px;
    box-shadow:0 0 12px #3c8cff60
}

.hero-caption {
    position:absolute;
    bottom:35px;
    right:48px;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:1px;
    font-size:8px;
    letter-spacing:2px;
    color:#87a1c2
}

.hero-caption b {
    font-size:12px;
    color:#d8eaff;
    letter-spacing:3px
}

.ticker {
    overflow:hidden;
    border-block:1px solid #25334c;
    background:#101a2b;
    color:#90a2bd;
    height:47px;
    display:flex;
    align-items:center
}

.ticker div {
    white-space:nowrap;
    font-size:11px;
    font-weight:800;
    letter-spacing:3.5px;
    min-width:max-content;
    animation:marquee 65s linear infinite
}

.ticker span {
    color:var(--blue);
    padding:0 48px
}

.section {
    padding-top:78px;
    padding-bottom:78px
}

.section-heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:30px
}

h2 {
    font-size:clamp(28px,2.55vw,38px);
    letter-spacing:-1.3px;
    line-height:1.2;
    font-weight:800;
    margin:12px 0 0
}

h2 span {
    color:#9ba9bd
}

.text-link {
    font-size:12px;
    font-weight:650;
    color:#b8c8e1
}

.text-link:hover {
    color:var(--cyan)
}

.muted {
    color:var(--muted);
    font-size:12px
}

.stream-layout {
    display:grid;
    grid-template-columns:minmax(0,2.5fr) minmax(260px,1fr);
    gap:22px
}

.stream-card {
    border:1px solid var(--border);
    border-radius:10px;
    overflow:hidden;
    min-width:0;
    background:#0d1320
}

.panel-bar {
    height:49px;
    border-bottom:1px solid var(--border);
    padding:0 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-size:11px;
    font-weight:700;
    letter-spacing:.7px
}

.panel-bar .muted {
    font-size:9px;
    margin-left:9px
}

.twitch-mark {
    color:#a886ff;
    margin-right:7px;
    font-size:17px
}

.status {
    font-size:8px;
    color:#9aacbf;
    background:#192235;
    border:1px solid #2c3950;
    border-radius:4px;
    padding:4px 7px
}

.player-shell {
    min-height:360px;
    aspect-ratio:16/9;
    position:relative;
    display:grid;
    place-items:center;
    background:linear-gradient(#050b18c4,#070c18eb),url('../bilder/dragon.png') center/cover
}

.player-placeholder {
    text-align:center;
    padding:26px 16px
}

.play-orbit {
    width:60px;
    height:60px;
    display:grid;
    place-items:center;
    border:1px solid #428dff7a;
    background:#193b7366;
    border-radius:50%;
    color:#8bb9ff;
    font-size:27px;
    margin:0 auto 16px;
    box-shadow:0 0 0 10px #3477ea08,0 0 70px #2d6ae82b
}

.player-placeholder h3 {
    font-size:23px;
    letter-spacing:-.5px;
    margin:0 0 6px
}

.player-placeholder p {
    font-size:12px;
    color:#98a9bf;
    margin:5px 0 16px
}

.player-placeholder .button {
    padding:10px 18px;
    font-size:12px
}

.player-placeholder small {
    font-size:9px;
    display:block;
    color:#8593a7;
    margin-top:17px;
    line-height:1.6
}

.player-message:empty {
    display:none
}

.player-shell iframe {
    width:100%;
    height:100%;
    min-height:300px;
    border:0;
    position:absolute;
    inset:0
}

.player-footer {
    display:flex;
    gap:10px;
    justify-content:space-between;
    align-items:center;
    min-height:48px;
    padding:10px 18px;
    font-size:10px;
    color:#a4b3c8;
    flex-wrap:wrap
}

.stream-side {
    border:1px solid var(--border);
    border-radius:10px;
    padding:30px;
    background:radial-gradient(ellipse at right bottom,#122448,#0e1421 65%);
    position:relative;
    overflow:hidden
}

.mini-label {
    font-size:8px;
    letter-spacing:1.6px;
    color:#8da6c7;
    font-weight:750
}

.stream-side h3 {
    font-size:31px;
    line-height:1.16;
    letter-spacing:-.8px;
    margin:18px 0
}

.stream-side h3 span {
    color:var(--blue)
}

.stream-side p {
    font-size:12px;
    color:#97a6bc;
    max-width:230px
}

.side-divider {
    height:1px;
    background:var(--border);
    margin:25px 0 21px
}

.stream-side .text-link {
    display:flex;
    justify-content:space-between;
    position:relative;
    z-index:1
}

.side-watermark {
    position:absolute;
    right:-8px;
    bottom:-70px;
    font-size:190px;
    line-height:1;
    opacity:.03;
    font-weight:900;
    pointer-events:none
}

.schedule-section {
    background:#0b101b;
    border-block:1px solid #ffffff06
}

.timezone {
    font-size:10px;
    color:#8391a8
}

.schedule-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    background:#111a29;
    border:1px solid var(--border);
    border-bottom:0;
    border-radius:10px 10px 0 0;
    padding:21px 25px
}

.schedule-top strong {
    font-size:13px
}

.schedule-top p {
    margin:3px 0 0;
    font-size:11px;
    color:#91a0b8
}

.schedule-actions {
    display:flex;
    gap:9px
}

.plan-image-button {
    display:block;
    width:100%;
    padding:0;
    background:#030813;
    position:relative;
    overflow:hidden;
    border:1px solid var(--border)
}

.plan-image-button img {
    width:100%;
    height:auto;
    transition:filter .25s
}

.plan-image-button:hover img {
    filter:brightness(1.14)
}

.plan-image-button>span {
    position:absolute;
    bottom:17px;
    right:17px;
    padding:6px 10px;
    background:#091326d9;
    border:1px solid #476b9f66;
    border-radius:5px;
    color:#b5d4ff;
    font-size:10px
}

.schedule-bottom {
    display:flex;
    justify-content:space-between;
    gap:16px;
    margin-top:15px;
    color:#7e8ea7;
    font-size:10px
}

.schedule-list {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:12px;
    margin-top:24px
}

.schedule-entry {
    background:var(--panel);
    border:1px solid var(--border);
    border-radius:7px;
    padding:15px
}

.schedule-entry strong,.schedule-entry span {
    display:block
}

.schedule-entry span {
    font-size:12px;
    color:var(--cyan)
}

.schedule-entry p {
    font-size:12px;
    margin:5px 0
}

.discover-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:21px
}

.discover-card {
    min-height:300px;
    border:1px solid var(--border);
    border-radius:9px;
    padding:25px;
    position:relative;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    transition:transform .25s,border-color .25s
}

.discover-card:hover {
    transform:translateY(-5px);
    border-color:#4d79b3
}

.clips-card {
    background:radial-gradient(ellipse at 85% 20%,#17478e90,transparent 60%),#101725
}

.vod-card {
    background:radial-gradient(ellipse at 85% 20%,#3a297e80,transparent 60%),#111523
}

.crew-card {
    background:radial-gradient(ellipse at 85% 20%,#17536470,transparent 60%),#0f1721
}

.card-index {
    font-size:8px;
    color:#9daec9;
    letter-spacing:1.5px
}

.card-art {
    position:absolute;
    right:24px;
    top:20px;
    font-size:125px;
    color:#82b7ff18;
    font-weight:300;
    line-height:1;
    transform:rotate(-12deg)
}

.vod-card .card-art {
    color:#b398ff20
}

.crew-card .card-art {
    color:#6ce7ec20
}

.tag {
    font-size:8px;
    color:#7eb4ff;
    letter-spacing:1.7px;
    font-weight:700
}

.vod-card .tag {
    color:#b9a2ff
}

.crew-card .tag {
    color:#74c8d4
}

.discover-card h3 {
    font-size:26px;
    line-height:1.14;
    letter-spacing:-.6px;
    margin:12px 0
}

.discover-card p {
    font-size:11px;
    color:#8f9eb5;
    margin:0
}

.card-arrow {
    position:absolute;
    right:23px;
    bottom:23px;
    width:29px;
    height:29px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid #a9c2e529;
    font-size:15px
}

.about {
    display:grid;
    grid-template-columns:1fr 1.1fr;
    gap:65px;
    align-items:center;
    padding-top:5px;
    padding-bottom:26px
}

.about-image {
    position:relative;
    overflow:hidden;
    border-radius:10px;
    border:1px solid #24304a
}

.about-image img {
    aspect-ratio:1.3;
    object-fit:cover
}

.about-image:after {
    content:"";
    position:absolute;
    inset:60% 0 0;
    background:linear-gradient(transparent,#080c15d9);
    pointer-events:none
}

.image-label {
    position:absolute;
    bottom:18px;
    left:23px;
    color:#c4cde2;
    font-size:8px;
    letter-spacing:1.7px;
    z-index:1
}

.about-copy h2 {
    font-size:35px
}

.about-copy p {
    color:#93a2b8;
    font-size:13px;
    line-height:1.9;
    max-width:490px;
    margin:22px 0
}

.about-tags {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:23px
}

.about-tags span {
    font-size:8px;
    letter-spacing:1.1px;
    border:1px solid #283751;
    padding:5px 10px;
    border-radius:4px;
    color:#a7bbd8;
    background:#111c2c
}

.community-banner {
    position:relative;
    overflow:hidden;
    border:1px solid #29436a;
    border-radius:11px;
    padding:49px 52px;
    background:radial-gradient(ellipse at 88% 80%,#1b4b924a,transparent 60%),linear-gradient(115deg,#101c30,#0c1423)
}

.community-banner h2 {
    font-size:41px;
    position:relative;
    z-index:1
}

.community-banner h2 span {
    color:#6caaff
}

.community-banner p {
    font-size:13px;
    color:#94a8c5
}

.community-decoration {
    position:absolute;
    font-size:370px;
    line-height:1;
    right:60px;
    top:-25px;
    transform:rotate(10deg);
    font-weight:900;
    color:#4087ff14;
    pointer-events:none
}

.community-banner .actions {
    position:relative;
    z-index:1
}

.social-links {
    display:flex;
    justify-content:center;
    gap:28px;
    flex-wrap:wrap;
    font-size:12px;
    margin-top:20px;
    color:#9fb5d4
}

.social-links:empty {
    display:none
}

.faq {
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:50px;
    padding-bottom:75px
}

.faq h2 {
    font-size:27px
}

.faq-items details {
    border-bottom:1px solid var(--border)
}

summary {
    padding:17px 0;
    cursor:pointer;
    list-style:none;
    display:flex;
    justify-content:space-between;
    font-size:12px;
    font-weight:600
}

summary::-webkit-details-marker {
    display:none
}

summary span {
    color:#778eaf;
    font-size:17px
}

details[open] summary span {
    transform:rotate(45deg)
}

details p {
    font-size:12px;
    color:#95a6bd;
    max-width:650px;
    margin:0 0 20px
}

.footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding-block:30px;
    border-top:1px solid var(--border)
}

.footer .brand {
    font-size:20px
}

.footer>span {
    font-size:10px;
    color:#7f8ca1
}

.footer>div {
    display:flex;
    align-items:center;
    gap:21px
}

.quiet {
    background:none;
    padding:0;
    color:#98a6ba;
    font-size:10px
}

.quiet:hover {
    color:white
}

.footer>div>a {
    font-size:20px;
    color:#8ba3c6
}

.skip {
    position:fixed;
    left:20px;
    top:-100px;
    z-index:100;
    background:var(--blue);
    padding:10px 20px
}

.skip:focus {
    top:10px
}

dialog {
    color:var(--text);
    background:#0d1422;
    border:1px solid #3c5275;
    border-radius:12px;
    padding:45px 25px 25px;
    max-width:min(1500px,94vw);
    max-height:90vh
}

dialog::backdrop {
    background:#030711e8;
    backdrop-filter:blur(9px)
}

.dialog-close {
    position:absolute;
    right:12px;
    top:6px;
    font-size:28px;
    background:none;
    color:#c5d5ed;
    line-height:1.2;
    padding:3px 8px
}

#plan-dialog img {
    max-height:78vh;
    object-fit:contain
}

#legal-dialog {
    width:650px;
    padding:40px
}

#legal-title {
    font-size:27px;
    margin:0 0 20px
}

#legal-content {
    white-space:pre-wrap;
    color:#a7b4c9;
    font-size:13px;
    overflow-wrap:anywhere
}

.noscript {
    padding:15px;
    text-align:center;
    background:#15243d;
    font-size:13px
}

@keyframes hero-in {
    from {
        transform:scale(1.035);
        opacity:.4
    }
    to {
        transform:scale(1);
        opacity:.85
    }
}

@keyframes marquee {
    to {
        transform:translateX(-35%)
    }
}

 @media(min-width:1600px) {
    .hero-art {
        background-position:right 38%
    }
    .hero {
        min-height:710px
    }
    .hero-content {
        padding-top:100px
    }
}

 @media(max-width:1100px) {
    .header {
        padding-inline:28px
    }
    .header nav {
        gap:19px
    }
    .wrap {
        width:calc(100% - 56px)
    }
    .hero-content {
        padding-top:65px
    }
    .hero {
        min-height:620px
    }
    .hero-art {
        background-position:64% center
    }
    .hero:before {
        background:linear-gradient(90deg,#080c15fa,#080c15c2 40%,#080c1525),linear-gradient(0deg,#080c15,transparent 50%)
    }
    .stream-side {
        padding:23px
    }
    .stream-side h3 {
        font-size:28px
    }
    .hero-caption {
        right:28px
    }
    .about {
        gap:35px
    }
    .discover-card {
        padding:20px
    }
    .discover-card h3 {
        font-size:23px
    }
    .card-arrow {
        right:16px;
        bottom:18px
    }
    .discover-card p {
        max-width:85%
    }
    .player-footer {
        font-size:9px
    }
}

 @media(max-width:800px) {
    .header {
        height:73px
    }
    .header .brand {
        font-size:21px
    }
    .brand-icon {
        font-size:27px;
        padding:4px 11px
    }
    .header-cta {
        margin-left:auto
    }
    .menu-button {
        display:block;
        order:3
    }
    .header nav {
        display:none;
        position:absolute;
        left:0;
        right:0;
        top:73px;
        height:auto;
        padding:20px 28px;
        background:#0c1322;
        border-bottom:1px solid var(--border);
        flex-direction:column;
        align-items:stretch;
        gap:0
    }
    .header nav.open {
        display:flex
    }
    .header nav a {
        padding:12px 0
    }
    .header nav a.active:after {
        display:none
    }
    .hero-content {
        padding-top:63px
    }
    .hero {
        min-height:615px
    }
    h1 {
        font-size:60px
    }
    .hero-caption {
        display:none
    }
    .hero-art {
        background-position:60% center
    }
    .hero:before {
        background:linear-gradient(90deg,#080c15ed,#080c1590 65%,#080c1533),linear-gradient(0deg,#080c15,transparent 60%)
    }
    .stream-layout {
        grid-template-columns:1fr
    }
    .stream-side {
        display:none
    }
    .section {
        padding-block:55px
    }
    .section-heading {
        align-items:flex-start
    }
    .section-heading>.muted {
        display:none
    }
    .discover-grid {
        gap:12px
    }
    .discover-card {
        min-height:270px;
        padding:17px
    }
    .discover-card h3 {
        font-size:20px
    }
    .card-art {
        font-size:95px;
        right:13px
    }
    .card-index {
        font-size:7px
    }
    .tag {
        font-size:7px
    }
    .discover-card p {
        font-size:10px
    }
    .card-arrow {
        display:none
    }
    .about {
        gap:25px
    }
    .about-copy h2 {
        font-size:27px
    }
    .about-copy p {
        font-size:12px
    }
    .community-banner {
        padding:35px
    }
    .community-banner h2 {
        font-size:34px
    }
    .community-decoration {
        right:-10px
    }
    .faq {
        gap:25px;
        grid-template-columns:1fr 1.8fr
    }
    .footer {
        flex-wrap:wrap;
        justify-content:center
    }
    .footer>span {
        order:3;
        width:100%;
        text-align:center
    }
    .schedule-top {
        padding:18px
    }
    .schedule-actions {
        flex-wrap:wrap;
        justify-content:flex-end
    }
    .schedule-actions .button {
        font-size:10px
    }
    .timezone {
        white-space:nowrap;
        font-size:9px
    }
}

 @media(max-width:520px) {
    .wrap {
        width:calc(100% - 36px)
    }
    .header {
        padding-inline:18px;
        gap:13px
    }
    .header-cta {
        padding:8px 11px;
        font-size:10px
    }
    .header .brand {
        font-size:19px
    }
    .brand-icon {
        font-size:24px;
        padding:4px 9px;
        margin-right:8px
    }
    .hero {
        min-height:620px
    }
    .hero-content {
        padding-top:57px;
        padding-bottom:60px
    }
    h1 {
        font-size:clamp(43px,10.8vw,56px);
        letter-spacing:-2px
    }
    .eyebrow {
        font-size:8px;
        letter-spacing:1.8px
    }
    .hero-content>p {
        font-size:13px
    }
    .hero-art {
        opacity:.6;
        background-position:57% center
    }
    .hero-content .actions {
        flex-direction:column;
        align-items:flex-start;
        gap:10px;
        margin-top:24px
    }
    .hero-content .button {
        font-size:12px;
        padding:12px 20px
    }
    .hero-meta {
        gap:11px;
        font-size:7px;
        letter-spacing:.7px;
        margin-top:27px;
        flex-wrap:wrap
    }
    .hero-meta span+span {
        padding-left:11px
    }
    .ticker {
        height:39px
    }
    .ticker div {
        font-size:9px
    }
    .ticker span {
        padding:0 25px
    }
    .section {
        padding-block:43px
    }
    .section-heading {
        flex-wrap:wrap;
        gap:16px;
        margin-bottom:23px
    }
    h2 {
        font-size:28px
    }
    .section-heading .text-link {
        font-size:10px
    }
    .panel-bar {
        padding-inline:13px
    }
    .panel-bar .muted {
        margin-left:2px
    }
    .player-shell {
        min-height:350px;
        aspect-ratio:auto
    }
    .player-placeholder h3 {
        font-size:21px
    }
    .player-footer {
        padding:11px;
        font-size:9px
    }
    .schedule-top {
        align-items:flex-start;
        flex-direction:column;
        gap:12px
    }
    .schedule-actions {
        justify-content:flex-start
    }
    .schedule-bottom {
        flex-direction:column;
        gap:4px
    }
    .plan-image-button>span {
        font-size:8px;
        bottom:8px;
        right:8px;
        padding:4px 7px
    }
    .discover-grid {
        grid-template-columns:1fr
    }
    .discover-card {
        min-height:237px;
        padding:24px
    }
    .discover-card h3 {
        font-size:27px
    }
    .discover-card p {
        font-size:12px
    }
    .card-index,.tag {
        font-size:8px
    }
    .card-art {
        font-size:150px;
        right:25px;
        top:35px
    }
    .card-arrow {
        display:grid;
        right:24px;
        bottom:24px
    }
    .about {
        grid-template-columns:1fr;
        gap:26px;
        padding-top:7px
    }
    .about-image img {
        aspect-ratio:1.6
    }
    .about-copy h2 {
        font-size:30px
    }
    .about-copy p {
        font-size:13px
    }
    .community-banner {
        padding:29px 23px
    }
    .community-banner h2 {
        font-size:29px
    }
    .community-banner p {
        font-size:12px
    }
    .community-decoration {
        right:-50px;
        top:10px;
        font-size:330px
    }
    .community-banner .button {
        font-size:11px;
        padding:11px 15px
    }
    .faq {
        grid-template-columns:1fr;
        gap:14px;
        padding-bottom:45px
    }
    .footer {
        gap:20px;
        padding-block:25px
    }
    .footer>div {
        gap:16px
    }
    dialog {
        padding:40px 9px 10px
    }
    #legal-dialog {
        padding:38px 23px 25px
    }
}

 @media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto
    }
    *,*:before,*:after {
        animation:none!important;
        transition:none!important
    }
}
