/* Layout */

html, body, .dialog-off-canvas-main-canvas, .layout-container {
    height: 100%;
}

body {
    background: var(--body-bg);
}

.layout-container {
    display: grid;
    grid-template-areas: 
    "header"
    "nav"
    "main"
    "footer"
    ;
    grid-template-rows: auto 1fr auto;
}

.path-frontpage main {
    display: grid;
    grid-template-areas: 
    "content"
    ;
    align-content: start;
}

main {
    display: grid;
    grid-template-areas: 
    "hero"
    "content"
    ;
    align-content: start;
}


.layout-container > nav {
    grid-area: nav;
}

.hero {
    grid-area: hero;
    background: url("../img/hero.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: var(--secondary-hero-height);
    display: grid;
    place-items: center;
    position: relative;
}

.path-frontpage .hero {
    height: var(--hero-height);
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: var(--hero-overlay);
}

.content {
    grid-area: content;
    background: var(--content-bg);
    padding: var(--content-gap) 0;
}


.content-center {
    text-align: center;
}

nav {
    position: -webkit-sticky; /* Safari */
    position: sticky;
    top: 0;
    z-index: 150;
}

.user-menu {
    grid-area: user-menu;
    background: var(--user-menu-bg);
}

.some-menu {
    grid-area: user-menu;
    background: var(--user-menu-bg);
}

.nav-menu {
    grid-area: user-menu;
    background: var(--nav-menu-bg);

}

.sticky-menu {
    
}

.some-menu {
    text-align: right;
    padding: 0.5rem 0rem;
    height: 45px;
}

.somelinkit img {
    height: 30px;
    transition: .5s;
}

.somelinkit img:hover {
    height: 20px;
}

.nav-menu .container-xl {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.region-highlighted {
    grid-area: highlighted;
}

.region-nav-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: auto;
}

.region-hero {
    color: var(--white);
    z-index: 1;
}

.narrow .region-content {
    max-width: var(--narrow-content-width);
    margin: 0 auto;
}

.content .region-content .contextual {
    display: none !important;
}

/* Media */
img, svg {
    max-width: 100%;
    height: auto;
}

.cke_editable img {
    max-width: 100%;
    height: auto;
}

button.ui-dialog-titlebar-close {
    background: url(../img/close.svg) 0 0 no-repeat !important;
}

/* Gallery */

.field--name-field-gallery {
    display: grid;
    gap: 0.5rem;
    margin-top: 1.5rem;
}

/* Back to top */

#backtotop {
  background: url(/themes/k21/img/backtotop.png) no-repeat center center;
}

/* VIEW */

.view-header {
    text-align: left;
    margin-bottom: 1rem;
}

/* Gallery front */

.view-galleria-block .view-content .galleria-front .views-field-field-gallery .field-content {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
}

.galleria-front .views-field-view-node {
    text-align: left;
    margin: 2rem 0rem;
}

.galleria-front span.galleria-link {
    background-color: var(--va-color-3);
    color: var(--white);
    padding: 0.8rem;
    
}

.galleria-front span.galleria-link a {
    color: var(--white);
    font-family: var(--font--links);
}
/* Nav */

.block-system-branding-block a img {
    height: var(--branding-height);
    padding: 0.75rem 0;
}

/* Menu */

ul.menu {
    padding: 0;
    margin: 0;
}

.menu-item {
    padding: 0;
}

.contact-email a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0e0";
    margin-right: 0.5em;
}
/* Language switcher */

#block-languageswitcher > ul {
    display: flex;
    justify-content: flex-end;
    list-style-type: none;
    padding: 0;
}

#block-languageswitcher > ul > li {
    margin: 0 5px;
}

#block-languageswitcher > ul > li > a {
    font-size: 0.8rem;
}


/* Etusivun kuvalinkit */

.view-etusivun-kuvalinkit > .view-content {
    display: grid;
    gap: 1rem;
    margin: 2rem 0rem 2rem;
}

.kuvalinkit-front > .views-field-title  {
    background-color: var(--black);
    padding: 0.5rem;
    margin-top: 0.5rem;
    transition: background-color 1s;
    text-align: center;
}

.kuvalinkit-front > .views-field-field-header-image > div > a > img {
  filter: grayscale(.4);
  transition: .5s;
  cursor: pointer;
}

.kuvalinkit-front > .views-field-title {
     background-color: var(--va-color-2);
}


/* Henkilökunta view */


.view-henkilokunta .view-content {
    display: grid;
    gap: 1rem;
    margin: 2rem 0rem 2rem;

}

.view-henkilokunta .views-field-body {
    text-align: center;
}

/* Oppilaat view */
/*
.view-oppilaat .view-content {
    display: grid;
    gap: 1rem;
    margin: 2rem 0rem 2rem;

}

.oppilaat-view > .views-field-field-kuva > div > a > img {
  filter: grayscale(.4);
  transition: .5s;
  cursor: pointer;
}
*/

.oppilaan-esittely {
    display: grid;
    gap: 1rem;
    margin: 2rem 0rem 2rem;

}

/* Oppilas-sivu */

.layout--twocol-section > .layout__region--first {
    padding-right: 1rem;
}

.layout--twocol-section > .layout__region--second p:first-child {
    margin-top: 0rem;
}

/* Content Fullwidth */

.content-fullwidth {
    margin: 0rem;
}

/* ajankohtaista view */

.view-ajankohtaista .view-content {
    display: grid;
    gap: 1rem;
}

.view-ajankohtaista h3.ajankohtaista-title a {
    color: var(--black);
}

.view-ajankohtaista h3.ajankohtaista-title a:hover {
    color: var(--va-color-1);
}

.view-ajankohtaista .views-field-view-node {
    margin: 2rem 0rem;
}

.view-ajankohtaista span.ajankohtaista-link {
    background-color: var(--va-color-3);
    color: var(--white);
    padding: 0.8rem;
    margin: 2rem 0rem;
}

.view-ajankohtaista span.ajankohtaista-link a {
    color: var(--white);
    font-family: var(--font--links);
}

.view-ajankohtaista .views-field-field-ajankohta-paivamaara {
    margin-top: 0.8rem;
}

/* Collapsible fields */

.collapsible-field {
    margin-top: 0.3rem;
    margin-bottom: 0.3rem;
}

.collapsible-field > .field__label {
    padding: 0.7rem;
    background-color: var(--gray-dark);
    color: var(--white);
    font-size: 1.5rem;
}

.collapsible-field > .field__item {
    padding: 0.5rem 1rem 1rem 1rem;
    background-color: var(--va-color-2);
    color: var(--gray-dark);
} 


/* Call to action linkki */

.field--name-field-call-to-action-linkki {
    margin-top:  2rem;
}

.field--name-field-call-to-action-linkki > a {
    padding: 1rem;
    background-color: var(--va-color-2);
    color: var(--white);
    border-radius: 30px;
    font-size: 1.1rem;
    font-weight: bold;
    transition:  all 2s;
}

.field--name-field-call-to-action-linkki > a:hover {
    background-color: var(--va-color-1);
}

/* Footer */

.footer {
    grid-area: footer;
    background: var(--footer-bg);
    padding: var(--content-gap) 0;
    border-top: 10px solid var(--va-color-1);
    color: var(--white);
    text-align: center;
    margin-top:  3rem;
}

.footer-column-1 {
    text-align: left;
}

.footer-column-2 {
    text-align: right;
}

.footer-top {
    display: grid;
    gap: 1rem;
    grid-template-columns: var(--footer-columns);
}

.footer-bottom {
    margin-top: var(--content-gap);
}


.field__item > .image-style-medium::before {
    content: url("../img/video-cover.png");

}