html, body {
    margin: 0;
    padding: 0;
}

body {
    margin:0;
    background:var(--kingk-bg-main);
    color:var(--kingk-text-main);
    font-family: system-ui, sans-serif;
}

header {

}

header h1 {
    margin: 0;
    font-size: 36px;
}
nav {
    background:var(--kingk-ochre);
}

main.content {
    padding: 40px 20px;
}

h2 {

    color: #9e1b12;
}

.panel {
    background:var(--kingk-bg-panel);
    padding:24px;
    border-radius:6px;
}
.page-layout {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 3vw;
    padding: 0;
}

.nav-tree {
    background: #e48a2a;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.nav-tree ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-tree > ul > li {
    margin-bottom: 12px;
}

.nav-tree > ul > li > a {
    font-weight: 700;
    color: #3a1f00;
}

.nav-tree ul ul {
    padding-left: 18px;
    margin-top: 6px;
}

.nav-tree ul ul li {
    margin: 4px 0;
}

.nav-tree ul ul li a {
    font-weight: normal;
    text-decoration: none;
    color: #4a2c00;
}

.nav-tree a:hover {
    text-decoration: underline;
}

.content {
    max-width: 900px;
    padding-top: 10px;
}

.breadcrumbs {

    margin-top: 18px;

    font-size: 14px;
    letter-spacing: .3px;

    color: #f3e7c6;
}

.breadcrumbs a {

    color: #f3e7c6;
    text-decoration: none;
}

.breadcrumbs a:hover {

    color: #e4c46a;
}

.breadcrumbs span {
    opacity: .7;
}

.nav-tree {
    background: #e48a2a;
    padding: 20px;
}

.nav-tree ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-tree li {
    margin: 6px 0;
}

.nav-tree a {
    text-decoration: none;
    color: #3a1f00;
    display: block;
}

.nav-tree a:hover {
    text-decoration: underline;
}

.nav-tree ul ul {
    padding-left: 16px;
}
.nav-tree > ul > li > a {
    font-weight: 600;
}

footer {
    font-size: 9px;
    text-align: center;

}

.board-member img {
    width: 20%;
    float: left;

    margin-right: 1.25rem;
    margin-bottom: 1rem;

    border-radius: 6px;
}




.video-card {

    background: var(--kingk-bg-panel);

    border: 1px solid var(--kingk-sand);

    border-radius: 6px;

    padding: 1.5rem;

    margin-bottom: 2rem;
}

.video-card h2 {

    margin-top: 0;
    color: var(--kingk-red);
}

.video-meta {

    margin-bottom: 1rem;

    color: var(--kingk-text-soft);

    font-size: 0.95rem;
}

.video-wrapper {

    width: 100%;

    aspect-ratio: 16 / 9;
}

.video-wrapper iframe {

    width: 100%;
    height: 100%;

    border: 0;
}


.video-thumb {

    width: 320px;

    max-width: 100%;

    display: block;

    border-radius: 4px;

    border: 1px solid var(--kingk-sand);

    margin: 1rem 0;
}

.video-thumb:hover {

    opacity: .9;
}


.video-thumb {

    width: 320px;
    max-width: 100%;

    display: block;

    padding: 10px;

    background:
        linear-gradient(
            45deg,
            #6f8f52 0%,
            #8dad68 25%,
            #5f7c47 50%,
            #8dad68 75%,
            #6f8f52 100%
        );

    border: 2px solid #4f6337;

    border-radius: 8px;

    box-shadow:
        0 2px 6px rgba(0,0,0,.15),
        inset 0 0 0 1px rgba(255,255,255,.25);
}

.content h1 {

    color: var(--kingk-red);

    margin-bottom: .5rem;
}

.video-card {

    background: #6d7f54;

    color: #f7f1df;

    border: 2px solid #536340;

    border-radius: 8px;

    padding: 1.5rem;

    margin-bottom: 2rem;
}

.video-card {

    background:
        linear-gradient(
            135deg,
            #3d2918 0%,
            #4a3120 40%,
            #352214 100%
        );

    color: #f5eedc;

    border: 1px solid #7a5a32;

    border-radius: 10px;

    padding: 1.75rem;

    margin-bottom: 2rem;

    box-shadow:
        0 4px 12px rgba(0,0,0,.18);
}

.video-card h2 {

    margin-top: 0;

    color: #e6b65a;

    font-size: 2.1rem;

    font-weight: 700;
}

.video-card p {

    color: #f5eedc;

    line-height: 1.5;
}

.video-card strong {

    color: #f0d27a;
}

.video-thumb-frame {

    display: inline-block;

    padding: 10px;

    background:
        repeating-linear-gradient(
            45deg,
            #658348,
            #658348 8px,
            #8eae68 8px,
            #8eae68 16px
        );

    border: 1px solid #44592f;

    border-radius: 12px;

    box-shadow:
        0 2px 8px rgba(0,0,0,.25);
}

.video-thumb {

    width: 320px;

    max-width: 100%;

    height: auto;

    display: block;

    border-radius: 6px;
}

.content h1 {

    color: var(--kingk-red);

    margin-bottom: .25rem;
}


.video-label {

    color: #d0b06a;

    font-weight: 500;
}

.video-value {

    color: #f7f1df;

    font-weight: 700;
}


.video-label {

    color: #f5eedc;

    font-weight: 400;
}

.video-value {

    color: #e6b65a;

    font-weight: 700;
}



/* Generic image gallery */

.gallery {
    display: grid;
    gap: 24px;
    margin: 30px 0;
}

.gallery-2 {
    grid-template-columns: repeat(2, 1fr);
}

.gallery-3 {
    grid-template-columns: repeat(3, 1fr);
}

.gallery-4 {
    grid-template-columns: repeat(4, 1fr);
}

.gallery figure {
    margin: 0;
}

.gallery a {
    display: block;
}

.gallery img {
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid #999;
    box-shadow: 0 2px 8px rgba(0,0,0,.25);
    transition: transform .2s ease;
}

.gallery img:hover {
    transform: scale(1.02);
}

.gallery figcaption {
    margin-top: 8px;
    text-align: center;
    font-weight: bold;
}

@media (max-width:900px) {
    .gallery-3,
    .gallery-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width:600px) {
    .gallery,
    .gallery-2,
    .gallery-3,
    .gallery-4 {
        grid-template-columns: 1fr;
    }
}




/* Document viewer */

.document-view {
    max-width: 1000px;
    margin: 0 auto;
    padding: 2rem;
    background: #f4e8cf;
    border: 1px solid #d9ccb0;
    border-radius: 6px;
}

.document-page-title {
    margin: 1rem 0;
    text-align: center;
    font-size: 1.1rem;
    font-weight: 600;
    color: #555;
}

.document-page {
    display: block;
    width: 100%;
    height: auto;
    margin: 1.5rem auto;
    background: #fff;
    border: 1px solid #b8b8b8;
    box-shadow: 0 4px 16px rgba(0,0,0,.15);
}

.doc-nav {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    margin: 1.5rem 0;
    padding: .75rem 1rem;
    background: #f4e8cf;
    border: 1px solid #d6c3a2;
    border-radius: 4px;
}

.doc-nav > div:first-child {
    text-align: left;
}

.doc-nav > div:nth-child(2) {
    text-align: center;
}

.doc-nav > div:last-child {
    text-align: right;
}

.doc-nav a {
    color: #8f1d1d;
    text-decoration: none;
    font-weight: 600;
}

.doc-nav a:hover {
    text-decoration: underline;
}

.gallery img {
    border: 1px solid #bbb;
    box-shadow: 0 2px 6px rgba(0,0,0,.18);
    transition: transform .2s ease, box-shadow .2s ease;
}

.gallery img:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0,0,0,.25);
}

.gallery figcaption {
    margin-top: .5rem;
    text-align: center;
    font-size: .9rem;
    color: #666;
}

/* Content links */

main a,
.content a,
.page-content a {
    color: #8f1f18;
    text-decoration: none;
    font-weight: 500;
    transition: color .2s ease;
}

main a:visited,
.content a:visited,
.page-content a:visited {
    color: #7a1a14;
}

main a:hover,
.content a:hover,
.page-content a:hover {
    color: #c23a1c;
    text-decoration: underline;
}

main a:active,
.content a:active {
    color: #65140f;
}

.nav-heading {
    display: block;
    font-weight: bold;
    color: inherit;
    cursor: default;
    padding: .25rem 0;
}