html, body {
    font-family: 'Risque-regular',  Risque; src: url("fonts/Risque-Regular.ttf");
    --contentWidth: 1280px;

    /*--primary-color: #85c53f;*/
    /*--secondary-color: #910636;*/
    --primary-color: #fbe15f;
    --secondary-color: #f06d06;

    --header-color: hsl(from var(--primary-color) h s l);
    --subheader-color: hsl(from var(--secondary-color) h 80% 60%);
    --font-color: hsl(from var(--primary-color) h 14% 83%);
    --font-title-color: hsl(from var(--primary-color) h s l);
    --font-subtitle-color: hsl(from var(--primary-color) h s l);
    --bg-color: hsl(from var(--primary-color) h 6% 6%);
    --main-gradient-top-color: hsl(from var(--secondary-color) h 95% 10%);
    --main-gradient-bottom-color: hsl(from var(--secondary-color) h s l);
    --button-bg-color: hsl(from var(--secondary-color) h 96% 55%);
    --button-font-color: hsl(from var(--primary-color) h s l);
    --image-frame-color: hsl(from var(--secondary-color) h 45% 38%);
    --panel-error-color: #c13d3d;
    --panel-info-color: hsl(from var(--secondary-color) h s 30%);
    --panel-success-color: #3e811e;    
    
    
    --base-color: #0f0c06;    
    /*--header-color: #fbe15f;*/
    --header-faded-color: rgba(251, 225, 91, 20%);
    /*--subheader-color: #cdad5d;*/
    /*--font-color: #dfd6d0;;*/
    --content-bg-color: rgba(0,0,0,0.3);
    --modal-bg-color: rgba(0,0,0,0.9);
    /*--button-bg-color: #8b3e01;*/
    /*--button-font-color: #fbe15f;*/
    /*--main-gradient-top-color: #591f04;*/
    /*--main-gradient-bottom-color: #f06d06;*/
    --nom-nom: #591f04;
    /*--panel-error-color: #c13d3d;*/
    /*--panel-info-color: hsl(from var(--secondary-color) h s 30%);*/
    /*--panel-success-color: #3e811e;*/
    /*--image-frame-color: #976d4b;*/
    
    margin: 0;
    padding: 0;
    background-color: var(--base-color);
    color: var(--font-color);
}

.bg-video {
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
}

.bg-video {
    filter: 
            brightness(10%)
            blur(2px)
            grayscale(80%);
}

.top {
    position: sticky;
    top: 0;
    /*background-color: #f8cf55;*/
    height: 100px;
    z-index: 100;
    display: grid;
    grid-template-columns: 100px 1fr;

    background-image:
            linear-gradient(
                    var(--main-gradient-top-color), 
                    var(--main-gradient-bottom-color)
            );    
}

.main-seperator {
    margin: 1em 0 3em 0;
    width: 100%;
    height: 1px;
    background-image:
            /*linear-gradient(0.25turn, var(--primary-color), var(--secondary-color), var(--primary-color));*/
            linear-gradient(0.25turn, var(--secondary-color) 30%, var(--primary-color) 50%, var(--primary-color) 50%, var(--secondary-color) 70%);
}

.top-logo {
    /*background-image: url('./images/EWlogo1.svg');*/
    /*background-size: contain;*/
    max-height: 100px;
    aspect-ratio: 1/1;
}

.top-logo-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: calc(100vw - 40px);
    padding: 0 20px;
}

.svg-top-logo {
    fill: var(--header-color);
    width: 100%;
    height: 100%;
    cursor: pointer;
    /*margin-left: 20px;*/
    filter: drop-shadow(1px 3px 1px rgb(0 0 0 / 0.4));
}

.svg-top-logo:hover {
    /*fill: red;*/
    filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}

/* Menu Icon */
.hamb {
    display: none;
    cursor: pointer;
    /*float: right;*/
    /*padding: 40px 20px;*/
}/* Style label tag */

.hamb-line {
    background: var(--header-color);
    display: block;
    height: 2px;
    position: relative;
    width: 24px;

} /* Style span tag */

.hamb-line::before,
.hamb-line::after {
    background: var(--header-color);
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .2s ease-out;
    width: 100%;
}
.hamb-line::before {
    top: 5px;
}
.hamb-line::after {
    top: -5px;
}

.top-menu-toggle {
    display: none;
}

.top-menu {
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    align-items: center;
    justify-content: center;
    max-height: none;
}

.top-menu-container {
    display: flex;
    flex-direction: row;
    height: 100%;
}

.top-menu-separator {
    background-color: var(--header-color);
    height: 100%;
    width: 1px;
}

.top-menu-item {
    display: flex;
    justify-items: center;
    align-items: center;
}

.top-menu-link {
    color: var(--header-color);
    padding: 0 30px;
    font-size: 2em;
    font-weight: 700;
    text-decoration: none;
    filter: drop-shadow(1px 3px 1px rgb(0 0 0 / 0.4));
}

.top-menu-link:hover {
    filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}



.page {
    
}

main {
    margin: 5rem max(5rem, 50vw - var(--contentWidth) / 2);
    padding: 5rem;
    background-color: var(--bg-color);
    position: relative;
    display: flex;
    flex-direction: column;   
}

h1 {
    color: var(--secondary-color);    
}

.main-article {
    font-size: 1.4em;
}

a {
    color: var(--header-color);
    cursor: pointer;
    text-decoration: underline;    
}

.image-style
{
    border: 1px solid var(--image-frame-color);
    border-radius: 4px;    
}

.btn {
    background-color: var(--button-bg-color);
    padding: 0.4em 1em;
    font-size: 1em;
    color: var(--button-font-color);
    border: 0;
    border-radius: 5px;
    cursor: pointer;
    text-shadow: 1px 3px 1px rgb(0 0 0 / 0.4);
}

.btn-small {
    font-size: 0.8em;
}

.btn:hover {
    box-shadow: 0 0 10px rgba(255, 200, 11, 0.2);
}

.modal-container {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background-color: var(--modal-bg-color);
}

.modal-content {
    width: calc(200px + var(--contentWidth));
    height: 70vh;
    padding: 2rem;
    background-image:
            linear-gradient(
                    var(--main-gradient-top-color),
                    var(--main-gradient-bottom-color)
            );
    font-size: 0.5em;
}

.modal-title {
    font-size: 3em;
    color: var(--header-color);
    margin-top: 0;
}

.modal-body{
    height: 55vh;
    overflow-y: scroll;
}

.modal-footer {
    margin-top: 1rem;
    font-size: 2em;
    color: var(--header-color);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 1em;
}

/* custom scrollbar - start */
/* width */
::-webkit-scrollbar {
    width: 4px;
}

/* Track */
::-webkit-scrollbar-track {
    background: var(--header-faded-color);
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--header-color);
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: #555;
}
/* custom scrollbar - end */

/* custom checkbox - start */
.container {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: center;
    position: relative;
    padding-left: 45px;
    /*margin-bottom: 12px;*/
    cursor: pointer;
    /*font-size: 22px;*/
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Hide the browser's default checkbox */
.container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 35px;
    width: 35px;
    background-color: var(--header-faded-color);
}

/* On mouse-over, add a grey background color */
.container:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.container input:checked ~ .checkmark {
    background-color: var(--header-color);
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.container input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.container .checkmark:after {
    left: 10px;
    top: 5px;
    width: 10px;
    height: 15px;
    border: solid var(--button-bg-color);
    border-width: 0 5px 5px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
/* custom checkbox - end */

.news-section {
    display: grid;
    row-gap: 5rem;
    /*column-gap: 3rem;*/
    grid-template-columns: 1fr;
    font: bold 16px 'Risque-regular', Risque;
    /*color: var(--font-color);*/
}

.news-section :first-child {
    /*grid-column: 1 / -1;*/
    flex-direction: column;
}

.news-section :first-child > .news-item-header {
    /*grid-column: 1 / -1;*/
    width: 100%;
    max-width: 100%;
}

.news-section :first-child > .news-item-video {
    /*grid-column: 1 / -1;*/
    width: 100%;
    max-width: 100%;    
}

.news-item {
    position: relative;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    gap: 3rem;
    justify-content: space-between;
}

.news-item:nth-of-type(even) {
    flex-direction: row-reverse;
}

.news-item-header {
    width: 50%;
    display: flex;
    flex-direction: column;
    /*display: grid;*/
    /*grid-template-columns: 1fr 1%;*/
    gap: 0.5rem;
    align-content: center;
}

.news-item-title {
    display: flex;
    justify-content: center;
    align-items: start;
    color: var(--header-color);
    font-size: 1.7rem;
    /*white-space: pre;*/
}

.news-item-date {
    display: flex;
    justify-content: start;
    align-items: center;
    font-size: 0.8rem;
    white-space: pre;
    color: var(--image-frame-color);
}

.news-item-body {
    grid-column: 1 / -1;
    font-weight: 400;
}

.news-item-image {
    min-width: 40%;
    max-width: 50%;
    aspect-ratio: 1920 / 1080;
    background-size: cover;
}

.news-item-video {
    min-width: 40%;
    max-width: 50%;    
    /*position: absolute;*/
    /*top: 0;*/
    /*left: 0;*/
    /*width: 100%;*/
    /*height: 100%;*/
    /*object-fit: cover;*/
    /*overflow: hidden;    */
}

.news-item-details {
    display: flex;
    flex-direction: column;
    gap: 1rem;    
}

.news-item-detail {
    
}

.news-item-detail.details-header {
    color: var(--header-color);
    font-size: 1.7rem;
}

.news-item-detail.details-subheader {
    color: var(--subheader-color);
    font-size: 1.2rem;
}

.news-item-detail.details-text {
    font-weight: 400;
}

.news-item-detail.details-image {
    width: 100%;
    aspect-ratio: 2 / 1;
    background-size: cover;
    cursor: pointer;
}

.news-item-detail.details-list {
    margin: 0;
}

.image-modal {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;  
    background-color: var(--modal-bg-color);
}

.image-modal-image {
    width: 80%;
    height: 80%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

.downloads-information {
    margin-bottom: 2em;
}

.downloads-container {
    display: flex;
    flex-direction: row;
    gap: 2em;
    justify-content: center;
}

.downloads-panel {
    display: flex;
    flex-direction: column;
    background-color: var(--button-bg-color);
    border-radius: 10px;
    justify-items: center;
    align-items: center;
    padding: 1em;
    height: 5em;
    gap: 0.5em;
}

.downloads-mac {
    fill: var(--header-color);
    width: 100%;
    height: 100%;
    cursor: pointer;
    filter: drop-shadow(1px 3px 1px rgb(0 0 0 / 0.4));
}

.downloads-mac:hover {
    filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}

.downloads-win {
    fill: var(--header-color);
    width: 100%;
    height: 100%;
    cursor: pointer;
    filter: drop-shadow(1px 3px 1px rgb(0 0 0 / 0.4));
}

.downloads-win:hover {
    filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}

.register-form {
}

.form-element-input {
    line-height: 30px;
}

.form-element {
    display: grid;
    grid-template-columns: 1fr;
    padding-bottom: 2rem;
}

.form-element-inline {
    display: flex;
    flex-direction: row;
    font-size: 1em;
    gap: 0.2em;
}

.form-element-password-description {
    display: flex;
    flex-direction: column;
}

.form-element-password-description-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;   
    justify-items: center;
}

.form-element-password-strength-grid {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.form-element-password-strength {
    width: 20px;
    height: 20px;
    border-radius: 10px;
}

.panel-error {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--panel-error-color);
    padding: 1em;
    margin-top: 1em;
    border-radius: 5px;    
}

.panel-info {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--panel-info-color);
    padding: 1em;
    margin-top: 1em;
    border-radius: 5px;
}

.panel-success {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--panel-success-color);
    padding: 1em;
    margin-top: 1em;
    border-radius: 5px;
}

#blazor-error-ui {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

@media (max-width: 768px) {
    .top {
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
        align-items: start;
    }

    .svg-top-logo {
        /*margin-left: 0;*/
    }

    .hamb {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .top-menu {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows .5s ease-out;
        /*flex-direction: column;*/
        /*align-items: start;*/
        /*max-height: 0;*/
        /*overflow: hidden;*/
        /*transition: max-height .5s ease-out;*/
    }

    .top-menu-container {
        flex-direction: column;
        overflow: hidden;
    }

    /* Toggle menu icon */
    .top-menu-toggle:checked ~ .top-menu {
        /*max-height: 300px;*/
        grid-template-rows: 1fr;
        padding: 1em 0;
    }

    .top-menu-toggle:checked ~ .top-logo-container > .hamb .hamb-line {
        background: transparent;
    }
    .top-menu-toggle:checked ~ .top-logo-container >  .hamb .hamb-line::before {
        transform: rotate(-45deg);
        top:0;
    }
    .top-menu-toggle:checked ~ .top-logo-container >  .hamb .hamb-line::after {
        transform: rotate(45deg);
        top:0;
    }

    main {
        margin: 1rem max(1rem, 50vw - var(--contentWidth) / 2);
        padding: 1rem;
    }


    .news-item-title {
        white-space: unset;
    }

    .news-item:nth-of-type(even) {
        flex-direction: column;
    }  
    
    .news-item {
        width: 100%;
        flex-direction: column;
        gap: 1em;
    }
    
    .news-item-header {
        width: 100%;
    }
    
    .news-item-image {
        min-width: 100%;
        max-width: 100%;
    }

    .news-item-video {
        min-width: 100%;
        max-width: 100%;
    }    
}