:root {
  --krug-blue: #303880;
  --krug-ink: #242632;
  --krug-muted: #626777;
  --krug-paper: #fff;
  --krug-soft: #f5f6fa;
  --krug-line: #dfe2eb;
}

html { font-size: 16px; }
body.site {
  color: var(--krug-ink);
  font-family: "Open Sans", Arial, sans-serif;
  font-size: clamp(1rem, .96rem + .12vw, 1.08rem);
  line-height: 1.72;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}
.visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0);
  white-space: nowrap; border: 0;
}
.body { padding: 0; background: var(--krug-paper); }
.body > .container, .footer > .container {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  padding-inline: clamp(1rem, 4vw, 5rem);
}
.header { padding-block: clamp(1.25rem, 2.2vw, 2.5rem); border-bottom: 1px solid var(--krug-line); }
.site-title {
  color: var(--krug-blue);
  font-size: clamp(1.55rem, 1.15rem + 1.4vw, 2.65rem);
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.1;
}
.row-fluid { display: flex; gap: clamp(1.5rem, 4vw, 4rem); padding-block: clamp(1.5rem, 3vw, 3rem); }
.row-fluid #content.span9 { float: none; width: auto; flex: 1 1 auto; min-width: 0; margin: 0; }
.row-fluid #aside.span3 { float: none; width: clamp(13rem, 18vw, 18rem); flex: 0 0 clamp(13rem, 18vw, 18rem); margin: 0; }
#content > * { max-width: 76rem; }
#content p, #content li { max-width: 72ch; }
#content img { height: auto; max-width: 100%; border-radius: .25rem; }
h1, h2, h3, h4, h5, h6, #u386-2, #u503-4 > p:first-child {
  color: var(--krug-blue);
  font-family: "Open Sans", Arial, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -.02em;
  line-height: 1.2 !important;
  margin: 0 0 .75em;
}
#u386-2, #u503-4 > p:first-child, .itemid-102 [itemprop="articleBody"] > p:first-of-type {
  font-size: clamp(1.8rem, 1.35rem + 1.7vw, 3rem) !important;
}
.well { background: var(--krug-soft); border: 1px solid var(--krug-line); border-radius: .5rem; box-shadow: none; padding: .65rem; }
.nav > li > a { border-radius: .3rem; color: var(--krug-ink); padding: .7rem .85rem; }
.nav > li > a:hover, .nav > .active > a { background: var(--krug-blue); color: #fff; text-shadow: none; }
.footer { background: var(--krug-soft); color: var(--krug-muted); }
.footer hr { border-top-color: var(--krug-line); }
.contentpane iframe { min-height: 620px; border: 1px solid var(--krug-line); border-radius: .4rem; }

@media (max-width: 800px) {
  .body > .container, .footer > .container { padding-inline: 1rem; }
  .row-fluid { display: flex; flex-direction: column; gap: 1.25rem; }
  .row-fluid #content.span9, .row-fluid #aside.span3 { width: 100%; flex: 0 0 auto; }
  .row-fluid #aside.span3 { order: -1; }
  .nav.menu { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem; margin: 0; }
  .nav.menu li { min-width: 0; }
  .nav.menu a { overflow-wrap: anywhere; }
  #content [style*="float: left"] { float: none !important; width: auto !important; max-width: 100% !important; padding-left: 0 !important; }
}
