.border-top {
  border-top: 1px solid #cccccc; }

  .bg-lightergray {
    background-color: #efefef; }

    .bg-black {
      background-color: #333; }

      .bg-green {
        background-color: #83C543; }

        .bg-darkgreen {
          background-color: #5DA31A; }

          .bg-darkergreen {
            background-color: #3E8000; }

            body {
              font-family: 'Open Sans', sans-serif;
              font-weight: 400;
              color: #000; }

              img {
                border: 0; }

                h1, h2, h3, h4, h5, h6 {
                  font-family: inherit;
                  font-weight: 700;
                  color: #000;
                  line-height: 1.2; }

                  H1 {
                    font-size: 2.5rem;
                    margin-bottom: 0.5em;
                    margin-top: 2rem; }

                    h2 {
                      font-size: 1.6rem; }

                      h3 {
                        font-size: 1.4rem; }

                        h4 {
                          font-size: 1.2rem; }

                          h5 {
                            font-size: 1rem;
                            font-weight: 700; }

                            h6 {
                              font-size: 1rem; }

                              p {
                                font-weight: inherit;
                                line-height: 1.5; }

                                strong {
                                  font-weight: 700; }

                                  blockquote {
                                    margin: 3rem 6rem 3rem;
                                    padding: 0;
                                    color: #2F8261;
                                    font-size: 1.5rem;
                                    line-height: 1.2;
                                    border-left: none;
                                    font-weight: 700; }
                                    blockquote p {
                                      color: inherit;
                                      font-size: inherit;
                                      font-family: inherit;
                                      line-height: inherit; }

a {
  font-weight: 700;
  color: #2F8261;
  text-decoration: underline; }
  a:hover, a:focus {
    color: #00AE8D; }
    .linkbutton a {
      text-decoration: none; }

h1 a, a h1, h2 a, a h2, h3 a, a h3, h4 a, a h4, h5 a, a h5, h6 a, a h6 {
  color: inherit;
  text-decoration: none;
  font-weight: inherit; }

table thead tr {
  background-color: transparent; }
  table thead th {
    text-align: left; }
table tbody tr:nth-child(2n) {
  background-color: transparent; }
  table tbody tr:nth-child(odd) {
    background-color: #efefef; }
table.coursetable tbody tr:nth-child(2n) {
  background-color: transparent; }
  table.coursetable tbody tr:nth-child(odd) {
    background-color: #efefef; }
    table.coursetable tbody tr.active {
      background-color: #2F8261;
      color: white; }
      table.coursetable tbody tr.active a {
        color: white; }
        table.coursetable tbody tr.active a:hover {
          color: white; }
table.coursecalendar {
  font-size: 12px; }
  table.coursecalendar tbody, table.coursecalendar thead {
    border: 1px solid #cccccc; }
    table.coursecalendar th, table.coursecalendar td {
      text-align: center;
      padding: 0.5rem 0.3rem;
      width: 60px; }
      table.coursecalendar th {
        text-transform: lowercase; }
        table.coursecalendar tbody tr:nth-child(2n),
        table.coursecalendar tbody tr:nth-child(odd) {
          background-color: transparent; }
          table.coursecalendar tbody tr.odd {
            background-color: transparent; }
            table.coursecalendar tbody tr.even {
              background-color: #efefef; }
              table.coursecalendar tbody tr.active {
                background-color: #2F8261;
                color: white; }
                table.coursecalendar tbody tr.active a {
                  color: white; }
                  table.coursecalendar tbody tr.active a:hover {
                    color: white; }
        table.coursecalendar tbody tr td {
          border-right: 1px solid #cccccc;
          border-left: 1px solid #cccccc; }
  table.coursecalendar .coursecat th {
    text-transform: capitalize;
    text-align: left;
    background-color: #ccc; }
    table.coursecalendar .coursecat th:hover {
      color: #000;
      background-color: #ccc; }
  table.coursecalendar .coursetitle {
    text-transform: initial;
    width: 20rem;
    text-align: left;
    padding: 0.5rem; }
    table.coursecalendar .place {
      width: 5rem;
      text-transform: initial; }

form .label {
  color: inherit;
  font-size: inherit;
  background-color: transparent;
  font-weight: 600;
  margin-bottom: 0px;
  padding: 0; }
  form textarea {
    height: auto; }
    form select {
      height: auto;
      padding: 0.375rem; }
      form input[type="submit"] {
        border: solid 0;
        cursor: pointer;
        font-family: 'Open Sans', sans-serif;
        font-weight: 700;
        line-height: normal;
        margin: 0px 0px 1.25rem;
        position: relative;
        text-decoration: none;
        text-align: center;
        border-radius: 0px;
        display: inline-block;
        padding: 0.7rem 10% 0.7625rem;
        font-size: 1rem;
        text-transform: uppercase;
        background-color: #2F8261;
        border-color: #2F8261;
        color: #FFF;
        -moz-transition: background-color 300ms ease-out 0s;
        -o-transition: background-color 300ms ease-out 0s;
        -webkit-transition: background-color 300ms ease-out 0s;
        transition: background-color 300ms ease-out 0s; }
        form input[type="submit"]:hover, form input[type="submit"]:focus,
        form input[type="submit"]:active {
          background-color: #00AE8D; }
form input.err {
  border-right: 3px solid red; }

.LimeForm .row {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem; }

.LimeForm .required.err, .signupform .required.err {
  border: 1px solid #9c1040 !important; }
  .LimeForm .field-radio, .signupform .field-radio {
    margin-bottom: 1rem; }
    .LimeForm .field-radio .label, .signupform .field-radio .label {
      margin-bottom: 0.5rem; }
      .LimeForm .field-radio input[type="radio"],
      .signupform .field-radio input[type="radio"] {
        margin-right: 0.75rem; }
.LimeForm .field-displayedtext .label, .signupform .field-displayedtext .label {
  font-size: 1.5rem;
  width: 100%;
  display: block;
  margin-top: 2rem;
  margin-bottom: 1rem;
  font-weight: 700; }
  .LimeForm .field-displayedtext .ftext[type="text"],
  .signupform .field-displayedtext .ftext[type="text"] {
    height: auto;
    border: 0px none;
    box-shadow: none;
    padding: 0;
    background-color: transparent; }
.LimeForm .separator, .signupform .separator {
  margin-left: -16px;
  margin-right: -16px;
  border-top: 1px solid #cccccc;
  margin-top: 2rem;
  padding: 0 20px; }

.signupform {
  padding: 16px;
  background-color: #efefef; }
  .signupform .coursetimeandplace {
    font-size: 1.1em; }
    .signupform .coursetimeandplace .fa-clock-o {
      margin-right: 0.2rem; }
      .signupform .coursetimeandplace .fa-map-marker {
        margin-right: 0.2rem;
        margin-left: 1rem; }
  .signupform .txt-required::after {
    content: "*";
    color: #9c1040; }
    .signupform input.missing[data-required="yes"],
    .signupform input.missing [data-conditional-required="yes"] {
      color: #fff;
      border-right: 4px solid red; }
    .signupform input[data-required="yes"]:focus,
    .signupform input.untouched[data-required="yes"],
    .signupform input[data-conditional-required="yes"]:focus,
    .signupform input.untouched[data-conditional-required="yes"] {
      background: #fff;
      color: #000; }
  .signupform .members {
    padding-bottom: 1rem; }
    .signupform .members .row {
      padding: 0.5rem; }
      .signupform .members .row .name .checkbox {
        padding: 0.5rem 0; }
        .signupform .members .row .name .checkbox [type=checkbox] {
          margin-bottom: 0; }
      .signupform .members .row select {
        margin-bottom: 0; }
    .signupform .members .even {
      background-color: #DADADA; }
  .signupform .partisipants + .partisipants {
    padding-top: 1rem;
    border-top: 1px solid #cccccc; }
    .signupform .partisipants input, .signupform .partisipants select {
      display: inline-block;
      width: 32.9%; }

.linkbutton, .button {
  font-size: 1rem;
  line-height: normal;
  padding: 0.7rem 10% 0.7625rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 700;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  background-color: #2F8261;
  color: #fff; }
  a .linkbutton, .linkbutton a, a .button, .button a {
    color: #fff;
    text-decoration: none;
    font-weight: 400; }
    .linkbutton:hover, .linkbutton a:hover, .linkbutton:focus, .linkbutton a:focus,
    .linkbutton:active, .linkbutton a:active, .button:hover, .button a:hover,
    .button:focus, .button a:focus, .button:active, .button a:active {
      background-color: #00AE8D; }
      .linkbutton.blue, .button.blue {
        background-color: #00529C; }
        .linkbutton.blue:hover, .linkbutton.blue a:hover, .linkbutton.blue:focus,
        .linkbutton.blue a:focus, .linkbutton.blue:active, .linkbutton.blue a:active,
        .button.blue:hover, .button.blue a:hover, .button.blue:focus, .button.blue a:focus,
        .button.blue:active, .button.blue a:active {
          background-color: #00AE8D; }

.padd2 {
  padding-bottom: 2rem; }

  figure {
    margin: 0;
    position: relative; }
    figure figcaption {
      font-size: 0.9rem;
      width: 100%;
      padding: 0.75rem 1rem;
      left: 0;
      bottom: 0;
      background: rgba(255, 255, 255, 0.5);
      color: #000;
      line-height: 1;
      margin-bottom: 0;
      position: absolute; }
      figure figcaption p {
        margin-bottom: 0; }

.image.rounded img {
  border-radius: 50%;
  padding: 3px;
  margin-bottom: 1rem; }

  .hidden-content {
    display: none; }

    .content-toggle {
      padding-top: 2rem;
      padding-bottom: 2rem; }
      .content-toggle .toggle-button {
        cursor: pointer;
        height: 3.8rem;
        position: relative;
        overflow: hidden; }
        .content-toggle .toggle-button.close {
          display: none; }
          .content-toggle .toggle-button.big {
            height: 4.1rem; }
            .content-toggle .toggle-button:after {
              font-family: 'FontAwesome';
              content: '';
              color: #fff;
              font-weight: 400;
              background-color: #2F8261;
              line-height: normal;
              font-size: 1.8em;
              height: 4rem;
              display: block;
              padding: 1rem 1.5625rem 0.8rem;
              position: absolute;
              top: 0;
              right: 0; }
              .content-toggle .toggle-button.big:after {
                height: 4.1rem; }
                .content-toggle .toggle-button.open:after {
                  content: ''; }

.tabs {
  background: none;
  border: none;
  margin-top: 4rem;
  margin-bottom: 0; }
  .tabs .tabs-title > a {
    display: block;
    line-height: inherit;
    font-size: inherit;
    color: #2F8261;
    font-size: 1.2rem; }
    .tabs .tabs-title > a:hover {
      color: #000;
      background: none; }
      .tabs .tabs-title > a:focus {
        background-color: transparent; }
  .tabs .tabs-title:first-child {
    border-left: 0; }
  .tabs .tabs-title.is-active {
    background-color: #efefef; }
    .tabs .tabs-title.is-active > a {
      color: #000;
      text-decoration: none; }

.tabs-content {
  background-color: #efefef;
  border: none;
  margin-bottom: 2rem; }
  .tabs-content .tabs-panel {
    padding: 1.5rem; }

.flexslider {
  padding: 0;
  margin: 0;
  background: transparent;
  border: none;
  position: relative;
  border-radius: 0;
  box-shadow: none; }
  .flexslider .slides > li {
    position: relative; }

.flex-caption {
  width: 100%;
  min-height: 50px;
  padding: 12px 3rem 12px 1rem;
  left: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.5);
  color: #000;
  font-size: 1rem;
  line-height: 1;
  margin-bottom: 0;
  position: absolute; }
  .flex-caption p {
    margin-bottom: 0; }

.flex-direction-nav .flex-prev {
  left: 0;
  text-align: center; }
  .flex-direction-nav .flex-next {
    right: 0;
    text-align: center; }
    .flex-direction-nav a {
      opacity: 1;
      background-color: #fff;
      color: #000;
      text-shadow: none;
      font-size: 1.5rem;
      width: 50px;
      height: 50px;
      margin: -25px 0 0; }
      .flex-direction-nav a::before {
        content: '';
        color: #000;
        display: inline-block;
        font-family: FontAwesome;
        font-style: normal;
        font-weight: normal;
        line-height: 1;
        font-size-adjust: none;
        font-stretch: normal;
        font-feature-settings: normal;
        font-language-override: normal;
        font-kerning: auto;
        font-synthesis: weight style;
        font-variant: normal;
        font-size: inherit;
        text-rendering: auto;
        line-height: 50px; }
        .flex-direction-nav a.flex-next::before {
          content: ''; }

.flex-control-nav {
  width: auto;
  position: absolute;
  bottom: 0;
  right: 0; }

  .flex-control-paging {
    background: #fff;
    width: 50px;
    height: 50px; }
    .flex-control-paging li {
      margin: 0;
      padding: 12px 0; }
      .flex-control-paging li a {
        width: auto;
        height: auto;
        display: block;
        background: #fff;
        text-indent: 0;
        color: #000;
        text-decoration: none;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        -o-box-shadow: none;
        box-shadow: none;
        border-radius: 0;
        display: none; }
        .flex-control-paging li a.flex-active {
          background: #fff;
          display: inline-block; }
          .flex-control-paging li a:hover {
            background: #fff; }
      .flex-control-paging li:last-of-type a {
        display: inline-block; }
        .flex-control-paging li:last-of-type a::before {
          content: '/'; }

.flexslider:hover .flex-direction-nav .flex-prev {
  opacity: 1;
  left: 0; }
  .flexslider:hover .flex-direction-nav .flex-next {
    opacity: 1;
    right: 0; }

nav.top-nav {
  position: fixed;
  right: 0;
  top: 0;
  display: block;
  height: 100%;
  right: -104%;
  background-color: #2F8261;
  color: #fff;
  font-weight: 700;
  font-size: 1.2rem;
  z-index: 999;
  width: 500px;
  -moz-transition: right 350ms ease-out;
  -o-transition: right 350ms ease-out;
  -webkit-transition: right 350ms ease-out;
  transition: right 350ms ease-out;
  overflow-y: auto;
  overflow-x: hidden; }
  nav.top-nav .close {
    cursor: pointer;
    margin: 1.6rem 0 1rem;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    color: #fff; }
    nav.top-nav.active {
      right: 0 !important; }
      nav.top-nav ul {
        margin: 1rem 0 1rem;
        width: 100%;
        clear: both;
        float: left;
        font-size: 1.4rem; }
        nav.top-nav ul li {
          list-style: none;
          margin-left: 1rem;
          padding: 0;
          display: block;
          float: left;
          clear: both;
          padding: 0.5rem 0; }
          nav.top-nav ul li a {
            padding: 0.2rem 0;
            font-weight: 700;
            color: #fff;
            text-decoration: none;
            border-bottom: 2px solid transparent;
            text-transform: uppercase;
            clear: both;
            float: left; }
            nav.top-nav ul li.active > a, nav.top-nav ul li a:hover {
              border-bottom: 2px solid white;
              color: white; }
              nav.top-nav ul li ul {
                width: auto;
                margin: 0 0 1rem 2rem;
                font-size: 1.1rem; }
                nav.top-nav ul li ul li a {
                  text-transform: none; }
nav.sub-nav {
  background-color: #efefef;
  padding: 1rem;
  margin-bottom: 2rem;
  width: 100%;
  float: left; }
  nav.sub-nav ul {
    margin: 0;
    width: 100%;
    clear: both;
    float: left;
    font-size: 1.2rem; }
    nav.sub-nav ul li {
      list-style: none;
      padding: 0;
      display: block;
      float: left;
      clear: both;
      padding: 0.5rem 0; }
      nav.sub-nav ul li a {
        font-weight: 700;
        clear: both;
        float: left; }
nav .bottom-nav ul {
  margin: 0 0 2rem; }
  nav .bottom-nav ul li {
    list-style: none;
    margin-right: 1rem; }
    nav .bottom-nav ul li a {
      padding: 0 0 0.5rem;
      font-weight: 700;
      width: 100%;
      display: block;
      text-decoration: none;
      text-transform: uppercase; }
      nav .bottom-nav ul li a:hover {
        text-decoration: underline; }
    nav .bottom-nav ul li ul.submenu li {
      float: none; }
      nav .bottom-nav ul li ul.submenu li a {
        text-transform: none;
        font-weight: 400;
        line-height: 1.2;
        padding-bottom: 1rem; }
    nav .bottom-nav ul li.li-hjem, nav .bottom-nav ul li.li-english {
      display: none; }
nav .bottom-nav > ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap; }
  nav .bottom-nav > ul > li {
    margin-right: 3rem; }

header.header {
  position: fixed;
  width: 100%;
  z-index: 100;
  height: 75px;
  -moz-transition: background 300ms ease-out 0s;
  -o-transition: background 300ms ease-out 0s;
  -webkit-transition: background 300ms ease-out 0s;
  transition: background 300ms ease-out 0s;
  color: #000;
  background-color: #fff;
  box-shadow: 0 -2px 9px rgba(0, 0, 0, 0.5); }
  header.header a {
    color: #000; }
    .templ-startpage header.header {
      background-color: transparent;
      color: #fff;
      box-shadow: none; }
      .templ-startpage header.header a {
        color: #fff; }
  header.header .logo {
    line-height: 1;
    font-weight: bold;
    color: inherit;
    cursor: pointer;
    margin: 1rem 0; }
    header.header .logo img {
      max-height: 90px;
      box-shadow: 0 3px 5px 0px rgba(0, 0, 0, 0.2); }
  header.header .topcontact {
    font-size: 1.3rem;
    font-weight: 700;
    margin: 1.6rem 0 1rem;
    line-height: 1.2;
    text-transform: uppercase; }
    header.header .topcontact a {
      text-decoration: none; }
      header.header .topcontact .minside {
        text-align: center; }
  header.header .menu-toggler {
    text-align: right;
    cursor: pointer;
    margin: 1.6rem 0 1rem;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.2; }
    header.header.makewhite {
      background-color: #fff;
      color: #000;
      box-shadow: 0 -2px 9px rgba(0, 0, 0, 0.5); }
      header.header.makewhite a {
        color: #000; }

nav .breadcrumbs {
  background-color: transparent;
  border: none;
  margin-top: 0.2rem;
  margin-bottom: 0;
  padding-left: 0;
  float: right; }
  nav .breadcrumbs > * {
    color: inherit;
    font-size: 0.9rem;
    text-transform: none;
    margin-bottom: 0.2rem; }
    nav .breadcrumbs > * a {
      color: #2F8261; }
  nav .breadcrumbs > .current a {
    text-decoration: none; }

section.main {
  height: auto;
  min-height: 30em;
  padding-top: 75px; }
  .templ-article section.main {
    padding-top: 73px; }
    .templ-startpage section.main {
      padding-top: 0; }
      section.main .linklist {
        list-style: none;
        margin-left: 0; }
        section.main .linklist li {
          line-height: 1.4;
          margin-bottom: 0.75em; }
          section.main .linklist li .date {
            font-size: 0.8em; }
  section.main .teaser-list {
    margin-top: 2rem;
    margin-bottom: 2rem; }
    section.main .teaser-list > .row > .column {
      padding-bottom: 2rem; }
      section.main .teaser-list > .row > .column .image {
        margin-bottom: 1rem; }
        section.main .teaser-list > .row > .column .date {
          font-style: italic;
          margin-bottom: 1rem; }
          section.main .teaser-list > .row > .column.person .image {
            max-width: 200px; }
            section.main .teaser-list > .row > .column.person .text {
              margin-top: 0.5rem; }
  section.main .courselist {
    margin-top: 2rem; }
    section.main .icon-list {
      margin-top: 3rem;
      margin-bottom: 2rem; }
      section.main .icon-list > .row {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -webkit-justify-content: center;
        justify-content: center; }
        section.main .icon-list > .row > .column {
          padding-bottom: 3rem;
          text-align: center; }
          section.main .icon-list > .row > .column .icon {
            font-size: 4rem; }
            section.main .icon-list > .row > .column .icon a i {
              color: #2F8261;
              font-size: 4rem;
              -moz-transition: transform 120ms ease-in;
              -o-transition: transform 120ms ease-in;
              -webkit-transition: transform 120ms ease-in;
              transition: transform 120ms ease-in; }
          section.main .icon-list > .row > .column:hover .icon a i {
            -moz-transform: scale(1.25) translate(-2px, 0);
            -o-transform: scale(1.25) translate(-2px, 0);
            -webkit-transform: scale(1.25) translate(-2px, 0);
            transform: scale(1.25) translate(-2px, 0); }
  section.main .widget {
    padding-top: 4rem;
    padding-bottom: 4rem;
    clear: both; }
    section.main .widget h3 {
      margin-bottom: 1rem; }
      section.main .widget.widget_courselist h2 {
        text-align: center; }
        section.main .widget.widget_courselist .button {
          vertical-align: center; }
    section.main .widget.widget_img_text .image {
      margin-bottom: 1rem; }
      section.main .widget.widget_img_text .text {
        padding-left: 2rem; }
    section.main .widget.widget-mypage ul.menu {
      display: inline-table;
      margin: -10px 0 0 !important; }
      section.main .widget.widget-mypage ul.menu li {
        padding-left: 0 !important;
        padding-right: 15px;
        float: left;
        list-style: none; }
        section.main .widget.widget-mypage ul.menu li::before {
          content: inherit !important; }
          section.main .widget.widget-mypage ul.menu li a {
            padding: 0; }
    section.main .widget.widget-login .login-wrapper .cancel-link {
      line-height: 80px;
      float: left; }
      section.main .widget.widget-login .login-wrapper .login-forgot button {
        float: right; }
    section.main .widget.widget_logos {
      border-bottom: 1px solid #cccccc;
      padding-top: 8rem;
      padding-bottom: 8rem; }
      section.main .widget.widget_logos h2 {
        text-align: center; }
        section.main .widget.widget_logos .logo-list {
          margin-top: 2rem;
          display: -webkit-box;
          display: -moz-box;
          display: -ms-flexbox;
          display: -moz-flex;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-flow: row wrap;
          -ms-flex-flow: row wrap;
          flex-flow: row wrap;
          -webkit-justify-content: center;
          justify-content: center;
          -webkit-align-items: end;
          -ms-align-items: end;
          align-items: end; }
          section.main .widget.widget_logos .logo-list .logo {
            padding: 1rem 3rem; }
            section.main .widget.widget_logos .logo-list .logo img {
              -webkit-filter: grayscale(100%);
              filter: grayscale(100%);
              -moz-transition: filter 300ms ease-out 0s;
              -o-transition: filter 300ms ease-out 0s;
              -webkit-transition: filter 300ms ease-out 0s;
              transition: filter 300ms ease-out 0s; }
              section.main .widget.widget_logos .logo-list .logo:hover img {
                -webkit-filter: grayscale(0);
                filter: grayscale(0); }
    section.main .widget.widget_support {
      background-color: #efefef;
      padding-top: 2rem;
      padding-bottom: 0; }
      section.main .widget.widget_support .image {
        text-align: right; }
        section.main .widget.widget_support .image img {
          max-width: 250px;
          max-height: 300px; }
      section.main .widget.widget_support .text {
        padding-top: 3rem;
        color: #2F8261;
        text-align: center; }
        section.main .widget.widget_support .text h3 {
          color: #2F8261;
          font-weight: 400;
          font-size: 2rem; }
    section.main .widget.widget-topcontacts {
      padding: 0;
      text-align: center;
      background-color: #efefef;
      padding: 0 0 1.5rem; }
      section.main .widget.widget-topcontacts .topcontact {
        font-size: 1.1rem;
        font-weight: 700;
        line-height: 1.4;
        text-transform: uppercase; }
        section.main .widget.widget-topcontacts .topcontact a {
          text-decoration: none; }
  section.main .sidepanel .widget {
    padding-top: 0;
    padding-top: 0;
    margin-bottom: 2rem; }
  section.main .widget-group {
    padding-top: 5rem;
    padding-bottom: 4.5rem; }
    section.main .widget-group .widget {
      padding-top: 0;
      padding-bottom: 2rem; }
  section.main .page {
    margin-bottom: 3rem;
    min-height: 35rem; }
    section.main .page .mainimage {
      min-height: 2rem; }
      section.main .page .mainimage img {
        width: 100%; }
    section.main .page .datetime {
      font-weight: 700;
      margin-bottom: 1rem; }
      section.main .page .mainteaser {
        font-weight: 600;
        font-size: 1.2rem;
        margin-bottom: 2rem; }
        section.main .page .bodytext ul {
          margin-left: 0; }
          section.main .page .bodytext ul li {
            list-style: none;
            padding-left: 1.5rem;
            position: relative;
            margin-bottom: 0.3rem;
            line-height: 1.3; }
            section.main .page .bodytext ul li::before {
              display: inline-block;
              font-family: FontAwesome;
              font-style: normal;
              font-weight: normal;
              line-height: 1;
              font-size-adjust: none;
              font-stretch: normal;
              font-feature-settings: normal;
              font-language-override: normal;
              font-kerning: auto;
              font-synthesis: weight style;
              font-variant: normal;
              font-size: inherit;
              text-rendering: auto;
              content: '';
              color: #2F8261;
              margin-top: 0.43rem;
              float: left;
              margin-left: -1.2rem;
              font-size: 0.5rem; }
        section.main .page .bodytext h1, section.main .page .bodytext h2,
        section.main .page .bodytext h3, section.main .page .bodytext h4,
        section.main .page .bodytext h5, section.main .page .bodytext h6 {
          margin-top: 1.5em; }
          section.main .page .bodytext h1:first-child,
          section.main .page .bodytext h2:first-child,
          section.main .page .bodytext h3:first-child,
          section.main .page .bodytext h4:first-child,
          section.main .page .bodytext h5:first-child,
          section.main .page .bodytext h6:first-child {
            margin-top: 0.25rem; }
        section.main .page .bodytext img {
          margin: 0.5rem 0 1rem;
          vertical-align: baseline; }
          section.main .page .bodytext img[style*="left"] {
            margin-right: 1rem; }
            section.main .page .bodytext img[style*="right"] {
              margin-left: 1rem; }
              section.main .page .bodytext .imgtext {
                font-size: 0.85rem;
                margin-top: -2rem;
                margin-bottom: 1.5rem; }
    section.main .page .images .image {
      margin-bottom: 1rem; }
    section.main .page .sidepanel {
      margin-top: 2rem; }
      section.main .page.startpage {
        margin-bottom: 0; }
        section.main .page.startpage .topimage {
          max-height: 800px;
          overflow: hidden;
          position: relative; }
          section.main .page.startpage .topimage img {
            width: 100%; }
            section.main .page.startpage .topimage .toptext {
              width: 100%;
              position: absolute;
              top: 70%;
              color: white;
              -o-transform: translate(0, -50%);
              -moz-transform: translate(0, -50%);
              -ms-transform: translate(0, -50%);
              -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%); }
              section.main .page.startpage .topimage .toptext h1 {
                color: white;
                font-size: 4.2rem;
                text-shadow: 0 0 5px rgba(0, 0, 0, 0.8);
                text-align: center;
                margin: 0; }
                section.main .page.startpage .topimage .toptext h2 {
                  color: white;
                  font-size: 3rem;
                  text-shadow: 0 0 5px rgba(0, 0, 0, 0.8);
                  text-align: center; }
        section.main .page.startpage .widget h2 {
          font-size: 2.3rem;
          margin-bottom: 1.5rem; }
    section.main .page.mypage .widget {
      padding-top: 0;
      padding-bottom: 2rem; }
      section.main .page.mypage .widget .graybox {
        background-color: #efefef;
        padding: 1.5rem; }
        section.main .page.mypage .widget ul {
          list-style: none;
          margin: 2rem 0; }
          section.main .page.mypage .widget ul li {
            list-style: none;
            padding-left: 1.5rem;
            position: relative;
            margin-bottom: 0.3rem;
            line-height: 1.3; }
            section.main .page.mypage .widget ul li::before {
              display: inline-block;
              font-family: FontAwesome;
              font-style: normal;
              font-weight: normal;
              line-height: 1;
              font-size-adjust: none;
              font-stretch: normal;
              font-feature-settings: normal;
              font-language-override: normal;
              font-kerning: auto;
              font-synthesis: weight style;
              font-variant: normal;
              font-size: inherit;
              text-rendering: auto;
              content: '';
              color: #2F8261;
              margin-top: 0.43rem;
              float: left;
              margin-left: -1.2rem;
              font-size: 0.5rem; }
      section.main .page.mypage .widget .item {
        margin-bottom: 1.5rem; }
        section.main .page.mypage .widget .item.event .date {
          margin-bottom: 0.5rem; }
          section.main .page.mypage .widget .item.event i {
            color: gray;
            min-width: 1.5rem;
            text-align: center; }
            section.main .page.mypage .widget .item.event i.fa-clock-o {
              margin-left: 1rem; }
    section.main .page.coursecalendarpage .coursecalendar-fixed {
      position: fixed;
      top: 75px;
      width: 100%; }
      section.main .page.coursecalendarpage .coursecalendar .week-date.full,
      section.main .page.coursecalendarpage .coursecalendar .date-date.full {
        font-weight: 600;
        color: #888;
        font-style: italic; }
    section.main .page.coursepage .sidepanel {
      margin-top: 0; }
      section.main .page.coursepage .sidepanel .courseinfo p {
        margin-bottom: 2rem; }
        section.main .page.coursepage .sidepanel .courseinfo ul {
          margin-bottom: 2rem; }
          section.main .page.coursepage .sidepanel .courseinfo form {
            margin-bottom: 2rem; }
      section.main .page.coursepage .sidepanel ul.coursedatessmall .full {
        color: #888;
        font-style: italic; }
    section.main .page.coursepage ul.coursedates {
      margin: 0 0 2rem;
      padding: 0; }
      section.main .page.coursepage ul.coursedates li {
        list-style: none;
        margin-bottom: 2px;
        background-color: #efefef; }
        section.main .page.coursepage ul.coursedates li .head {
          cursor: pointer;
          background-color: #2F8261;
          color: white;
          padding: 1rem 1rem;
          font-weight: 700; }
          section.main .page.coursepage ul.coursedates li .head h4 {
            font-size: 1rem;
            margin: 0;
            color: inherit; }
            section.main .page.coursepage ul.coursedates li .head .city {
              float: right; }
        section.main .page.coursepage ul.coursedates li .content {
          display: none;
          padding: 1.5rem; }
          section.main .page.coursepage ul.coursedates li .content h5 {
            margin-bottom: 0.25rem; }
            section.main .page.coursepage ul.coursedates li .content p {
              margin-bottom: 1.25rem; }
              section.main .page.coursepage ul.coursedates li .content .button {
                float: right;
                margin: 0; }
        section.main .page.coursepage ul.coursedates li:hover .head {
          background-color: #2F8261;
          color: white; }
        section.main .page.coursepage ul.coursedates li.active .head {
          background-color: #2F8261;
          color: white; }
          section.main .page.coursepage ul.coursedates li.active .content {
            display: block; }
        section.main .page.coursepage ul.coursedates li.full .head {
          background-color: #cccccc;
          color: #333;
          cursor: disabled; }

footer.footer {
  background-color: #333;
  padding: 4rem 0;
  color: #fff; }
  footer.footer a {
    color: inherit; }
    footer.footer h3 {
      color: inherit; }
      footer.footer .bottomcol {
        min-height: 10rem; }

footer.colophon {
  background-color: #efefef; }
  footer.colophon p {
    line-height: 3em;
    margin-bottom: 0;
    font-size: 70%; }
    footer.colophon p a {
      color: inherit; }

.alert-box {
  position: fixed;
  left: 50%;
  top: 50%;
  border-width: 3px;
  border-color: #ccc; }
  .alert-box.secondary {
    background: #DADADA; }

.alert-box button {
  margin-bottom: 0; }

  @media only screen and (max-width: 64em) {
    section.main .icon-list {
      margin-top: 1rem;
      margin-bottom: 1rem;   }
      section.main .widget {
        padding-top: 2rem;
        padding-bottom: 2rem;   }
        section.main .widget.widget_logos {
          padding-top: 2rem;
          padding-bottom: 3rem;   }
    section.main .widget-group {
      padding-top: 2rem;
      padding-bottom: 1.5rem;   }
      section.main .page.startpage .topimage {
        max-height: 570px;
        overflow: hidden;
        position: relative;   }
        section.main .page.startpage .topimage .toptext h1 {
          font-size: 2.5rem;   }
          section.main .page.startpage .topimage .toptext h2 {
            font-size: 2rem;   }
}

@media only screen and (max-width: 63.9375em) {
  section.main .page.startpage .topimage {
    max-height: 570px;
    overflow: visible;
    position: relative;   }
    section.main .page.startpage .topimage .toptext h2 {
      font-size: 2rem;   }
}

@media only screen and (max-width: 39.9375em) {
  h1 {
    font-size: 1.8rem;   }
    h2 {
      font-size: 1.5rem;   }
      .tabs {
        margin-top: 2rem;   }
        .tabs .tabs-title > a {
          display: block;
          padding: 0.5rem;
          line-height: inherit;
          font-size: 1rem;
          font-weight: 600;
          color: #2F8261;   }
          .tabs .tabs-title > a:hover {
            color: #000;
            background: none;   }
            .tabs .tabs-title > a:focus {
              background-color: transparent;   }
  .tabs-panel {
    display: block;
    padding: 0;   }
    .tabs-content {
      background-color: transparent;   }
      .tabs-content .tabs-panel {
        padding: 0;   }
  nav.top-nav {
    width: 100%;   }
    nav.sub-nav header.toggler {
      position: relative;
      cursor: pointer;   }
      nav.sub-nav header.toggler h3 {
        margin-bottom: 0;   }
        nav.sub-nav header.toggler::after {
          content: ' ';
          display: inline-block;
          font-family: FontAwesome;
          font-style: normal;
          font-weight: normal;
          line-height: 1;
          font-size-adjust: none;
          font-stretch: normal;
          font-feature-settings: normal;
          font-language-override: normal;
          font-kerning: auto;
          font-synthesis: weight style;
          font-variant: normal;
          font-size: inherit;
          text-rendering: auto;
          position: absolute;
          right: 0;
          top: 50%;
          -o-transform: translate(0, -50%);
          -moz-transform: translate(0, -50%);
          -ms-transform: translate(0, -50%);
          -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
          font-size: 1.2rem;   }
          nav.sub-nav header.toggler.active::after {
            content: ' ';   }
    nav.sub-nav ul {
      margin-top: 1rem;
      display: none;   }
      nav.sub-nav ul li.active ul {
        display: block;   }
  header.header .logo img {
    max-height: 47px;   }
    section.main .icon-list > .row > .column {
      padding-bottom: 0;   }
      section.main .widget h2 {
        font-size: 1.8rem;
        margin-bottom: 1.5rem;   }
        section.main .widget.widget_img_text .text {
          padding-left: 0;   }
          section.main .widget.widget_support .image {
            text-align: center;   }
            section.main .widget.widget_support .image img {
              max-height: 200px;   }
          section.main .widget.widget_support .text {
            padding-top: 0;   }
    section.main .page.startpage .topimage .toptext {
      position: relative;
      top: auto;
      -o-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
      background-color: #efefef;
      padding: 1.5rem 0 1rem;   }
      section.main .page.startpage .topimage .toptext h1 {
        color: #000;
        font-size: 1.3rem;
        text-shadow: none;   }
        section.main .page.startpage .topimage .toptext h2 {
          color: #000;
          font-size: 1rem;
          text-shadow: none;   }
}

@media print {
  html {
    font-size: 12px;   }
    h1 {
      font-size: 2rem;   }
      h2 {
        font-size: 1.5rem;   }
        h3 {
          font-size: 1.2rem;   }
          a, a:visited {
            text-decoration: underline;   }
            a[href]:after {
              content: "";   }
              .ir a:after, a[href^='javascript:']:after, a[href^='#']:after {
                content: '';   }
                @page {
                  margin: 1cm 0.5cm 2cm;   }
                  .tabs-panel {
                    display: block;
                    padding: 0;   }
                    .tabs-content .tabs-panel {
                      padding: 0;   }
                      .print-logo {
                        margin-top: 1rem;   }
                        .print-logo img {
                          max-height: 70px;   }
  section.main {
    min-height: none;
    padding-top: 1rem;   }
    section.main .page {
      margin-bottom: 1rem;
      min-height: none;   }
  footer.footer {
    padding: 0;   }
    footer.footer .bottomcol {
      min-height: none;   }
}
