@charset "UTF-8";
:root {
  --container-max-width: 1140px;
  --container-padding-top: 5rem;
  --container-padding-bottom: 5rem;
  --container-padding-top-smaller: 2.625rem;
  --container-padding-bottom-smaller: 2.625rem;
  --child-border-radius: 0rem;
}

html {
  scroll-behavior: smooth;
}

body {
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6 {
  color: #223839;
  font-family: Montserrat, sans-serif;
  font-style: normal;
  font-weight: 700;
}

h1 {
  font-size: 2.625rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.75rem;
}

h4 {
  font-size: 1.25rem;
}

p {
  font-size: 1rem;
  font-family: Montserrat, sans-serif;
  font-weight: 500;
}

.font-600 {
  font-weight: 600;
}

.font-bold {
  font-weight: 700;
}

@media (min-width: 781px) {
  .text-citation {
    padding-left: 3rem;
  }
}
.text-citation {
  font-size: 1.75rem;
}

.large-text {
  font-size: 1.25rem;
}

.header-top-row {
  padding-top: 0.813rem;
  padding-bottom: 0.813rem;
}

.wp-element-button {
  border-radius: 0px;
  padding: 9px;
  font-size: 14px;
  line-height: 18px;
}

.wp-block-buttons {
  gap: 1.875rem;
}

.article-content-container {
  padding: 5rem;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
  margin-bottom: 5rem;
  margin-top: -2.25rem !important;
}

@media (max-width: 600px) {
  .article-content-container {
    padding: 1.5rem !important;
  }
}
.article-info-container {
  padding-left: 5rem;
  padding-right: 5rem;
}

.article-listing-container {
  padding: 1.25rem;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
}

.wp-block-post-excerpt__more-link {
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  margin-top: 1rem;
  margin-bottom: 0;
  border-radius: 0px;
  padding: 9px;
  font-size: 14px;
  line-height: 18px;
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.wp-block-post-excerpt__more-link:hover {
  transform: translateY(-1px);
  text-decoration: none;
}

.flex-column {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.small-gap {
  gap: 0.75rem !important;
}

.medium-gap {
  gap: 1.5rem;
}

.large-gap {
  gap: 3rem !important;
}

.border-right {
  border-right: 1px solid white;
}

.width-800 {
  max-width: 700px;
}

.tavoitteet {
  padding: 1.625rem;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
}

.flex-row-reverse {
  gap: 1.5rem;
}

@media (max-width: 781px) {
  .flex-row-reverse {
    flex-direction: column-reverse !important;
  }
}
.flex-row-reverse .wp-block-column:has(.wp-block-image img) {
  align-self: center;
}

/*body.single-post :where(.wp-block-group-is-layout-constrained)> :last-child {
    margin-block-end: 2rem;
}*/
footer .wp-block-navigation__container {
  gap: 1rem;
}

.icon-round-bgcolor {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 65px; /* circle size */
  height: 65px;
  padding: 14px; /* space around image */
  box-sizing: border-box;
  background-color: #223839;
  border-radius: 50%;
  flex-shrink: 0;
  margin: 0; /* remove figure default margins */
}

.icon-round-bgcolor img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (min-width: 782px) {
  .icon-text-row {
    border-right: 1px #223839 solid;
  }
}
.icon-text-row {
  gap: 10px;
  min-height: 100px;
  padding-right: 0.25rem;
  padding-left: 0.25rem;
}

.icon-text-row.no-border {
  border-right: 0px !important;
}

.p-numbers {
  font-size: 2.625rem;
  font-weight: 700;
  color: #223839;
}

@media (max-width: 767px) {
  .numbers-grid {
    padding-left: 3rem !important;
  }
}
.numbers-grid {
  gap: 2rem 4rem !important;
  padding-left: 5rem;
}

.numbers-container {
  position: relative;
}

.numbers-container::before {
  content: "";
  display: block;
  width: 30px;
  height: 60px;
  background-image: url("/wp-content/uploads/2026/05/component5.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  left: -40px;
}

.bg-image {
  background-color: #F2F7F7;
  background-image: url("/wp-content/uploads/2026/05/Tampereen-keskusta-Marko-Kallio-Skyfox-DJI_0418.jpg");
  background-blend-mode: overlay;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.hero-bg-image2 {
  background-image: url("/wp-content/uploads/2026/05/Tampere-city-centre-2022-North-Arrow-Films-Jousia-Lappi_1-1.jpg");
  background-position: center;
  background-size: cover;
  min-height: 500px;
}

.hero-text-container {
  max-width: 435px;
  justify-self: end;
}

@media (min-width: 782px) {
  .hero-positioning {
    position: absolute;
    z-index: 10;
    justify-self: center;
  }
}
@media (min-width: 782px) {
  .hero-bg-image2 {
    max-width: 50%;
  }
}
.hallitusohjelmatavoitteet-img {
  background: url("/wp-content/uploads/2026/05/pk_julkaisu.jpg");
  max-width: 50%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

@media (min-width: 1160px) {
  .left-text-container {
    max-width: calc(var(--container-max-width) / 2);
    padding-top: var(--container-padding-top);
    padding-bottom: var(--container-padding-bottom);
  }
}
@media (max-width: 1159px) and (min-width: 782px) {
  .left-text-container {
    max-width: 45%;
  }
}
@media (max-width: 781px) {
  .julkaisu-nosto {
    justify-content: center !important;
  }
  .left-text-container {
    max-width: 85%;
  }
}
.left-text-container {
  padding-top: var(--container-padding-top);
  padding-bottom: var(--container-padding-bottom);
}

@media (max-width: 1099px) {
  .left-text-container {
    padding-top: var(--container-padding-top-smaller) !important;
    padding-bottom: var(--container-padding-bottom-smaller) !important;
  }
  .flex-column.left-text-container {
    gap: 0.5rem !important;
  }
}
.julkaisu-nosto {
  justify-content: end;
}

.no-padding-top {
  padding-top: 0px !important;
}

.padding-bottom-gap {
  padding-bottom: 1.5rem !important;
}

.extra-padding-bottom {
  padding-bottom: var(--container-padding-bottom-smaller) !important;
}

.wp-block-gallery.has-nested-images.columns-8 {
  display: grid !important;
  grid-template-columns: repeat(8, 1fr) !important;
  gap: 1rem;
}

.wp-block-gallery.has-nested-images.columns-8 .wp-block-image {
  margin: 0;
}

.single-post .entry-content {
  padding-left: 0px;
  padding-right: 0px;
}

.single-post .entry-content p, .single-post .entry-content h2, .single-post .entry-content h3, .single-post .entry-content h4 {
  padding-bottom: 1rem;
}

.wp-block-button__link {
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.wp-block-button__link:hover {
  transform: translateY(-1px);
}

/* Core block styles */
.bg-header,
.bg-primary,
.has-header-background-color,
.has-primary-background-color {
  color: #FFFFFF;
}
.bg-header h1,
.bg-header h2,
.bg-header h3,
.bg-header h4,
.bg-header h5,
.bg-header h6,
.bg-primary h1,
.bg-primary h2,
.bg-primary h3,
.bg-primary h4,
.bg-primary h5,
.bg-primary h6,
.has-header-background-color h1,
.has-header-background-color h2,
.has-header-background-color h3,
.has-header-background-color h4,
.has-header-background-color h5,
.has-header-background-color h6,
.has-primary-background-color h1,
.has-primary-background-color h2,
.has-primary-background-color h3,
.has-primary-background-color h4,
.has-primary-background-color h5,
.has-primary-background-color h6 {
  color: #D6E6E6;
}
.bg-header .wp-block-button__link,
.bg-primary .wp-block-button__link,
.has-header-background-color .wp-block-button__link,
.has-primary-background-color .wp-block-button__link {
  background-color: #0E2122;
}
.bg-header nav,
.bg-primary nav,
.has-header-background-color nav,
.has-primary-background-color nav {
  color: #FFFFFF;
  gap: 24px;
  font-weight: 400;
}

.has-white-background-color {
  color: #0B0B0B;
}
.has-white-background-color h1,
.has-white-background-color h2,
.has-white-background-color h3,
.has-white-background-color h4,
.has-white-background-color h5,
.has-white-background-color h6 {
  color: #223839;
}

.has-light-background-color p {
  color: #223839 !important;
}

/*
.wp-block {
    ul {
        margin: 0 0 0.5rem 0;
        padding: 0;

        li {
            display: block;
            position: relative;
            margin: 0 0 0.5rem 0;
            padding: 0 0 0 1rem;
        }
    }
}
*/
div.is-desktop-preview > .wp-block-columns,
div.main > .wp-block-columns {
  max-width: var(--container-max-width);
  margin-left: auto;
  margin-right: auto;
  padding-top: var(--container-padding-top);
  padding-bottom: var(--container-padding-bottom);
}
@media (max-width: 991px) {
  div.is-desktop-preview > .wp-block-columns,
  div.main > .wp-block-columns {
    padding-top: var(--container-padding-top-smaller);
    padding-bottom: var(--container-padding-bottom-smaller);
  }
}
div.is-desktop-preview > .wp-block-columns,
div.main > .wp-block-columns {
  margin-bottom: 0;
}
div.is-desktop-preview > .wp-block-cover,
div.main > .wp-block-cover {
  padding-top: var(--container-padding-top);
  padding-bottom: var(--container-padding-bottom);
}
div.is-desktop-preview > .wp-block-cover .wp-block-columns,
div.main > .wp-block-cover .wp-block-columns {
  margin-bottom: 0;
}
div.is-desktop-preview > .wp-block-group,
div.main > .wp-block-group {
  padding-top: var(--container-padding-top);
  padding-bottom: var(--container-padding-bottom);
}
div.is-desktop-preview > .wp-block-group .wp-block-columns,
div.main > .wp-block-group .wp-block-columns {
  margin-bottom: 0;
}
div.is-desktop-preview > .wp-block-group.is-content-justification-center,
div.main > .wp-block-group.is-content-justification-center {
  text-align: center;
}
div.is-desktop-preview > .wp-block-group p:last-child,
div.main > .wp-block-group p:last-child {
  margin-bottom: 0;
}
div.is-desktop-preview > .wp-block-group.no-paddings,
div.main > .wp-block-group.no-paddings {
  padding: 0px;
}
div.is-desktop-preview > .wp-block-group.small-paddings,
div.main > .wp-block-group.small-paddings {
  padding-top: var(--container-padding-top-smaller);
  padding-bottom: var(--container-padding-bottom-smaller);
}
div.is-desktop-preview > .wp-block-group.overflow-hidden,
div.main > .wp-block-group.overflow-hidden {
  overflow: hidden !important;
}
div.is-desktop-preview .wp-block-columns.is-style-flex-row-reverse,
div.main .wp-block-columns.is-style-flex-row-reverse {
  flex-direction: row-reverse;
}
div.is-desktop-preview .wp-block-columns .wp-block-column p:last-child,
div.main .wp-block-columns .wp-block-column p:last-child {
  margin-bottom: 0;
}
div.is-desktop-preview .wp-block-columns .wp-block-column .wp-block-image:last-child,
div.main .wp-block-columns .wp-block-column .wp-block-image:last-child {
  margin: 0;
}
div.is-desktop-preview .wp-block-columns .wp-block-column.has-background,
div.main .wp-block-columns .wp-block-column.has-background {
  padding: 2rem;
}
div.is-desktop-preview .wp-block-columns.no-paddings,
div.main .wp-block-columns.no-paddings {
  padding: 0px;
}
div.is-desktop-preview .wp-block-columns.small-paddings,
div.main .wp-block-columns.small-paddings {
  padding-top: var(--container-padding-top-smaller);
  padding-bottom: var(--container-padding-bottom-smaller);
}
div.is-desktop-preview .wp-block-columns.overflow-hidden,
div.main .wp-block-columns.overflow-hidden {
  overflow: hidden !important;
}
div.is-desktop-preview .child-smaller-paddings,
div.main .child-smaller-paddings {
  padding-top: var(--container-padding-top-smaller) !important;
  padding-bottom: var(--container-padding-bottom-smaller) !important;
}
@media (max-width: 1199px) {
  div.is-desktop-preview > .wp-block-columns,
  div.is-desktop-preview > .wp-block-cover,
  div.is-desktop-preview > .wp-block-group,
  div.main > .wp-block-columns,
  div.main > .wp-block-cover,
  div.main > .wp-block-group {
    --bs-gutter-x: 1.5rem;
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    padding-right: calc(var(--bs-gutter-x) * 0.5);
  }
}
div.is-desktop-preview .no-padding-top,
div.main .no-padding-top {
  padding-top: 0px;
}
div.is-desktop-preview .no-padding-bottom,
div.main .no-padding-bottom {
  padding-bottom: 0px;
}
@media (min-width: 1200px) {
  div.is-desktop-preview h2.is-style-narrow,
  div.is-desktop-preview h3.is-style-narrow,
  div.is-desktop-preview h4.is-style-narrow,
  div.is-desktop-preview h5.is-style-narrow,
  div.is-desktop-preview h6.is-style-narrow,
  div.main h2.is-style-narrow,
  div.main h3.is-style-narrow,
  div.main h4.is-style-narrow,
  div.main h5.is-style-narrow,
  div.main h6.is-style-narrow {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
  }
  div.is-desktop-preview p.is-style-narrow,
  div.main p.is-style-narrow {
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
  }
}
div.is-desktop-preview .wp-block-buttons,
div.main .wp-block-buttons {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.header-top-row, .header-content {
  --bs-gutter-x: 1.5rem;
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  padding-right: calc(var(--bs-gutter-x) * 0.5);
}

.wp-block-columns img {
  border-radius: var(--child-border-radius);
}

blockquote.wp-block-quote {
  margin-bottom: 0;
  /*.core-block-wrapper {
      //margin-top: 0 !important;
  }*/
}
blockquote.wp-block-quote .wp-block-core-paragraph {
  width: 100% !important;
  padding: 0 !important;
}
blockquote.wp-block-quote {
  border: 0;
  font-size: 20px;
  color: #223839;
  padding: 30px 30px 15px 80px;
  position: relative;
}
blockquote.wp-block-quote:before {
  position: absolute;
  top: 50px;
  left: 20px;
  content: "“";
  font-size: 120px;
  line-height: 30px;
  font-style: normal;
}

a:where(:not(.wp-element-button)) {
  text-decoration: none;
}

a:where(:not(.wp-element-button)):hover {
  text-decoration: underline;
}

.is-layout-grid {
  gap: 1.5rem;
}

.hero-container {
  position: relative;
}
.hero-container .svg-curve-hero {
  position: relative;
  z-index: 2;
}
.hero-container .svg-curve-hero::after {
  content: "";
  position: absolute;
  top: 0;
  right: -166px;
  width: 100%;
  height: 100%;
  background-image: url("/wp-content/uploads/2026/05/hero-elementti.svg");
  background-repeat: no-repeat;
  background-position: center right;
  z-index: -1;
}

.edunvalvontaryhma-logos {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 20px;
  max-width: 100vw !important;
  justify-self: center;
}

@media (max-width: 950px) {
  .edunvalvontaryhma-logos {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}
@media (max-width: 600px) {
  .edunvalvontaryhma-logos {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
