h1, h2 {
	font-weight: 600;
}

h3, h4, h5 {
	font-weight: 500;
}

body {
	font-weight: 400;
}

h1, h2 {
	font-size: 3.5rem;
}

.arvo-ikoni h2 {
	font-size: 2rem;
}

/*navi*/

.site-header__top {
    padding: 0.5rem 2rem;
}

.site-header__top .container {
	padding: 0; 
}

.site-header__top .btn {
    color: var(--color4) !important;
    font-size: 1rem !important;
	padding-right: 0!important;
	font-weight: 600;
}

.site-header__bottom {
	padding: 1.5rem 2rem;
}

.desktop-main-menu li.level1 > a {
	padding-right: 0;
}

.desktop-main-menu li.current > a {
  	text-decoration: underline !important;
  	text-decoration-thickness: 3px !important;
  	text-underline-offset: 8px;
  	text-decoration-color: var(--color1) !important;
}

nav a, .mobile-menu::after {
	font-weight: 600;
}

.desktop-main-menu {
	text-align: right;
}

.desktop-main-menu a {
	color: var(--color5);
}

.site-header__top nav {
	font-weight: 600;
}

/*napit*/ 

.btn:not(.mobile-menu__bars, .top-buttons .btn) {
	background: var(--color1)!important;
	border-color: var(--color1)!important;
	color: var(--color4)!important;
	font-weight: 600;
}

.btn:not(.mobile-menu__bars, .top-buttons .btn):hover {
	background: var(--color5)!important;
	border-color: var(--color5)!important;
	color: var(--color4)!important;
}

#main-after .btn:not(.mobile-menu__bars, .top-buttons .btn):hover {
	border-color: var(--color1)!important;
}

.btn:not(.mobile-menu__bars, .top-buttons .btn, #mobile-buttons .btn)::after {
	content: " \00BB"; 
    color: var(--color5);
}

.btn:not(.mobile-menu__bars, .top-buttons .btn, #mobile-buttons .btn):hover::after {
    content: " \00BB";
    color: var(--color1);
}

/*content-section*/

.content-section {
	padding: 10rem 8.33%;
}

section .container {
	max-width: none;
}

/*alue spesifit*/

#main-content h1,
#main-content h2,
#main-content h3,
#main-content h4,
#main-content a:hover, 
#main-content a:focus {
    color: var(--color5);
}

#main-after,
#main-before {
	background: var(--color5);
	color: var(--color4);
}

#main-after h2,
#main-after h3,
#main-after h4,
#main-before h2,
#main-before h3,
#main-before h4 {
	color: var(--color4);
}

#content-bottom {
	background: var(--color4);
}

#content-top {
	background: var(--color4);
	color: var(--color5);
}

#content-top h1,
#content-top h2,
#content-top h3,
#content-top h4,
#content-top h5,
#content-top a:hover, 
#content-top a:focus{
	color: var(--color5);
}

#content-top a:not(.btn) {
	color: var(--color1);
}

/*showcase*/

.hero-slider__container {
	padding: 0;
}

.showcase-half-left .hero-slider__item.hero .hero-slider__text-content {
	padding-left: 8.33%;
	padding-top: 12rem;
	padding-bottom: 12rem;
	background: var(--color4);
}

.showcase-half-left .hero-slider__item.hero .hero-slider__text-content h2,
.showcase-half-left .hero-slider__item.hero .hero-slider__text-content p {
	color: var(--color5);
}

.hero-slider__item.hero .hero-slider__text-content h2 {
	position: relative;
}

.juju {
  	display: inline-block;
	color: var(--color1);
	transform-origin: 50% 100%;
  	animation: smoothSwing 4s linear infinite;
}

@keyframes smoothSwing {
  0%   { transform: rotate(0deg); }
  25%  { transform: rotate(5deg); }
  50%  { transform: rotate(0deg); }
  75%  { transform: rotate(-5deg); }
  100% { transform: rotate(0deg); }
}

/*content-top*/

.content-section:has(.boxlist) {
	padding: 0;
}

.content-section:has(.boxlist) .container {
	padding: 0;
	max-width: none;
}

.image-box2 .boxlist {
	max-width: none!important;
}

.image-box2 .boxlist-item {
	margin: 0;
}

.image-box2 .boxlist .boxlist__col {
	flex: 0 0 25%;
	max-width: 25%;
}

.image-box2 .boxlist-item__text-holder {
	padding: 1.5rem 0.25rem;
}

.image-box2 .boxlist-item:hover {
	background: transparent;
	background: var(--color1);
}

.image-box2 .boxlist-item:hover img {
	mix-blend-mode: normal;
    top: 0%;
    width: 100%;
    height: 100%;
    opacity: 0.5;
}

.image-box2 .boxlist-item:hover .btn-switcher-primary {
	background: var(--color5) !important;
    border-color: var(--color5) !important;
}

.image-box2 .boxlist-item:hover .btn-switcher-primary::after {
	color: var(--color4)!important;
}

/*main*/

.contentlist .contentlist__item_img-right .contentlist__item-content {
    padding: 0rem 10% 0rem 0rem!important;
	align-self: center;
}

.contentlist .contentlist__item_img-left .contentlist__item-content {
    padding: 0rem 0rem 0rem 10%!important;
	align-self: center;
}

.contentlist .contentlist__item-title,
.no-showcase h1,
.no-showcase h2 {
	position: relative;
	color: var(--color5)!important;
	padding-bottom: calc(1rem + 3px);
	margin-bottom: 1rem;
}

.contentlist .contentlist__item-title::after {
	content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50%;
    border-bottom: 3px solid var(--color1);
}

.no-showcase h1::after,
.no-showcase h2::after {
	content: "";
    position: absolute;
    bottom: 0;
    left: 25%;
    width: 50%;
    border-bottom: 3px solid var(--color1);
}

.no-showcase {
	padding: 0;
}

.content-section:has(.no-showcase) {
	padding-top: 5rem;
	padding-bottom: 0;
}

.contentlist__item + .contentlist__item {
	padding-top: 3rem;
}

/*arvot*/

.arvot-hedis {
	padding: 0;
}

.editor-content__item-img-holder.icon-holder {
	padding-bottom: 36%;
}

.editor-content__item-img-holder.icon-holder svg {
	position: absolute;
	width: 100%;
	height: 100%;
}

.content-section:has(.arvo-ikoni) {
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.arvo-ikoni .editor-content__item-editor:has(.btn) {
	text-align: center;
}

.row:has(.arvot-hedis) {
	justify-content: center;
}

/*footer*/

.site-footer h3, .site-footer h4 {
	color: var(--color4);
}

.site-footer__menu {
	font-weight: 400;
}

.site-footer__menu li.current > a {
    text-decoration: none !important;
	font-weight: 700;
}

.site-footer {
    background-color: var(--color5);
    padding: 5rem 8.33% 2rem;
	position: relative;
}

.site-footer::after {
	content: '';
	position: absolute;
	height: 3px;
	width: 100%;
	top: 0;
	left: 0;
	background: var(--color4);
}

.site-footer .container {
	max-width: none;
}

.site-footer__logo img {
	width: 100%;
}

.desktop-top-menu li a {
    font-size: 1rem;
}

.footer-row {
	margin: 0 -30px;
}

.copyright p {
	margin-bottom: 0;
}

/*mobiilimenu*/
.mobile-menu__bars {
	padding-right: 0;
	color: var(--color5);
}

.mobile-menu a {
  	color: var(--color5);
}

/*ota yhteyttä*/

.kehys-row {
	margin-left: -30px;
	margin-right: -30px;
}

.noHero {
  background: var(--color5);
  padding-top: 200px;
}

/*mediat*/

@media (min-width: 1500px) {
	html {font-size: 105%;}
}

@media (min-width: 1800px) {
	html {font-size: 110%;}
}

@media (min-width: 2200px) {
	html {font-size: 115%;}
}

@media (max-width: 1399.98px) {
	h1, h2 {
		font-size: 3rem;
	}
	#showcase .hero-slider__item.hero h2 {
		font-size: 3rem!important;
	}
	/*showcase*/
	.showcase-half-left .hero-slider__item.hero .hero-slider__text-content {
  		padding-top: 8rem;
  		padding-bottom: 8rem;
  	}
}

@media (max-width: 991.98px) {
	h1, h2 {
		font-size: 2.5rem;
	}
	#showcase .hero-slider__item.hero h2 {
		font-size: 2.5rem!important;
	}
	/*content-section*/
	.content-section {
		padding: 6rem 8.33%;
	}
	/*showcase*/
	.showcase-half-left .hero-slider__item.hero .hero-slider__text-content {
  		padding-top: 6rem;
  		padding-bottom: 6rem;
  	}
	/*navi*/
	#mobile-buttons {
		top: 20px;
		left: auto;
		right: calc(2rem + 42px + 1rem);
	}
	.site-header__bottom {
  		padding: 1rem 2rem;
	}
	/*boksit*/
	.image-box2 .boxlist .boxlist__col {
  		flex: 0 0 50%;
  		max-width: 50%;
	}
	.image-box2 .boxlist-item {
		padding-bottom: 56.25%;
	}
	/*contentlist*/
	.contentlist .contentlist__item_img-right .contentlist__item-content,
	.contentlist .contentlist__item_img-left .contentlist__item-content{
    	padding: 0rem 0rem 3rem!important;
	}
	.contentlist .contentlist__item:not(.md) .contentlist__item-content {
		padding: 3rem 0 0!important;
	}
	/*arvot*/
	.arvot-hedis {
		margin-bottom: 0;
	}
	.arvot-hedis .editor-content__item-editor > * {
		text-align: left!important;
	}
	.arvo-ikoni {
		flex: 0 0 100%;
		max-width: 100%;
		padding: 0;
		margin-bottom: 0;
	}
	.arvo-ikoni .editor-content__item {
		display: flex;
		flex-flow: row wrap;
	}
	.arvo-ikoni .editor-content__item .icon-holder {
		flex: 0 0 150px;
		max-width: 150px;
	}
	.arvo-ikoni .editor-content__item .editor-content__item-editor {
		flex: 0 0 calc(100% - 150px);
		max-width: calc(100% - 150px);
		align-self: center;
    	padding-left: 2rem;
	}
	.arvo-ikoni .editor-content__item .editor-content__item-editor > * {
		text-align: left!important;
	}
	.editor-content__item-img-holder.icon-holder {
  		padding-bottom: 0%;
	}
	.row:has(.arvot-hedis) {
		gap: 3rem 0;
		margin-bottom: 0;
	}
	.arvo-ikoni .editor-content__item-editor:has(.btn) {
  		text-align: left;
	}
}

@media (max-width: 767.98px) {
	h1, h2 {
		font-size: 2rem;
	}
	#showcase .hero-slider__item.hero h2 {
		font-size: 2rem!important;
	}
	/*content-section*/
	.content-section {
		padding: 4rem 5%;
	}
	.content-section:has(.no-showcase) {
  		padding-top: 3rem;
	}
	/*navi*/
	#mobile-buttons {
    	top: auto;
		bottom: 8px;
	}
	#mobile-buttons a {
    	border-radius: 2rem;
  	}
	.site-header__bottom {
		padding: 1rem 5%;
	}
	/*showcase*/
	.showcase-half-left .hero-slider__item.hero .hero-slider__text-content {
    	padding-top: 4rem;
    	padding-bottom: 4rem;
    	padding-left: 5%;
  	}
}

@media (max-width: 575.98px) {
	h1, h2 {
		font-size: 2rem;
	}
	#showcase .hero-slider__item.hero h2 {
		font-size: 2rem!important;
	}
	/*navi*/
	#mobile-buttons a {
		line-height: 16px;
		padding: 0.375rem 0.75rem;
	}
	#mobile-buttons {
		right: calc(5% + 42px);
	}
	/*showcase*/
	.showcase-half-left .hero-slider__item.hero .hero-slider__text-content {
		background: transparent;
	}
	.showcase-half-left .hero-slider__item.hero .hero-slider__text-content {
		padding: 0 5%;
	}
	.showcase-half-left .hero-slider__text-content_inner {
    	background: RGBA(230, 230, 230, 0.9) !important;
    	padding: 25px 20px 10px;
  	}
	/*arvot*/
	.arvo-ikoni .editor-content__item .icon-holder {
		flex: 0 0 100px;
		max-width: 100px;
	}
	.arvo-ikoni .editor-content__item .editor-content__item-editor {
		flex: 0 0 calc(100% - 100px);
		max-width: calc(100% - 100px);
	}
	.arvo-ikoni .editor-content__item .editor-content__item-editor {
		padding-left: 1rem;
	}
	/*boksit*/
	.slick-list, .slick-slider .slick-track {
    	width: 100%;
	}
	.image-box2 .boxlist .boxlist__col {
		max-width: 100%;
	}
	.slick-dots {
		bottom: 1rem;
		width: auto;
    	left: 50%;
    	transform: translateX(-50%)
	}
	.slick-dots li button {
  		border: 1px solid var(--color1);
  		background-color: var(--color1);
  	}
	.image-box2 .boxlist {
  		margin-bottom: -0.5rem;
	}
}

@media (max-width: 450.98px) {
	h1, h2 {
		font-size: 1.75rem;
	}
	#showcase .hero-slider__item.hero h2 {
		font-size: 1.75rem!important;
	}
	.image-box2 .boxlist-item h2 {
		font-size: 1.25rem;
	}
	/*boksit*/
	.slick-dots li button {
		height: 10px;
		width: 10px;
	}
	.slick-dots {
    	bottom: 0.5rem;
	}
	/*arvot*/
	.arvo-ikoni .editor-content__item .icon-holder {
		flex: 0 0 75px;
		max-width: 75px;
	}
	.arvo-ikoni .editor-content__item .editor-content__item-editor {
		flex: 0 0 calc(100% - 75px);
		max-width: calc(100% - 75px);
	}
	.editor-content__item-img-holder.icon-holder svg {
		height: auto;
	}
}