body {
  flex-direction: column;
  justify-content: space-between;
  min-height: 100vh;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  display: flex;
  margin: 0;
  padding: 0;
  line-height: 1.4;
}

footer .container {
  display: flex;
  justify-content: space-between;
  padding: 0 1em;
}

h2 {
  margin-top: 0;
}

a {
  color: #337ab7;
  text-decoration: none;	
}

ul, ol {
  padding-inline-start: 1.5em;
}

input {
  box-sizing: border-box;
}

.container {
  max-width: 1200px;
  margin: auto;
  padding: 0 1em;
}

/* Header */
header img {
  display: block;
  box-sizing: border-box;
  padding: 1em;
}

.main.container {
  display: flex;
  flex-flow: row nowrap;
  margin-top: 1em;
}

#maincontent, 
#leftcol, 
#rightcol {
  box-sizing: border-box;
}

@media (max-width: 799px) {
  .main.container {
    flex-flow: column nowrap;
  }
  #leftcol {
    order: 1;
    width: 100%;
    margin: 0;
  }
  #maincontent {
    order: 3;
  }
  #rightcol {
    order: 2;
    width: 100%;
    margin: 0;
  }
}
@media (min-width: 800px) {
  #maincontent {
    flex: 1;
  }
  #leftcol, 
  #rightcol {
    width: 210px;
  }
  #leftcol {
    margin-right: 1em;
  }
  #rightcol {
    margin-left: 1em;
  }
}

/* Left sidebar */
.blog-items {
  margin-bottom: 2em;
}
#leftcol > *, 
#rightcol > *, 
.blog-item {
  margin: 0 0 1em 0;
  padding: .75em;
  background-color: beige;
  border: 1px solid #A3A392;
  border-radius: 6px;
  box-shadow: rgba(0, 0, 0, 0.3) 0px 3px 9px;
  position: relative;
}
.blog-item span {
  display: inline-block;
}
.blog-item img {
  display: block;
  max-width: 100%;
  height: auto;
}
.blog-item video {
  width: 100%;
  max-width: 400px;
  height: auto;
}
#leftcol .mod-menu.nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  grid-gap: .5em;
}
#leftcol img {
  display: block;
  width: 220px;
  max-width: 100%;
  margin: 0 auto;
}
.mod-list a {
  display: block;
  margin: .5em .5em;
}
.latestnews::before {
  content: "Uusimmat artikkelit";
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1.2em;
  font-weight: bold;
}
.latestnews a {
  padding-inline-start: 1.5em;
}
.latestnews a::before {
  content: "\f0f6";
  font-family: FontAwesome;
  display: inline-block;
  margin-left: -1.5em;
  width: 1.2em;
  color: #333;
}
.awesomplete {
  width: 100%;
}
.js-finder-search-query {
  width: 100%;
  margin-top: .5em;
}
#leftcol form > label {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1.2em;
  font-weight: bold;
}

/* Right sidebar */

.mod-login::before {
  content: "Kirjautuminen";
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1.2em;
  font-weight: bold;
}
.mod-login .form-group {
  margin-top: 1em;
}
.mod-login .form-group > .input-group > :not(input), 
.plg_system_webauthn_login_button {
  display: none !important;
}
.mod-login input:not([type="checkbox"]) {
  width: 100%;
}
.mod-login button, 
.mod-login-logout button {
  display: block;
  margin: auto;
}
.mod-login .mod-login__options {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
  margin-bottom: 0;
}
.mod-login .mod-login__options li {
  margin: 0 .5em;
}
.login-greeting {
  margin-bottom: 1em;
  text-align: center;
}


.items-more ul, 
.items-more ol, 
.mod-list, 
.list-unstyled:not(.mod-menu__sub), 
.pagination, 
.weblinks {
  list-style-type: none;
  padding: 0;
}

/* Lisää artikkeleita */
.items-more a {
  display: block;
  padding: .5em 0;
}
.com-content-blog__links::before {
  content: "Lisää artikkeleita";
  display: block;
  width: 100%;
  font-size: 1.2em;
  font-weight: bold;
}
.com-content-blog__links li {
  padding-inline-start: 1.5em;
}
.com-content-blog__links a::before {
  content: "\f0f6";
  font-family: FontAwesome;
  display: inline-block;
  margin-left: -1.5em;
  width: 1.2em;
  color: #333;
}


/* Pagination */
.w-100 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin-bottom: 2em;
}
.counter {
  order: 2;
  border: 1px solid #000;
  border-radius: 4px;
  color: #000;
  background-color: beige;
  margin: .5em 0;
  padding: 6px 12px !important;
}
.pagination__wrapper {
  order: 1;
  margin-right: .5em;
}
.pagination {
  margin: 0;
}
.pagination li {
  display: inline-block;
  margin: .5em 0;
  font-size: 14px;
}
.pagination li > a, 
.pagination li > span {
  display: block;
  border: 1px solid #2e6da4;
  border-radius: 4px;
  color: #fff;
  background-color: #337ab7;
  padding: 6px 10px;
  text-transform: uppercase;
}
.pagination li > span {
  background-color: #ccc;
  border-color: #ccc;
}
.pagination li > a:hover, 
.pagination li > a:focus {
  color: #fff;
  background-color: #286090 !important;
  border-color: #122b40;
}
.icon-angle-double-left {
  font-size: 0;
  padding: 0;
}
.icon-angle-double-left::before {
  content: "<<";
  font-size: 14px;
}
.icon-angle-left {
  font-size: 0;
  padding: 0;
}
.icon-angle-left::before {
  content: "<";
  font-size: 14px;
}
.icon-angle-right {
  font-size: 0;
  padding: 0;
}
.icon-angle-right::before {
  content: ">";
  font-size: 14px;
}
.icon-angle-double-right {
  font-size: 0;
  padding: 0;
}
.icon-angle-double-right::before {
  content: ">>";
  font-size: 14px;
}

/* Kuvat-sivu external links */
.weblinks a {
  display: block;
  padding: .5em 0;
}

/* Button */
.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  padding: 6px 12px;
  font-size: 14px !important;
  line-height: 1.42857143;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  background-image: none;
  outline: 0;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #286090;
  background-image: none;
  border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}

/* Poista 'Kuvat ja linkit' välilehti artikkelin muokkausnäkymästä */
joomla-tab button[aria-controls=images][role=tab] {
  display: none;
}
/* Piilota JCE mainos */
.mceBranding {
  display: none !important;
}


main {
  padding: 20px;
}
