/* rajdhani-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: 'Rajdhani';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/rajdhani-v15-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+ */
       url('../fonts/rajdhani-v15-latin-regular.woff') format('woff'); /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* rajdhani-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: 'Rajdhani';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/rajdhani-v15-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+ */
       url('../fonts/rajdhani-v15-latin-500.woff') format('woff'); /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* rajdhani-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: 'Rajdhani';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/rajdhani-v15-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+ */
       url('../fonts/rajdhani-v15-latin-700.woff') format('woff'); /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}


:root {
   --primary-color: #01afce;
   --secondary-color: #01afce;
   --base-font-size: min(max(1rem, 1.22vw), 22px);
   --base-text-color: #000;
   --base-line-height: 160%;
   --google-font: 'Rajdhani', sans-serif;
   --google-heading-font:  'Rajdhani', sans-serif;
   --navilink-font-size: min(max(1rem, 1.125vw), 20px);
   --navilink-color: #fff;
   --navilink-font-weight: 700;
   --navilink-padding: 20px 15px;
   --navilink-selected-bg: #00afce;
   --navilink-selected-color: #fff;
   --heading-size-1: min(max(1.8rem, 2.5vw), 2.6rem);
   --heading-size-2: min(max(1.4rem, 1.75vw), 1.75rem);
   --heading-size-3: min(max(1.6rem, 1.75vw), 1.75rem);
   --heading-size-4: min(max(1.4rem, 2.25vw), 2.25rem);
   --heading-size-5: min(max(1.4rem, 1.375vw), 1.375rem);
   --heading-size-6: min(max(2rem, 2.8vw), 3rem);
   --grid-gap: 2em 3em;
   --button-background: #0a1138;
   --button-text-color: #fff;
   --button-font-size: min(max(0.95rem, 1vw), 1rem);
   --button-font-weight: 700;
   --button-padding: 10px 30px;
   --max-input-width: 450px;   
   --max-button-width: max-content;   
   --img-gallery-rows: repeat(4,1fr);
   --mobilemenu-container-height: 63px;
   --mobilemenu-open-close-color: #0a1138;
   --mobilemenu-menutext-color: #0a1138;
   --mobilemenu-button-background: #0a1138;
   --mobilemenu-link-color: #fff;
   --mobilemenu-link-background: #0a1138;
   --mobilemenu-expand-button: #fff;
   --mobilemenu-submenu-background: #0a1833;
   --padding-s: min(max(20px, 1vw), 20px);
   --padding-m: min(max(30px, 2vw), 40px);
   --padding-xl: min(max(20px, 3vw), 60px);
   --padding-xxl: min(max(40px, 4vw), 80px);
 }
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)} main li {font-family: var(--google-font);color: var(--base-text-color);font-size: var(--base-font-size);line-height: var(--base-line-height)} img {max-width: 100%;height: auto;display: block;}header.content-col { position: absolute;z-index: 500;}header .dgrid-s-xl-cols{grid-template-columns: auto 1fr; grid-gap:0 3em}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 {font-family: var(--google-heading-font);margin: 0;padding: 0;line-height: 110%;color: var(--primary-color); font-weight:700;text-transform:uppercase;}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);color:#00afce}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: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%;}

/* 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}.dgrid-3-cols{grid-template-columns:repeat(3,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:860px) {.dgrid-2-cols, .dgrid-4-cols{grid-template-columns:1fr;}.dgrid-3-cols{grid-template-columns:1fr; grid-gap:1em}} 
.dgrid-8-cols{display: grid;grid-template-columns: repeat(auto-fill,minmax(350px,1fr));grid-gap: 2em;}
.dgrid-8-cols section {background-color:#fff;}
@media screen and (max-width:480px) {.dgrid-8-cols{display: grid;grid-template-columns: 1fr}}


/* Navigation */

#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;}#main-nav{align-self: flex-start;}#main-navi {background:#0a1137; border-radius:8px;margin-top:30px}#top-navi {align-items:center;justify-content: flex-end; padding-top:20px}#top-navi .webiolinkkipainike {background: #fff;color: #31bed7;margin-top:0; font-size:0.7rem;} .mainnavi-link, .topnavi-link, .footerlink {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;text-transform:uppercase;}.topnavi-link{color:#fff;padding: 0 20px;font-size:0.8rem;}.footerlink{padding:0 10px;}.mainnavi-link:hover, .topnavi-link:hover, .footerlink:hover {color: #c6c6c6;}#link-sel-1-175, #link-sel-2-188, #link-sel-4-179, #link-sel-4-189, #link-sel-5-14, #link-sel-6-186, #link-sel-2-196, #link-sel-3-197 {color: var(--navilink-selected-color);background: var(--navilink-selected-bg);text-decoration: none}#logoimg {max-width: 50%;margin: 0 auto;float: none;display: block;height: auto;padding: 40px 0;}#sidenavi ul {background: var(--primary-color);padding: 10%;margin: 0;list-style: none;}.subpage-contentcol table {width:100% !important}.subpage-contentcol tr {display: grid;grid-template-columns: 1fr 10px 1fr 10px 1fr 10px 1fr;}.subpage-contentcol td {width:100% !important}table[id^="lomake"] tbody > tr {display:inherit}#logo {padding-top: 59px;}#logo img {max-width: 180px;border-radius:0 12px 0 12px}@media screen and (max-width:1660px) {#logo {padding-top: 70px;}#logo img {width: calc(133px - 1vw);}.mainnavi-link{padding: 15px}}
.naviblock ul {display:none; position:absolute; width:100%;background: #faf9f5; 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(4,1fr); margin:0;padding: 1em 2em 2em 2em;border-radius: 6px;}
.naviblock ul li a {padding:10px 0;display:flex;color:#0a1137; font-size: 0.9rem;}
#vihdoin-katto-navi .topnavi-link {text-shadow: 2px 2px 2px rgba(0,0,0,.5);}

/* General classes, heroimg, banners */
#main-heroimg {width: 100%;min-height:300px; object-fit:cover;max-height: 1080px;}
#alasivuhero #main-heroimg {min-height:200px}
#herotext article {max-width: 600px;}
#herotext span {display:block;}
#herotext .center-col{display:flex; justify-content: flex-end; padding-top:130px}
#herotext h2 {color:#fff;font-size:min(max(2.4rem, 3.5vw), 4em);line-height: 90%}
#vihdin-katto-introduction{background: url(../img/header/vihdin-katto-esittely-bg-top.jpg) center bottom no-repeat;background-size: 100%;}
#vihdin-katto-introduction h1 {max-width:17ch}
#vihdin-katto-introduction .dgrid-2-cols {padding-bottom:20vw}
#intro-mainheader{text-align:right;display:flex; align-items:flex-end; justify-content:flex-end}
#tbmodals-abs {margin-top: -200px;}
#introduction-small-col{max-width:50%}
#ylasisalto {background:#f0f0f3}
#ylasisalto h2 {text-transform:unset;}
#ylasisalto h3{font-size:min(max(2rem, 2.25vw), 2.25rem);}
#kattoremontit {background:#00afce}
#aurinkovoimalat {background:#126a35}
#asennuspalvelut {background:#0a1138}
#kattoremontit section {height:100%;width:100%;}
.palvelusisalto .dgrid-2-cols {position:relative;}
#nostobannerit a {color:#000 !important; text-transform:uppercase;}
#herotext img {margin:0 auto;margin-top: -5vw;max-width: 11vw;}
#nostobannerit .bnr {background:#f6f6f8; border-radius:4px;}
#nostobannerit .center-col{width:100%;}
.alasivu-bgcol{background:#f0f0f3;}
.subpage-top h1,.subpage-top h2,.subpage-top h3,.subpage-top h4,.subpage-top h5,.subpage-top h6, .subpage-top p,.subpage-top li, .subpage-top td{color:#fff}
#pageid-175{background:url(../img/header/kattoremontit-contentbg.jpg) center top no-repeat; background-size:cover; border-radius:6px;}
#pageid-179{background:url(../img/header/asennuspalvelut-contentbg.jpg) center top no-repeat; background-size:cover; border-radius:6px;}
#pageid-188{background:url(../img/header/aurinkovoimalat-contentbg.jpg) center top no-repeat; background-size:cover; border-radius:6px;}
#palveluteksti{background:#000; border-radius:0 0 6px 6px}
#palveluteksti,#palveluteksti p {text-align:center; color:#fff; text-transform:uppercase}
#palveluteksti .col-full {margin:0;}
#pcard-infowrapper img {border-radius: 0 12px 0 12px;}
.top-mask{position:absolute; top: 0; right:0; width:auto;}
.bottom-mask{position:absolute; bottom: 0; right:0; width:auto;}
.bottom-mask-r{position:absolute; bottom: 0; left:0; width:auto;}
.top-mask-r{position:absolute; top: 0; left:0; width:auto;}
.palvelusisalto {display: flex;flex-wrap: wrap;position:relative;min-height: 400px;margin-bottom:1em}
.palvelusisalto h2, .palvelusisalto p {color:#ffffff}
.palvelusisalto section {flex:1}
.palvelusisalto .dgrid-2-cols {grid-gap:0;}
.palvelusisalto .cpadding-xxl {padding: 2vw 10vw;display: flex;justify-content: center;flex-direction: column;}
.abs-element.ikonisisalto {justify-content: center;align-items: center;width: 100%;pointer-events:none;}
.ikonisisalto {padding-left: 0.7vw;}
.ikonikuva {max-width:14.5vw}
.vihdoin-katto-table img, #vihdoin-katto-banners img {border-radius: 0 8px 0 8px;padding: 0 !important;}
#oprahoitus .banner {max-width: 80%;height: 100%; display:flex; flex-direction:column; padding:2em 0}
#oprahoitus img {padding: 4.2em 0 !important;}
#nostobannerit .banner {bottom: 10%}
#miksi-valita {padding-top: 0;}
.modulikuvausteksti {grid-column:1/-1}
.abs-element.ikonisisalto img {margin:0 auto;}
.ps-img {position:relative;}
.ps-img img{width:100%; height:100%; object-fit: cover}
.heroimg {position: relative;}
.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}
#breadcrump, #breadcrump a {font-size:16px; color:#0a1137; line-height:100%}
.fwimg {width:100%}
.white-p {color: #fff}
.shadow {text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);}
.headerbox {background: var(--primary-color);color: #fff;padding: 5px 50px;text-transform: uppercase;display: inline-block;margin-bottom:20px;border-radius:0px 6px 0 6px;}
#did-you-know {background:#faf9f5 url(../img/header/vihdin-katto-esittely-bg-bottom.jpg) center top no-repeat;background-size: 100%;}
.mask-img-block {position: absolute;bottom: 0;width: 100%;height: 100%;}
.mask-img-block img {pointer-events: none; width:100%; height:100%; object-fit: cover; object-position: bottom}
.banner {bottom: 10%;}
.banner p,.banner h2, .banner h3, .banner h4, .banner h5, .banner h6 {color:#fff}
.bnr {position:relative;border-bottom:20px solid #00afce; border-radius:0 0 0 12px;} 
.bnr img {width:100%;height: 100%;object-fit: cover;border-radius: 0px 12px 0 0px;}
.bnr .webiolinkkipainike {background:#fff; color:#01afce}

.profile-198 .center-col {display:grid}
.profile-198 .col-full:first-of-type{order:2}
.profile-198 .col-full:nth-of-type(3){order:3}

footer {background:#0a1137 url(../img/header/footerbg-3.jpg) center bottom no-repeat; background-size:cover;padding:8vw 0 8vw 0 !important}
footer h5,footer h6, footer p {color:#fff; text-transform:none}
#footer-top-col {grid-template-columns: 1fr auto 1fr;text-align: center;justify-content: center;align-items: center;}
footer h5 {font-size:min(max(1.8rem, 2.5vw), 2.8rem);}
footer h6 {font-size:min(max(2.4rem, 3.5vw), 4em);}
footer .dgrid-3-cols {grid-template-columns:1fr auto 1fr}
footer .dgrid-3-cols img {max-width:180px; margin:0 auto;width: 12vw;border-radius:0px 12px 0 12px;}
footer .headerbox, #herotext .headerbox{background:#fff; max-width:max-content}
footer .headerbox p,#herotext .headerbox p{color:#01afce; text-transform:uppercase;font-size:min(max(1rem, 1.2vw), 1.4em); font-weight:700}
#footer-cta {padding:4em 0 4vw 0}
#footer-cta img {max-height: 64px;width: auto;}
#footer-logoimg img {margin:0 auto;max-width:9vw; min-width:100px;}
#roof-manufacturers {display: flex; justify-content: center;align-items: center;}
#roof-manufacturers img {padding: 0 10px !important;}
#footer-logocol {grid-column:1/-1;grid-column: 1/-1;display: grid;grid-template-columns: 1fr 1fr;}
#yhtt {background:rgba(255,255,255,0.9); border-radius:8px; text-align: center}
.palvelusisalto.dflex {flex-direction:row; flex-wrap:no-wrap}
#pcard-infowrapper .kuvateksti {display: none;}
#references .col-full,#references .colpadding{margin-bottom:0;}
#references .bnr > .col-full {height:100%}

@media screen and (max-width:1660px) {#herotext span {display: inline;}}
@media screen and (max-width:1024px) {#main-heroimg {max-height: 400px;}#herotext .center-col {justify-content: center; padding-top: 0;}#herotext{width:100%}#herotext article {max-width: 100%;}#nostobannerit .center-col {width: 100%;grid-gap: 1em;grid-template-columns: repeat(2,1fr);}.subpage-top .dgrid-s-xl-cols {grid-gap:0;}.subpage-top img {display:none;}#top-wrapper {padding-bottom: 1em;}.bnr img {max-height: 600px;object-fit: cover;min-height:300px}.ylasisalto-alasivu #esittely {padding: 2em 0em 0 0em;}#miksi-valita h3 {text-align:left !important;}#footer-cta {padding: 4em 0 5vw 0;}#ftrlinks-info nav{display:none;}#vihdin-katto-introduction {background: url(../img/header/vihdin-katto-esittely-bg-top.jpg) center top no-repeat;background-size: cover;}#vihdin-katto-introduction h1 {max-width: 100%;}#intro-mainheader {justify-content: flex-start;align-items: flex-start;text-align: left;}#herotext .headerbox {padding: 5px 20px;}}
@media screen and (max-width:860px) {#introduction-small-col {max-width: 100%;padding-top: 52vw;}.palvelusisalto .cpadding-xxl {padding: 2em 4em;display: flex;justify-content: center;flex-direction: column;}.palvelusisalto {min-height: unset;}#kattoremontit section {height: auto;width: auto;}.abs-element.ikonisisalto {right: 1em;top: 1em;width:auto;}#aurinkovoimalat .cpadding-xxl {order: 1;}.ikonikuva {max-width: 118px;}footer {background: #0a1137 url(../img/header/footerbg-2.png) center top no-repeat;background-size:contain}#footer-top-col, #footer-cta {grid-template-columns: 1fr;text-align: center;}footer .dgrid-3-cols img{width: 120px;}#tbl-col table, #tbl-col tbody, #tbl-col tr, #tbl-col td,.vihdoin-katto-table, .vihdoin-katto-table tbody, .vihdoin-katto-table tr, .vihdoin-katto-table td {height: auto !important;width: 100% !important;box-sizing: border-box;}.vihdoin-katto-table .kuva, .vihdoin-katto-table .kuva2{float:none !important;width: 100%;}#tbl-col tr,.vihdoin-katto-table tr{display:flex; flex-direction:column;}#tbl-col td:first-of-type,.vihdoin-katto-table td:first-of-type{order:2} .dgrid-2-cols, .dgrid-4-cols {grid-gap: 1em;}#vihdoin-katto-bnrcol {padding: 0 0em 1em 0em;}#vihdoin-katto-banners {grid-template-columns: 1fr 1fr;}}
@media screen and (max-width:678px) {#nostobannerit .center-col {grid-template-columns: 1fr;}#nostobannerit img, #nostobannerit .bnr {border-radius: 8px;}#tbmodals-abs {margin-top: -100px;}#vihdoin-katto-bnrcol h4 {font-size: 2rem;}}
@media screen and (max-width:575px) {.palvelusisalto .cpadding-xxl {padding: 2em;}.ikonikuva {max-width: 90px;}.ps-img{min-height:300px}.subpage-top .dgrid-s-xl-cols {padding: 2em;}#top-wrapper {padding-bottom: 0;}#yhtt{padding:2em}:root{--base-font-size: min(max(1.1rem, 1.22vw), 22px);}tr[id^="lomakerivi"] {display: grid !important;}#ftrlinks-info p {font-size: 16px;} footer h4{font-size:1.4rem}footer{padding-bottom:0 !important}.mblpadding{padding: 3em 1em 2em 1em !important;}.vihdoinkattoimg{object-fit: cover;max-height: 200px;object-position: top;margin-bottom: 20px;}#solu206872 {padding-top: 2em;}#vihdoin-katto-bnrcol .webiolinkkipainike {display: block;}}
@media screen and (max-width:520px) {#vihdoin-katto-banners {grid-template-columns: 1fr;}#vihdoin-katto-banners img {width: 100%;}}
@media screen and (max-width:480px) {#footer-logocol {grid-template-columns: 1fr;grid-gap: 1em;}#roof-manufacturers img {max-width: 150px;}#footer-top-col .webiolinkkipainike {background: #00afce;display: inline-block;margin-top: 2em !important;}}

/* Text box modals */
#text-box-modals article {background: #00afce url(../img/header/textbox-modal-bg.png) left top no-repeat; background-size:cover;border-radius:0px 12px 0 12px; padding:var(--padding-m);}
#text-box-modals p, #text-box-modals h2, #text-box-modals h3, #text-box-modals h4, #text-box-modals h5, #text-box-modals h6{color:#fff}

/* Maincategory frontpage - Services */
#bannersbg,#product-modals {background:#faf9f5;}
@media screen and (max-width:860px) {.feature-col .col-left {order:2}}

/* Endorse modals */
#product-modals .col-full {display:grid;grid-template-columns: repeat(4,1fr);grid-gap:1em;}
#product-modals .modulikuvausteksti {grid-column: 1 / -1;}
.p-modal {background:#fff;border-radius: 0 12px 0 12px;padding:1em}
.p-modal-img {width:100%;position: relative;}
.p-modal img{border-radius: 0 12px 0 12px;object-fit: cover;padding:0 !important; width:100%; height:100%; object-fit:contain;transition: .2s ease-in-out;transform: scale(100%);}
.p-modal:hover {transform: scale(100%);box-shadow: 2px 2px 12px rgba(0,0,0,.1);}
.p-modal-mask {width:100%; bottom:0;}
.abs-element.p-modal-mask img {width: 100%;}
.plift-img img {aspect-ratio: 4/3; max-height: 220px;  object-fit: cover;}
.p-modal-content .headerbox:empty{min-height: 46px;visibility:hidden}
.p-modal-header, .p-modal-text {position:relative; z-index:23}
.p-modal-header h2 {font-size:min(max(1.3rem, 1.5vw), 1.6rem)}
.p-modal-content .headerbox {background:#ec831b; font-size: 15px; font-weight: 700; text-transform:uppercase;padding:0;margin-bottom: 10px;}
.p-modal-content .headerbox p{font-size:12px !important;padding: 5px 1vw; color:#fff; font-weight:700}
.p-modal-button.webiolinkkipainike {background:#f1f1f1;border-radius:0 6px 0 6px; color:#006eb2;max-width: unset; text-align: left; width:100%;padding: 12px 24px; }
.p-modal-button a{color:#000; font-weight:700;font-size: 0.9rem}
.p-modal-button.webiolinkkipainike,.p-modal-button.webiolinkkipainike p {position: relative}
.p-modal-button.webiolinkkipainike span {position:absolute; right:0;}
.p-modal-button.webiolinkkipainike:hover {filter:unset}
.p-modal-text {display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;  overflow: hidden;}

@media screen and (max-width:1024px) {#product-modals .col-full{grid-template-columns: repeat(2,1fr);}}
@media screen and (max-width:575px) {#product-modals .col-full{grid-template-columns: 1fr;}.p-modal-button.webiolinkkipainike p {font-size: 14px;}.p-modal-content .headerbox p {padding: 5px 3vw;}}

/* Palvelutable */
.palvelutable {width:100% !important}
.palvelutable tr {display:grid; grid-template-columns:repeat(3,1fr); grid-gap:2em;}
.palvelutable td {width:100% !important; padding:0;}
.palvelutable td img {margin-bottom:1em}

@media screen and (max-width:678px) {.palvelutable tr {grid-template-columns: repeat(2,1fr);}}
@media screen and (max-width:480px) {.palvelutable tr {grid-template-columns: 1fr;}}

/* Banner - imgmask (optional) */
.banner-imgmask {position: absolute;height: 100%; width: 100%;} /* Optional */
.bannermask-img {opacity: 1 !important;max-height: 100%;object-fit: cover;width: 100%;}
@media screen and (max-width:1024px) {#main-heroimg,{object-fit: cover; min-height: 300px;max-height: 50vh;}#herotext img {max-width:100px; display:none;}} 

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

/* 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 {line-height: 130%;text-transform:uppercase;box-sizing: border-box;cursor: pointer;margin-top: 20px;display: inline-block;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);border-radius:0px 6px 0 6px;}.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);letter-spacing: 3px;margin: 0;line-height: 120%;font-size:0.9rem; text-transform:uppercase;padding: 20px 0 5px 0}
details{position:relative; display:flex; justify-content:center; align-items:center;margin-top:20px;}
details:after,details[open]:after{position:absolute; right:0; top: 15px;font-weight: 700;pointer-events:none}
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: 12px 36px; max-width:100%}}
.kuvateksti {text-align: left;padding: 1em 2em;background: #fff;font-family: var(--google-font);color: var(--base-text-color);font-size: 1rem;line-height: var(--base-line-height);}
.kuvateksti:empty {display: none;}
#solu_179_51_1 .kuvagalleriakuvatausta {background: #fff;border-radius: 0 0 0 12px;}
#solu_179_51_1 .kuvagalleriakuvatausta img {border-radius: 0 12px 0 0;}
#solu_179_51_1 b {font-size:min(max(1.3rem, 1.5vw), 1.4rem); text-transform:uppercase;}

#solu_178_3_1 {display: flex;justify-content: center;align-items: center;}#solu_178_3_1 .kuvagalleriakuvatausta {max-width: 24%;}
@media screen and (max-width:1024px) {#solu_178_3_1 .kuvagalleriakuvatausta {max-width: 32%;}}
@media screen and (max-width:768px) {#solu_178_3_1 .kuvagalleriakuvatausta {max-width: 48%;}}
@media screen and (max-width:575px) {#solu_178_3_1 {flex-direction:column;}#solu_178_3_1 .kuvagalleriakuvatausta {max-width: 98%;}#solu_178_3_1 img.kuva{width: 100%;max-height: unset !important;}}

/* Image gallery */
.kuvagalleriagrid {display: grid;grid-template-columns: var(--img-gallery-rows);grid-gap: 1em}.kuvagalleriakuvatausta {width: 100% !important;height: auto !important;margin: 0 !important}#bannersbg .kuvagalleriakuvatausta{background: #fff; border-radius: 0px 12px 0 12px;}.kuvagalleriakuvatausta .kuva {border-radius:0 12px 0 0; width: 100%;max-width: 100%;object-fit: cover; padding: 0 !important;}@media screen and (max-width:1024px) {.kuvagalleriagrid{grid-template-columns:repeat(3,1fr)}}@media screen and (max-width:764px) {.kuvagalleriagrid {grid-template-columns: repeat(2, 1fr)}}@media screen and (max-width:575px) {.kuvagalleriagrid {grid-template-columns: 1fr}.kuvagalleriagrid {margin-top: 1em;}#bannersbg .kuvagalleriakuvatausta .kuva{max-height: 300px;width: auto;padding: 0.5em !important;}}@media screen and (max-width:480px) {.kuva, .kuva2 {float: none !important;clear: both;padding: 20px 0; box-sizing:border-box;}}
/* Semio referencelinks*/
#swlinkit {text-align: center;}.swlinkki {font-size: 12px;color: #000}

 @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), inset 0 -15px 10px -12px rgba(0, 0, 0, .05), inset 15px 10px -12px rgba(255, 255, 255, .1), inset 0 0 10px rgba(0, 0, 0, .1)}.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), inset 0 1px 3px rgba(0, 0, 0, .1)}.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:auto;line-height:22px;margin-top:0;padding:8px 10px;position:absolute;text-decoration:none;text-indent:-9999em;top:7px;width:39px;}.meanmenu-reveal.meanclose {padding: 12px 12px 4px 12px;}.meanmenu-reveal span{background:var(--mobilemenu-button-background);border-radius:2px;display:block;height:6px;margin-top:4px;line-height:100%!important}.mean-nav{float:left;width:100%;margin-top:var(--mobilemenu-container-height)}.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:16px;background:var(--mobilemenu-link-background);text-transform:uppercase}.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-expand{background:var(--mobilemenu-expand-button)!important;color:#000 !important;border:medium none;border-radius:3px;color:#fff;font-weight:700;height:20px!important;margin-top:2px;padding:3px 4px 4px!important;position:absolute;right:10px;text-align:center!important;top:9px;width:23px!important;z-index:2;  line-height: 120%;}.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 {padding: 20px 20px 10px 20px;border-top: 1px solid #707070;font-family: var(--google-heading-font);letter-spacing: 3px;margin: 0;line-height: 120%;font-size:0.9rem; text-transform:uppercase}

/* Cookiebot */
#pageid-195 h1, .CookieDeclaration p, .CookieDeclaration td {color: #000;}

#cboxLoadedContent > div:first-of-type {padding: 20px !important;}
#cboxLoadedContent > div:first-of-type img {border-radius:12px;max-width:100%; height:auto; width:auto}
#cboxLoadedContent {border: 0 !important;background: #fff;border-radius: 20px;border: none;}
#colorbox {padding-bottom: 11px !important;}
#colorbox img {max-width: 100%;height: auto;}
#colorbox, #cboxWrapper, #cboxContent, #cboxLoadedContent {z-index: 999999999998;max-width:90vw;}
#cboxLoadedContent{border: 1px solid #e7e7e7;border-radius: 12px;border:none !important;height:auto !important}}
#colorbox {box-shadow: 10px 20px 30px -20px rgba(0, 0, 0, 0.3);}
#popup_container {z-index:999999999999 !important}
#cboxClose {right: 10px !important; top: 6px;color: #fff !important;border-radius: 60px;background:#fff url(http://demoverkkokauppa.webio.fi/admin/css/colorbox/images/controls.png) 0 0 no-repeat !important}
#cboxContent {margin-top: 0px !important;}
#cboxLoadedContent a {color:#1d1d1b !important; text-decoration:unerline !important;}
#cboxClose {background-position: -48px -23px !important;top: 10px !important; margin-right: 10px !important; width:28px !important; height:28px !important;}
#colorbox{z-index: 300000000 !important;}
@media only screen and (max-width: 480px) {#colorbox{left: 5vw !important;}}
#cboxClose{background-position: -46px -20px !important;top: 30px !important;margin-right: 10px !important;width: 30px !important;height: 30px !important;border: 1px solid #2a2a2a !important;}
#colorbox{z-index: 300000000 !important;}
#cboxClose {background: #02acce none !important;right: 25px !important; border:none !important}
#cboxClose {background-position: -46px -20px !important;top: 50px;margin-right: 10px !important;width: auto !important;height: auto !important;border: none !important;background: #02acce none !important;color: #fff !important;text-indent: unset !important;font-size: 16px !important;font-weight: 700;text-transform: uppercase;text-align: center;line-height: 100%;padding: 10px 30px !important}

@media screen and (max-width:678px) {#cboxLoadedContent > div:first-of-type {padding: 10px !important;}}

/* 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: 1px solid transparent;background: #fff;margin:0 2px}button.tns-nav-active {background: #a8f4ff;}#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;}}
#carousel-col-ow {width: 100%;}.tns-nav {position: absolute;bottom: 20px;justify-content: center;align-items: center;display: flex;width: 100%;}

/* Kampanjalomake */
#lomake206-83-2 {background: rgba(200,247,255,0.4);padding: 1em 2em;border: 1px solid #01afce;margin-top: 1em;}