
:root {
    --color-neutral: #ffffff;
    --color-neutral-alternate: #f2f2f2;
    --color-neutral-alternate2: #e2e2e2;
    --color-neutral-alternate3: #c2c2c2;
    --color-contrast: #000000;
    --color-contrast-alternate: #161616;
    --color-contrast-alternate2: #6b6b6b;
    --color-primary: #24addb;
    --color-secondary: #2094bb;
    --color-highlight: #00cc00;
    --color-bad: #ff0000;
    --color-etive-alpha: rgba(9, 35, 48, 50%);
    --color-blackish: hsl(0, 0%, 20%);
    --color-blackish-alpha: rgba(#0923307f);

    --color-etive: #092330; /* blackish */
    --color-green: rgb(56, 90, 115); /* #385a73 */
    --color-green-alpha: rgba(56, 90, 115, 50%);
    --color-gold: #ae9e91;
    --color-gold-intense: #b4967e;
    --color-gold-weak: #d6d6d8;
}

::-webkit-scrollbar {
    width: 0.5em;
    height: 0.5em;
}
::-webkit-scrollbar-track {
    background: var(--color-neutral-alternate);
}
::-webkit-scrollbar-thumb {
    background: var(--color-neutral-alternate3);
}
::-webkit-scrollbar-thumb:hover {
    background: var(--color-contrast-alternate2);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Kanit', sans-serif;
}

/* @font-face {
    font-family: 'Roboto';
    src: url('../fonts/Roboto-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'Roboto Mono';
    src: url('../fonts/RobotoMono-VariableFont_wght.ttf') format('truetype');
}
@font-face {
    font-family: 'Open Sans';
    src: url('../fonts/OpenSans-Medium.ttf') format('truetype');
} */

@font-face {
    font-family: 'Kanit';
    src: url('/static/fonts/Kanit/Kanit-Light.ttf') format('truetype');
}
@font-face {
    font-family: 'Kanit Bold';
    src: url('/static/fonts/Kanit/Kanit-Bold.ttf') format('truetype');
}
html {
    /* scroll-snap-type: y proximity; */
    /* scroll-padding: 3em; */
    scroll-padding-top: 3em;
}
body {
    /* font-size: 10pt; */
    /* text-rendering: optimizelegibility; */
    overflow-y: scroll;
    color: var(--color-contrast);
    background-color: var(--color-neutral);
}

#main-wrapper {
    background-color: var(--color-neutral-alternate);
}

h1 {
    font-family: 'Kanit Bold', sans-serif;
}

h1, h2, h3 {
    margin: 1rem 1rem;
}

p {
    margin-block-start: 1em;
    margin-block-end: 1em;
    padding: 0 1rem;
}

#navbar {
    grid-column: 1 / 13;
    position: sticky;
    top: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--color-neutral);
    background-color: var(--color-contrast-alternate);
    z-index: 999;
}
#navbar-content {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.nav-items {
    display: none;
    flex-direction: row;
    justify-content: space-between;
}
#navbar a, #navbar svg {
    margin-top: auto;
    margin-bottom: auto;
    font-size: 1.2em;
    font-family: 'Kanit', sans-serif;
}
.nav-items a {
    padding: 0.3em 2.5em 0.3em 0.5em;
}
.nav-items.active {
    display: block;
    position: absolute;
    background-color: var(--color-contrast-alternate);
    top: 0;
    right: 0;
}
.nav-items.active > a {
    display: block;
}
.nav-start, .nav-end {
    width: 12rem;
    height: 100%;
    display: flex;
    flex-direction: row;
}
.nav-start {
    justify-content: flex-start;
}
.nav-end {
    justify-content: flex-end;
}
.nav-start a, .nav-end a {
    padding: 0.5em 1em 0.5em 1em;
}
.nav-end a {
    padding: 0.3em 0.5em 0.3em 0.5em;
}
.nav-end a > svg {
    display: block;
    margin: auto auto;
}
.nav-start a > img {
    display: block;
    margin: auto auto;
}

#navbar a, #navbar a:visited, #navbar a:hover {
    color: inherit;
    text-decoration: none;
}

#navbar a:hover {
    background-color: var(--color-contrast-alternate2);
}
svg.menubutton {
    transform: rotate(0deg);
    transition: transform .2s;
}
svg.menubutton.expanded {
    transform: rotate(45deg);
    transition: transform .2s;
}
#navbar a.language_selector {
    font-size: 0.8rem;
}
.language_selector.active {
    font-weight: bold;
}

.card {
    border-radius: 1em;
}
.offer-card {
    /* padding: 5em 0 1em 0; */
    padding-bottom: 1em;
    box-shadow: 2px 2px 6px var(--color-contrast);
}
.offer-card ul {
    padding: 1em;
}
li, .offer-card li {
    list-style-type: disclosure-closed;
    margin-bottom: 1em;
    margin-left: 1em;
}
.offer-header {
    min-height: 6em;
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
}
.offer-title {
    box-shadow: 1px 2px 6px var(--color-contrast);
    margin-top: -3em;
    text-align: center;
    background-color: var(--color-neutral);
    /* border: 1px solid var(--color-contrast); */
    padding: 0.4em 0.5em;
    border-radius: 0.5em;
    margin-bottom: 1.5em;
}
.offer-title h2 {
    margin: 0;
}
.content {
    background-color: var(--color-neutral);
}
.etive {
    background-color: var(--color-etive);
    color: white;
}
.green {
    background-color: var(--color-green);
    /* color: var(--color-gold); */
    color: var(--color-neutral);
}
.bg-alt {
    background-color: var(--color-neutral-alternate2);
}
.bg-neutral {
    background-color: var(--color-neutral-alternate);
}

path {
    opacity: 0.75;
}
/* g.highlight > path {
    opacity: 0.90;
    transition: opacity 2s;
} */
/* path.highlight {
    opacity: 0.90;
} */
path:hover {
    opacity: 1;
    cursor: pointer;
}

.conditions {
    display: block;
}

.conditions.hide {
    display: none;
}

.contrast {
    color: var(--color-neutral);
    background-color: var(--color-contrast-alternate);
}

.btn:not(.disabled) {
    cursor: pointer;
}

.btn {
    color: var(--color-neutral);
    font-family: 'Kanit', sans-serif;
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    border: 1px solid transparent;
    transition-duration: 0.15s, 0.15s, 0.15s, 0.15s;
    transition-timing-function: ease-in-out, ease-in-out, ease-in-out, ease-in-out;
    transition-delay: 0s, 0s, 0s, 0s;
    transition-property: color, background-color, border-color, box-shadow;
    overflow: visible;
    margin: 0;
    box-sizing: border-box;
    
    /* large btn */
    /* padding: 0.5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem; */

    /* normal btn */
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 0.25rem;
}

.btn:hover {
    background-color: var(--color-secondary);
    border-color: black;
}

#muninex-screenshot-video1 {
    width: 100%;
    object-fit: scale-down;
    cursor: pointer;
}
#muninex-screenshot-2 {
    cursor: pointer;
}

#footer {
    text-align: center;
    padding-top: 1em;
}

a:visited {
    color: inherit;
}

a {
    color: inherit;
    /* text-decoration: none; */
    cursor: pointer;
}

.toggle {
    display: inline-block;
}

.toggle.hidden {
    display: none;
}

.hidden {
    display: none !important;
}

div#footer > .box:nth-child(1) {
    margin-left: 5em;
    text-align: left;
}

.page-overlay {
    display: none;
}
.page-overlay.active {
    display: flex;
    z-index: 999;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0, 0, 0, 60%); /* opaque */
}
.overlay-content-container {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 95%;
    height: 95%;
    /* background: white; */
    background: rgb(0, 0, 0, 60%);
    cursor: pointer;
}
.overlay-content-container img {
    object-fit: scale-down;
    max-width: 100%;
    max-height: 100%;
    
}

#cover-paragraph > span.fadein {
    background-color: white;
    color: var(--color-green);
    transition: background-color 2s;
}
#cover-paragraph > span {
    transition: background-color .5s;
}

#content {
    overflow-y: unset;
}
.scroll-snap {
    scroll-snap-align: center none; 
    scroll-margin-top: 2em;
    /* scroll-snap-stop: always; */
}
#content > div {
    scroll-snap-align: none none; 
    background-attachment: fixed;
}

@keyframes appear {
    0% {
        /* transform: translateY(100%); */
        opacity: 0;
    }
    100% {
        /* transform: translateY(0%); */
        opacity: 1;
    }
}
.cover {
    font-size: 2rem;
    background-color: var(--color-etive-alpha);
    background: url('/static/img/mrr-header-image.jpg') center / cover no-repeat;
    animation: 1.5s appear;
}
.cover-wrap {
    /* opacity: 1; */
    /* background-color: var(--color-etive); */
    background-color: var(--color-etive-alpha);
    min-height: 100vh;
}
.d3chart {
    position: absolute;
    height: 100%;
}

.right {
    text-align: right;
}
.center {
    text-align: center;
}
img {
    max-width: 100%;
    max-height: 100%;
    height: auto;
}
.grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    /* grid-auto-rows: min-content; */
    /* grid-auto-rows: max-content; */
    /* align-items: start; */
    /* default: stretch */
    padding: 0;
}
.impressum {
    text-align: center;
    font-size: 0.7em;
}
.pad {
    padding: 2em 2em;
}
.margin2 {
    margin: 2em 1em;
}
.margin4 {
    margin: 4em 1em;
}
.margin-sm-3 {
    margin-left: 3em;
}

.sm-2col {
    grid-column-end: span 2;
}
.sm-3col {
    grid-column-end: span 3;
}
.sm-4col {
    grid-column-end: span 4;
}
.sm-5col {
    grid-column-end: span 5;
}
.sm-6col {
    grid-column-end: span 6;
}
.sm-7col {
    grid-column-end: span 7;
}
.sm-8col {
    grid-column-end: span 8;
}
.sm-9col {
    grid-column-end: span 9;
}
.sm-10col {
    grid-column-end: span 10;
}
.sm-11col {
    grid-column-end: span 11;
}
.sm-12col {
    grid-column-end: span 12;
}
.sm-1pad {
    grid-column-start: 2;
}
.sm-2pad {
    grid-column-start: 3;
}
.sm-3pad {
    grid-column-start: 4;
}
.sm-4pad {
    grid-column-start: 5;
}
.sm-5pad {
    grid-column-start: 6;
}
.sm-6pad {
    grid-column-start: 7;
}
.sm-7pad {
    grid-column-start: 8;
}
.sm-8pad {
    grid-column-start: 9;
}
.sm-9pad {
    grid-column-start: 10;
}
.sm-10pad {
    grid-column-start: 11;
}
.sm-11pad {
    grid-column-start: 12;
}

.sm-gap1 {
    grid-gap: 1em;
}
.sm-gap2 {
    grid-gap: 2em;
}
.row-gap1 {
    row-gap: 1em;
}
.row-gap2 {
    row-gap: 2em;
}

.sm-sticky {
    position: sticky;
    align-self: start;
    top: 3.5rem;
}

.sm-text-large {
    font-size: 2rem;
}

.article {
    font-size: 1rem;
    font-family: 'Open Sans', sans-serif;
}

/* sm */
.snap-container {
    /* scroll-snap-align: end none; */
    /* scroll-snap-align: start none; */
    scroll-snap-align: none none;
    scroll-margin-top: calc(100vh - 300px - 3em);
    margin-top: 30vh;
    margin-bottom: 30vh;
    /* min-height: 100vh; */
    display: flex;
    flex-direction: column;
    /* justify-content: flex-end; */
    justify-content: flex-start;
}

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

    .cover {
        font-size: 4rem;
    }

    .md-2col {
        grid-column-end: span 2;
    }
    .md-3col {
        grid-column-end: span 3;
    }
    .md-4col {
        grid-column-end: span 4;
    }
    .md-5col {
        grid-column-end: span 5;
    }
    .md-6col {
        grid-column-end: span 6;
    }
    .md-7col {
        grid-column-end: span 7;
    }
    .md-8col {
        grid-column-end: span 8;
    }
    .md-9col {
        grid-column-end: span 9;
    }
    .md-10col {
        grid-column-end: span 10;
    }
    .md-11col {
        grid-column-end: span 11;
    }
    .md-12col {
        grid-column-end: span 12;
    }
    .md-1pad {
        grid-column-start: 2;
    }
    .md-2pad {
        grid-column-start: 3;
    }
    .md-3pad {
        grid-column-start: 4;
    }
    .md-4pad {
        grid-column-start: 5;
    }
    .md-5pad {
        grid-column-start: 6;
    }
    .md-6pad {
        grid-column-start: 7;
    }
    .md-7pad {
        grid-column-start: 8;
    }
    .md-8pad {
        grid-column-start: 9;
    }
    .md-9pad {
        grid-column-start: 10;
    }
    .md-10pad {
        grid-column-start: 11;
    }
    .md-11pad {
        grid-column-start: 12;
    }

    .md-gap1 {
        grid-gap: 1em;
    }
    .md-gap2 {
        grid-gap: 2em;
    }

    .snap-container {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        margin-top: inherit;
        margin-bottom: inherit;
        scroll-snap-align: center none;
        scroll-margin-top: inherit;
    }
    
    .md-margin-left-40 {
        margin-left: 40%;
    }
    .md-text-oversize {
        font-size: 2em;
    }
    
    .md-text-large {
        font-size: 2em;
    }
    .md-text-medium {
        font-size: 1.5em;
    }
    .md-text-normal {
        font-size: 1rem;
    }

    .md-sticky {
        position: sticky;
        align-self: start;
        top: 4rem;
    }
}

@media only screen and (min-width: 1199px) {
    .xl-2col {
        grid-column-end: span 2;
    }
    .xl-3col {
        grid-column-end: span 3;
    }
    .xl-4col {
        grid-column-end: span 4;
    }
    .xl-5col {
        grid-column-end: span 5;
    }
    .xl-6col {
        grid-column-end: span 6;
    }
    .xl-7col {
        grid-column-end: span 7;
    }
    .xl-8col {
        grid-column-end: span 8;
    }
    .xl-9col {
        grid-column-end: span 9;
    }
    .xl-10col {
        grid-column-end: span 10;
    }
    .xl-11col {
        grid-column-end: span 11;
    }
    .xl-12col {
        grid-column-end: span 12;
    }
    .xl-1pad {
        grid-column-start: 2;
    }
    .xl-2pad {
        grid-column-start: 3;
    }
    .xl-3pad {
        grid-column-start: 4;
    }
    .xl-4pad {
        grid-column-start: 5;
    }
    .xl-5pad {
        grid-column-start: 6;
    }
    .xl-6pad {
        grid-column-start: 7;
    }
    .xl-7pad {
        grid-column-start: 8;
    }
    .xl-8pad {
        grid-column-start: 9;
    }
    .xl-9pad {
        grid-column-start: 10;
    }
    .xl-10pad {
        grid-column-start: 11;
    }
    .xl-11pad {
        grid-column-start: 12;
    }

    .margin-xl-4 {
        margin-left: 4em;
    }
    .margin-xl-6 {
        margin-left: 6em;
    }
}

/* medium width screen */
@media only screen and (min-width: 500px) and (max-resolution: 96dpi), (min-width: 750px) and (min-resolution: 97dpi) {
}

/* full width screen */
@media only screen and (min-width: 890px) and (max-resolution: 96dpi), (min-width: 1335px) and (min-resolution: 97dpi) {
    #navbar-content {
        max-width: 70rem;
        margin-left: auto;
        margin-right: auto;
    }
    #navbar .nav-items a {
        padding: 0.5em 3em 0.5em 3em;
    }
    #navbar .nav-items {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }
    #menubutton {
        display: none;
    }
}
