@charset "UTF-8";
html {
  height: 100%;
  scroll-behavior: smooth;
}

body {
  position: relative;
  display: flex;
  min-height: 100%;
  flex-direction: column;
  padding: 0;
  margin: 0;
}
body > * {
  flex: 0 0 auto;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section {
  display: block;
}

/*
 * Set z-index on main to contain all content layers.
 */
main {
  z-index: 1;
}

button {
  border: 0;
  background: transparent;
}

a,
button {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  transition: all 0.3s;
}

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

iframe {
  border: 0;
}

.text-404 {
  padding-top: 8rem;
  padding-bottom: 20rem;
}

/*
 * Page
 */
.no-padding {
  padding: 0;
}

/* Image utils */
.image-fillarea {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* WP fixes */
@media screen and (max-width: 600px) {
  #wpadminbar {
    position: fixed;
    overflow: hidden;
  }
}

:root {
  --jcore-font-family: var(--wp--preset--font-family--ProximaNova);
  --jcore-heading-font-family: var(--wp--preset--font-family--degular);
}

.entry-content {
  /* Any heading with pre-text in mini-font-size (use css: "mini" on the H-element for right margins)*/
  /* Any paragraph with pre-text in mini-font-size (use css: "mini" on the p-element for right margins)*/
}
.entry-content a {
  font-weight: 700;
}
.entry-content h1.wp-block-heading.mini, .entry-content h2.wp-block-heading.mini, .entry-content h3.wp-block-heading.mini, .entry-content h4.wp-block-heading.mini {
  margin-top: 0.5rem;
}
.entry-content p.mini {
  margin-top: 0.5rem;
}
.entry-content a {
  text-underline-offset: 3px;
  text-decoration-thickness: from-font;
}

/* 
* Add Project Specific Gutenberg Block Styling here! 
*
*/
figure.wp-block-image {
  border-radius: 24px;
}
figure.wp-block-image img {
  border-radius: 24px;
}

/* Herocover for pages */
.wp-block-cover.herocover {
  position: relative;
}
@media (width >= 1536px) {
  .wp-block-cover.herocover {
    border-radius: 24px;
  }
}
.wp-block-cover.herocover::before {
  content: url(../../assets/images/fite-designelement-left.svg);
  display: flex;
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 3;
  scale: 60%;
}
@media (width >= 768px) {
  .wp-block-cover.herocover::before {
    scale: 100%;
  }
  .wp-block-cover.herocover::after {
    content: url(../../assets/images/fite-designelement-right.svg);
    display: flex;
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    z-index: 3;
  }
}

.wp-block-jcore-grid.jflex .wp-block-jcore-column.title-over {
  margin-top: -3rem;
  flex-grow: 0 !important;
  z-index: 2;
  position: relative;
}
.wp-block-jcore-grid.jflex .wp-block-jcore-column.title-over h1 {
  max-width: max-content;
}

/* 
* A little hack to cover the whole content column with one link from below. Add the linkall class to the surrounding div, and the the high class to the p contianing the link
*
*/
.linkall {
  position: relative;
}
.linkall p.high a::before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  content: "";
}

/* Helper classes for the block editor: Jcore Grid  */
.wp-block-jcore-column.center {
  align-self: center;
}

/* Grid gap utility class for jcore grid */
.wp-block-jcore-grid.grid-gap-32 {
  gap: 32px;
}
@media (width >= 360px) {
  .wp-block-jcore-grid.grid-gap-32 {
    gap: 16px;
  }
  .wp-block-jcore-grid.grid-gap-32 .wp-block-jcore-white-cornered-card {
    margin-top: 0 !important;
  }
}

/* Column ordering classes */
.order-first {
  order: 1;
}

.order-second {
  order: 2;
}

/* Medium screen and up variants */
@media (min-width: 768px) {
  .md-order-first {
    order: 1;
  }
  .md-order-second {
    order: 2;
  }
}
footer {
  padding-top: 3rem;
  padding-bottom: 0;
  /*Copyright section */
}
@media (width >= 1536px) {
  footer {
    margin-bottom: 2rem;
  }
}
@media (width >= 1536px) {
  footer .corners {
    border-radius: 24px;
  }
}
footer .logorow {
  align-items: top;
  /* Some */
}
footer .logorow .wp-block-site-logo {
  padding-bottom: 1rem;
}
footer .logorow .wp-block-social-links li a {
  font-size: 32px;
}
@media (width >= 768px) {
  footer .logorow .wp-block-social-links {
    justify-content: end;
  }
}
footer .logorow p a:not(:button) {
  font-weight: 400;
  color: var(--color-text);
}
@media (width >= 768px) {
  footer .copyright-col {
    display: flex;
    flex-flow: row break;
    justify-content: space-between;
    align-items: center;
  }
}
footer .copyright-col p {
  margin-bottom: 1rem;
}

/* Animated gradients */
.background-gradient1 {
  overflow: visible;
  background-size: 300% 300%;
  background-color: #fff8f0;
  background-color: #f2542d;
  background-image: radial-gradient(at 97% 97%, #ffd524 0, transparent 47%), radial-gradient(at 1% 86%, #D0A3E5 0, transparent 42%), radial-gradient(at 63% 9%, #fff8f0 0, transparent 50%), radial-gradient(at 34% 44%, #ffd524 0, transparent 44%), radial-gradient(at 92% 54%, hsl(313, 100%, 62%) 0, transparent 50%), radial-gradient(at 89% 15%, #ffd524 0, transparent 50%), radial-gradient(at 1% 0%, #f2542d 0, transparent 50%), radial-gradient(at 49% 78%, #f2542d 0, transparent 50%);
  animation: gradient1 60s linear infinite;
}

.background-gradient2 {
  overflow: visible;
  background-size: 300% 300%;
  background-color: #fff8f0;
  background-color: #f2542d;
  background-image: radial-gradient(at 97% 97%, #ffd524 0, transparent 47%), radial-gradient(at 1% 86%, #D0A3E5 0, transparent 42%), radial-gradient(at 63% 9%, #fff8f0 0, transparent 50%), radial-gradient(at 34% 44%, #ffd524 0, transparent 44%), radial-gradient(at 92% 54%, hsl(313, 100%, 62%) 0, transparent 50%), radial-gradient(at 89% 15%, #ffd524 0, transparent 50%), radial-gradient(at 1% 0%, #f2542d 0, transparent 50%), radial-gradient(at 49% 78%, #f2542d 0, transparent 50%);
  animation: gradient2 60s linear infinite;
}

@keyframes gradient1 {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 100% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}
@keyframes gradient2 {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 100% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}
#jcore-nav {
  --jcore-menu-width: 200px;
  --jcore-menu-padding: 1rem;
  --jcore-mobile-width: 980px;
  display: flex;
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
  background: white;
}
#jcore-nav .brand {
  display: flex;
  align-items: center;
}
#jcore-nav .brand img,
#jcore-nav .brand svg {
  width: 135.66px;
  height: 49.27px;
}
#jcore-nav .menu {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0;
  align-items: center;
}
#jcore-nav .menu-0 {
  flex-direction: row;
}
#jcore-nav .menu-item {
  margin: 0 1rem;
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media (width >= 992px) {
  #jcore-nav .menu-item {
    flex-direction: row;
    align-items: center;
    width: auto;
  }
}
#jcore-nav .menu-link {
  text-wrap: nowrap;
  transition: color 0.3s ease;
}
#jcore-nav .menu-link:hover {
  color: #D22A00;
}
#jcore-nav .btn-contact .menu-link,
#jcore-nav .btn-orange .menu-link,
#jcore-nav .menu-link.btn-contact,
#jcore-nav .menu-link.btn-orange {
  background: #F2542D;
  color: white !important;
  padding: 0.75rem 1.5rem;
  border-radius: 25px;
  font-weight: 600;
  transition: background-color 0.3s ease;
}
#jcore-nav .btn-contact .menu-link:hover,
#jcore-nav .btn-orange .menu-link:hover,
#jcore-nav .menu-link.btn-contact:hover,
#jcore-nav .menu-link.btn-orange:hover {
  background: #D22A00;
  color: white !important;
  text-decoration: none;
}
#jcore-nav button.toggle {
  margin: 0 0 0 0.5rem;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  width: 12px;
  height: 12px;
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  flex-shrink: 0;
}
#jcore-nav button.toggle .fa-angle-up,
#jcore-nav button.toggle .fa-angle-down {
  width: 12px;
  height: 6px;
  font-size: 10px;
}
#jcore-nav button.toggle .fa-angle-up {
  display: none;
}
#jcore-nav button.toggle.open .fa-angle-up {
  display: block;
}
#jcore-nav button.toggle.open .fa-angle-down {
  display: none;
}
#jcore-nav .lang-item-first::after {
  content: "/";
  margin-left: 1rem;
  color: inherit;
}
@media (width < 992px) {
  #jcore-nav .lang-item-first::after {
    display: none;
  }
}
#jcore-nav .lang-item-first {
  margin-right: 0rem;
}
#jcore-nav .hamburger {
  width: 50px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
}
#jcore-nav .hamburger svg {
  width: 27px;
  height: 21px;
}
#jcore-nav .toggle-search,
#jcore-nav #searchbar-toggle {
  display: none;
}

/* Desktop navigation styles. */
@media (width >= 992px) {
  #jcore-nav {
    height: 120px;
  }
  #jcore-nav .brand {
    height: 120px;
  }
  #jcore-nav .menu-0 {
    height: 120px;
  }
  #jcore-nav .menu-0 > .menu-item {
    flex-direction: row;
    align-items: center;
    width: auto;
  }
  #jcore-nav .menu-0 > .menu-item button.toggle {
    display: inline-flex;
    pointer-events: none;
    transition: transform 0.3s ease;
  }
  #jcore-nav .menu-0 > .menu-item.menu-item-has-children:hover > .menu-1 {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
  }
  #jcore-nav .menu-0 > .menu-item.menu-item-has-children:hover > button.toggle {
    transform: rotate(180deg);
  }
  #jcore-nav .hamburger {
    display: none;
  }
  #jcore-nav .menu-1 {
    position: absolute;
    top: 100%;
    left: 0;
    transform: none;
    z-index: 1000;
    background-color: #000;
    color: white;
    border-radius: 8px;
    margin-top: 0.5rem;
    margin-left: -1rem;
    padding: 1rem 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    pointer-events: none;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  #jcore-nav .menu-1::before {
    content: "";
    position: absolute;
    top: -0.5rem;
    left: 0;
    right: 0;
    height: 0.5rem;
    background: transparent;
  }
  #jcore-nav .menu-1 .menu-link {
    color: white;
    padding: 0.5rem 1rem;
    display: block;
    font-size: 16px;
    width: 100%;
    text-align: left !important;
  }
  #jcore-nav .menu-1 .menu-link:hover {
    color: #ff6b35;
  }
}
/* Mobile navigation styles */
@media (width < 992px) {
  #jcore-nav {
    height: 60px;
    max-width: 100vw;
    padding-right: 0.4rem;
    box-sizing: border-box;
  }
  #jcore-nav .menu-item {
    flex-direction: column;
  }
  #jcore-nav .brand {
    height: 60px;
    margin-left: 1rem;
    margin-right: 1rem;
  }
  #jcore-nav .brand img,
  #jcore-nav .brand svg {
    width: 67.61px;
    height: 24.56px;
  }
  #jcore-nav .menu-0 {
    height: 60px;
    position: absolute;
    overflow: hidden;
    height: 0;
    left: 0;
    right: 0;
    top: var(--jutils-height);
    flex-direction: column;
    background-color: transparent;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
  }
  #jcore-nav .menu-0.mobile-open {
    position: fixed !important;
    top: var(--wp-admin--admin-bar--height, 0) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    max-width: 100vw !important;
    padding: 64px 20px 20px 40px !important;
    align-items: flex-start !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
    background-size: 300% 300% !important;
    background-color: #f2542d !important;
    background-image: radial-gradient(at 3% 3%, #ffd524 0, transparent 47%), radial-gradient(at 99% 14%, #D0A3E5 0, transparent 42%), radial-gradient(at 37% 91%, #fff8f0 0, transparent 50%), radial-gradient(at 66% 56%, #ffd524 0, transparent 44%), radial-gradient(at 8% 46%, hsl(313, 100%, 62%) 0, transparent 50%), radial-gradient(at 11% 85%, #ffd524 0, transparent 50%), radial-gradient(at 99% 100%, #f2542d 0, transparent 50%), radial-gradient(at 51% 22%, #f2542d 0, transparent 50%) !important;
    z-index: 9999 !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
  }
  #jcore-nav .menu-0.mobile-open .menu-link {
    color: #000 !important;
    font-size: 18px !important;
    padding: 0.5rem 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  #jcore-nav .menu-0.mobile-open .menu-link:hover {
    color: #D22A00 !important;
  }
  #jcore-nav .menu-0.mobile-open .lang-item-fi .menu-link::after {
    content: "Suomi";
  }
  #jcore-nav .menu-0.mobile-open .lang-item-fi .menu-link {
    font-size: 0 !important;
    line-height: 0 !important;
    margin-top: 2rem;
  }
  #jcore-nav .menu-0.mobile-open .lang-item-en .menu-link::after {
    content: "English";
  }
  #jcore-nav .menu-0.mobile-open .lang-item-en .menu-link {
    font-size: 0 !important;
    line-height: 0 !important;
  }
  #jcore-nav .menu-0.mobile-open .lang-item-fi .menu-link::after,
  #jcore-nav .menu-0.mobile-open .lang-item-en .menu-link::after {
    font-size: 18px;
    line-height: normal !important;
  }
  #jcore-nav .menu-0.mobile-open .current-language .menu-link::after {
    text-decoration: underline;
  }
  #jcore-nav .menu-0.mobile-open .btn-contact,
  #jcore-nav .menu-0.mobile-open .btn-orange {
    order: 999;
    margin-top: 2rem;
    align-self: flex-start;
    width: auto;
  }
  #jcore-nav .menu-0.mobile-open .btn-contact .menu-link,
  #jcore-nav .menu-0.mobile-open .btn-orange .menu-link,
  #jcore-nav .menu-0.mobile-open .menu-link.btn-contact,
  #jcore-nav .menu-0.mobile-open .menu-link.btn-orange {
    background: #F2542D !important;
    color: white !important;
    padding: 1rem 2rem !important;
    border-radius: 25px !important;
    font-weight: 600 !important;
    font-size: 18px !important;
    width: auto !important;
    display: block !important;
    text-align: center !important;
    flex-shrink: 0 !important;
  }
  #jcore-nav .menu-0.mobile-open .btn-contact .menu-link:hover,
  #jcore-nav .menu-0.mobile-open .btn-orange .menu-link:hover,
  #jcore-nav .menu-0.mobile-open .menu-link.btn-contact:hover,
  #jcore-nav .menu-0.mobile-open .menu-link.btn-orange:hover {
    background: #D22A00 !important;
    color: white !important;
    text-decoration: none !important;
  }
  #jcore-nav .menu-0 > .menu-item {
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 30px;
    grid-template-rows: auto auto;
    align-items: center;
    gap: 0.5rem;
    overflow: hidden;
    flex-shrink: 0 !important;
  }
  #jcore-nav .menu-0 > .menu-item .menu-link {
    grid-column: 1;
    grid-row: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    max-width: 100%;
  }
  #jcore-nav .menu-0 > .menu-item .toggle {
    grid-column: 2;
    grid-row: 1;
    width: 30px;
    height: 30px;
    justify-self: end;
    flex-shrink: 0;
  }
  #jcore-nav .menu-0 > .menu-item .menu-1 {
    grid-column: 1/-1;
    grid-row: 2;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    box-sizing: border-box;
    overflow: hidden;
  }
  #jcore-nav .menu-0 > .menu-item:not(:has(.toggle)) {
    grid-template-columns: minmax(0, 1fr);
  }
  #jcore-nav .menu-0 > .menu-item:not(:has(.toggle)) .menu-link {
    grid-column: 1;
    grid-row: 1;
  }
  #jcore-nav .menu-1 {
    position: static;
    top: unset;
    left: unset;
    background: transparent;
    box-shadow: none;
    padding: 0 0 0 1rem;
    margin-top: 0;
    margin-bottom: 1rem;
    display: none;
    width: 100%;
    flex-direction: column !important;
  }
  #jcore-nav .menu-1.open {
    display: flex;
    flex-direction: column !important;
  }
  #jcore-nav .menu-1 .menu-item {
    width: 100%;
    margin: 0;
    display: block !important;
    flex-direction: column !important;
  }
  #jcore-nav .menu-1 .menu-item .menu-link {
    color: #000;
    padding: 0.5rem 0;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block !important;
  }
  #jcore-nav .menu-1 .menu-item .menu-link:hover {
    color: #D22A00;
  }
  #jcore-nav button.toggle {
    display: inline-flex;
    color: #000;
    margin: 0;
    position: static;
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    cursor: pointer;
  }
  #jcore-nav button.toggle .fa-angle-up,
  #jcore-nav button.toggle .fa-angle-down {
    color: #000;
    font-size: 18px;
    width: 30px;
    height: 15px;
  }
  #jcore-nav .mobile-close.mobile-open,
  #jcore-nav .hamburger.mobile-open.mobile-open,
  #jcore-nav .hamburger.mobile-open {
    position: fixed !important;
    top: calc(var(--wp-admin--admin-bar--height, 0) + 10px) !important;
    right: 22px !important;
    width: 50px !important;
    height: 40px !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    z-index: 10000 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  #jcore-nav .mobile-close.mobile-open svg,
  #jcore-nav .hamburger.mobile-open.mobile-open svg,
  #jcore-nav .hamburger.mobile-open svg {
    display: none !important;
  }
  #jcore-nav .mobile-close.mobile-open:before, #jcore-nav .mobile-close.mobile-open:after,
  #jcore-nav .hamburger.mobile-open.mobile-open:before,
  #jcore-nav .hamburger.mobile-open.mobile-open:after,
  #jcore-nav .hamburger.mobile-open:before,
  #jcore-nav .hamburger.mobile-open:after {
    content: "" !important;
    position: absolute !important;
    width: 27px !important;
    height: 2px !important;
    background: #000 !important;
    border-radius: 1px !important;
  }
  #jcore-nav .mobile-close.mobile-open:before,
  #jcore-nav .hamburger.mobile-open.mobile-open:before,
  #jcore-nav .hamburger.mobile-open:before {
    transform: rotate(45deg) !important;
  }
  #jcore-nav .mobile-close.mobile-open:after,
  #jcore-nav .hamburger.mobile-open.mobile-open:after,
  #jcore-nav .hamburger.mobile-open:after {
    transform: rotate(-45deg) !important;
  }
  .wp-block-jcore-nav-header:has(.mobile-open) .brand {
    opacity: 0;
    visibility: hidden;
  }
  .scrollActive.navigation-header:has(.mobile-open) {
    margin-top: 0;
  }
  body:has(#jcore-nav .mobile-open) {
    overflow: hidden;
    position: fixed;
    width: 100%;
    height: 100%;
  }
}
@media (width < 992px) {
  .wp-block-jcore-nav-header {
    max-width: 100vw !important;
    width: 100vw !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .wp-block-jcore-nav-header #jcore-nav {
    margin: 0 auto;
  }
}

.scrollActive {
  transition: margin-top 300ms;
}
.scrollActive.scrollTop, .scrollActive.scrollUp {
  margin-top: 0;
}
.scrollActive.scrollDown {
  margin-top: calc(var(--jutils-height) * -1);
}

.sticky {
  position: fixed;
  top: var(--wp-admin--admin-bar--height, 0);
  left: 0;
  right: 0;
  z-index: 10;
}

/* WP Admin Bar Fixes */
body.admin-bar .navbar.scrollActive,
body.admin-bar .navbar.sticky,
body.admin-bar .skip-to-content a {
  top: 46px;
}
body.admin-bar .mobile-close,
body.admin-bar .hamburger.mobile-open {
  top: calc(var(--wp-admin--admin-bar--height, 0) + 10px) !important;
  right: 14px !important;
}
body.admin-bar .menu-0.mobile-open {
  top: var(--wp-admin--admin-bar--height, 0) !important;
  height: calc(100dvh - var(--wp-admin--admin-bar--height, 0)) !important;
}
@media screen and (min-width: 781px) {
  body.admin-bar .navbar.scrollActive,
  body.admin-bar .navbar.sticky,
  body.admin-bar .skip-to-content a {
    top: 32px;
  }
  body.admin-bar .mobile-close,
  body.admin-bar .hamburger.mobile-open {
    top: 42px !important;
    right: 14px !important;
  }
  body.admin-bar .menu-0.mobile-open {
    top: 32px !important;
    height: calc(100dvh - 32px) !important;
  }
}

.archive-posts, .wp-block-jcore-latest-posts__inner,
.wp-block-jcore-dynamic-archive-posts__inner {
  display: grid;
  grid-row-gap: 0;
  grid-column-gap: 2rem;
  grid-template-columns: 1fr;
}

@media (width >= 360px) {
  .archive-posts.columns-2, .wp-block-jcore-latest-posts__inner.columns-2,
  .wp-block-jcore-dynamic-archive-posts__inner.columns-2 {
    grid-template-columns: 1fr 1fr;
  }
}

@media (width >= 768px) {
  .archive-posts.columns-3, .wp-block-jcore-latest-posts__inner.columns-3,
  .wp-block-jcore-dynamic-archive-posts__inner.columns-3 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (width >= 992px) {
  .archive-posts.columns-3, .wp-block-jcore-latest-posts__inner.columns-3,
  .wp-block-jcore-dynamic-archive-posts__inner.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (width >= 360px) {
  .archive-posts.columns-4, .wp-block-jcore-latest-posts__inner.columns-4,
  .wp-block-jcore-dynamic-archive-posts__inner.columns-4 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (width >= 992px) {
  .archive-posts.columns-4, .wp-block-jcore-latest-posts__inner.columns-4,
  .wp-block-jcore-dynamic-archive-posts__inner.columns-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

/* JCORE DYNAMIC ARCHIVE */
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters {
  margin-bottom: 3rem;
}
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type h3 {
  font-weight: 400;
  text-transform: uppercase;
  display: none;
}
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type select {
  background-color: var(--wp--preset--color--light);
  border-radius: none;
  border: 1px solid black;
  shadow: none;
  padding: 1rem;
  max-width: 360px;
  min-width: 280px;
  text-transform: uppercase;
}
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type label {
  width: max-content;
  padding: 4px 16px;
  font-size: 18px;
  font-weight: 400;
  display: inline-block;
  margin-bottom: 1rem;
  margin-right: 1rem;
  border-radius: 3px;
  background-color: var(--wp--preset--color--orange);
  border: 1px solid var(--wp--preset--color--orange);
  color: var(--wp--preset--color--white);
}
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type label:hover {
  border: 1px solid var(--wp--preset--color--orange);
  background-color: var(--wp--preset--color--white);
  color: var(--wp--preset--color--black);
}
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type label.is-active {
  background-color: var(--wp--preset--color--white);
  color: var(--wp--preset--color--black);
}
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type input.wp-block-jcore-dynamic-archive-filters__radio__input, .wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type input.wp-block-jcore-dynamic-archive-filters__checkbox__input {
  display: none;
}
.wp-block-jcore-dynamic-archive .wp-block-jcore-dynamic-archive__filters .wp-block-jcore-dynamic-archive__filters__taxonomies__type.taxonomy-type-category__children {
  margin-top: 1.5rem;
}

/* JCORE Dynamic Archive Pagination */
.wp-block-jcore-dynamic-archive-posts__pagination nav {
  display: flex;
  flex-flow: row;
  justify-content: center;
  align-items: baseline;
  gap: 0.25rem;
  margin: 4rem 0.25rem 3rem;
  /*Pagination first */
  /*Pagination previous */
  /*Pagination next */
  /*Pagination last */
  /* Current link item */
}
.wp-block-jcore-dynamic-archive-posts__pagination nav a {
  font-size: 1rem;
  margin: 0rem;
  color: var(--wp--preset--color--dark);
  background: var(--wp--preset--color--light);
  font-weight: 400;
  padding: 0.75rem 1.25rem;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav a.current {
  background: var(--wp--preset--color--success);
}
.wp-block-jcore-dynamic-archive-posts__pagination nav a:hover {
  text-decoration: none;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-first {
  background: var(--wp--preset--color--brand);
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-first .wp-block-jcore-dynamic-archive__pagination__link__icon::after {
  content: "\f323";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 400;
  display: inline-block;
  font-size: 12px;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-first .wp-block-jcore-dynamic-archive__pagination__link__text {
  display: none;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-previous {
  background: var(--wp--preset--color--brand);
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-previous .wp-block-jcore-dynamic-archive__pagination__link__icon::after {
  content: "\f053";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 400;
  display: inline-block;
  font-size: 12px;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-previous .wp-block-jcore-dynamic-archive__pagination__link__text {
  display: none;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-next {
  background: var(--wp--preset--color--brand);
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-next .wp-block-jcore-dynamic-archive__pagination__link__icon::after {
  content: "\f054";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 400;
  display: inline-block;
  font-size: 12px;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-next .wp-block-jcore-dynamic-archive__pagination__link__text {
  display: none;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-last {
  background: var(--wp--preset--color--brand);
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-last .wp-block-jcore-dynamic-archive__pagination__link__icon::after {
  content: "\f324";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 400;
  display: inline-block;
  font-size: 12px;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link-last .wp-block-jcore-dynamic-archive__pagination__link__text {
  display: none;
}
.wp-block-jcore-dynamic-archive-posts__pagination nav .wp-block-jcore-dynamic-archive__pagination__link.is-current {
  background: var(--wp--preset--color--brand);
}

/* JCORE Dynamic Archive load more button */
.wp-block-jcore-dynamic-archive-posts__pagination {
  display: flex;
  justify-content: center;
}
.wp-block-jcore-dynamic-archive-posts__pagination a.wp-block-jcore-dynamic-archive-posts__load_more {
  background-color: var(--jcore-button-bg-color);
  color: var(--jcore-button-text-color);
  border-color: var(--jcore-button-border-color);
  padding: var(--jcore-button-padding);
  font-size: var(--jcore-button-font-size);
  border-radius: var(--jcore-button-radius);
  font-weight: var(--jcore-button-font-weight);
  text-decoration: none;
}
.wp-block-jcore-dynamic-archive-posts__pagination a.wp-block-jcore-dynamic-archive-posts__load_more:hover {
  background-color: var(--jcore-button-hover-bg-color);
  color: var(--jcore-button-hover-text-color);
  border-color: var(--jcore-button-hover-border-color);
}

.posts-highlight {
  display: grid;
  grid-gap: 2rem;
  grid-template-columns: 1fr;
}

.posts-highlight.columns-2 {
  grid-template-columns: 1fr 1fr;
}

.posts-highlight.columns-3 {
  grid-template-columns: 1fr 1fr 1fr;
}

.posts-highlight.columns-4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

/* Single Post & single reference */
.single-post .jflex.hero, .single-reference .jflex.hero {
  align-items: center;
}
@media (width >= 768px) {
  .single-post .jflex.hero .md-first, .single-reference .jflex.hero .md-first {
    order: 1;
  }
  .single-post .jflex.hero .md-last, .single-reference .jflex.hero .md-last {
    order: 2;
  }
}
.single-post .jflex.hero .wp-block-post-terms a, .single-reference .jflex.hero .wp-block-post-terms a {
  text-transform: uppercase;
  text-decoration: none;
  font-size: var(--wp--preset--font-size--mini);
  color: var(--wp--preset--color--dark);
  padding: 5px 8px;
  background-color: #e5e4de;
  border-radius: 6px;
  display: inline-block;
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
}
.single-post .jflex.hero span.wp-block-post-terms__separator, .single-reference .jflex.hero span.wp-block-post-terms__separator {
  display: none;
}
.single-post .jflex.hero h1, .single-reference .jflex.hero h1 {
  margin-top: 1rem;
}
.single-post .entry-content, .single-reference .entry-content {
  padding: 0;
}

.tease {
  text-align: left;
  margin-bottom: 3rem;
  display: block;
  position: relative;
}
.tease:hover .image-container img {
  transform: scale(1.05);
}

.tease a:after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  z-index: 2;
  content: "";
}

.tease .image-container {
  position: relative;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 24px;
  overflow: hidden;
}

.tease .image-container::after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.tease .image-container img {
  position: absolute;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  width: 100%;
  font-family: "object-fit: cover;";
  transition: transform 0.3s ease-in-out;
  border-radius: 24px;
}

.tease .image-container.postcard::after {
  padding-bottom: 66%;
}

.tease .post-term span {
  font-size: var(--wp--preset--font-size--mini);
  color: var(--wp--preset--color--dark);
  text-transform: uppercase;
  padding: 5px 8px;
  background-color: #e5e4de;
  border-radius: 6px;
  display: inline-block;
  margin-bottom: 0.5rem;
}

.tease-content h3 {
  font-size: var(--wp--preset--font-size--heading-4);
  margin: 0.5rem 0;
  color: var(--wp--preset--color--dark);
}

.block-post_grid .posts-highlight {
  display: grid;
  grid-gap: 2rem;
  grid-template-columns: 1fr;
}
@media (width >= 360px) {
  .block-post_grid.columns-2 .posts-highlight {
    grid-template-columns: 1fr 1fr;
  }
}
@media (width >= 768px) {
  .block-post_grid.columns-3 .posts-highlight {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (width >= 360px) {
  .block-post_grid.columns-4 .posts-highlight {
    grid-template-columns: 1fr 1fr;
  }
}
@media (width >= 992px) {
  .block-post_grid.columns-4 .posts-highlight {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.masonry-grid {
  display: grid;
  grid-row-gap: 2rem !important;
  grid-template-columns: 1fr;
  grid-auto-rows: 20px;
}
.masonry-grid > * {
  width: auto !important;
  grid-row-end: span 20; /* Somewhat sane default. */
}
@media (width >= 768px) {
  .masonry-grid {
    grid-row-gap: 3rem !important;
  }
  .masonry-grid.columns-2, .masonry-grid.columns-3, .masonry-grid.columns-4 {
    grid-template-columns: 1fr 1fr;
  }
  .masonry-grid .tease-nr-2 .image-container {
    margin-top: 6rem;
    margin-bottom: 2rem;
  }
}
@media (width >= 992px) {
  .masonry-grid.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .masonry-grid.columns-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.error404 h1 {
  font-size: var(--wp--preset--font-size--heading-1);
  margin-top: 3rem;
}
.error404 .home-link {
  max-width: var(--wp--style--global--content-size);
  margin-top: 2rem;
  text-transform: uppercase;
  padding-bottom: 2rem;
  margin-bottom: 5rem;
}

.block-social_share {
  background: var(--wp--preset--color--white);
  border-radius: 10px;
  padding: 1.5rem;
}
@media (width >= 768px) {
  .block-social_share {
    display: grid;
    grid-template-columns: auto 180px;
    grid-gap: 0.5rem;
    justify-content: end;
    justify-items: end;
    align-items: center;
  }
}
.block-social_share p.share-heading {
  font-family: var(--jcore-heading-font-family);
  text-transform: uppercase;
}
@media (width >= 768px) {
  .block-social_share p.share-heading {
    margin-bottom: 0;
  }
}
.block-social_share .social-media-share a {
  text-decoration: none;
}
.block-social_share .social-media-share a i {
  margin-right: 0.5rem;
}

/* Yoast FAQ & Accordion Block Styling */
.schema-faq-section .schema-faq-question,
.block-accordion .accordion-title {
  font-family: var(--jcore-heading-font-family);
  font-size: var(--wp--preset--font-size--heading-5);
  color: var(--wp--preset--color--dark);
  font-weight: 400;
  margin: 8px 0;
  padding: 1rem 2rem 1rem 1rem;
  cursor: pointer;
  position: relative;
  text-align: left;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: flex;
  width: 100%;
  background-color: var(--wp--preset--color--light);
}
.schema-faq-section .schema-faq-question:after,
.block-accordion .accordion-title:after {
  content: "⏷";
  position: absolute;
  font-family: var(--jcore-heading-font-family);
  top: 50%;
  right: 0;
  width: 44px;
  height: 44px;
  background: var(--wp--preset--color--light);
  border-radius: 999px;
  text-align: center;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--wp--preset--font-size--heading-3);
}
.schema-faq-section .schema-faq-question.faq-q-open:after, .schema-faq-section .schema-faq-question.accordion-open:after,
.block-accordion .accordion-title.faq-q-open:after,
.block-accordion .accordion-title.accordion-open:after {
  content: "⏶";
}

.schema-faq-section p.schema-faq-answer,
.accordion-section .accordion-content {
  margin: 0;
  font-weight: 400;
  font-size: var(--wp--preset--font-size--paragraph);
}
@media (width >= 768px) {
  .schema-faq-section p.schema-faq-answer,
  .accordion-section .accordion-content {
    max-width: 80%;
  }
}

.schema-faq-section p.schema-faq-answer {
  height: 0;
  overflow: hidden;
  margin: 0;
  padding-left: 1rem;
  transition: height 0.3s ease-in-out, margin 0.3s ease-in-out;
}
.schema-faq-section p.schema-faq-answer.faq-a-open {
  margin-bottom: 1rem;
}

/**
* Gravity Forms minimalistics if using default base theme in GF settings.
* The theme framework uses root settings, if nothing else defined.
* Add more gernral settings to root by inspecting the element styling you want to change.
* The button styling is set from Ilme root button styles found in blocks/buttons.css
*/
/**
* Gravity Forms minimalistics if using default base theme in GF settings.
* The theme framework uses root settings, if nothing else defined.
* Add more gernral settings to root by inspecting the element styling you want to change.
* The button styling is set from Ilme root button styles found in blocks/buttons.css.
* For style changes to take effect: MAKE BUILD!!!
*/
:root .gform-theme--framework {
  --gf-color-primary: var(--wp--preset--color--brand);
  --gf-color-primary-darker: var(--wp--preset--color--orange);
  --gf-ctrl-bg-color: var(--wp--preset--color--white);
  --gf-color-out-ctrl-light-darker: var(--wp--preset--color--grey);
  --gf-ctrl-border-color: var(--wp--preset--color--grey);
  --gf-ctrl-border-color-hover: var(--wp--preset--color--grey);
  --gf-ctrl-radius: 6px;
  --gf-ctrl-textarea-radius: 6px;
  --gf-ctrl-border-width: 1px;
  --gf-ctrl-border-style: solid;
  --gf-ctrl-color: var(--wp--preset--color--black);
  --gf-ctrl-outline-color: var(--wp--preset--color--brand);
  --gf-ctrl-outline-color-focus: var(--wp--preset--color--brand);
  --gf-ctrl-border-color-focus: var(--wp--preset--color--brand);
  --gf-ctrl-accent-color: var(--wp--preset--color--brand);
  --gf-ctrl-btn-bg-color-ctrl: var(--jcore-button-bg-color);
  --gf-ctrl-btn-color-primary: var(--jcore-button-text-color);
  --gf-ctrl-btn-color-hover-primary: var(--jcore-button-hover-text-color);
  --gf-ctrl-btn-color-hover-ctrl: var(--jcore-button-hover-text-color);
  --gf-ctrl-btn-bg-color-primary: var(--jcore-button-bg-color);
  --gf-ctrl-btn-bg-color-hover-primary: var(--jcore-button-hover-bg-color);
  --gf-ctrl-btn-bg-color-hover-ctrl: var(--jcore-button-hover-bg-color);
  --gf-ctrl-btn-radius: var(--jcore-button-radius);
  --gf-ctrl-btn-font-weight: var(--jcore-button-font-weight);
  --gf-ctrl-btn-text-transform: none;
  --gf-ctrl-btn-font-size: var(--jcore-button-font-size);
  --gf-ctrl-btn-font-style: normal;
  --gf-ctrl-btn-font-family: var(--jcore-heading-font-family);
  --gf-ctrl-btn-font-size-md: var(--wp--preset--font-size--paragraph);
  --gf-ctrl-btn-padding-y: 1rem;
  --gf-ctrl-btn-padding-x-md: 2rem;
  --gf-ctrl-choice-check-color: var(--wp--preset--color--brand);
  --gf-field-pg-prog-bar-bg-color-blue: var(--wp--preset--color--brand);
  --gf-field-pg-prog-bar-bg-color-orange: var(--wp--preset--color--brand);
  --gf-ctrl-label-font-size-primary: var(--wp--preset--font-size--paragraph);
  --gf-ctrl-label-font-size-tertiary: var(--wp--preset--font-size--mini);
  --gf-color-in-ctrl-primary: var(--wp--preset--color--brand);
  --gf-color-in-ctrl-primary-darker: var(--wp--preset--color--brand);
  --gf-ctrl-file-zone-icon-color: var(--wp--preset--color--brand);
  --gf-form-footer-margin-y-start: 2.5rem;
  --gf-field-prod-quant-width: 65px;
}

body .gform_wrapper .gform_fields {
  gap: 1.5rem;
}
@media (width >= 360px) {
  body .gform_wrapper .gform-footer {
    display: flex;
    justify-content: flex-end;
  }
}
body .gform-theme--framework.prodlist_wrapper .prod {
  max-width: 500px;
}
body .gform-theme--framework .gfield--type-product .ginput_quantity {
  margin-block-end: var(--gf-field-prod-quant-margin-y-end);
  order: 3;
  flex-basis: 10%;
}
body .gform-theme--framework .gfield--type-product .ginput_container_singleproduct {
  display: flex;
  flex-direction: row;
  align-content: center;
}
body .gform-theme--framework .ginput_quantity_label.gform-field-label {
  order: 4;
  flex-basis: 10%;
  font-size: 18px;
  margin-left: 1rem;
  align-self: center;
}
body .gform-theme--framework .gform-field-label.gform-field-label--type-sub-large.ginput_product_price_label {
  display: none;
}
body .gform-theme--framework .gform-field-label.gform-field-label--type-sub-large.ginput_product_price {
  font-size: 20px;
  font-weight: 500;
  color: var(--wp--preset--color--brand);
}
body .gform-theme--framework .ginput_product_price_wrapper {
  flex-basis: 70%;
}

.search-items {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: repeat(2, 1fr);
}
.search-items article {
  background-color: var(--wp--preset--color--light);
  border-radius: 1rem;
  padding: 1rem;
}

.pagination-block {
  --jcore-button-bg-color: transparent; /* because a-tag is styles here as btn, and .btn is one level up */
  --jcore-button-hover-bg-color: transparent;
  padding: 2rem;
  display: flex;
  justify-content: space-evenly;
}
.pagination-block > section {
  display: flex;
  align-items: center;
}
.pagination-block div {
  padding: 0;
}
.pagination-block div a {
  color: var(--wp--preset--color--black);
  background-color: var(--wp--preset--color--brand);
  border-radius: 0.5rem;
  padding: 0.75rem;
  margin: 1rem;
}
.pagination-block div a:hover {
  text-decoration: none;
  background-color: var(--wp--preset--color--light);
}
.pagination-block div.current a {
  background-color: var(--wp--preset--color--light);
  color: var(--jcore-button-active-txt-color);
}

.jgrid.gap-2 {
  grid-column-gap: 2rem;
}
.jgrid.gap-3 {
  grid-column-gap: 3rem;
}
.jgrid.gap-4 {
  grid-column-gap: 4rem;
}
.jgrid.gap-5 {
  grid-column-gap: 5rem;
}

/* Buttons, all non-hover styling comes from theme.json (in theme.json they get overridden by Gberg own btn clases..*/
.wp-block-buttons .wp-block-button:hover .wp-block-button__link {
  color: var(--wp--preset--color--white);
  background: var(--wp--preset--color--red);
  border-color: var(--wp--preset--color--red);
}
.wp-block-buttons .wp-block-button.is-style-outline:hover .wp-element-button {
  color: var(--wp--preset--color--white);
  background: var(--wp--preset--color--brand);
  border-color: var(--wp--preset--color--brand);
}

/**
* Set buttons colors and font variables for use elsewhere in theme where not G-berg,for example btn-class for form submit or tease-link or pagination?
*/
:root {
  --jcore-button-bg-color: var(--wp--preset--color--orange);
  --jcore-button-border-color: var(--wp--preset--color--orange);
  --jcore-button-text-color: var(--wp--preset--color--white);
  --jcore-button-active-bg-color: var(--wp--preset--color--orange);
  --jcore-button-active-txt-color: var(--wp--preset--color--white);
  --jcore-button-hover-bg-color: var(--wp--preset--color--red);
  --jcore-button-hover-text-color: var(--wp--preset--color--white);
  --jcore-button-hover-border-color: var(--wp--preset--color--red);
  --jcore-button-font-size: var(--wp--preset--font-size--paragraph);
  --jcore-button-padding: 12px 24px;
  --jcore-button-radius: 40px;
  --jcore-button-font-weight: 700;
}

.btn {
  background-color: var(--jcore-button-bg-color);
  color: var(--jcore-button-text-color);
  border-color: var(--jcore-button-border-color);
  padding: var(--jcore-button-padding);
  font-size: var(--jcore-button-font-size);
  border-radius: var(--jcore-button-radius);
  font-weight: var(--jcore-button-font-weight);
}
.btn:hover {
  background-color: var(--jcore-button-hover-bg-color);
  color: var(--jcore-button-hover-text-color);
  border-color: var(--jcore-button-hover-border-color);
}

/**
*
*Search in nav that opens search-field 
*AND 
*styles the Gutenberg search-block like Ilme search field. 
*
*/
.toggle-search .fa-search {
  color: var(--wp--preset--color--white);
}

.searchbar-container {
  display: none;
}

.searchbar-container.toggle {
  display: block;
  background-color: var(--wp--preset--color--dark);
}

.searchform, .wp-block-search {
  margin-bottom: 6px;
  margin-top: 6px;
}
.searchform input, .wp-block-search input {
  appearance: none;
  border: 1px solid var(--jcore-button-bg-color);
  flex-grow: 1;
  margin-left: 0;
  margin-right: 0;
  min-width: 3rem;
  padding: 0.45rem 1rem;
  text-decoration: unset !important;
  font-size: var(--jcore-button-font-size);
  margin-bottom: 8px;
  margin-right: 6px;
}
.searchform .wp-block-search__button, .searchform .btn[type=submit], .wp-block-search .wp-block-search__button, .wp-block-search .btn[type=submit] {
  padding: calc(0.45rem + 1px) calc(1rem + 1px);
  font-size: var(--jcore-button-font-size);
  margin-left: 0;
  margin-bottom: 8px;
  background-color: var(--jcore-button-bg-color);
  color: var(--jcore-button-text-color);
}
.searchform .wp-block-search__inside-wrapper, .wp-block-search .wp-block-search__inside-wrapper {
  margin-top: 6px;
  display: flex;
}

/*
* Gutenberg block Details styling as accordion
*
*
*/
/* PDF and CAD special styles, then basics */
details.wp-block-details.pdf summary::marker {
  content: "\f1c1  ";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 300;
  color: var(--wp--preset--color--brand);
}

details.wp-block-details.cad summary::marker {
  content: "\e672  ";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 300;
  color: var(--wp--preset--color--brand);
}

/*
*
* General Details styles Background-color, color, border-radius and shadow can be set in theme.jason, but chose to put it all here instead.
*
*/
details.wp-block-details {
  margin-bottom: 1rem;
  border-radius: 0;
}
details.wp-block-details summary {
  box-sizing: border-box;
  padding: 1rem 2rem 1rem 1rem;
  font-family: var(--jcore-heading-font-family);
  font-size: var(--wp--preset--font-size--heading-5);
  background-color: var(--wp--preset--color--light);
  font-weight: 400;
  position: relative;
}
details.wp-block-details summary + * {
  margin-top: 1rem;
}
details.wp-block-details summary::marker {
  content: none;
}

/* Add a custom transition when opening/closing. -It only "takes" on the padding- */
.wp-block-details {
  transition: all 0.5s ease-in-out;
}

/* Add horizontal margin to nested blocks/elements. */
.wp-block-details > :where(:not(summary)) {
  margin-left: 1rem;
  margin-right: 1rem;
}

/* If open, add some bottom padding to avoid content butting against the bottom. */
.wp-block-details[open] {
  padding-bottom: 1rem;
}

/* Change the background of the `summary` element based on state. */
.wp-block-details[open] summary,
.wp-block-details summary:hover,
.wp-block-details summary:focus {
  background: var(--wp--preset--color--light);
}

.wp-block-details summary::after {
  content: "⏷";
  position: absolute;
  font-family: var(--jcore-heading-font-family);
  top: 50%;
  right: 0;
  width: 44px;
  height: 44px;
  background: var(--wp--preset--color--light);
  border-radius: 999px;
  text-align: center;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--wp--preset--font-size--heading-3);
}

.wp-block-details[open] summary::after {
  content: "⏶";
}

/* Wrapper to show videos embedded with Gutenberg responsively Works out of the box for YouTube videos. Add videowrapper class to work with any embedded iframe */
.wp-block-embed-youtube .wp-block-embed__wrapper,
.videowrapper .wp-block-embed__wrapper {
  aspect-ratio: 16/9;
}
.wp-block-embed-youtube .wp-block-embed__wrapper iframe,
.videowrapper .wp-block-embed__wrapper iframe {
  width: 100%;
  height: 100%;
}

/*FILE block*/
.wp-block-file {
  position: relative;
}

.wp-block-file a:hover {
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.wp-block-file a.wp-block-file__button {
  border-radius: 0;
  background-color: var(--wp--preset--color--brand);
  font-size: var(--wp--preset--font-size--mini);
  text-transform: uppercase;
  position: relative;
  padding: 0.45rem 2rem 0.45rem 2.5rem;
  color: var(--wp--preset--color--white);
  margin-left: 0;
  width: -moz-max-content;
  width: max-content;
}

.wp-block-file a.wp-block-file__button:hover {
  opacity: 1;
}

.wp-block-file a.wp-block-file__button:before {
  content: "\f019";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 600;
  position: absolute;
  left: 8px;
  font-size: 16px;
  color: var(--wp--preset--color--white);
  top: 5px;
}

/* Media and images */
.wp-block-image {
  border-radius: 0;
}
.wp-block-image.alignleft {
  float: left;
}
.wp-block-image.alignright {
  float: right;
}
.wp-block-image.aligncenter {
  margin-left: auto;
  margin-right: auto;
}
.wp-block-image img {
  border-radius: 0;
}
.wp-block-image img.no-radius {
  border-radius: 0;
}

.wp-block-cover:not(.no-radius) .wp-block-cover__image-background {
  border-radius: 0;
}

/*Lightbox enabled, but no icon on the image on hover.*/
figure button.lightbox-trigger {
  display: none;
}

/*
* A class for zooming images on hover *
*/
.img-hover-zoom {
  overflow: hidden;
}

.img-hover-zoom img {
  transition: transform 0.5s ease;
  filter: brightness(90%);
}

.img-hover-zoom:hover img {
  transform: scale(1.1);
  filter: brightness(100%);
}

/*
* A class for zooming images on hover with brightness reversed compared to normal image-zoom *
*/
.img-hover-zoom-reverse {
  overflow: hidden;
}

.img-hover-zoom-reverse img {
  transition: transform 0.5s ease;
  filter: brightness(100%);
}

.img-hover-zoom-reverse:hover img {
  transform: scale(1.1);
  filter: brightness(85%);
}

/* Gallery */
.blocks-gallery-grid figure.wp-block-image figcaption,
.wp-block-gallery figure.wp-block-image figcaption {
  padding: 1em 0.7em 0.77em;
  font-weight: 300;
  font-size: 16px !important;
}

/* Gutenberg media and text block */
.wp-block-media-text .wp-block-media-text__content {
  /* remove the default 7% horizontal padding */
  padding: 0;
}

/* Gutenberg pullquote and blockquote -nothing set int theme.json*/
blockquote.wp-block-quote {
  margin-bottom: 2rem;
}

/* Pullquote */
.wp-block-pullquote {
  margin-bottom: 3rem;
  padding: 0;
}
.wp-block-pullquote blockquote {
  border: none;
  margin-top: 5rem;
}
.wp-block-pullquote blockquote p {
  font-family: var(--jcore-heading-font-family);
  font-size: var(--wp--preset--font-size--heading-4);
  color: var(--wp--preset--color--grey);
  font-style: italic;
  text-align: left;
  font-weight: 400;
  margin-bottom: 1.5rem;
  line-height: 1.3;
}
.wp-block-pullquote blockquote p:first-of-type:before {
  color: var(--wp--preset--color--red);
  font-size: 40px;
  font-weight: 700;
  content: "“";
  position: absolute;
  top: -1.5rem;
  left: 0.25rem;
}
.wp-block-pullquote blockquote p:last-of-type:after {
  content: "";
}
.wp-block-pullquote blockquote cite {
  font-family: var(--jcore-paragraph-font-family);
  font-style: normal !important;
  font-size: var(--wp--preset--font-size--paragraph);
  color: var(--wp--preset--color--black);
  text-align: left;
}
.wp-block-pullquote blockquote cite:first-of-type:before {
  content: "- ";
}
.wp-block-pullquote blockquote > * {
  position: relative;
}

/* RSS Feed block */
ul.wp-block-rss {
  list-style: none;
}

.wp-block-rss .wp-block-rss__item {
  background-color: var(--wp--preset--color--light);
  margin-bottom: 0;
  min-height: 150px;
  padding: 1rem;
}

.wp-block-rss .wp-block-rss__item a {
  color: var(--wp--preset--color--brand);
  font-size: var(--wp--preset--font-size--heading-4);
  margin-bottom: 0.75rem;
  text-decoration: none;
}
.wp-block-rss .wp-block-rss__item a::after {
  content: "  \f09e";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 400;
}
.wp-block-rss .wp-block-rss__item a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: from-font;
}

.wp-block-rss .wp-block-rss__item .wp-block-rss__item-publish-date {
  font-weight: bold;
  margin: 0.75rem 0;
  font-size: var(--wp--preset--font-size--mini);
}

.wp-block-rss .wp-block-rss__item:nth-of-type(2n + 1) {
  background-color: var(--wp--preset--color--light);
}

/*WP Block Table, style-variation: stripes */
.wp-block-table.is-style-stripes tbody tr:nth-child(2n+1) {
  background-color: var(--wp--preset--color--white);
}

.wp-block-table.is-style-stripes tbody tr {
  background-color: var(--wp--preset--color--light);
}

.wp-block-table thead {
  border-bottom: none;
}

/* 
* YOAST Breadcrumbs block styling on differnet backgrounds
*
*/
.wave .yoast-breadcrumbs {
  color: var(--wp--preset--color--white);
}
.wave .yoast-breadcrumbs span {
  font-size: 12px;
  text-transform: uppercase;
}
.wave .yoast-breadcrumbs a {
  color: var(--wp--preset--color--white);
}

.yoast-breadcrumbs span {
  font-size: 12px;
  text-transform: uppercase;
}
.yoast-breadcrumbs .breadcrumb_last {
  color: var(--wp--preset--color--light);
}
.yoast-breadcrumbs a {
  color: var(--wp--preset--color--black);
}

ul.wp-block-list,
ol.wp-block-list {
  padding-left: 1.5rem;
  margin-bottom: 2rem;
}
ul.wp-block-list li,
ol.wp-block-list li {
  padding-left: 0.25rem;
  margin-bottom: 0.75rem;
}
ul.wp-block-list li > ul,
ul.wp-block-list li > ol,
ol.wp-block-list li > ul,
ol.wp-block-list li > ol {
  margin-bottom: 0 !important;
}

ul.wp-block-list li::marker {
  color: var(--wp--preset--color--red);
}

ol.wp-block-list li::marker {
  color: var(--wp--preset--color--black);
  font-weight: 700;
}

ul.wp-block-list:not(.wp-block-rss, .arrow-list) li {
  padding-left: calc(var(--bs-gutter-x) * 0.5) !important;
  list-style-type: none;
  position: relative;
}
ul.wp-block-list:not(.wp-block-rss, .arrow-list) li:before {
  content: "";
  position: absolute;
  left: -20px;
  top: 10px;
  background-color: var(--wp--preset--color--red);
  width: 4px;
  height: 4px;
  border-radius: 50%;
}
ul.wp-block-list:not(.wp-block-rss, .arrow-list) li::marker {
  display: none;
}

/* Arrow-list with orange arrows instead of bullets */
ul.wp-block-list.arrow-list {
  padding-left: 0;
}
ul.wp-block-list.arrow-list li {
  position: relative;
  list-style-type: none;
  padding-left: 1.4rem !important;
}
ul.wp-block-list.arrow-list li:before {
  content: url(../../assets/images/arrow-design-element.svg);
  height: 17px;
  width: 8px;
  position: absolute;
  left: 4px;
  top: 3px;
}
ul.wp-block-list.arrow-list li:hover {
  text-decoration: none;
}
ul.wp-block-list.arrow-list li:hover:before {
  transform: rotate(-35deg);
}
ul.wp-block-list.arrow-list li::marker {
  display: none !important;
}
ul.wp-block-list.arrow-list li a {
  color: unset;
  font-weight: 400;
}

/* Spacer Block XL set to 16px or max mobile height in Gutenberg editor, has css style xl */
.wp-block-spacer.xl {
  padding-top: var(--wp--custom--spacing-sizes--xlarge);
}

/* Spacer Block LG -set to 16px or max mobile height in Gutenberg editor, has css style lg */
.wp-block-spacer.lg {
  padding-top: var(--wp--custom--spacing-sizes--large);
}

/* Spacer Block MD -set to 2px or max mobile height in Gutenberg editor, has css style md */
.wp-block-spacer.md {
  padding-top: var(--wp--custom--spacing-sizes--medium);
}

/* Spacer Block SM -set to 2px or max mobile height in Gutenberg editor, has css style sm */
.wp-block-spacer.sm {
  padding-top: var(--wp--custom--spacing-sizes--small);
}

:root {
  --wp--style--block-gap: 1.5em;
}

figure.wp-block-gallery {
  gap: var(--wp--style--block-gap);
}

@media (width >= 768px) {
  .wp-block-jcore-crazycards {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr 1fr 1fr;
    gap: 2rem;
    margin-bottom: 0;
  }
  .wp-block-jcore-crazycards .wp-block-cover {
    margin-bottom: 0;
  }
  .wp-block-jcore-crazycards .wp-block-cover:first-of-type {
    grid-column: 1/span 3;
    grid-row: 1/span 2;
    height: 820px;
  }
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(2) {
    grid-column: 4/span 3;
    grid-row: 1/span 1;
    height: 410px;
  }
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(3) {
    grid-column: 1/span 3;
    grid-row: 3/span 1;
    height: 410px;
  }
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(4) {
    grid-column: 4/span 3;
    grid-row: 2/span 2;
    height: 820px;
  }
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(5) {
    grid-column: 1/span 3;
    grid-row: 4/span 2;
    height: 820px;
  }
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(6) {
    grid-column: 4/span 3;
    grid-row: 4/span 1;
    height: 410px;
  }
}
@media (width >= 992px) {
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(2) {
    grid-column: 4/span 2;
  }
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(3) {
    grid-column: 2/span 2;
  }
  .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(6) {
    grid-column: 4/span 2;
  }
}
.wp-block-jcore-crazycards .wp-block-cover:first-of-type, .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(4), .wp-block-jcore-crazycards .wp-block-cover:nth-of-type(5) {
  height: 410px;
}
.wp-block-jcore-crazycards .wp-block-cover {
  border-radius: 24px;
  margin-bottom: 2rem;
}
.wp-block-jcore-crazycards .wp-block-cover.kuva {
  position: relative;
}
.wp-block-jcore-crazycards .wp-block-cover.kuva::before {
  content: url(../../assets/images/fite-designelement-left.svg);
  display: flex;
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 3;
  scale: 60%;
}
@media (width >= 768px) {
  .wp-block-jcore-crazycards .wp-block-cover.kuva::before {
    scale: 100%;
  }
  .wp-block-jcore-crazycards .wp-block-cover.kuva::after {
    content: url(../../assets/images/fite-designelement-right.svg);
    display: flex;
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    z-index: 3;
  }
}

/*# sourceMappingURL=theme.css.map */
