:root {
    --white: #FFF;
  --sand: #edece6;
  --sky: #bccedb;
  --sea: #355175;
  --deep-sea: #07004D;
  --amber: #FFD9C5;
  --dark-amber: #c16c18;
  --dark: #414141;
  --light: #FFFFFF;
  --violet: #6304C2;

  --color-info: #b2c6ff;
  --color-secondary: #C1BfD2;

  --button-padding: 0.5rem 2.5rem;
  --border-radius-aggressive: 4rem;
  --border-radius-normal: 2rem;

  --navbar-border-size: 5px;

    /* värioverlayt: 25% */
    --sea-overlay: rgba(188,206,219, 0.25);
    --amber-overlay: rgba(224,172,121, 0.25);
}

body {
	background-color: var(--white);
	font-family: 'NotoSans', sans-serif;
	font-weight: 400;
    font-size: 18px;
	color: var(--deep-sea);
}

.animateMe {
    transition: all 1s ease;
}

#sloganArea {
    opacity: 0;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--deep-sea);
}

body .ccm-page section .img-fluid {
    border-radius: var(--border-radius-normal);
}

body .ccm-page .no-image-rounding .img-fluid {
    border-radius: 0px;
    border: none;
}

.bg-primary {
    background-color: var(--deep-sea)!important;
    color: var(--amber);
}

.bg-primary a,
.bg-primary a:hover,
.bg-primary a:focus,
.bg-primary a:active,
.bg-primary .btn-transparent,
.bg-primary .btn-transparent:hover,
.bg-primary .btn-transparent:active,
.bg-primary .btn-transparent:focus {
    color: var(--light)!important;
}

.bg-primary a:hover,
.bg-primary a:focus,
.bg-primary a:active,
.bg-primary .btn-transparent:hover,
.bg-primary .btn-transparent:active,
.bg-primary .btn-transparent:focus {
    text-decoration: underline;
}

.seabg {
    background-color: var(--sea);
    color: var(--sand);
}

.darkbg {
    color: var(--sand);
}

.bg-violet {
    background-color: var(--violet);
    color: var(--amber);
}

.bg-violet a:not(.btn) {
    color: var(--amber);
    transition: all 0.3s ease;
}

.bg-violet a:not(.btn):hover, .bg-violet a:not(.btn):focus, .bg-violet a:not(.btn):active {
    color: var(--white);
    transform: scale(1.1);
}

.smaller {
	font-size: 0.7em;
}

a, a:hover {
	text-decoration: none;
    color: var(--violet);
}

a:hover {
    text-decoration: underline;
}

.btn {
    border-radius: var(--border-radius-aggressive);
    transition: all 0.3s ease;
    padding: var(--button-padding);
    font-weight: 700;
}

.dropdown-menu.show {
    overflow: hidden;
    background-color: var(--amber);
    border-radius: 0px;
    border: none;
}

.btn-transparent {
    border: none;
    background-color: transparent;
}

.dropdown-item.active, .dropdown-item:active {
    background-color: var(--deep-sea);
}

.dropdown-item:focus, .dropdown-item:hover {
    background-color: var(--sea);
    color: var(--light);
}

.btn-primary, .ccm-block-feature-link-text .btn- {
    color: var(--deep-sea);
    background-color: var(--amber);
    border-color: var(--amber);
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, 
.ccm-block-feature-link-text .btn-:hover, .ccm-block-feature-link-text .btn-:active, .ccm-block-feature-link-text .btn-:focus {
    color: var(--light);
    background-color: var(--violet);
    border-color: var(--violet);
}

.btn-info, .btn-info:active, .btn-info:focus, .btn-info:hover {
    background-color: var(--color-info);
    color: var(--deep-sea);
    border-color: var(--color-info);
}

.btn-secondary, .btn-secondary:focus, .btn-secondary:active, .btn-secondary:hover {
    background-color: var(--color-secondary);
    color: var(--deep-sea);
    border-color: var(--color-secondary);
}

.container.wide {
    width: 90vw;
    max-width: 1600px;
}

/* Navbar */

nav.navbar {
    z-index: 3; /* Giving little z-index so it shows from behind a hero video */
    padding: 0px;
}

nav.navbar .navbar-nav .btn {
    padding: .3rem 2rem;
}

nav.navbar .navbar-brand {
    /* padding: 2rem 2rem 0.5rem 2rem;
    margin-bottom: -6rem; */
}

#siteLogo {
    height: 70px;
    width: auto;
}

#socialIcons a,
#socialIconsMobile a {
    color: var(--amber);
    font-size: 1.75rem;
    padding: .5rem;
    border: none;
    padding-top: .75rem;
    transition: all 0.3s ease;
}

#socialIcons a {
    display: inline-block;
    height: 1.7rem;
    padding: 0;
    width: 1.7rem;
}

#socialIcons a .bi::before,
#socialIconsMobile a .bi::before {
    background-color: var(--deep-sea);
    border-radius: 5px;
    transition: all 0.3s ease;
}

#socialIcons a:hover .bi::before,
#socialIconsMobile a:hover .bi::before {
    background-color: var(--violet);
}

#socialIconsMobile {
    display: none;
    padding: .5rem .75rem;
}

#socialIconsMobile a {
    display: inline-block;
    height: 1.7rem;
    padding: 0;
    width: 1.7rem;
}

.navbar-nav .nav-link, 
.navbar-nav .nav-link.active {
    text-transform: uppercase;
    font-weight: 400;
    color: var(--deep-sea);
    padding: 1.75rem 1.25rem;
    padding-bottom: calc(1.75rem - var(--navbar-border-size));
    font-size: 1.2rem;
    border-bottom: var(--navbar-border-size) solid transparent;
}

.navbar-nav .nav-link:hover {
    color: var(--amber);
    text-decoration: none;
    font-weight: 700;
}

.navbar-nav .nav-link.active {
    font-weight: 700;
}

.navbar-toggler {
    color: var(--sea);
    padding: 0px;
    border: none;
    font-size: 3rem;
    border-radius: 0px;
}

.bg-img { 
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

#language .nav-link {
    background-color: var(--amber);
    color: var(--deep-sea);
    font-size: 0.7em;
    border: none;
    padding: 2.5rem 0.75rem;
}

#toastLand {
    position: fixed;
    max-width: calc(100vw - 4rem);
    bottom: 2rem;
    right: 2rem;
}

/* Hero area */

#pageHero.lazy video.bg-video {
    opacity: 0;
}

#pageHero {
    height: 70vh;
    min-height: 20rem;
    position: relative;
    overflow: hidden;
    display: flex;
}

#pageHero.large-hero {
    height: 90vh;
}

body .ccm-page section .sea-border img {
    border-color: var(--sea);
}

#pageHero h2 {
    font-size: 5em;
    font-weight: 900;
}

#pageHero .ccm-block-feature-link-text p {
    font-size: 1.5em;
}

#pageHero .ccm-block-feature-link-text p:first-of-type {
    margin-top: 4rem;
}

#pageHero .container {
    z-index: 2;
}

.bg-video-wrapper {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
}

.bg-video-wrapper .bg-video {
    opacity: 1;
    /* position: absolute; */
    object-fit: cover;
    left: 0;
    top: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 1;
    max-width: unset;
    transition: all 1.5s ease-out;
}

/* General items */

.section-header {
    text-align: center;
    margin-bottom: 2rem;
}

h2.section-header {
    font-size: 5rem;
    font-weight: 900;
}

/* Highlight content */

.highlight-content h2 {
    font-size: 5rem;
    font-weight: 900;
}

.highlight-content a {
    text-decoration: none;
}

.highlight-content .ccm-block-feature-link-text .btn {
    margin-bottom: 3rem;
    padding-left: 2rem;
    padding-right: 2rem;
}

/* Footer */

footer {
    font-weight: 700;
}

footer a {
    text-decoration: none;
}

/* Inputs*/

.label-top-margin { /* if we need to line button with inputs with labels */
    margin-top: 32px;
}

.user-card.user-deactivated {
    opacity: 0.5;
}

.user-card .btn-group .btn {
    border-radius: 0px;
}

.user-card .progress {
    border-radius: 0px;
}

/* Back to Top */
#backToTop {
    position: fixed;
    right: -2px;
    bottom: 110px;
    padding: 5px 15px;
    font-size: 2rem;
    background-color: var(--deep-sea);
    color: var(--light);
    border-radius: 0px;
    border: 2px solid var(--light);
    transition: all 0.3s ease;
    z-index: 100;
}

#backToTop:hover {
    padding: 5px 30px 5px 15px;
}

#backToTop.hiding {
    right: -80px;
}

/* Accessability settings */

body.medium {
    font-size: 1.5em;
}

body.large {
    font-size: 2em;
}

/* Scrollbar */

::-webkit-scrollbar {
    width: 8px;
    transition: all 0.3s ease;
}

/* Track */
::-webkit-scrollbar-track {
    background: var(--lightgray);
}

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

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: var(--deep-sea);
}

/* Mobile and other different size screen things */

@media (max-width: 1450px){
    .container.wide {
        width: 100%;
    }
}

@media (max-width: 1350px){
}

@media (max-width: 1200px){
    nav.navbar .navbar-brand {
        padding: .5rem;
    }
}

@media (max-width: 991px){
    #language .nav-link {
        padding: 2.05rem 0.75rem;
    }

    #siteLogo {
        height: 40px;
        width: auto;
    }

    #socialIcons {
        display: none;
    }

    #socialIconsMobile {
        display: flex;
    }

    nav.navbar .container.wide {
        padding-left: 0px;
        padding-right: 0px;
    }

    nav.navbar .nav-link {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    /* nav.navbar .nav-item:first-of-type {
        margin-top: 1rem;
    } */

    .navbar-nav .nav-link.active, .navbar-nav .show>.nav-link {
        background-color: var(--dark-amber);
        color: var(--sand);
        border-bottom: none;
        padding: 1.25rem;
    }

    nav.navbar .navbar-nav .btn {
        padding: .5rem 2rem;
        width: 100%;
    }

    #pageHero h2 {
        font-size: 3em;
    }

    #pageHero .ccm-block-feature-link-text p {
        font-size: 1.2em;
    }

    #pageHero {
        height: auto;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    #pageHero.large-hero {
        height: 60vh;
        min-height: 500px;
    }
}

@media (max-width: 800px){
    #language {
        height: 84px;
        width: 105px;
    }
}

@media (max-width: 500px){

}

/* Users */

/* Fontit / Fonts */

/* @font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-VariableFont_wght.ttf');
}

@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-Italic-VariableFont_wght.ttf');
    font-style: italic;
} */

@font-face {
    font-family: 'NotoSans';
    src: url('../fonts/NotoSans-VariableFont_wdth\,wght.ttf');
}

@font-face {
    font-family: 'NotoSans';
    src: url('../fonts/NotoSans-Italic-VariableFont_wdth\,wght.ttf');
    font-style: italic;
}