/* special-gothic-expanded-one-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Special Gothic Expanded One';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/special-gothic-expanded-one-v2-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/montserrat-v30-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/montserrat-v30-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/montserrat-v30-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


    :root {
      --primary-color: #d64b2e;
      --base-font-size: min(max(1rem, 1.05vw), 18px);
      --base-font-color: #34353b;
      --base-line-height: 160%;
      --google-font: 'Montserrat', sans-serif;
      --google-heading-font: 'Special Gothic Expanded One', sans-serif;
      --navi-background: #34353b;
      --footer-navi-background: transparent;
      --navilink-font-size: min(max(0.8rem, 1.05vw), 18px);
      --navilink-color: #fff;
      --navilink-font-weight: 400;
      --navilink-padding: 7px 20px;
      --navilink-selected-bg: #e36f39;
      --navilink-selected-color: #fff;
      --heading-size-1: min(max(1.8rem, 2.5vw), 50px);
      --heading-size-2: min(max(1.6rem, 2.3vw), 46px);
      --heading-size-3: min(max(1.4rem, 1.7vw), 34px);
      --heading-size-4: min(max(1.4rem, 1.4vw), 28px);
      --heading-size-5: min(max(1.4rem, 1.7vw), 34px);
      --heading-size-6: min(max(1.2rem, 1.2vw), 24px);
      --grid-gap: 2em 3em;
      --button-background: #e36f39;
      --button-text-color: #fff;
      --button-font-size: min(max(0.9rem, 1vw), 1rem);
      --button-font-weight: 700;
      --button-padding: 12px 3vw;
      --max-button-width: 450px;
      --max-input-width: max-content;
      --img-gallery-rows: repeat(3, 1fr);
      --img-gallery-img-size: 300px;
      --mobilemenu-container-height: 63px;
      --mobilemenu-open-close-color: #d64c2f;
      --mobilemenu-menutext-color: #d64b2e;
      --mobilemenu-button-background: #d64c2f;
      --mobilemenu-link-color: #fff;
      --mobilemenu-link-background: #34353b;
      --mobilemenu-expand-button: #d64b2e;
      --mobilemenu-submenu-background: #222329;
      --padding-s: min(max(20px, 1vw), 20px);
      --padding-m: min(max(30px, 2vw), 40px);
      --padding-xl: min(max(40px, 3vw), 60px);
      --padding-xxl: min(max(60px, 4vw), 80px);
      --animate: all .3s ease 0s;
      --footer-background: url(../img/header/viivoitus-bg.png) center top no-repeat;
      --footer-bg-scale: cover;
    }
body, html, p {margin: 0;padding: 0;font-family: var(--google-font);color: var(--base-text-color);font-size: var(--base-font-size);line-height: var(--base-line-height)}  ul,li {font-family:var(--google-font);}img {max-width: 100%;height: auto;display: block;}header.content-col { position: absolute;z-index: 230;}header .center-col {grid-gap:1em}a {color: var(--primary-color);text-decoration: none}a:hover {text-decoration: underline}h1, h1 a, h2, h2 a, h3, h3 a, h4, h4 a, h5, h5 a, h6, h6 a,.bheader {font-family: var(--google-heading-font);margin: 0;padding: 0;line-height: 110%;color: var(--primary-color); font-weight:700;}h1, h1 a {font-size: var(--heading-size-1);}h2, h2 a {font-size: var(--heading-size-2);}h3, h3 a {font-size: var(--heading-size-3);}h4, h4 a {font-size: var(--heading-size-4);}h5, h5 a {font-size: var(--heading-size-5);}h6, h6 a {font-size: var(--heading-size-6);}picture {width: 100%}section, article, .center-col, .content-col{box-sizing:border-box;}table, td, tr {border-collapse: unset !important}@media screen and (max-width:1280px) {header .center-col {grid-gap: 10px;}}@media screen and (max-width:1024px) {table, td, tr {height: auto !important;max-width: 100%}}@media screen and (max-width:480px) {body {line-height: calc(1rem + 1.2vw)}}@media screen and (max-width:375px) {h1, h2, h3, h4, h5, h6 {word-wrap: anywhere}}

/* Wrappers */
.content-col, .center-col {width: 100%;clear: both;position: relative;}.center-col {width: min(max(60vw, 1600px), 90%);margin: 0 auto}.center-col iframe { max-width: 100%;margin: 0 auto}.narrow-col{max-width:1200px;}.erikoiskuva, .kuva, .kuva2 {box-sizing:border-box;border: 0;outline: 0;height: auto;margin: 0;cursor: pointer; max-width:100%;border-radius: 6px;}

/* Grids */
.autogrid,.dgrid-2-cols, .dgrid-3-cols, .dgrid-4-cols, .dgrid-s-m-s-cols, .dgrid-s-xl-cols, .dgrid-xl-s-cols, .dgrid-m-l-cols, .dgrid-l-m-cols {display: grid;grid-gap: var(--grid-gap);clear: both;position: relative;} .dgrid-s-m-s-cols {grid-template-columns: 1fr 2fr 1fr}.dgrid-s-xl-cols {grid-template-columns: 1fr 3fr} .dgrid-xl-s-cols {grid-template-columns: 3fr 1fr}.dgrid-m-l-cols {grid-template-columns: 1fr 2fr}.dgrid-l-m-cols {grid-template-columns: 2fr 1fr}.autogrid, .dgrid-3-cols{grid-template-columns:repeat(auto-fit, minmax(350px,1fr))}.dgrid-2-cols {grid-template-columns:repeat(2,1fr)}.nogap {grid-gap: 2em 0;}.dgrid-4-cols{grid-template-columns:repeat(2,1fr);}@media screen and (max-width:1024px) {.dgrid-m-l-cols, .dgrid-l-m-cols, .dgrid-s-m-s-cols, .dgrid-s-xl-cols, .dgrid-xl-s-cols {grid-template-columns: 1fr}}@media screen and (max-width:768px) {.dgrid-2-cols, .dgrid-4-cols{grid-template-columns:1fr;}} @media screen and (max-width:480px) {.autogrid, .dgrid-2-cols, .dgrid-3-cols {grid-template-columns:repeat(auto-fit, minmax(220px,1fr))}}

/* Navigation */
#navi-wrap {grid-column:1 / -1}#main-navi, #top-navi, #footernavi {margin: 0 auto;padding: 0;list-style: none;z-index: 2;position: relative;flex-direction: row;justify-content:space-around;width:100%}#main-navi{background:var(--navi-background); border-radius:150px; border:1px solid #d64c2f}#top-navi {justify-content: flex-end; padding:10px 0}#top-navi .webiolinkkipainike {margin-top:0;padding: 15px 2vw;} #footernavi{background:var(--footer-navi-background)}.mainnavi-link, .topnavi-link, .footerlink {font-family:var(--google-heading-font);padding: var(--navilink-padding);font-size: var(--navilink-font-size);font-weight: var(--navilink-font-weight);text-decoration: none; color: var(--navilink-color);display: block;}.mainnavi-link {margin:10px 0}.koti-link {padding: 0 0 0 20px;}.footerlink {color:var(--primary-color)}.topnavi-link{color:#34353b; font-size:min(max(1rem, 1.1vw), 16px)}.mainnavi-link:hover, .topnavi-link:hover, .footerlink:hover {color: #c6c6c6;}.mainnavi-selected,#link-sel-1-11, #link-sel-1-3,#link-sel-2-14, #link-sel-3-16, #link-sel-4-17, #link-sel-5-4, #link-sel-6-5 {color: var(--navilink-selected-color);background: var(--navilink-selected-bg);text-decoration: none; border-radius:200px; padding:7px 20px}#logo .col-full {margin-bottom:0}#logoimg {max-width: 100%;margin: 0 auto;float: none;display: block;height: auto;padding: 40px 0 0 0;}#logo img {width:auto;height:auto;filter: drop-shadow(0 0 30px rgba(255,255,255,.9));margin:0 auto; padding:0px 0 0px 0;max-height: 130px;object-fit: contain;width: auto;}#logo{align-self: flex-end;background: rgba(255,255,255,0.9);border-radius: 300px;border: 1px solid #e36f39;margin-bottom: -31px;}#sidenavi ul, #sidenavi li{list-style:none; margin:0; padding:0;}#sidenavi > ul {padding: 1em 2em;height: auto;background: var(--primary-color);}#sidenavi > ul a.valikkolinkki,#sidenavi > ul a.valikkolinkki-sel{padding:5px 0} #sidenavi ul li ul {padding: 0 0 0 20px !important;margin: 0;}#sidenavi ul li ul li ul {padding-bottom: 2em !important;}@media screen and (max-width:1280px) {.mainnavi-link{padding:7px 15px !important}.koti-link {padding:0}.koti-icon img {max-width: 17px;padding: 0 0 0 10px;}#main-navi {padding-right: 10px;box-sizing: border-box;}#top-navi .webiolinkkipainike {margin-top:0;padding: 10px 2vw;font-size: 12px;}.topnavi-link {padding: 10px 7px;font-size: 0.8rem;}#top-navi {padding: 8px 0;}#top-navi img {max-width: 30px;}#herotext-col {max-width: 67.7%;}}@media screen and (max-width:1060px) {header .center-col {width: 96%;}}
#logo{padding:0 40px; height:133px; display:flex; justify-content:center; align-items:center}#logo.hhlogo {height: unset;display: flex;justify-content: center;align-items: center;align-self: flex-end;background: none;border-radius: 0;border: none;margin-bottom: 20px;}#logo.hhlogo img {max-width:280px}
.naviblock ul {display:none; position:absolute; width:100%;background: #fff; padding: 1em 2em;left:0; box-sizing:border-box} .naviblock ul, .naviblock li {list-style-type:none; padding:0; margin:0;} .naviblock:hover ul{display: grid;grid-template-columns: repeat(3,1fr); grid-gap:1em; border:1px solid var(--primary-color);margin:0;padding: 1em 1em 2em 1em;border-radius: 6px;} .naviblock ul li a {padding:10px 0;display:flex;color:#34353b} 
.naviblock:hover ul.imgnavi {grid-template-columns:1fr 1fr 1fr;grid-gap:10px;}.navi-image-desc {display:block; font-size:11px; text-transform:uppercase;line-height:120%; font-weight:400;color: #34353b;}
.imgnavi section{border:1px solid var(--primary-color); box-sizing:border-box; border-radius:6px;height: 100%;}.navi-text-wrapper {padding:1em}.naviblock ul.imgnavi li a {padding:0; display:block; color:#e36f39;font-size:16px; line-height:120%}.navi-text-wrapper{font-weight:700;color:#e36f39}
.naviblock:hover ul.imgnavi img {max-height:120px; object-fit:cover; border-radius:6px 6px 0 0}
.imgnavi span {display:block;}
span.navi-arrow {display:inline-block;color:#e36f39}
.oiva img {max-width: 100px;margin-left: 50px;}
#logo p {font-size:min(max(1.2rem, 1.6vw), 32px); font-family:var(--google-heading-font); line-height:100%;}
@media screen and (max-width:1660px) {#logo {margin-bottom: -1.6vw;height: 90px;}#logo img{max-width: 15vw;min-width: 120px;height:auto;max-height: 8vw;}}
@media screen and (max-width:1560px) {.navi-image-desc {display:block; font-size:10px;}.naviblock ul.imgnavi li a {font-size:15px}.navi-text-wrapper {padding: 10px;}}
@media screen and (max-width:1440px) {#logo.hhlogo img {padding: 0px 0px;box-sizing: border-box;}header .center-col {width: 98%;}.naviblock:hover ul.imgnavi img {max-height: 90px;}}
@media screen and (max-width:1280px) {#logo.hhlogo {margin-bottom:13px}#logo.hhlogo img {max-width: 220px;}.naviblock.oiva img {max-width: 70px !important;margin-left: 1vw}.navi-text-wrapper {padding: 10px}.naviblock ul.imgnavi li a {font-size:13px}}
@media screen and (max-width:1180px) {.mainnavi-link {padding: 7px 8px !important;}}
@media screen and (max-width:1024px) {#logo.hhlogo {display:none;height: 50px;padding: 0 40px;margin-left: calc(50% - 101px);}#hh-hero-subpage .abs-element {position: relative;order: 2;width: 100%;background: #eceae4;padding-top: 3em;padding-bottom: 2em;}}
@media screen and (max-width:480px) {#logo p {font-size: 1.2rem;padding: 0 20px;}}

/* General classes, heroimg, banners */
#main-heroimg {width: 100%;}
.heroimg {position: relative;background:#eceae4}
#heromask {position:absolute; bottom:0; left:0;width: 100%;}
#herotext {width:100%;bottom: 5%;}
#heromask img {width:100%; height:auto;}
#herotext-col {max-width: 50%;padding-top: 10vw;}
#page-main-content .col-full{margin-bottom:0}
#hh-front-hero .abs-element{bottom:10%}
#hh-front-hero .abs-element img {max-width: 35vw;min-width: 620px;}
picture img {width:100%; max-height:1040px;object-fit:cover}
#hh-hero-subpage picture img {max-height:750px}
#herotext h2, #herotext h3, #herotext h4, #herotext h5, #herotext h6 {color:#fff; text-shadow:0 0 12px rgba(0,0,0,.2)}
.abs-element {position: absolute;z-index: 200;max-width: 100%;flex-direction: column;display: flex;width: 80%;} 
.dflex {display: flex;flex-wrap: wrap;flex-direction: column;} 
.dflex-row {display: flex;flex-wrap: wrap;flex-direction: row;} 
.center-elements {align-items: center;justify-content: center}
.fwimg {width:100%}
.bradius-s {border-radius:10px}
.bradius-m {border-radius:3vw}
.white-p {color: #fff}
.shadow {text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);}
.headerbox {position: absolute;top: 2em;width: 100%;display: flex;justify-content: center;align-items: center;z-index: 220;}
.headerbox p{font-family: var(--google-font);font-weight: 700;background: #fff;color: var(--primary-color);text-shadow: none;display: block;max-width: max-content;margin: 0 auto;padding: 10px 3vw;text-align: center;text-transform: uppercase;}
.headerbox .col-full {margin: 0;}
.bnr {position:relative;} /* Bannerikuva position container */
.bnr img {width:100%;object-fit: cover;} /* Bannerikuvan maksimileveys */
.bnr.basic .bannertext img{width: auto;min-height:unset;max-height: unset}
.bgcolor-wrapper {background:#000} /* Optional */
.bgcolor-wrapper img {opacity:0.7} /* Optional */
.feature-col {position:relative;}
footer {background:var(--footer-background); background-size: var(--footer-bg-scale)}
footer h6 {display:flex;justify-content: flex-start; align-items:center;color:#34353b}
footer h6 img {padding-right:10px}
#footer-contact {background: #fff;border-radius: 300px;border: 1px solid #d5d5d6;padding: var(--padding-s);}
#footer-contact h6 {font-size:min(max(1.4rem, 1.7vw), 34px);color:var(--primary-color)}
footer .dgrid-3-cols section p a{color: #34353b}
footer .dgrid-3-cols section p a:before{content:"›"; padding-right:5px; color:var(--primary-color)}
#footer-slogan {font-size: min(max(1.4rem, 1.7vw), 34px);color:#c8c3b2; text-align:center; justify-content:center}
#footer-bg-img,#lunchmenu-bg {background-image:url(../img/header/graphic-left.png),url(../img/header/graphic-right.png);background-repeat:no-repeat,no-repeat; background-position: left center,right center; background-size:7vw,7vw;}
#footer-nav-col img {margin: 0 auto;max-width: 60vw;min-width: 250px;}
#footer-bg-img > section {max-width: 1400px;}
#some-icons {display:flex;}
#some-icons p {padding-right:10px}

#hh-hero-subpage .abs-element .col-full > div{display: flex;justify-content: center;gap: 1em;flex-wrap: wrap;}

#alacarte,#golf, #juhlat,#kahvila,#kokous,#kokoustilat,#lounas, #ravintola{border: 1px solid #ae4631;border-radius: 100px;padding:20px 30px 20px 65px; background-size:20px;display:flex;line-height: 110%;align-items: center;}
#alacarte {background:rgba(255,255,255,.9) url(../img/header/icon-alacarte.png) 20px center no-repeat;}
#golf {background:rgba(255,255,255,.9) url(../img/header/icon-golf.png) 20px center no-repeat;}
#juhlat {background:rgba(255,255,255,.9) url(../img/header/icon-juhlat.png) 20px center no-repeat;}
#kahvila {background:rgba(255,255,255,.9) url(../img/header/icon-kahvila.png) 20px center no-repeat;}
#kokous {background:rgba(255,255,255,.9) url(../img/header/icon-kokous.png) 20px center no-repeat;}
#kokoustilat {background:rgba(255,255,255,.9) url(../img/header/icon-kokoustilat.png) 20px center no-repeat;}
#lounas {background:rgba(255,255,255,.9) url(../img/header/icon-lounas.png) 20px center no-repeat;}
#ravintola {background:rgba(255,255,255,.9) url(../img/header/icon-ravintola.png) 20px center no-repeat;}
#hh-hero-subpage .abs-element .col-full,#hh-hero-subpage .abs-element .col-full p{color:#000; font-weight:700; font-family:var(--google-heading-font); font-size:min(max(0.5rem, 0.8vw), 12px)}

#hh-hero-subpage .center-col {width: 100%;}
@media screen and (max-width:575px) {#alacarte, #golf, #juhlat, #kahvila, #kokous, #kokoustilat, #lounas, #ravintola {border: 1px solid #ae4631;border-radius: 100px;padding: 15px 15px 15px 55px;background-size: 25px !important;display: flex;line-height: 110%;align-items: center;}#hh-hero-subpage .abs-element .col-full, #hh-hero-subpage .abs-element .col-full p {font-size: 9px;}}


/* Frontpage -> Restaurant introduction */
.restaurants-introduction {padding:var(--padding-s)}
.restaurant-block {bottom:10%}
.restaurant-block h2 {font-size:min(max(3rem, 4vw), 76px); text-shadow: 0 0 12px rgba(0,0,0,.9)}
.restaurant-block-wrapper img {width:100%; max-height:1040px; object-fit:cover; border-radius:0 0 4vw 0;min-height: 250px;object-fit: cover;}
.restaurant-block ul {background: rgba(255,255,255,.98);display: flex;justify-content: center;flex-wrap:wrap;max-width: max-content;margin: 0 auto;border-radius:100px;padding: 10px 2em;margin-top: 1em;}
.restaurant-block ul, .restaurant-block li {list-style: none;}
.restaurant-block li {padding: 0 10px 0 0;}
.restaurant-block li, .restaurant-block li p {text-transform:uppercase;font-size: min(max(0.9rem, 1vw), 18px);}
.restaurant-block ul li:after{content: "/"; padding-left:10px; color:#000}
.restaurant-block ul li:last-of-type:after {display:none;}
.restaurant-block .webiolinkkipainike {text-transform:uppercase}
.restaurant-block span {text-shadow:0 0 2px rgba(0,0,0,.2)}

@media screen and (max-width:678px) {.restaurant-block-wrapper {background: #eae8e2;border-radius: 0 0 0 4vw;}.restaurant-block {bottom:unset;order: 2;position: relative; padding:var(--padding-m) 0}.restaurant-block h2,.restaurant-block h2 span {color:#d64b2e !important; text-shadow:none}.restaurant-block li, .restaurant-block li p {font-size: 14px;line-height: 140%;}.restaurant-block h2 {font-size: min(max(1.3rem, 6vw), 30px);}.restaurants-introduction{padding:10px var(--padding-s)} #basic-col:has(#sub-salespoints){padding:10px}}
@media screen and (max-width:480px) {.restaurant-block li, .restaurant-block li p, .restaurant-block li span {font-size: 12px;line-height: 140%;color: #000 !important;line-height: 160%;}.restaurant-block ul {background: unset;}.restaurant-block ul li:after {color:#000}.restaurant-block ul {padding: 0;}.restaurant-block li, .restaurant-block li p {text-transform:unset}}


/* Frontpage -> Salspoints */
@media screen and (max-width:1024px) {#sub-salespoints .dgrid-2-cols {grid-template-columns: 1fr;}}
@media screen and (max-width:575px) {#sub-salespoints .banner {position: relative;order: 2;padding: var(--padding-m);width: 100%;}#sub-salespoints .banner-imgmask{display:none;}#sub-salespoints .wdbanner-col {flex-wrap:unset;background: #f1f1f1;}#sub-salespoints .wdbanner-col h4 {color:#d64b2e; text-shadow:none;}#sub-salespoints .wdbanner-col p {color:#000; text-shadow:none}}


/* Landing page -> Main content */
#page-main-content{background: #eceae4 url(../img/header/wide-pattern.png) center top repeat-x; background-size:55%;}

/* Landing page -> Optional content */
#optional-content {background: #eceae4}
#optional-content section > div {background: rgb(255, 255, 255);border-radius: 1vw;padding: 2em;max-width: 1200px;margin: 0 auto;}
/*#optional-content div:empty{display:none}*/
#optional-content .center-col {padding:2em 0}
#optional-content .col-full {margin-bottom:0}

/* Landing page -> Lunchbox */
.lunchmenu-wrapper {background: #eceae4;display: flex;}
.bheader{font-size:min(max(1.8rem, 2.5vw), 50px); color:var(--primary-color)}
.lunchbox-bg {background: #fff;border: 1px solid #d8553b;border-radius: 3vw;padding:var(--padding-m) var(--padding-xl)}
#lunchmenu-bg > .center-col {display: flex;padding: 12em 0 4em 0;}
.lunchdate {grid-column:1/-1; text-align:center}
.lunchdate > p{font-size:min(max(1.8rem, 2.5vw), 50px); font-family: var(--google-heading-font); color:#000}
.lunchmenu-wrapper .col-left,.lunchmenu-wrapper .col-right{max-width: calc(100% - 4em);margin: 0 auto;}
.lunchmenu-wrapper h6 {color:#000}
#carousel-wrapper .col-left,#carousel-wrapper .col-right{display:inline-block;}
#carousel-wrapper .col-left {float:left; width:46%; margin:0 auto;}
#carousel-wrapper .col-right{float:right; width:46%; margin:0 auto;padding-top: 3vw;}
#lunch-carousel > div{max-width: 100%;box-sizing: border-box;}

/* Landing page ->  Food endorse banners */
#food-endorse-banners {background: #eceae4 url(../img/header/repeat-pattern.png) center top repeat-x; background-size:contain;}
#food-endorse-banners .dgrid-3-cols{grid-template-columns:1fr 1fr 1fr;grid-gap: 2em;}
#food-endorse-banners .banner,#service-banners-wrapper .banner {z-index: 10; bottom:10%}
#food-endorse-banners .bnr img,#service-banners-wrapper .bnr img {border-radius:10px; z-index:5; position: relative}
#food-endorse-banners .banner h2,#food-endorse-banners .banner p{text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);}
#food-endorse-banners h2 {font-size:min(max(1.4rem, 1.7vw), 34px)}
.price-tag p {background: #ab2003;display: flex;justify-content: center;align-items: center;text-shadow: none;max-width: max-content;border-radius: 5vw 0 5vw 0;min-width: 120px;padding: 10px 0;font-weight: 700;text-shadow: none !important;margin-bottom:1em}

/* Landing page -> Introduction */
#introduction-wrapper {background: #eceae4;padding-top: var(--padding-xxl);}
#introduction-wrapper h3 {font-size:min(max(1.8rem, 2.5vw), 50px)}
#introduction-wrapper article img {width: 100%; padding:0 !important}

/* Landing page -> Service banners */
#service-banners-wrapper {grid-template-columns:3fr 2fr; grid-gap: 1em}
#service-banners-wrapper .bnr img {border-radius:10px; width:100%; height:100%; object-fit:cover;}
#service-banners-wrapper .colpadding {display:none}
#service-banners-wrapper .col-full {margin:0}
#service-banners-wrapper .col-full, #service-banners-wrapper .col-full > div, #service-banners-wrapper .col-full > div p,#service-banners-wrapper img {height:100%}
#service-banners-wrapper .dgrid-2-cols, #service-banners-wrapper .dgrid-3-cols {grid-gap:1em}
.front-restaurants{background: #eceae4 url(../img/header/wide-pattern.png) center top repeat-x;background-size: 55%;}
.front-restaurants .dgrid-3-cols section:last-of-type{width:100%;background: #000;}
.front-restaurants .dgrid-3-cols section {border-radius:12px}
#service-banners-wrapper .bnr img {border-radius: 10px;width: 100%;height: 100%;object-fit: cover;opacity: 0.8;aspect-ratio: 9/16;max-height: 1000px;} 
#basic-col .dgrid-2-cols .bnr section:last-of-type{width:100%;}
.wdbanner-content {width: 100%;height:100%}
.wdbanner-col {position: relative;}
.wdbanner-content > div, .wdbanner-content p{height:100%}
.wdbanner-col p{line-height: 140%;}
.wdbanner-col h2 {line-height: 110%;font-size:min(max(1.4rem, 1.7vw), 34px);}

/* Landing page -> Responsibility */
#responsibility-wrapper {padding-left:2%; margin:0 auto;}
#responsibility-wrapper > .dgrid-2-cols {grid-gap: 0;}
#responsibility-wrapper .col-left img{border-radius:5vw 0 5vw 0; margin-top:0em; margin:0 auto;width: 100%;object-fit: cover;max-height: 855px;height: 100%;}
#responsibility-wrapper section .dgrid-2-cols {border-radius:5vw 0 5vw 0; background:#eceae4; padding:var(--padding-xxl);padding-left: 10vw;margin-left: -6em; z-index:5; position: relative; height:100%;margin-top: 5em;grid-gap:1em}
#responsibility-wrapper .col-left {position:relative;z-index:6; padding-left:6em;height: 100%;margin-top:0em;overflow: hidden;}
#responsibility-wrapper-link{grid-column:1/-1}
#responsibility-wrapper h5,#responsibility-wrapper-subpage h5  {font-size: min(max(1.8rem, 2.5vw), 50px);color: #fff;text-align: center;}
#responsibility-wrapper .abs-element {bottom:10%}
#responsibility-wrapper .banner-imgmask {margin-left: 6em;border-radius: 5vw 0 5vw 0;width: calc(100% - 6em);left: 0;}
#responsibility-wrapper-subpage img {width: 100%;height: 100%;object-fit: cover;max-height:700px;border-radius: 5vw 0 5vw 0;}
#responsibility-wrapper-subpage .banner-imgmask {border-radius: 5vw 0 5vw 0;}
.feature-col .abs-element img {height: auto !important;min-height: unset;width: auto !important;border-radius: unset !important;}
.as-ratio-img img {aspect-ratio:1/1}
.feature-col .col-full {margin-bottom:0}
#responsibility-wrapper-subpage .feature-col .abs-element img {object-fit: contain;}
#responsibility-wrapper-subpage {padding-top: var(--padding-m);}

/* Landing page -> Image gallery */
#image-gallery-wrapper {background:#eceae4 url(../img/header/repeat-pattern.png) center top repeat;}

/* Form -> Booking inquiry */
#book-location {max-width:1000px}

/* Lunch page -> Lunch menu tabs */
#lunchtabs {background: #fff; border:1px solid #2a2a2a; border-radius:12px; margin-top:1em}
.tab-buttons, #default-open, #tab-btn-container > div, #tab-btn-container > button  {flex: 1;}
#tab-btn-container button, #tab-btn-container > div {user-select: none; background: none; border: none; text-transform: uppercase; font-weight: bold; padding: 30px 50px; font-size: min(max(0.75rem, 1vw), 1rem);color:#303030; font-weight:900;}
.tab-buttons {border-right: 1px solid rgba(0,0,0,.15) !important; display:flex;}
.tab-buttons span {transform:scale(1);transition:var(--animate); display:block; padding-left:10px;margin: auto 0 auto auto;font-size:1.1rem}
.tab-buttons.active span {transform:scale(1, -1);}
#tab-btn-container button:last-of-type{border:none !important;border-radius: 0px 12px 0px 0px;}
#tab-btn-container button:first-of-type {border-radius: 12px 0px 0 0;}
#tab-btn-container button:hover, #tab-btn-container button.active {color: #d64b2e; background: #fff!important;}
#tab-btn-container button:hover{background:#f1f1f1 !important; color: #d64b2e !important; cursor:pointer}
#tab-btn-container {background:#eceae4; display:flex; border-radius:12px 12px 0 0}
.tab button.tablinks.active{background: #fff !important;}
.tab button.tablinks.active p {color:#000;}
.tab button.tablinks span.arrowspan {display: inline-block; padding: 0px 0px;font-weight: 400;position: absolute;right: 20px;top:20px}
.tab button.tablinks.active span.arrowspan {transform: rotate(90deg);transition: transform .2s ease-in-out;}

@media screen and (max-width:1660px) {#footer-bg-img > section {max-width: 1200px;}#service-banners-wrapper.front-restaurants .bnr img {max-height: 650px;}}
@media screen and (max-width:1440px) {#food-endorse-banners .dgrid-3-cols{grid-gap: 1em;}#carousel-wrapper .col-left {padding: var(--padding-xl);}#responsibility-wrapper .col-left {padding-left: 0;}#responsibility-wrapper section .dgrid-2-cols {border-radius: 0 0 5vw 0;margin-left: -2em;}#responsibility-wrapper .banner-imgmask {margin-left: 0;width: 100%;left: 0;}#responsibility-wrapper section .dgrid-2-cols img {max-height: 60px;max-width: 83px;width: auto;height: auto;object-fit: contain;}#footer-bg-img > section {max-width: 960px;}.front-restaurants .wdbanner-content img {aspect-ratio: 3/4;object-fit: cover;}}
@media screen and (max-width:1280px) {.lunchmenu-wrapper > .center-col {width: 96%;}#carousel-wrapper .col-left {width: 48%;}}
@media screen and (max-width:1024px) {#service-banners-wrapper {grid-template-columns: 1fr 1fr;} #service-banners-wrapper .bnr:first-of-type {grid-column: 1/-1;}#carousel-wrapper {display: flex;flex-direction: column;gap: 3em;}#carousel-wrapper .col-left,#carousel-wrapper .col-right {width: 100%;}#carousel-wrapper .col-left{padding: 2em;box-sizing: border-box;}#responsibility-wrapper {padding:0; max-width:calc(100% - 3em); margin:0 auto;}#responsibility-wrapper > .dgrid-2-cols {grid-template-columns: 1fr;}#responsibility-wrapper .col-left img {max-height: 400px;}#responsibility-wrapper .banner-imgmask,#responsibility-wrapper .col-left img{border-radius:5vw 0 0vw 0} #responsibility-wrapper section .dgrid-2-cols {margin-left: 0;margin-top: 0;padding: 2em 4em 4em 4em;grid-template-columns: 1fr 1fr;}#footer-contact {padding: var(--padding-s);grid-gap: 1em;text-align: center;}#lunchmenu-bg {background-size: 22vw,22vw;}footer .dgrid-3-cols {grid-template-columns: 1fr;text-align:center;grid-gap: 3em;}footer .dgrid-3-cols section p a{background: #fff;border: 1px solid #cb4343;border-radius: 40px;padding: 12px 10px;display: block;margin-bottom: 10px;line-height: 120%;}footer h6 {justify-content: center;} #footer-bg-img {background-size: 22vw,22vw;background-position: left top,right bottom;}#hh-front-hero .abs-element img {min-width: 460px;}#tab-btn-container button:hover{background:#fff !important; }}
@media screen and (max-width:860px) {#food-endorse-banners .dgrid-3-cols{grid-template-columns:1fr 1fr; grid-gap:1em}footer .dgrid-3-cols {grid-template-columns: 1fr;text-align:center;grid-gap: 3em;}footer .dgrid-3-cols section p a{background: #fff;border: 1px solid #cb4343;border-radius: 40px;padding: 12px 10px;display: block;margin-bottom: 10px;line-height: 120%;}footer h6 {justify-content: center;} #footer-bg-img {background-size: 22vw,22vw;background-position: left top,right bottom;}}
@media screen and (max-width:768px) {#carousel-wrapper .dgrid-2-cols{padding-bottom:3em;grid-gap: 10px;}.lunch-restaurant {order: 2;}#introduction-wrapper .cpadding-tb-xxl {padding-top: 0;}#page-main-content:has(table) .center-col {padding: 0;}}
@media screen and (max-width:678px) {#food-endorse-banners .dgrid-3-cols {grid-template-columns: 1fr;}#introduction-wrapper {padding-top: 2em;}button.tab-buttons, #tab-btn-container > div{padding:20px 5px !important; display: block; text-align:center;}button.tab-buttons span {display:none}}
@media screen and (max-width:575px) {#page-main-content{padding-bottom: 0;}#service-banners-wrapper {grid-template-columns: 1fr;}.banner-imgmask {opacity:.7}#service-banners-wrapper .bnr:first-of-type {min-height: 500px;}#responsibility-wrapper section .dgrid-2-cols {grid-template-columns: 1fr}#responsibility-wrapper section .dgrid-2-cols {padding: 2em;text-align: center;grid-gap: 2em;}#responsibility-wrapper section .dgrid-2-cols img {margin: 0 auto}#footer-contact {border-radius: 20px;padding: 2em;}#footerbg {padding-top: 1.5em;}footer .dgrid-3-cols {padding-top: 2em;} #carousel-wrapper .col-left {max-width: calc(100% - 2em);}#carousel-wrapper .col-right {padding-top: 0;}#food-endorse-banners{padding-bottom:2em}#introduction-wrapper .dgrid-3-cols {padding-top: 2em;}#page-main-content .cpadding-t-xxl {padding: 1em;}#herotext {width: 100%;bottom: unset;position: relative;order: 2;/*background: rgba(255,255,255,.93);*/padding: 4em 2em 2em 2em;}.heroimg #heromask {bottom: unset;top: 38vw;display: none;}#herotext h2, #herotext h3, #herotext h4, #herotext h5, #herotext h6 {color: #36373e;text-shadow: unset;}  #logo img {max-width: unset !important;height: auto; max-height: 70px;margin: 0 auto} #logo {max-width: max-content;margin-top: 203px;}  #hh-front-hero .abs-element img {min-width: 80vw}#hh-front-hero .abs-element {bottom: 1%;position: absolute;}#hh-front-hero #heromask { display: block;top: unset;bottom: 0;}#responsibility-wrapper-subpage .feature-col > img {min-height: 300px;}}
@media screen and (max-width:480px) {.price-tag p {border-radius: 8vw 0 8vw 0;padding: 6px 0;}.tab {padding: var(--padding-s) !important;}}
@media screen and (max-width:375px) {.lunchpage > .center-col {padding-left: 0 !important;padding-right: 0 !important;}}

/* Banner - imgmask (optional) */
.banner h2, .banner h3, .banner h4, .banner h5, .banner h6, .banner p {color:#fff;text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);}
.banner-imgmask {position: absolute;z-index:6;height: 100%; width: 100%;background: #34363C;background: linear-gradient(0deg, rgba(52, 54, 60, 1) 0%, rgba(52, 54, 60, 1) 25%, rgba(52, 54, 60, 0.1) 100%);pointer-events:none;border-radius:10px; opacity:0.5}
.bannermask-img {opacity: 1 !important;max-height: 100%;object-fit: cover;width: 100%;}
.banner-imgmask img {border-radius:10px}
#bar-img-wrapper img{mask-image: url(../img/header/mask.svg);mask-repeat: no-repeat;mask-position: right center;mask-size: 100%;}
#bar-img-wrapper {padding-right:2em}

@media screen and (max-width:1024px) {#main-heroimg, .bnr img{object-fit: cover; min-height: 300px;max-height: 50vh;}#herotext img {max-width:100px}} 

/* Mobile tags*/
#mobilemenu-container{height:var(--mobilemenu-container-height);position: absolute;right: 0;top: 0;z-index: 2000;width: 100%;}
#mobile-logo {position: absolute;top: 0;left: 0px;z-index: 50000}
#mobilelogo-img { max-width: 230px;height: auto;padding: 15px 0px 0 1em}
@media screen and (max-width:1024px) {#main-nav, footer nav, footer ul, #sidenavi, #footernavi {display: none} #logo{max-width: max-content;margin-top: 67px;margin-left: auto;margin-right: auto;}#logo img {max-width: 15vw;height: auto;max-height: 50px;}}
@media screen and (max-width:575px) {#logo {margin-top: 166px;height: 32px;max-width: max-content;padding: 10px 0;}}

/* Paddings */
.cpadding-s{padding:var(--padding-s)}.cpadding-m{padding:var(--padding-m)}.cpadding-xl{padding:var(--padding-xl)}.cpadding-xxl{padding:var(--padding-xxl)}.cpadding-tb-s{padding:var(--padding-s) 0}.cpadding-tb-m{padding:var(--padding-m) 0}.cpadding-tb-xl{padding:var(--padding-xl) 0}.cpadding-tb-xxl{padding:var(--padding-xxl) 0}.cpadding-t-s{padding-top:var(--padding-s)}.cpadding-t-m{padding-top:var(--padding-m)}.cpadding-t-xl{padding-top:var(--padding-xl)}.cpadding-t-xxl{padding-top:var(--padding-xxl)}.cpadding-b-s{padding-bottom:var(--padding-s)}.cpadding-b-m{padding-bottom:var(--padding-m)}.cpadding-b-xl{padding-bottom:var(--padding-xl)}.cpadding-b-xxl{padding-bottom:var(--padding-xxl)}.cpadding-rl-s{padding:0 var(--padding-s)}.cpadding-rl-m{padding:0 var(--padding-m)}.cpadding-rl-xl{padding:0 var(--padding-xl)}.cpadding-rl-xxl{padding:0 var(--padding-xxl)}

/* Webio cols classes */
.col-3,.col-full,.col-left,.col-right{width:100%;float:none; margin:0}.col-full, .colpadding{clear:both;margin-bottom:20px;}.center-col .colpadding:last-of-type, .content-col .colpadding:last-of-type {display: none;}

/* Webio content classes */
 .webiolinkkipainike, .lomakenappi_submit, .takaisinuutisiin {box-sizing: border-box;cursor: pointer;margin-top: 20px;display: inline-block;border-radius:100px 0 100px 100px;text-align: center;font-size: var(--button-font-size);padding: var(--button-padding);background: var(--button-background);color: var(--button-text-color);font-weight: var(--button-font-weight);width: auto;max-width: var(--max-button-width);line-height: 120%;text-shadow: none !important;}.webiolinkkipainike:hover,.takaisinuutisiin:hover { transition: all .3s ease 0s;-webkit-filter: brightness(110%);filter: brightness(110%);text-decoration: none}.tapahtumat, .tapahtumakalenteri_otsikko, .tapahtumakalenteri_valiotsikko, .uutis_otsikko.tapahtumakalenteri_valiotsikko, .uutis_otsikko, .nostettumoduli, .nostettumoduli a, a.nostouutis_otsikko {color: var(--primary-color);font-size: 1.2rem;display: block;}.acc-news-wrapper .uutis_otsikko{border-top: 1px solid #707070;font-family: var(--google-heading-font);margin: 0;line-height: 120%;font-size:0.9rem; text-transform:uppercase;padding: 15px 0 15px 0; font-weight:700}
details{position:relative;margin-top:20px;}
details:after,details[open]:after{position:absolute; right:2em; top: 25px;font-weight: 700;pointer-events:none;color:#fff}
details:after{content:"+"}details[open]:after{content:"-"}.valikkolinkki, .valikkolinkki-sel, .valikkomodulilinkki, .valikkomodulilinkki-sel {text-decoration: none;color: #fff;padding: 5px 0;display: block;}@media screen and (max-width:480px) {.webiolinkkipainike, .lomakenappi_submit, .takaisinuutisiin {padding: 10px 30px; max-width:100%}}.popupkalenteri iframe {height: 239px;}
hr {border-top-width: 1px;border-right-width: 0px;border-bottom-width: 0px;border-left-width: 0px;border-top-style: solid;border-right-style: solid;border-bottom-style: solid;border-left-style: solid;border-top-color: #9A9A9A;border-right-color: #9A9A9A;border-bottom-color: #9A9A9A;border-left-color: #9A9A9A;margin-bottom: 1em;}
#lunchmenu-3,#lunchmenu-11 {display:none}.showlunch{max-width: 100%;width: 100%;}details .col-full {background: #fff;border-radius: 8px;padding: 1em;box-sizing: border-box;margin-top:10px}

/* Image gallery */
.kuvagalleriagrid {display: grid;grid-template-columns: var(--img-gallery-rows);grid-gap: 1em}.kuvagalleriakuvatausta {border-radius:0.5vw;width: 100% !important;height: auto !important;margin: 0 !important}.kuvagalleriakuvatausta{position:relative}.kuvagalleriakuvatausta .kuva {width: 100%;max-width: 100%;object-fit: cover; padding: 0 !important;aspect-ratio:3/4; max-height:600px;border-radius:0.5vw}@media screen and (max-width:575px) {.kuvagalleriagrid {grid-template-columns: repeat(2, 1fr)}}@media screen and (max-width:480px) {.kuva, .kuva2 {float: none !important;clear: both;padding: 20px 0; box-sizing:border-box;}}
.kuvagalleriakuvatausta img{transition:var(--animate); transform: scale(100%);}
.kuvagalleriakuvatausta:hover img {transform:scale(110%); border-radius:0.5vw}
.kuvagalleriakuvatausta a {display:block;}
.kuvagalleriakuvatausta,.kuvagalleriakuvatausta a{overflow:hidden}
.kuvateksti{bottom:30px; position:absolute; width:90%;transition:bottom .3s ease 0s,opacity .3s ease 0s;text-align:center; left:5%;background: rgba(255,255,255,.93); padding:10px; border-radius:4px}
.kuvateksti {text-align: left;color: #000;box-sizing: border-box;padding: 1em;font-size:16px;box-shadow: 0 0 22px rgba(0,0,0,0.1);line-height: 140%;font-family: var(--google-font);}
.kuvateksti b{font-family:var(--google-heading-font); font-size:20px; padding-bottom:10px; display:block;}
.kuvateksti br {display: none;}

@media screen and (max-width:1280px) {#image-gallery-content .kuvagalleriagrid {grid-template-columns: repeat(2,1fr);}}
@media screen and (max-width:720px) {#image-gallery-content .kuvagalleriagrid {grid-template-columns: 1fr;}}
@media screen and (max-width:480px) {.kuvateksti{font-size:14px;bottom: 10px;}.kuvateksti b {font-size: 16px;line-height: 120%;}}

/* Partner logos */
#partner-logos-wrapper table,#partner-logos-wrapper table tbody, #partner-logos-wrapper table tr, #partner-logos-wrapper table td {width: 100% !important;height: auto !important;}#partner-logos-wrapper table td {width: auto !important;} #partner-logos-wrapper table {width:100% !important} #partner-logos-wrapper table tr {display: flex;justify-content: center; align-items: center; flex-wrap:wrap; gap:2em 4em} #partner-logos-wrapper table img{max-height: 60px;object-fit: contain;width: auto;max-width: 162px;margin: 0 auto;} 
@media screen and (max-width:575px) {#partner-logos-wrapper table tr {display: flex;justify-content: space-around; align-items: center; flex-wrap:wrap; gap:1em}}

/* Semio referencelinks*/
#swlinkit {text-align: center;padding:10px 0;}.swlinkki {font-family:var(--google-font);font-size: 12px;color: #efefef; }.swlinkki:hover{color:#06b0a7; text-decoration: none;}
@media screen and (max-width:678px) {.subpage table, .subpage td, .subpage tr {display: block;width: 100% !important;height: auto; clear: both;box-sizing: border-box}.subpage tbody {width: 100%;display: inline-block}.subpage tr {display: flex;}.subpage tr td {flex:1;}}@media screen and (max-width:480px) {.subpage tr {display: grid;grid-template-columns: repeat(auto-fit,minmax(220px,1fr));}}

/* Forms */
.lomakeotsikko {color: var(--primary-color);font-weight: 700; padding:10px 0;}.lomake-ve-solu input[type=checkbox] {display: none}.lomake-ve-solu input[type=checkbox] + label, .lomake-ve-solu input[type=checkbox]:checked + label {-webkit-appearance: none;display: block;position: relative;height: auto;clear: both;}.lomake-ve-solu input[type=checkbox] + label::before, .lomake-ve-solu input[type=checkbox]:checked + label::before {border-radius: 100%;border: 1px solid #8e8e8e;border-radius: 4px;color: #fff;content: "✓";float: left;font-size: 1.2em !important;font-weight: 700;height: 18px;line-height: 11px;margin-right: 20px;padding: 8px 12px 0 8px;position: relative; width: 9px}.lomake-ve-solu input[type=checkbox] + label::before {content: ""}.lomake-ve-solu input[type=checkbox]:checked + label::before { background: #2a2a2a none repeat scroll 0 0;color: #fff !important;border: none;padding: 8px 15px 0 7px}#suodatin input[type=checkbox]:checked + label,.lomake-ve-solu input[type=checkbox]:checked + label {color: #000;box-shadow: 0 1px 2px rgba(0, 0, 0, .05)}.lomake-ve-solu input[type=checkbox] + label:active, .lomake-ve-solu input[type=checkbox]:checked + label:active {box-shadow: 0 1px 2px rgba(0, 0, 0, .05)}.lomake-ve-solu [type=radio]:checked, .lomake-ve-solu [type=radio]:not(:checked) {position: absolute;left: -9999px}.lomake-ve-solu [type=radio]:checked + label, .lomake-ve-solu [type=radio]:not(:checked) + label {position: relative; padding-left: 28px;cursor: pointer;line-height: 20px;padding-bottom: 10px;display: inline-block;color: #666}.lomake-ve-solu [type=radio]:checked + label:before, .lomake-ve-solu [type=radio]:not(:checked) + label:before {content: '';position: absolute;left: 0;top: 0;width: 18px; height: 18px;border: 1px solid #8e8e8e;border-radius: 100%;background: #fff}
.lomake-ve-solu [type=radio]:checked + label:after, .lomake-ve-solu[type=radio]:not(:checked) + label:after {content: '';width: 12px;height: 12px;background: #9ec72a;position: absolute;top: 4px;left: 4px;border-radius: 100%;-webkit-transition: all .2s ease;transition: all .2s ease}.lomake-ve-solu [type=radio]:not(:checked) + label:after {opacity: 0;-webkit-transform: scale(0);transform: scale(0)}.lomake-ve-solu [type=radio]:checked + label:after {opacity: 1;-webkit-transform: scale(1); transform: scale(1)}input[type="text"].pmvk, input[type="button"].lpainike { width: auto !important;}@media screen and (max-width:1200px) {.lomake-ve-solu input[type=checkbox] + label::before, .lomake-ve-solu input[type=checkbox]:checked + label::before { margin-bottom: 10px}}tr[id^=lomakerivi] {display: grid;grid-template-columns: repeat(auto-fit, minmax(240px, 1fr))}input[type=button], input[type=file], input[type=text], textarea {max-width: var(--max-input-width);height:35px;width: 100% !important;box-sizing: border-box;border: 1px solid #8e8e8e}textarea,.lomakenappi_submit, input[type=file] {height: auto}.lomakenappi_submit {-webkit-appearance: none;-moz-appearance: none;appearance: none;color: var(--button-text-color);font-size: var(--button-font-size);width: auto;border: none !important;border-radius: 6px;height: 45px !important;font-weight: 700;margin-top: 10px;line-height: 100%}tr[id^="lomakerivi"] select {border: 1px solid #888 !important;padding: 10px;border-radius: 4px;appearance: auto;-webkit-appearance: auto;-moz-appearance: auto;-ms-appearance: auto; width: auto !important;}.lpainike, .pmvk {width: auto;height: auto}.lomake-ve-solu {padding-bottom: 5px;padding-right: 10px}tr[id^="lomakerivi"] table tr {grid-gap: 2em;display: grid;grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));}tr[id^="lomakerivi"] table { width: 100%;}.rbcb-table tr {grid-gap: 0 !important;}

 /* Mobilemenu */
.meanmenu-reveal{display:none;font-size:30px!important}.meanmenu-reveal{color:var(--mobilemenu-open-close-color);cursor:pointer;display:block;font-size:1px;font-weight:700;height:43px;line-height:22px;margin-top:0;padding: 6px 10px 0 10px;position:absolute;text-decoration:none;text-indent:-9999em;top:4px;width:39px;border-radius: 12px 0 12px 0;border: 1px solid #d64c2f;right: 10px !important;background:#fff}.meanmenu-reveal.meanclose {padding: 12px 12px 4px 12px;}.meanmenu-reveal span{background:var(--mobilemenu-button-background);border-radius:10px;display:block;height:5px;margin-top:5px;line-height:100%!important}.mean-nav{float:left;width:100%;margin-top:var(--mobilemenu-container-height)}.meanmenu-reveal.meanclose {padding: 12px 10px 0px 10px;height: 37px;}.mean-nav ul{padding:0;margin:0;width:100%;list-style-type:none}.mean-nav li a{display:block;float:left;width:90%;padding:10px 5% 10px 5%;height:auto;margin:0;text-align:left;color:var(--mobilemenu-link-color);border-top:1px solid rgba(255,255,255,.2);text-decoration:none;font-size:14px;background:var(--mobilemenu-link-background);font-family: var(--google-heading-font);text-transform: unset;}.mean-nav ul li li a{width:90%;padding:10px 5% 10px 8%;background:var(--mobilemenu-submenu-background)!important;visibility:visible}.mean-nav ul li{position:relative;float:left;width:100%}.mean-nav a.mean-expand{background:var(--mobilemenu-expand-button)!important;border:medium none;border-radius:3px;color:#fff;font-weight:700;height:20px!important;margin-top:3px !important;padding:3px 4px 4px!important;line-height: 120%;position:absolute;right:10px;text-align:center!important;top:6px;width:23px!important;z-index:2}.mean-remove{display:none!important}#main-navi-resp{display:none}@media screen and (max-width:1024px) {#mobilemenu-container, #main-navi-resp {display: block !important;}#mobile-logo {display: block;}}.acc-news-wrapper {font-family: var(--google-font);margin: 0;line-height: 120%;font-size:0.9rem;}
#mobile-links-container {background:#fff;}
#mobile-links-container {display:grid; grid-template-columns:1fr 1fr 1fr; grid-gap:2em}
#mobile-links-container img {max-width:15vw; margin:0 auto; min-width:80px}

/* Tiny slider carousel */
.tns-outer{padding:0 !important}.tns-outer [hidden]{display:none !important}.tns-outer [aria-controls],.tns-outer [data-action]{cursor:pointer}.tns-slider{-webkit-transition:all 0s;-moz-transition:all 0s;transition:all 0s}.tns-slider>.tns-item{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.tns-horizontal.tns-subpixel{white-space:nowrap}.tns-horizontal.tns-subpixel>.tns-item{display:inline-block;vertical-align:top;white-space:normal}.tns-horizontal.tns-no-subpixel:after{content:'';display:table;clear:both}.tns-horizontal.tns-no-subpixel>.tns-item{float:left}.tns-horizontal.tns-carousel.tns-no-subpixel>.tns-item{margin-right:-100%}.tns-no-calc{position:relative;left:0}.tns-gallery{position:relative;left:0;min-height:1px}.tns-gallery>.tns-item{position:absolute;left:-100%;-webkit-transition:transform 0s, opacity 0s;-moz-transition:transform 0s, opacity 0s;transition:transform 0s, opacity 0s}.tns-gallery>.tns-slide-active{position:relative;left:auto !important}.tns-gallery>.tns-moving{-webkit-transition:all 0.25s;-moz-transition:all 0.25s;transition:all 0.25s}.tns-autowidth{display:inline-block}.tns-lazy-img{-webkit-transition:opacity 0.6s;-moz-transition:opacity 0.6s;transition:opacity 0.6s;opacity:0.6}.tns-lazy-img.tns-complete{opacity:1}.tns-ah{-webkit-transition:height 0s;-moz-transition:height 0s;transition:height 0s}.tns-ovh{overflow:hidden}.tns-visually-hidden{position:absolute;left:-10000em}.tns-transparent{opacity:0;visibility:hidden}.tns-fadeIn{opacity:1;filter:alpha(opacity=100);z-index:0}.tns-normal,.tns-fadeOut{opacity:0;filter:alpha(opacity=0);z-index:-1}.tns-vpfix{white-space:nowrap}.tns-vpfix>div,.tns-vpfix>li{display:inline-block}.tns-t-subp2{margin:0 auto;width:310px;position:relative;height:10px;overflow:hidden}.tns-t-ct{width:2333.3333333%;width:-webkit-calc(100% * 70 / 3);width:-moz-calc(100% * 70 / 3);width:calc(100% * 70 / 3);position:absolute;right:0}.tns-t-ct:after{content:'';display:table;clear:both}.tns-t-ct>div{width:1.4285714%;width:-webkit-calc(100% / 70);width:-moz-calc(100% / 70);width:calc(100% / 70);height:10px;float:left}.tns-nav {text-align:center; margin:10px 0}.tns-nav button, .tns-nav-active {width: 20px;height: 20px;border-radius: 100%;border:none;background: #bfbaa6;margin:0 2px}button.tns-nav-active {background: #d64b2e;}#carousel-wrapper-top-ow .tns-nav {text-align: center;margin-top: -80px;z-index: 200;position: absolute;width: 100%;}#carousel-wrapper-top-ow .tns-nav button, #carousel-wrapper-top-ow .tns-nav-active {width: 25px;height: 25px;}@media screen and (max-width:1024px) {#carousel-wrapper-top-ow .tns-nav {text-align: center;margin-top: -60px;}}

/* Accessibility */
#skip-to-content {position: absolute;left: -9999px; z-index: 999; padding: 1em;background-color: black;color: white;opacity: 0; }#skip-to-content:focus {left: 50%; transform: translateX(-50%); opacity: 1;}

/* Tables */
#page-main-content table, #page-main-content tbody,#page-main-content tr, #page-main-content td{width:100% !important; height:auto !important; padding:0;}#page-main-content td {padding:2em; background:#fff; border:1px solid var(--primary-color);box-sizing: border-box;border-radius: 10px;} #page-main-content tr {display:grid; grid-template-columns:repeat(3,1fr); grid-gap:1em;margin-bottom: 1em;}@media screen and (max-width:1024px) {#page-main-content tr {grid-template-columns: repeat(2,1fr);}}@media screen and (max-width:678px) {#page-main-content tr {grid-template-columns:1fr;}}@media screen and (max-width:440px) {#page-main-content td {padding: 1em}}

/* Popup */
/* Avausnappi */
.open-btn {
 /* padding: 0.5rem 1rem;
  background: #fff;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  width: 100%;
  border: 2px solid #000;
  color: #000;
  max-width: max-content;
  padding: 10px 60px;
  border-radius: 100px;
  margin-top: 0;
	transition: var(--animate); transform:scale(100%);
  overflow:hidden*/
  border:none
}

.popup-content .modulikuvausteksti h2 {padding: 1em 0 0 1em;}
.open-btn:hover {transition: var(--animate); transform:scale(105%)}

.popup-inner #lomakerivi6_11 .lomakeotsikko {grid-column: 1/-1;}


/* Overlay - piilotettuna oletuksena */
.popup-overlay {
  position: fixed;
  background: rgba(0, 0, 0, 0);
  display: flex; 
  justify-content: center;
  align-items: center;
  z-index: 999;
  opacity: 0;
  pointer-events: none; 
  transition: background 0.3s ease, opacity 0.3s ease; padding: 2rem 1rem;
}

/* Popup-sisalto */
.popup-inner {background:#fff;outline:none;box-sizing: border-box;min-width:800px; border:none; transition: transform 0.3s ease, opacity 0.3s ease; max-width:1000px;  /*max-height: 70vw;*/
  overflow: visible;
  border-radius: 8px;
  padding: 1rem;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3);}

.popup-inner h2 {font-size:min(max(1.2rem, 1.7vw), 32px)}
.popup-inner h5 {font-size:min(max(1.2rem, 1.2vw), 20px)}
.popup-inner p {font-size:min(max(1rem, 1vw), 18px)}



/* Naytetaan kun sivu avataan */
.popup-overlay.visible {
  display: flex;
	width: 100%;
  height: 100%;
  background:rgba(0,0,0,.5);
  opacity: 1;
  border: none;
  opacity: 1;
  pointer-events: auto;
  align-items: flex-start;
}

.popup-overlay.visible .popup-inner {
  transform: translateY(0);
  opacity: 1;
}

/* Sulkunappi */
.close-btn {
position: absolute;
  top: 30px;
  right: 30px;
  background: transparent;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  z-index: 11;
  float: right;
  background: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 100%;
  border-radius: 200px;
  width: 30px;
  height: 30px;
  padding-bottom: 5px;
  color:#fff
}

button[data-popup] {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent; /* poistaa mobiilin sinisen kohdistuksen */
}

.lomake-ve-solu [type="radio"]:checked + label::before,.lomake-ve-solu [type="radio"]:checked + label::after{left: -9999px;}
.lomake-ve-solu [type="radio"]:checked + label {background: #00bbb5;color: #fff;font-size: 1.2rem;line-height: 120%;font-weight: 700;padding: 20px 10px;width:100%; box-sizing:border-box; border-radius:8px;text-align:center;font-size:16px}
.lomake-ve-solu [type="radio"]:not(:checked) + label::before,.lomake-ve-solu [type="radio"]:not(:checked) + label::after{left: -9999px;}
.lomake-ve-solu [type="radio"]:not(:checked) + label, .lomake-ve-solu [type="radio"]:not(:checked) + label {border: 1px solid #dedede;padding: 20px 10px;width: 100%;box-sizing: border-box;border-radius: 8px;background: #f7f7f7;color: #000;font-size: 16px;line-height: 120%;font-weight: 700;text-align:center;}



.popup-inner form > table, #maincontent-sub #webiolomake_1_30_4 {
  padding: 2em;
  box-sizing: border-box;
  border-radius: 12px;
}

.popup-content {display: flex;flex-direction: column;justify-content: flex-start;align-items: flex-start;width: 100%;background:#eceae4}
.popup-inner summary {list-style:none; font-weight: 700;}

.product-benefits{background: #f7f7f7;border-radius: 12px;}

.popup-inner details:after {display:none;}

#lomakerivi6_11 {grid-template-columns: unset;}
.popup-content #lomakerivi6_11 .rbcb-table .formrow-wb {display: grid;grid-template-columns: 1fr 1fr 1fr;}


/* Responsiivisuus mobiiliin */
@media screen and (max-width:1024px) {.rbcb-table tr.formrow-wb {grid-template-columns: 1fr;}.popup-inner{min-width:90vw;max-width:90vw; min-width:unset;width: 95%;padding: 0.75rem;}.popup-overlay {
  position: fixed;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem 1rem;
  z-index: 999;
  background: rgba(0,0,0,0.6);
}

.popup-inner {
  background: #fff;
  width: 96%;
  max-width: 96%;
  max-height: calc(100svh - 1rem);
  border-radius: 8px;
  padding: 1rem;
  overflow-y: auto;
}}

.kuvateksti:empty {display: none;}
.popup-inner .rbcb-table{padding:1em 0}
@media screen and (max-width:1024px) {.sub-herotext h1 {font-size: 1rem;text-transform: uppercase;}}
@media screen and (max-width:860px) {.popup-content #lomakerivi6_11 .rbcb-table .formrow-wb {display: grid;grid-template-columns: 1fr 1fr;}}
@media screen and (max-width:768px) {.lomake-ve-solu [type="radio"]:checked + label,.lomake-ve-solu [type="radio"]:not(:checked) + label, .lomake-ve-solu [type="radio"]:not(:checked) + label{font-size:14px}}
@media screen and (max-width:678px) {.popup-inner input{max-width: 100% !important;}}
@media screen and (max-width:575px) {.popup-overlay ul, .popup-overlay li {padding: 0;}input[type="button"], input[type="file"], input[type="text"], textarea {max-width: 100%;}#maincontent-sub #webiolomake_1_30_4 {padding: 1em;}  .popup-content #lomakerivi6_11 .rbcb-table .formrow-wb {display: grid;grid-template-columns: 1fr}.popup-inner .lomakenappi_submit {max-width: 100%;width: 100%;margin-top: 0;}}
@media screen and (max-width:440px) {tr[id^="lomakerivi"] {grid-template-columns: 1fr;}.popup-inner .lomake-ve-solu [type="radio"]:not(:checked) + label, .popup-inner .lomake-ve-solu [type="radio"]:not(:checked) + label,.lomake-ve-solu [type="radio"]:checked + label  {padding: 10px;}.popup-inner form > table {padding: 1em 1em;}.lomake-ve-solu {padding-right: 0px;}.close-btn {top: 5px;right: 5px;}}