body {
    margin: 0;
    background: black;
    color: white;
    font-family: Arial, Helvetica, sans-serif;
}

a,
a:link,
a:visited {

    color: white;

    text-decoration: none;

}


a:hover {

    color: white;

    text-decoration: underline;

}


a:active {

    color: white;

}

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 20px 40px;

    border-bottom: 1px solid white;
}


.logo {
    font-size: 24px;
    font-weight: bold;
}


.nav-links {
    display: flex;
    gap: 25px;
}


.nav-links a {
    color: white;
    text-decoration: none;
}


.nav-links a:hover {
    color: magenta;
}


main {
    text-align: center;
    margin-top: 100px;
}

.mooorgan-page {
    max-width: 900px;
    margin: 60px auto;
    padding: 0 30px;
}


.mooorgan-page section {
    margin-bottom: 80px;
}


.mooorgan-page h1 {
    font-size: 48px;
}


.mooorgan-page h2 {
    border-bottom: 1px solid white;
    padding-bottom: 10px;
    margin-bottom: 30px;
}


.moorgan-page h3 {
    margin-top: 30px;
}

.release-scroll {

    display: flex;

    overflow-x: auto;

    gap: 40px;

    padding-bottom: 20px;

    scroll-behavior: smooth;

}


.release-scroll::-webkit-scrollbar {

    height: 10px;

}


.release-card {

    flex: 0 0 300px;

    border: 1px solid white;

    padding: 20px;

}


.release-card img {

    width: 100%;

    aspect-ratio: 1 / 1;

    object-fit: cover;

}

.video-scroll {

    display: flex;

    overflow-x: auto;

    gap: 40px;

    padding-bottom: 20px;

}


.video-card {

    flex: 0 0 320px;

}


.video-card img {

    width: 100%;

    aspect-ratio: 16 / 9;

    object-fit: cover;

    transition: transform 0.2s ease;

}


.video-card img:hover {

    transform: scale(1.03);

}


.video-button {

    display: inline-block;

    border: 1px solid white;

    padding: 8px 12px;

    color: white;

    text-decoration: none;

}


.video-button:hover {

    background: white;

    color: black;

}


#unreleased-container details {

    margin-bottom: 20px;

}


#unreleased-container summary {

    cursor: pointer;

    font-size: 24px;

}


#unreleased-container button {

    display: block;

    margin: 10px 0;

    background: black;

    color: white;

    border: 1px solid white;

    padding: 10px 15px;

    cursor: pointer;

}



#mini-player {

    display: none;

    position: fixed;

    bottom: 20px;

    left: 50%;

    transform: translateX(-50%);

    background: white;

    color: black;

    border-radius: 20px;

    padding: 20px 30px;

    box-shadow: 0 0 20px rgba(255,255,255,0.3);

    z-index: 1000;

}


#mini-player button {

    margin-left: 10px;

}

.archive-list details {

    margin-bottom: 15px;

}


.archive-list summary {

    cursor: pointer;

    font-size: 24px;

    padding: 10px 0;

    text-align: left;

}


.archive-button {

    display: inline-block;

    margin-top: 10px;

    padding: 10px 20px;

    border: 1px solid white;

    color: white;

    text-decoration: none;

}


.archive-button:hover {

    background: white;

    color: black;

}

.archive-list {

    text-align:left;

}


.archive-folder {

    margin-bottom:20px;

}


.archive-folder summary {

    cursor:pointer;

    font-size:24px;

    padding:10px 0;

}


.drive-container {

    margin-top:20px;

    width:100%;

}


.drive-container iframe {

    border-radius:15px;

    background:white;

}
.events {

    margin: 60px auto;

    text-align: center;

}


.calendar-container {

    width: 100%;

    max-width: 1000px;

    margin: auto;

}


.calendar-container iframe {

    width: 100%;

    height: 700px;

    border: none;

}

/* Account and authentication */
.account-page,
.callback-page {
    width: min(1100px, calc(100% - 40px));
    margin: 64px auto;
    text-align: left;
}

.callback-page {
    width: min(520px, calc(100% - 40px));
}

.callback-logo {
    display: inline-block;
    margin-bottom: 28px;
    font-size: 24px;
    font-weight: bold;
}

.account-intro {
    max-width: 700px;
    margin-bottom: 36px;
}

.account-intro h1,
.callback-page h1 {
    font-size: clamp(32px, 5vw, 52px);
    margin: 8px 0 16px;
}

.eyebrow {
    color: #ff4fd8;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.14em;
}

.auth-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 22px;
    align-items: start;
}

.auth-stack {
    display: grid;
    gap: 22px;
}

.auth-card,
.account-card {
    border: 1px solid white;
    padding: 28px;
    background: #080808;
}

.auth-card h2,
.account-card h2 {
    margin-top: 0;
}

.auth-card label,
#new-password-form label {
    display: grid;
    gap: 8px;
    margin: 16px 0;
    font-weight: bold;
}

.auth-card input,
#new-password-form input {
    box-sizing: border-box;
    width: 100%;
    border: 1px solid #777;
    border-radius: 0;
    padding: 12px;
    background: #111;
    color: white;
    font: inherit;
}

.auth-card input:focus,
#new-password-form input:focus {
    outline: 2px solid #ff4fd8;
    outline-offset: 2px;
}

.auth-card button,
.account-card button,
#new-password-form button {
    border: 1px solid white;
    padding: 12px 16px;
    background: white;
    color: black;
    font: inherit;
    font-weight: bold;
    cursor: pointer;
}

.auth-card button:hover,
.account-card button:hover,
#new-password-form button:hover {
    background: #ff4fd8;
    border-color: #ff4fd8;
}

.button-secondary {
    background: transparent !important;
    color: white !important;
}

.button-secondary:hover {
    background: #222 !important;
}

.auth-note {
    color: #bbb;
    font-size: 14px;
}

.auth-status {
    min-height: 24px;
    margin: 0 0 22px;
    color: var(--accent, #f7f7f4);
}

.auth-status.error {
    color: #ff8686;
}

@media (max-width: 760px) {
    .navbar {
        align-items: flex-start;
        flex-direction: column;
        gap: 16px;
        padding: 20px;
    }

    .nav-links {
        flex-wrap: wrap;
        gap: 12px 18px;
    }

    .auth-grid {
        grid-template-columns: 1fr;
    }

    .account-page,
    .callback-page {
        margin: 40px auto;
    }
}


/* Owner dashboard */
.dashboard-body {
    background: #070707;
}

.dashboard-shell {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    min-height: 100vh;
}

.dashboard-sidebar {
    position: sticky;
    top: 0;
    align-self: start;
    min-height: 100vh;
    box-sizing: border-box;
    padding: 30px 22px;
    border-right: 1px solid #333;
    background: #0d0d0d;
}

.dashboard-sidebar .eyebrow {
    margin-top: 36px;
}

.dashboard-nav {
    display: grid;
    gap: 6px;
    margin: 22px 0 36px;
}

.dashboard-nav button {
    border: 0;
    border-left: 3px solid transparent;
    padding: 11px 12px;
    background: transparent;
    color: #ddd;
    text-align: left;
    font: inherit;
    cursor: pointer;
}

.dashboard-nav button:hover,
.dashboard-nav button.active {
    border-left-color: #ff4fd8;
    background: #1d1d1d;
    color: white;
}

.dashboard-main {
    box-sizing: border-box;
    width: min(1320px, 100%);
    padding: 42px;
}

.dashboard-gate {
    max-width: 600px;
    margin: 100px auto;
    border: 1px solid #444;
    padding: 36px;
}

.dashboard-header {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: flex-start;
    margin-bottom: 30px;
}

.dashboard-header h1 {
    margin: 6px 0 0;
    font-size: clamp(32px, 5vw, 52px);
}

.dashboard-card {
    border: 1px solid #3b3b3b;
    padding: 24px;
    background: #101010;
}

.dashboard-card h2 {
    margin-top: 0;
}

.dashboard-split {
    display: grid;
    grid-template-columns: minmax(280px, 0.8fr) minmax(380px, 1.2fr);
    gap: 22px;
    align-items: start;
}

.dashboard-card label {
    display: grid;
    gap: 7px;
    margin: 14px 0;
    font-weight: bold;
}

.dashboard-card input,
.dashboard-card textarea,
.dashboard-card select {
    box-sizing: border-box;
    width: 100%;
    border: 1px solid #555;
    border-radius: 0;
    padding: 10px;
    background: #181818;
    color: white;
    font: inherit;
}

.dashboard-card .checkbox-label {
    display: flex;
    align-items: center;
    gap: 9px;
}

.dashboard-card .checkbox-label input {
    width: auto;
}

.dashboard-card button,
.row-actions button {
    border: 1px solid white;
    padding: 10px 13px;
    background: white;
    color: black;
    font: inherit;
    font-weight: bold;
    cursor: pointer;
}

.dashboard-card button:hover,
.row-actions button:hover {
    background: #ff4fd8;
    border-color: #ff4fd8;
}

.metric-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.metric {
    display: grid;
    gap: 7px;
    border: 1px solid #3b3b3b;
    padding: 20px;
    background: #101010;
}

.metric strong {
    color: #ff4fd8;
    font-size: 32px;
}

.metric span,
.admin-row span {
    color: #bcbcbc;
    font-size: 14px;
}

.admin-list {
    display: grid;
    gap: 10px;
}

.admin-row {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    border-bottom: 1px solid #333;
    padding: 14px 0;
}

.admin-row > div:first-child,
.admin-row.stacked {
    display: grid;
    gap: 5px;
}

.row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

@media (max-width: 900px) {
    .dashboard-shell {
        grid-template-columns: 1fr;
    }

    .dashboard-sidebar {
        position: static;
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid #333;
    }

    .dashboard-sidebar .eyebrow {
        margin-top: 16px;
    }

    .dashboard-nav {
        display: flex;
        overflow-x: auto;
        margin: 14px 0 20px;
    }

    .dashboard-nav button {
        white-space: nowrap;
    }

    .dashboard-main {
        padding: 26px 20px;
    }

    .dashboard-split {
        grid-template-columns: 1fr;
    }

    .metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .metric-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-header,
    .admin-row {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* Public-site refresh */
:root{--ink:#080808;--paper:#f7f7f4;--line:#f0f0ed;--muted:#a8a8a1;--accent:#f7f7f4;--accent-ink:#080808;--acid:var(--accent)}
*{box-sizing:border-box}body{background:var(--ink);color:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.5}.site-header{border-bottom:1px solid #454545;position:sticky;top:0;z-index:20;background:rgba(8,8,8,.96);backdrop-filter:blur(10px)}.navbar{width:min(1320px,100%);margin:auto;padding:18px 32px}.logo{letter-spacing:-.05em}.nav-links a[aria-current="page"]{color:var(--acid);text-decoration:none}.hero,.page-shell{width:min(1180px,calc(100% - 48px));margin:auto}.hero{min-height:590px;padding:110px 0 72px;display:grid;align-content:center;gap:22px;background:linear-gradient(110deg,transparent 65%,rgba(255,255,255,.06) 65%,rgba(255,255,255,.06) 66%,transparent 66%)}.hero h1{max-width:900px;margin:0;font-size:clamp(55px,10vw,138px);line-height:.88;letter-spacing:-.08em}.hero>p:not(.eyebrow){max-width:590px;font-size:20px;color:#d4d4ce}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-block;border:1px solid var(--paper);padding:12px 17px;background:var(--paper);color:var(--ink);font-weight:bold;text-decoration:none}.button:hover{background:var(--acid);border-color:var(--acid);color:var(--ink);text-decoration:none}.about-frame{width:min(1180px,calc(100% - 48px));margin:48px auto 100px;border:2px solid var(--paper);padding:clamp(30px,6vw,70px);background:linear-gradient(135deg,#151515,#090909)}.about-frame h2{margin:0 0 20px;font-size:clamp(34px,6vw,64px);letter-spacing:-.06em}.about-frame p{max-width:850px;font-size:clamp(19px,2.4vw,28px);line-height:1.35}.services-section{width:min(1180px,calc(100% - 48px));margin:0 auto 110px}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:24px}.section-heading h2{margin:0;font-size:clamp(32px,5vw,60px);letter-spacing:-.06em}.section-heading a{color:var(--acid)}.service-tabs{display:flex;overflow:auto;border:1px solid #555;border-bottom:0}.service-tab{flex:0 0 auto;border:0;border-right:1px solid #555;background:#111;color:#ddd;padding:15px 18px;font:inherit;cursor:pointer}.service-tab.active,.service-tab:hover{background:var(--paper);color:var(--ink)}.service-card{min-height:300px;border:1px solid #555;padding:clamp(28px,5vw,56px);background:linear-gradient(115deg,#151515 0%,#151515 70%,#222 70%,#222 71%,#0c0c0c 71%)}.service-card>div{max-width:720px}.service-card h3{font-size:clamp(34px,5vw,62px);margin:6px 0 14px}.service-card p:not(.eyebrow){font-size:20px;margin-bottom:28px}.page-shell{padding:80px 0 110px}.page-shell>h1{margin:0 0 16px;font-size:clamp(56px,10vw,120px);line-height:.9;letter-spacing:-.08em}.lead{max-width:760px;font-size:clamp(20px,3vw,30px);color:#d0d0ca}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:38px}.feature-card{min-height:230px;border:1px solid #555;padding:28px;background:#111;position:relative}.feature-card:before{content:"";position:absolute;right:0;top:0;width:32px;height:32px;border-left:1px solid #555;border-bottom:1px solid #555}.feature-card h2{font-size:30px;margin:0 0 12px}.feature-card a,.contact-option span{color:var(--acid)}.notice{margin:36px 0;border-left:4px solid var(--acid);padding:16px 20px;background:#151515}.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:70px}.contact-options{display:grid;gap:12px}.contact-option{display:grid;gap:6px;border:1px solid #555;padding:20px;color:var(--paper);text-decoration:none}.contact-option:hover{border-color:var(--acid);text-decoration:none}.placeholder-square{width:150px;aspect-ratio:1;background:var(--acid);border:1px solid var(--paper)}.site-footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #454545;padding:26px max(24px,calc((100% - 1180px)/2));color:var(--muted);font-size:13px;letter-spacing:.08em}.site-footer a{color:var(--paper)}@media(max-width:700px){.navbar{padding:16px 24px}.hero{min-height:520px;padding:75px 0 55px}.feature-grid,.contact-layout{grid-template-columns:1fr}.section-heading{display:block}.section-heading a{display:inline-block;margin-top:10px}.about-frame{margin-bottom:65px}.site-footer{flex-direction:column}.page-shell{padding-top:58px}}

.store-page .featured-banner{margin:36px 0;border:1px solid var(--paper);padding:clamp(25px,5vw,52px);background:linear-gradient(120deg,#161616 0%,#161616 72%,var(--acid) 72%,var(--acid) 73%,#0c0c0c 73%)}.featured-banner h2{max-width:750px;margin:8px 0 14px;font-size:clamp(30px,5vw,58px);line-height:.98;letter-spacing:-.05em}.store-tools{display:grid;grid-template-columns:1fr 240px;gap:14px;margin:32px 0}.store-tools label{display:grid;gap:7px}.store-tools input,.store-tools select,.notification-panel input,.notification-panel select{padding:12px;border:1px solid #666;background:#131313;color:white;font:inherit}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product-card{border:1px solid #555;padding:16px;background:#101010}.product-card h2{font-size:25px;margin:8px 0}.product-card h2 a{color:white}.product-card button,.notification-panel button{border:1px solid white;padding:10px 12px;background:white;color:black;font:inherit;font-weight:bold;cursor:pointer}.product-image{display:grid;place-items:center;min-height:200px;background:var(--acid);color:black;font-size:13px;font-weight:bold;letter-spacing:.1em;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.product-image.large{min-height:430px}.product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:42px;align-items:start}.product-detail h1{font-size:clamp(38px,6vw,72px);letter-spacing:-.06em;margin:5px 0}.price{font-size:28px;color:var(--acid)}.back-link{color:var(--acid)}.event-grid{display:grid;gap:18px}.event-card{display:grid;grid-template-columns:170px 1fr;gap:22px;border:1px solid #555;padding:16px;background:#101010}.event-card .placeholder-square{width:100%;max-width:170px}.event-card h2{font-size:30px;margin:4px 0}.notification-panel{margin-top:70px;border:1px solid white;padding:clamp(24px,5vw,55px);background:#111}.notification-panel h2{font-size:clamp(32px,5vw,60px);letter-spacing:-.06em;margin:8px 0}.notification-panel form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:800px}.notification-panel label{display:grid;gap:8px}.notification-panel .checkbox-label{grid-column:1/-1;display:flex;gap:9px;align-items:flex-start;font-size:14px}.notification-panel .checkbox-label input{width:auto;margin-top:3px}.notification-panel button{width:max-content}@media(max-width:700px){.store-tools,.product-grid,.product-detail,.notification-panel form{grid-template-columns:1fr}.event-card{grid-template-columns:1fr}.event-card .placeholder-square{max-width:none;max-height:220px}.product-image.large{min-height:280px}}

.admin-login-link{display:flex;justify-content:space-between;gap:14px;margin:42px 0 0;padding-top:18px;border-top:1px solid #444;font-size:14px}.admin-login-link a{color:var(--acid)}.admin-login-link span{color:#aaa}.artist-bio-section h1{font-size:clamp(50px,9vw,104px);letter-spacing:-.08em;margin-bottom:22px}.artist-bio{display:grid;grid-template-columns:170px 1fr;gap:28px;align-items:start;border:2px solid white;padding:24px;text-align:left}.artist-bio .placeholder-square{width:150px}.artist-bio p:not(.eyebrow){font-size:20px;max-width:600px}.artist-section-title{font-size:clamp(38px,6vw,70px)!important;letter-spacing:-.06em;margin-top:75px!important}.artist-platforms{display:flex;gap:10px;margin:16px 0 28px}.artist-platforms a{display:grid;place-items:center;width:42px;height:42px;border:1px solid white;color:white;font-size:12px;font-weight:bold;text-decoration:none}.artist-platforms a:hover{background:var(--acid);border-color:var(--acid);color:black}.artist-project-grid{display:grid;gap:14px}.artist-project-grid article{display:grid;grid-template-columns:92px 1fr;gap:18px;border:1px solid #555;padding:16px;text-align:left}.artist-project-grid .placeholder-square{width:92px}.artist-project-grid h3{font-size:24px;margin:0 0 6px}@media(max-width:600px){.artist-bio{grid-template-columns:1fr}.artist-project-grid article{grid-template-columns:1fr}.admin-login-link{flex-direction:column}}
.academy-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}@media(max-width:1000px){.academy-admin-grid{grid-template-columns:1fr}}

/* Signed-in account controls */
.account-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 24px;
}

.account-actions .button,
.account-actions button {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
}

.admin-login-link[hidden],
#owner-dashboard-link[hidden] {
    display: none !important;
}


/* Signed-in member dashboard */
.member-page {
    width: min(1180px, calc(100% - 40px));
    margin: 54px auto 90px;
    text-align: left;
}
.member-gate { min-height: 45vh; display: grid; place-content: center; }
.member-header {
    display: flex; justify-content: space-between; align-items: end; gap: 24px;
    padding: 30px; border: 2px solid white; background: #080808;
}
.member-header h1 { margin: 6px 0 8px; font-size: clamp(34px, 6vw, 64px); }
.member-header-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.member-header-actions .button, .member-header-actions button {
    border: 1px solid white; padding: 12px 16px; font: inherit; font-weight: bold; cursor: pointer;
}
.member-tabs {
    display: flex; gap: 0; margin: 22px 0; overflow-x: auto; border: 1px solid #555;
}
.member-tabs button {
    flex: 1 0 auto; border: 0; border-right: 1px solid #555; padding: 14px 18px;
    background: #0a0a0a; color: white; font: inherit; font-weight: bold; cursor: pointer;
}
.member-tabs button:last-child { border-right: 0; }
.member-tabs button:hover, .member-tabs button.active { background: white; color: black; }
.member-panel { min-height: 360px; }
.member-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.settings-grid { align-items: start; }
.account-list { display: grid; gap: 10px; }
.account-row {
    display: flex; justify-content: space-between; align-items: center; gap: 20px;
    border: 1px solid #555; padding: 18px; background: #090909;
}
.account-row > div { display: grid; gap: 6px; }
.account-row span { color: #bbb; font-size: 14px; }
.account-row button { border: 1px solid white; padding: 9px 12px; cursor: pointer; }
.empty-state { border: 1px dashed #555; padding: 24px; color: #aaa; }
.dashboard-card label { display: grid; gap: 8px; margin: 16px 0; font-weight: bold; }
.dashboard-card input {
    box-sizing: border-box; width: 100%; border: 1px solid #777; padding: 12px;
    border-radius: 0; background: #111; color: white; font: inherit;
}
.dashboard-card > button, .dashboard-card form button {
    border: 1px solid white; padding: 12px 16px; font: inherit; font-weight: bold; cursor: pointer;
}
@media (max-width: 820px) {
    .member-header { align-items: flex-start; flex-direction: column; }
    .member-grid { grid-template-columns: 1fr; }
    .account-row { align-items: flex-start; flex-direction: column; }
    .member-page { width: min(100% - 24px, 1180px); margin-top: 28px; }
}


/* Site-wide audit fixes: alignment, responsive behavior, and user accents */
html {
    color-scheme: dark;
    scroll-behavior: smooth;
}

body {
    min-width: 0;
    overflow-x: hidden;
}

img,
iframe,
video {
    max-width: 100%;
}

button,
input,
select,
textarea {
    font: inherit;
}

button,
a {
    -webkit-tap-highlight-color: transparent;
}

:focus-visible {
    outline: 3px solid var(--accent);
    outline-offset: 3px;
}

::selection {
    background: var(--accent);
    color: var(--accent-ink);
}

[hidden] {
    display: none !important;
}

.nav-links a[aria-current="page"] {
    color: var(--accent);
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 6px;
}

.hero {
    justify-items: center;
    text-align: center;
}

.hero h1,
.hero > p:not(.eyebrow) {
    margin-right: auto;
    margin-left: auto;
}

.hero-actions {
    justify-content: center;
}

.services-section > .section-heading {
    display: grid;
    justify-content: center;
    text-align: center;
}

.page-shell > .eyebrow,
.page-shell > h1,
.page-shell > .lead {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.page-shell > h1 {
    margin-bottom: 16px;
}

.store-page .featured-banner,
.featured-banner h2,
.featured-banner > p {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.button,
.product-card button,
.product-detail button,
.notification-panel button {
    border-color: var(--accent);
    background: var(--accent);
    color: var(--accent-ink);
}

.button:link,
.button:visited {
    color: var(--accent-ink);
}

.button:hover,
.product-card button:hover,
.product-detail button:hover,
.notification-panel button:hover,
.artist-platforms a:hover {
    border-color: var(--accent);
    background: var(--accent);
    color: var(--accent-ink);
}

.button-secondary,
.button.button-secondary {
    border-color: #777;
    background: transparent;
    color: var(--paper);
}

.button-secondary:link,
.button-secondary:visited,
.button.button-secondary:link,
.button.button-secondary:visited {
    color: var(--paper);
}

.product-image {
    color: var(--accent-ink);
}

.release-scroll,
.video-scroll,
.service-tabs,
.member-tabs,
.dashboard-nav {
    scrollbar-color: var(--accent) #161616;
    scrollbar-width: thin;
}

.release-card,
.video-card,
.service-tab,
.member-tabs button {
    scroll-snap-align: start;
}

.release-scroll,
.video-scroll,
.service-tabs,
.member-tabs {
    scroll-snap-type: x proximity;
}

.release-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 14px;
}

.video-card h3 {
    line-height: 1.25;
}

.video-card img {
    display: block;
}

.archive-folder {
    border-bottom: 1px solid #333;
}

.archive-folder summary {
    min-height: 48px;
}

.nav-toggle {
    display: none;
    width: 46px;
    height: 46px;
    border: 1px solid #666;
    background: #0d0d0d;
    color: var(--paper);
    cursor: pointer;
}

.nav-toggle span {
    display: block;
    width: 20px;
    height: 2px;
    margin: 4px auto;
    background: currentColor;
    transition: transform .18s ease, opacity .18s ease;
}

.nav-open .nav-toggle span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}

.nav-open .nav-toggle span:nth-child(2) {
    opacity: 0;
}

.nav-open .nav-toggle span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

.theme-picker {
    position: fixed;
    right: max(20px, env(safe-area-inset-right));
    bottom: max(20px, env(safe-area-inset-bottom));
    z-index: 100;
}

.theme-picker__toggle {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    margin-left: auto;
    border: 1px solid var(--accent);
    border-radius: 50%;
    background: #0b0b0b;
    color: var(--accent);
    box-shadow: 0 8px 30px rgba(0, 0, 0, .5);
    cursor: pointer;
}

.theme-picker__toggle:hover {
    background: var(--accent);
    color: var(--accent-ink);
}

.theme-picker__toggle svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.theme-picker__panel {
    position: absolute;
    right: 0;
    bottom: 64px;
    width: min(320px, calc(100vw - 32px));
    border: 1px solid #666;
    padding: 22px;
    background: #0d0d0d;
    color: var(--paper);
    box-shadow: 0 18px 60px rgba(0, 0, 0, .72);
}

.theme-picker__panel[hidden] {
    display: none;
}

.theme-picker__panel h2 {
    margin: 2px 0 14px;
    font-size: 25px;
}

.theme-picker__panel .eyebrow {
    margin: 0;
}

.theme-picker__field {
    display: grid;
    grid-template-columns: 1fr 92px;
    align-items: center;
    gap: 12px;
    margin-top: 12px;
    font-weight: bold;
}

.theme-picker__field input {
    box-sizing: border-box;
    width: 100%;
    min-height: 42px;
    border: 1px solid #777;
    border-radius: 0;
    padding: 8px;
    background: #171717;
    color: var(--paper);
}

.theme-picker__color {
    cursor: pointer;
}

.theme-picker__help,
.theme-picker__error {
    margin: 10px 0 0;
    color: #aaa;
    font-size: 12px;
    line-height: 1.4;
}

.theme-picker__error {
    min-height: 17px;
    color: var(--accent);
}

.theme-picker__actions {
    display: flex;
    gap: 9px;
    margin-top: 12px;
}

.theme-picker__actions button {
    min-height: 42px;
    border: 1px solid var(--accent);
    padding: 9px 14px;
    background: var(--accent);
    color: var(--accent-ink);
    font-weight: bold;
    cursor: pointer;
}

.theme-picker__actions .button-secondary {
    background: transparent;
    color: var(--paper);
}

.artist-platforms {
    flex-wrap: wrap;
}

.artist-platforms a svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.dashboard-shell {
    width: 100%;
    margin: 0;
    text-align: left;
}

.dashboard-sidebar,
.dashboard-main,
.dashboard-panel,
.dashboard-card {
    min-width: 0;
    max-width: 100%;
}

@media (max-width: 820px) {
    .navbar.nav-enhanced {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 0 14px;
        padding: 14px 20px;
    }

    .navbar.nav-enhanced .nav-toggle {
        display: block;
    }

    .navbar.nav-enhanced .nav-links {
        display: none;
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
        margin-top: 13px;
        border-top: 1px solid #454545;
        gap: 0;
    }

    .navbar.nav-enhanced.nav-open .nav-links {
        display: grid;
    }

    .navbar.nav-enhanced .nav-links a {
        min-width: 0;
        padding: 12px 4px;
        border-bottom: 1px solid #242424;
    }

    .navbar.nav-enhanced .nav-links a:nth-child(odd) {
        padding-right: 12px;
        border-right: 1px solid #242424;
    }

    .navbar.nav-enhanced .nav-links a:nth-child(even) {
        padding-left: 12px;
    }

    .dashboard-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .dashboard-sidebar {
        width: 100%;
        min-height: 0;
        padding: 20px;
    }

    .dashboard-sidebar .eyebrow {
        margin-top: 12px;
    }

    .dashboard-nav {
        width: 100%;
        max-width: 100%;
        margin: 12px 0 18px;
    }

    .dashboard-nav button {
        flex: 0 0 auto;
    }

    .dashboard-main {
        width: 100%;
        padding: 24px 18px 90px;
    }

    .dashboard-gate {
        width: 100%;
        margin: 44px auto;
        padding: 24px;
    }
}

@media (max-width: 700px) {
    .hero,
    .page-shell,
    .about-frame,
    .services-section {
        width: min(100% - 32px, 1180px);
    }

    .hero {
        min-height: auto;
        padding: 68px 0 62px;
        gap: 19px;
    }

    .hero h1 {
        max-width: 100%;
        font-size: clamp(46px, 13vw, 64px);
        letter-spacing: -.065em;
    }

    .hero > p:not(.eyebrow) {
        font-size: 18px;
    }

    .hero-actions {
        display: grid;
        width: 100%;
    }

    .hero-actions .button {
        width: 100%;
        min-height: 48px;
        text-align: center;
    }

    .about-frame {
        margin-top: 20px;
        padding: 28px 24px;
    }

    .about-frame p {
        font-size: 19px;
    }

    .services-section {
        margin-bottom: 70px;
    }

    .services-section > .section-heading h2 {
        font-size: 40px;
        line-height: 1;
    }

    .service-tabs {
        scroll-padding-left: 1px;
    }

    .service-tab {
        min-height: 48px;
    }

    .service-card {
        min-height: 0;
        padding: 28px 22px;
    }

    .service-card h3 {
        font-size: 39px;
    }

    .service-card p:not(.eyebrow) {
        font-size: 18px;
    }

    .page-shell {
        padding: 50px 0 78px;
    }

    .page-shell > h1 {
        max-width: 100%;
        font-size: clamp(45px, 15vw, 70px);
    }

    .lead {
        font-size: 20px;
    }

    .feature-card,
    .notification-panel,
    .auth-card,
    .account-card,
    .dashboard-card {
        padding: 22px;
    }

    .feature-card {
        min-height: 0;
    }

    .featured-banner {
        background: linear-gradient(125deg, #161616 0%, #161616 88%, var(--accent) 88%, var(--accent) 89%, #0c0c0c 89%);
    }

    .store-tools {
        gap: 18px;
    }

    .store-tools input,
    .store-tools select,
    .notification-panel input,
    .notification-panel select {
        min-height: 48px;
    }

    .product-card button,
    .product-detail button,
    .notification-panel button {
        min-height: 46px;
    }

    .event-card {
        padding: 14px;
    }

    .event-card .placeholder-square {
        min-height: 180px;
    }

    .artist-bio-section h1 {
        font-size: clamp(48px, 17vw, 74px);
    }

    .mooorgan-page {
        width: min(100% - 32px, 900px);
        margin: 46px auto 72px;
        padding: 0;
    }

    .mooorgan-page section {
        margin-bottom: 58px;
    }

    .artist-bio {
        padding: 20px;
    }

    .artist-bio .placeholder-square {
        width: min(150px, 100%);
    }

    .artist-section-title {
        margin-top: 54px !important;
        font-size: clamp(38px, 13vw, 58px) !important;
    }

    .release-scroll,
    .video-scroll {
        gap: 14px;
    }

    .release-card {
        flex-basis: min(84vw, 300px);
        padding: 16px;
    }

    .video-card {
        flex-basis: min(84vw, 320px);
    }

    .archive-folder summary {
        font-size: 19px;
    }

    .member-header {
        padding: 22px;
    }

    .member-tabs button {
        min-height: 48px;
    }

    .site-footer {
        padding-right: 76px;
    }
}

@media (max-width: 420px) {
    .navbar.nav-enhanced {
        padding-right: 16px;
        padding-left: 16px;
    }

    .navbar .logo {
        font-size: 21px;
    }

    .theme-picker {
        right: max(14px, env(safe-area-inset-right));
        bottom: max(14px, env(safe-area-inset-bottom));
    }

    .theme-picker__panel {
        right: -2px;
    }

    .theme-picker__field {
        grid-template-columns: 1fr 86px;
    }

    .dashboard-main {
        padding-right: 14px;
        padding-left: 14px;
    }

    .dashboard-sidebar {
        padding-right: 16px;
        padding-left: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
/* MOOORGAN ARCHIVE ROWS */
.artist-bio-profile-link{display:block;width:240px;max-width:100%;aspect-ratio:1;overflow:hidden}
.artist-bio-profile-link .artist-bio-logo{display:block;width:100%;height:100%;object-fit:cover;margin:0}
.artist-project-image-link{display:block;width:92px;aspect-ratio:1;overflow:hidden;flex:0 0 92px}
.artist-project-image-link img{display:block;width:100%;height:100%;object-fit:cover}
.artist-project-title-link{text-decoration:underline;text-underline-offset:.18em}
.artist-project-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
.artist-archive-row{margin:42px 0}
.artist-archive-heading{display:flex;align-items:center;gap:20px;margin-bottom:16px}
.artist-archive-heading h3{margin:0 0 6px;font-size:clamp(24px,4vw,38px)}
.artist-archive-heading h3 a{text-decoration:underline;text-underline-offset:.16em}
.archive-profile-link{font-size:14px;text-decoration:underline;text-underline-offset:.16em}
.archive-brand-logo{display:grid;place-items:center;width:150px;height:112px;flex:0 0 150px;padding:10px;background:#080808;border:1px solid #303030;overflow:hidden}
.archive-brand-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.archive-entry-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,320px);gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;padding:4px 2px 18px}
.archive-entry-card{min-height:150px;padding:20px;border:1px solid #333;background:#101010;scroll-snap-align:start;text-decoration:none}
.archive-entry-card:hover,.archive-entry-card:focus-visible{border-color:var(--accent,#fff);transform:translateY(-2px)}
.archive-entry-card h4{margin:0 0 12px;font-size:20px;line-height:1.15;text-decoration:underline;text-underline-offset:.15em}
.archive-entry-card p{margin:0;color:#c9c9c9;line-height:1.5}
@media(max-width:600px){.artist-bio-profile-link{width:min(220px,100%)}.artist-project-image-link{width:min(180px,100%);flex-basis:min(180px,100%)}.artist-archive-heading{align-items:flex-start;flex-direction:column}.archive-brand-logo{width:min(220px,100%);height:130px;flex-basis:auto}.archive-entry-scroll{grid-auto-columns:minmax(230px,82vw)}}

.archive-brand-logo-dod{background:#080808}
.archive-brand-logo-dod img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;opacity:1}
