/* @johku-preset */
/* Theme visitoulu for the next stylesheet stack (JDEV-3216), from assets/less/themes/johkustore-colors-visitoulu.less.
   Generated by scripts/numbered-presets.mjs: edit that script, not this file. */
:root {
  --johku-color-primary: #030884;
  --johku-color-secondary: #E10669;
  --johku-color-highlight: #EEEEF0;
  --johku-color-tertiary: #050B98;
  --johku-color-background-tint: color-mix(in srgb, var(--johku-color-background), #607D8B 12%);
  --johku-color-background: #FFF;
  --johku-color-text-link: #E10669;
  --johku-color-footer-bar-background: #030884;
  --johku-color-breadcrumb-background: #C60359;
  --johku-color-orderwrap-background: var(--johku-color-highlight);
  --johku-color-footer-background: #050B98;
  --johku-preset-a-darken-5: #e0e0e4;
  --johku-preset-b-darken-10: #af0552;
  --johku-preset-c-darken-10: #030767;
  --johku-preset-c-darken-20: #020435;
  --johku-preset-d-darken-50: #000000;
  --johku-preset-d-darken-60: #000000;
  --johku-preset-d-lighten-40: #7f7f7f;
}

@font-face {
  font-family: 'Josefin Sans';
  src: url('/scheme/visitoulu/fonts/JosefinSans-Regular.woff2') format('woff2'), url('/scheme/visitoulu/fonts/JosefinSans-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Josefin Sans';
  src: url('/scheme/visitoulu/fonts/JosefinSans-Italic.woff2') format('woff2'), url('/scheme/visitoulu/fonts/JosefinSans-Italic.woff') format('woff');
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'Josefin Sans';
  src: url('/scheme/visitoulu/fonts/JosefinSans-Bold.woff2') format('woff2'), url('/scheme/visitoulu/fonts/JosefinSans-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Josefin Sans';
  src: url('/scheme/visitoulu/fonts/JosefinSans-BoldItalic.woff2') format('woff2'), url('/scheme/visitoulu/fonts/JosefinSans-BoldItalic.woff') format('woff');
  font-weight: bold;
  font-style: italic;
}
@font-face {
  font-family: 'Barlow';
  src: url('/scheme/visitoulu/fonts/Barlow-Regular.woff2') format('woff2'), url('/scheme/visitoulu/fonts/Barlow-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Barlow';
  src: url('/scheme/visitoulu/fonts/Barlow-Italic.woff2') format('woff2'), url('/scheme/visitoulu/fonts/Barlow-Italic.woff') format('woff');
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'Barlow';
  src: url('/scheme/visitoulu/fonts/Barlow-Bold.woff2') format('woff2'), url('/scheme/visitoulu/fonts/Barlow-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Barlow';
  src: url('/scheme/visitoulu/fonts/Barlow-SemiBold.woff2') format('woff2'), url('/scheme/visitoulu/fonts/Barlow-SemiBold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'Barlow';
  src: url('/scheme/visitoulu/fonts/Barlow-BoldItalic.woff2') format('woff2'), url('/scheme/visitoulu/fonts/Barlow-BoldItalic.woff') format('woff');
  font-weight: bold;
  font-style: italic;
}
@font-face {
  font-family: 'Oulun Graadi';
  src: url('/scheme/visitoulu/fonts/OulunGraadi-Otsikko.woff2') format('woff2'), url('/scheme/visitoulu/fonts/OulunGraadi-Otsikko.woff') format('woff');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Oulun Graadi';
  src: url('/scheme/visitoulu/fonts/OulunGraadi-Otsikko.woff2') format('woff2'), url('/scheme/visitoulu/fonts/OulnuGraadi-Otsikko.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
:root,
:root body {
  --johku-color-navbar-background: #E10669;
  --johku-color-navbar-dropdown-text: #191919;
  --johku-color-navbar-dropdown-link: #FFFFFF;
  --johku-color-navbar-text: #FFFFFF;
  --johku-font-main: 'Barlow', sans-serif;
  --johku-font-title: 'Oulun Graadi', sans-serif;
  --johku-font-button: 'Barlow', sans-serif;
  --johku-color-input-background: #EEE;
  --johku-color-orderwrap-input-background: #FFFFFF;
  --johku-color-primary: #030884;
  --johku-color-text-title: #1C196E;
  --johku-color-navbar-dropdown-background: #E10669;
  --johku-navbar-height: 80px;
  --johku-navbar-mobile-height: 60px;
}
:root .dp__theme_light,
:root body .dp__theme_light {
  --dp-highlight-color: #050B98;
  --dp-primary-color: #C60359;
  --dp-reserved-text-color: #C60359;
}
body {
  background-color: var(--johku-color-background-tint);
  color: color-mix(in srgb, var(--johku-color-text) 86.67%, #FFFFFF);
}
#__layout {
  background-color: var(--johku-color-background);
}
html > body {
  font-family: 'Barlow', sans-serif;
  color: #191919;
  font-size: 16px;
}
@media (min-width: 992px) {
  body {
    padding-top: var(--johku-navbar-height);
  }
}
body #js-search-nav.has-form .input-group-addon {
  top: 8px;
}
body .search-focus #js-search-nav.has-form .input-group .form-control.search-bar-input {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
body .form-control:focus,
body .btn:focus {
  outline-color: var(--johku-color-secondary);
}
body .countdown-content {
  top: 80px;
}
body .order-merchant-wrap h1,
body .order-merchant-wrap h2,
body .order-merchant-wrap h3,
body .order-merchant-wrap h4 {
  color: #1C196E;
}
body .order-merchant-wrap .carousel-title h1,
body .order-merchant-wrap .carousel-title h2,
body .order-merchant-wrap .carousel-title h3,
body .order-merchant-wrap .carousel-title h4 {
  color: #FFFFFF;
}
body .label {
  border-radius: none;
}
body .btn-danger,
body .label-danger {
  background-color: #C60359;
}
body #main-content .js-cart-product-actions a:not(.btn) {
  color: #E10669;
}
body .text-content h1 {
  color: #050B98;
}
body .text-content h2,
body .text-content h3,
body .text-content h4 {
  color: #1C196E;
}
body #main-content .panel-default > .panel-heading {
  color: #191919;
}
body .yamm-content {
  color: #FFFFFF;
}
body .yamm-content .modal-dialog {
  color: #191919;
}
body .yamm-content .js-cart-product-name,
body .yamm-content .js-cart-product-price {
  color: #FFFFFF;
}
body .yamm-content .option-item .panel-heading a {
  color: #FFFFFF;
}
body .yamm-content .js-cart-product-actions a:not(.btn) {
  color: #FFFFFF;
}
body .main-category-wrap:nth-child(n+2):before {
  height: 1px;
  top: -1px;
  background-color: transparent;
}
@media (min-width: 992px) {
  body .form-control:not(.input-lg) {
    height: 43px;
  }
}
body .form-control {
  border-radius: 0px;
}
body #js-navbar-main .menu-grid .menu-title,
body .js-cart-title {
  font-family: 'Oulun Graadi', sans-serif;
  font-size: 24px;
  color: #FFFFFF !important;
}
body #js-navbar-main .navbar-nav > li > a,
body #js-navbar-main .navbar-nav > li > a:link,
body #js-navbar-main .navbar-nav > li > a:visited,
body #js-navbar-main a.navbar-brand,
body #js-navbar-main a.navbar-brand:link,
body #js-navbar-main a.navbar-brand:visited {
  color: #FFFFFF;
}
body #js-navbar-main {
  background-color: #E10669;
}
body .btn {
  border-radius: 0px;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}
body .input-group-addon {
  border-radius: 0px;
}
body .btn-sm {
  font-size: 14px;
}
body .btn:not(.btn-lg):not(.btn-sm) {
  font-size: 16px;
}
body .btn-white {
  background-color: #eceff1;
}
body h1,
body h2,
body h3,
body h4,
body h5 {
  font-family: 'Oulun Graadi', sans-serif;
}
body .form-control {
  font-size: 16px;
  color: #191919;
}
body .form-control::placeholder {
  color: var(--johku-preset-c-darken-20);
}
body .input-group-addon {
  border-color: #cfd8dc;
}
body .product-order-dates .input-group-addon {
  top: -2.5px;
}
body .btn:not(.search-bar-button) {
  text-transform: uppercase;
  border: none;
  border-bottom: none;
  border-radius: 0px !important;
  border-top-right-radius: 0px !important;
  border-top-left-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
  border-bottom-left-radius: 2 0px !important;
  padding: 10px 20px;
}
body .datepicker {
  font-size: 16px;
}
body .datepicker .table-condensed > tbody > tr > td,
body .datepicker .table-condensed > tbody > tr > th,
body .datepicker .table-condensed > tfoot > tr > td,
body .datepicker .table-condensed > tfoot > tr > th,
body .datepicker .table-condensed > thead > tr > td,
body .datepicker .table-condensed > thead > tr > th {
  padding: 7px;
}
body #termsModal h1 {
  font-size: 30px;
}
body #termsModal h2 {
  font-size: 24px;
}
body #termsModal h3 {
  font-size: 22px;
}
body #termsModal h4 {
  font-size: 20px;
}
@media (min-width: 992px) {
  body #main-content {
    margin-top: 10px;
  }
  body .category-locator {
    transition: all 0.2s ease-in-out;
  }
  body .category-locator.top-sticky {
    transition: all 0.2s ease-in-out;
    margin-top: 10px;
  }
}
body #js-navbar-main .navbar-brand {
  min-width: 180px;
}
@media (min-width: 992px) {
  body #js-navbar-main .navbar-brand {
    height: var(--johku-navbar-height);
    min-block-size: 0;
    overflow: visible;
  }
  body #js-navbar-main .navbar-nav > li > a {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
@media (max-width: 991px) {
  body #js-navbar-main .navbar-brand {
    height: var(--johku-navbar-mobile-height);
    min-block-size: 0;
  }
}
body #js-navbar-main .separator-column {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}
body .js-grid .category-info-separator:last-child {
  display: none;
}
body .breadcrumb-navi-wrap:before {
  display: none;
}
body .page-header-bar:before,
body .product-header-bar:before {
  height: 1px;
}
body .js-breadcrumb-navi {
  font-size: 16px;
  padding-top: 11px;
  padding-bottom: 11px;
  text-shadow: none;
}
body .js-breadcrumb-navi,
body .js-breadcrumb-navi:hover,
body .js-breadcrumb-navi a,
body .js-breadcrumb-navi a:hover {
  color: #FFFFFF;
}
body .breadcrumb-navi-current {
  font-weight: bold;
}
body .js-footer-presentation,
body .footer-navi-wrap {
  padding-top: 0;
}
body .option-item .panel-heading a:not(.btn) {
  color: #191919;
}
body .navbar-brand {
  text-indent: -9999px;
  position: relative;
  display: inline-block;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
body .navbar-brand .navbar-profile {
  display: none !important;
}
body .navbar-brand::before {
  display: block;
  position: absolute;
  content: '';
  background-size: contain;
  background-image: url(/scheme/visitoulu/images/visitoulu-nega.png);
  background-position: left center;
  background-repeat: no-repeat;
}
@media (max-width: 991px) {
  body .footer-shopdescription,
  body .footer-shopdescription.text-center {
    text-align: center;
  }
}
@media (min-width: 992px) {
  body .footer-shopdescription,
  body .footer-shopdescription.text-center {
    text-align: left !important;
  }
}
@media (max-width: 991px) {
  body .footer-shopdescription .footer-links {
    text-align: center;
    line-height: 150%;
  }
}
@media (min-width: 992px) {
  body .js-footer-merchant-wrap {
    text-align: right;
  }
}
body .footer-merchant-logo {
  display: block !important;
  text-align: center;
  margin-top: 0px;
  padding: 0;
  background: transparent;
  box-shadow: none;
  padding-left: 0;
}
body .footer-merchant-logo-oulu {
  width: 200px;
  padding-top: 50px;
  padding-bottom: 10px;
  left: -15px;
}
@media (max-width: 991px) {
  body .footer-merchant-logo-oulu {
    left: 50%;
    margin-left: -100px;
  }
}
body .footer-merchant-logo-pohjola {
  width: 200px;
  padding-top: 50px;
  padding-bottom: 10px;
  left: -15px;
}
body .js-footer-navi > .container > .row:not(:only-child) .footer-navi-wrap,
body .js-footer-navi > .container > .row:not(:only-child) .js-footer-presentation {
  padding-bottom: 15px;
}
body .js-footer-presentation .btn-primary {
  margin-top: 20px;
}
body .row + .js-footer-presentation {
  padding-top: 15px;
}
body .navbar-brand::before {
  left: 0px;
}
@media (min-width: 992px) {
  body .navbar-brand::before {
    width: 241px;
    height: 66px;
    top: 7px;
  }
}
@media (max-width: 991px) {
  body .navbar-brand::before {
    width: 162px;
    height: 50px;
    top: 8px;
  }
}
body .powered-by-johku {
  padding-right: 20px;
  font-size: 14px;
  padding-top: 2px;
}
body .input-group-addon {
  font-size: 16px;
}
body .btn-success,
body .btn-primary {
  background-color: #050B98 !important;
  border-color: #050B98 !important;
}
body .btn-success:hover,
body .btn-primary:hover,
body .btn-success:active:hover,
body .btn-primary:active:hover {
  background-color: #020435;
}
body .order-show-row,
body .order-show-rowitem {
  font-size: 16px;
  border-bottom-color: rgba(0, 0, 0, 0.1) !important;
}
body .product-order-nextshows-title {
  color: #191919 !important;
}
body .footer-onboard-hilite .btn {
  background-color: #C60359 !important;
}
@media (max-width: 991px) {
  body .footer-navi-wrap {
    padding-top: 15px;
  }
  body .footer-merchant-logo img {
    max-width: 200px;
    margin: auto;
  }
  body .footer-onboard-hilite {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  body .footer-merchant-details,
  body .footer-store-terms {
    text-align: center;
    font-size: 14px;
  }
  body .js-footer-merchantname {
    display: block;
  }
  body .js-footer-merchantname:before {
    top: 10px;
    left: 0;
    bottom: 10px;
    width: auto;
    right: 0;
    background-position: center;
  }
}
@media (max-width: 399px) {
  body .footer-navi {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    text-align: center;
  }
  body .footer-navi .footer-navi-block::after {
    content: none !important;
  }
}
@media (min-width: 400px) and (max-width: 767px) {
  body .footer-navi {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 40px;
    text-align: center;
  }
  body .footer-navi .footer-navi-block::after {
    content: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  body .footer-navi {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 40px;
    text-align: center;
  }
  body .footer-navi .footer-navi-block::after {
    content: none !important;
  }
}
@media (min-width: 992px) {
  body .footer-navi {
    justify-items: end;
  }
}
body a.dropdown-link {
  color: #191919;
}
body a.dropdown-link:hover {
  color: #191919;
  text-decoration: underline;
}
body .navbar-johku a.dropdown-link {
  color: #FFFFFF;
}
body .navbar-johku a.dropdown-link:hover {
  color: #FFFFFF;
  text-decoration: underline;
}
body .dropdown-text {
  color: #191919;
}
body #js-navbar-main .dropdown-menu {
  background-color: var(--johku-color-navbar-dropdown-background);
  font-size: 16px;
  border-bottom: 1px solid #C60359;
  border-top: 1px solid #C60359;
}
body #js-navbar-main .js-cart-toggle .dropdown-toggle {
  border-right: 1px solid #C60359;
  border-left: 1px solid #C60359;
}
body #js-navbar-main {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
body #js-navbar-main .menu-grid a {
  color: #FFFFFF;
}
body #js-navbar-main .menu-grid a:hover {
  color: #FFFFFF;
}
body #js-navbar-main .menu-grid .more-link {
  border-top: 1px solid #FFFFFF;
}
body #js-navbar-main .menu-onboard-hilite {
  background-color: #C60359;
  border-top: 1px solid #C60359;
  color: #FFFFFF;
}
@media (max-width: 991px) {
  body #js-navbar-main .menu-grid .language-menu-block {
    font-size: 16px;
  }
  body #js-navbar-main .menu-grid .language-menu-block .menu-title {
    color: #FFF;
    font-size: 22px;
  }
  body #js-navbar-main .menu-grid .language-menu-block a {
    color: #FFFFFF;
  }
}
body .has-cart .js-cart-toggle .dropdown-toggle .fa {
  color: #FFFFFF;
}
body .has-cart .js-cart-toggle .dropdown-toggle .count {
  background: #FFFFFF;
  color: #E10669 !important;
}
.product-order-wrap,
.product-order-wrap .product-merchant-detail a,
.product-order-wrap a.product-merchant-detail {
  color: var(--johku-preset-d-darken-60);
}
body .js-main-title h1 {
  background-color: #191919;
}
body .cart-shoptitle,
body .cart-shoptitle h4 {
  color: #191919;
}
body .js-cart-title {
  color: #1C196E;
}
body .dropdown-menu .js-cart-merchant-title,
body .dropdown-menu .js-cart-merchant-detail,
body .dropdown-menu .js-cart-merchant-title a,
body .dropdown-menu .js-cart-merchant-detail a {
  color: #FFF;
}
body .js-grid-title-text {
  color: #1C196E;
}
body .shop-info h1,
body .shop-info h2 {
  font-size: 40px;
  color: #050B98;
}
@media (min-width: 767px) and (min-width: 1198px) {
  body #js-carousel-front .carousel-item-title,
  body #js-carousel-front .carousel-title,
  body #js-carousel-front .category-title,
  body #js-carousel-front .carousel-item-title h1,
  body #js-carousel-front .carousel-title h1,
  body #js-carousel-front .category-title h1,
  body #js-carousel-front .carousel-item-title h2,
  body #js-carousel-front .carousel-title h2,
  body #js-carousel-front .category-title h2,
  body #js-carousel-front .carousel-item-title h3,
  body #js-carousel-front .carousel-title h3,
  body #js-carousel-front .category-title h3 {
    font-size: 40px;
  }
}
@media (min-width: 1199px) {
  body #js-carousel-front .carousel-item-title,
  body #js-carousel-front .carousel-title,
  body #js-carousel-front .category-title,
  body #js-carousel-front .carousel-item-title h1,
  body #js-carousel-front .carousel-title h1,
  body #js-carousel-front .category-title h1,
  body #js-carousel-front .carousel-item-title h2,
  body #js-carousel-front .carousel-title h2,
  body #js-carousel-front .category-title h2,
  body #js-carousel-front .carousel-item-title h3,
  body #js-carousel-front .carousel-title h3,
  body #js-carousel-front .category-title h3 {
    font-size: 60px;
  }
}
@media (min-width: 1199px) {
  body .front-category-image .carousel-item-title,
  body .front-category-image .carousel-title,
  body .front-category-image .category-title,
  body .front-category-image .carousel-item-title h1,
  body .front-category-image .carousel-title h1,
  body .front-category-image .category-title h1,
  body .front-category-image .carousel-item-title h2,
  body .front-category-image .carousel-title h2,
  body .front-category-image .category-title h2,
  body .front-category-image .carousel-item-title h3,
  body .front-category-image .carousel-title h3,
  body .front-category-image .category-title h3 {
    font-size: 40px;
  }
}
body .panel-heading .btn {
  padding: 4px 10px !important;
}
body .order-show-row .btn {
  padding: 6px 15px !important;
}
body .carousel-item-details .btn-primary {
  background-color: #030884 !important;
  border-radius: 0px !important;
  color: #FFFFFF;
}
@media (min-width: 768px) {
  body .carousel-item-description:not(:empty) {
    font-size: 22px;
  }
}
body .grid-content-image {
  background-color: #C4C4C4;
  border: none;
  box-shadow: none;
}
body .grid-content-image.no-image {
  box-shadow: none;
}
body .grid-content-image.no-image:before {
  text-shadow: none;
}
body .js-footer-wrap {
  padding-top: 0;
}
body .js-footer-wrap:before {
  content: none;
}
body .grid-content-price {
  padding: 5px 8px 4px 8px;
  border-radius: 0px;
  background-color: #E10669;
  color: #FFFFFF;
}
body .grid-content-tag {
  padding: 5px 8px 4px 8px;
  border-radius: 0px;
  background-color: #191919 !important;
  color: #FFFFFF;
}
body .js-grid-category-info.text-center,
body .js-grid-title-wrap.text-center {
  text-align: left;
}
body .js-grid-category-info {
  left: 0 !important;
}
body .grid-content-title {
  color: #1C196E;
  font-size: 20px;
}
body .grid-content-tag {
  background: #191919;
  padding: 5px 8px 4px 8px;
}
body .grid-content-text {
  font-size: 14px;
  color: #191919;
}
body .wide-bar-grey {
  background-color: #EEEEF0;
}
body .js-footer-presentation,
body .js-footer-presentation p {
  color: #FFF;
}
body .js-footer-presentation .btn-primary,
body .js-footer-presentation .btn-primary:active,
body .js-footer-presentation .btn-primary:active:hover,
body .js-footer-presentation .btn-primary:focus,
body .js-footer-presentation .btn-primary:focus:active,
body .js-footer-presentation .btn-primary:focus:hover .js-footer-presentation .btn-primary:hover {
  background-color: #191919 !important;
  color: #FFFFFF !important;
}
body .breadcrumb-navi-item::after {
  color: #FFFFFF;
}
.product-order-wrap {
  background-color: var(--johku-color-orderwrap-background);
  border-top-color: var(--johku-color-highlight);
}
body .product-pricingtype-link {
  text-transform: uppercase;
  border-radius: 0;
  margin-right: 10px;
}
body .product-pricingtype-link,
body .product-pricingtype-link:hover {
  background-color: var(--johku-preset-a-darken-5);
  color: #191919;
  font-weight: bold;
}
body .product-pricingtype-active,
body .product-pricingtype-active:hover,
body .product-pricingtype-active:active,
body .product-pricingtype-active:focus,
body .product-pricingtype-active:active:hover {
  background-color: #050B98;
  color: #FFF;
  font-weight: bold;
}
.product-order-wrap label {
  color: #191919;
}
.product-order-price {
  font-family: 'Oulun Graadi', sans-serif;
  color: #1C196E;
}
.product-order-date .form-control,
.product-order-participant .form-control,
.product-order-amount .form-control {
  color: #191919;
}
.product-order-cleardates:after {
  color: #191919;
}
.product-merchant-title {
  color: #1C196E;
}
.product-order-disclaimer a {
  color: var(--johku-preset-d-darken-50);
}
.product-extras-title {
  color: #1C196E;
}
.product-content-infotitle {
  color: #1C196E;
}
.product-content-infolabel {
  color: #191919;
}
.textpage-title {
  color: #050B98;
}
.order-merchant-wrappertitle {
  color: #191919;
}
.order-merchant-detailswrap {
  background-color: #EEEEF0;
}
.order-merchant-detailswrap,
.order-merchant-detailswrap a {
  color: #191919;
}
.order-merchant-totaltitle,
.order-merchant-totalsum {
  color: #191919;
}
.js-supersearchbar {
  color: #191919;
  background-color: var(--johku-preset-d-lighten-40);
}
.js-footer-navi {
  background-color: var(--johku-color-footer-background);
  padding-bottom: 10px;
}
body .popover p {
  font-family: 'Barlow', sans-serif;
  color: #1C196E;
}
body .footer-merchant-detail:after,
body .footer-term-item:after {
  content: '|';
}
body footer {
  font-weight: normal;
}
body footer a:not(.btn) {
  color: #FFFFFF;
  text-decoration: none;
}
body footer a:not(.btn):hover {
  color: #FFFFFF;
  text-decoration: underline;
}
body footer .footer-merchant-detail:after,
body footer .footer-term-item:after {
  color: #FFFFFF;
}
body .js-footer-navi .footer-navi-item,
body .js-footer-navi .footer-navi-item a {
  color: #FFFFFF;
  font-weight: normal;
}
body .footer-navi {
  --johku-footer-nav-separator: #FFFFFF;
}
.bar-colored-title {
  color: #1C196E;
}
.page-header-bar {
  background-color: var(--johku-color-secondary);
}
.page-header-bar:not(.product-header-bar), .page-header-bar:not(.product-header-bar) h1, .page-header-bar:not(.product-header-bar) h2, .page-header-bar:not(.product-header-bar) h3 {
  color: var(--johku-color-footer-text);
}
.page-header-bar.product-header-bar {
  background-color: var(--johku-color-secondary);
}
.datepicker .selectable,
.calendar .selectable,
.datepicker .selectable a,
.calendar .selectable a {
  color: #FFF !important;
  background-color: #050B98 !important;
  background-image: none !important;
  box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
}
.datepicker .reservable,
.calendar .reservable {
  color: #050B98 !important;
  background-image: none !important;
  background-color: #FFF !important;
  font-weight: bold;
}
.datepicker .active,
.calendar .active,
.datepicker .selectable.active,
.calendar .selectable.active,
.datepicker .active a,
.calendar .active a,
.datepicker .selectable.active a,
.calendar .selectable.active a {
  color: #FFFFFF !important;
  background-color: #E10669 !important;
  background-image: none !important;
}
.datepicker .reserved,
.calendar .reserved,
.datepicker .reserved a,
.calendar .reserved a {
  color: #E10669 !important;
  background-color: #FFF !important;
  background-image: none !important;
}
.datepicker .partial,
.calendar .partial,
.datepicker .partial a,
.calendar .partial a {
  color: #FFF !important;
  background-color: #050B98 !important;
  background-image: none !important;
  box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
}
.color-a {
  color: var(--johku-color-highlight-text) !important;
}
.color-b {
  color: var(--johku-color-secondary) !important;
}
.color-c {
  color: var(--johku-color-tertiary) !important;
}
.color-d {
  color: #191919 !important;
}
.background-a {
  background-color: var(--johku-color-highlight) !important;
}
.background-b {
  background-color: var(--johku-color-secondary) !important;
}
.background-c {
  background-color: var(--johku-color-tertiary) !important;
}
.background-d {
  background-color: #191919 !important;
}
.border-a {
  border-color: var(--johku-color-highlight) !important;
}
.border-b {
  border-color: var(--johku-color-secondary) !important;
}
.border-c {
  border-color: var(--johku-color-tertiary) !important;
}
.border-d {
  border-color: #191919 !important;
}
.product-tabs-wrapper {
  background-color: #C60359;
}
@media (min-width: 992px) {
  .product-tabs-wrapper {
    top: 80px !important;
  }
}
.product-tabs-wrapper .product-tab-name {
  font-family: 'Oulun Graadi', sans-serif;
  font-size: 24px;
}
.product-tabs-wrapper .product-tab-name,
.product-tabs-wrapper .product-tab-name a {
  color: #FFF;
}
.product-tabs-wrapper .product-tab a {
  color: #FFF;
}
.product-tabs-wrapper .product-tab a:focus,
.product-tabs-wrapper .product-tab a:active,
.product-tabs-wrapper .product-tab a:hover {
  background-color: var(--johku-color-highlight);
  color: #191919;
}
.product-tabs-wrapper .product-tab.active a,
.product-tabs-wrapper .product-tab.active a:focus,
.product-tabs-wrapper .product-tab.active a:active,
.product-tabs-wrapper .product-tab.active a:hover {
  background-color: var(--johku-color-highlight);
  color: #191919;
}
.product-tabs-wrapper[stuck] {
  background-color: #C60359;
}
.product-tabs-wrapper[stuck] .product-tab-name,
.product-tabs-wrapper[stuck] .product-tab-name a {
  color: #FFF;
}
.product-tabs-wrapper[stuck] .product-tab a {
  color: #FFF;
}
.product-tabs-wrapper[stuck] .product-tab a:focus,
.product-tabs-wrapper[stuck] .product-tab a:active,
.product-tabs-wrapper[stuck] .product-tab a:hover {
  background-color: #FFF;
  color: #191919;
}
.product-tabs-wrapper[stuck] .product-tab.active a,
.product-tabs-wrapper[stuck] .product-tab.active a:focus,
.product-tabs-wrapper[stuck] .product-tab.active a:active,
.product-tabs-wrapper[stuck] .product-tab.active a:hover {
  background-color: #FFF;
  color: #191919;
}
