@charset "UTF-8";
/*
 * Theme Name: Surgical West
 * Author: The Graphic Element
 * Author URI: https://www.thegraphicelement.com
 * Copyright: 2020, The Graphic Element. All rights reserved.
*/
/* reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section {
  margin: 0;
  padding: 0;
  font-size: 100%;
  background: transparent;
  border: 0;
  vertical-align: baseline;
}

/* normalize */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

blockquote, q {
  quotes: none;
}

a:hover, a:active {
  outline: 0;
}

a img {
  border: 0;
}

button[type=submit],
input[type=submit] {
  cursor: pointer;
}

embed, iframe, object {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

hr {
  margin: 3rem 0;
  height: 0;
  border: 0;
  border-top: 1px solid #cccccc;
}
hr + h1, hr + h2, hr + h3, h1 + hr, h2 + hr, h3 + hr {
  margin-top: 0;
}

body:not(.is-tabbing) section:focus,
body:not(.is-tabbing) main:focus,
body:not(.is-tabbing) article:focus {
  outline: none;
}

::-moz-selection {
  background: #eaf1f5;
}

::selection {
  background: #eaf1f5;
}

/* ---------------------------------------------
# general styling
--------------------------------------------- */
html {
  font-size: 17px;
}
@media only screen and (min-width: 600px) {
  html {
    font-size: 16px;
  }
}
@media only screen and (min-width: 800px) {
  html {
    font-size: 18px;
  }
}
@media only screen and (min-width: 2000px) {
  html {
    font-size: 22px;
  }
}

body {
  color: #153a4c;
  font: normal normal 1em/1.2 "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  -webkit-font-smoothing: antialiased;
  background: #fff;
  overflow-x: hidden;
}

/* headlines */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 1.4em 0 1rem;
  color: #225e7a;
  font: normal normal 1em/1.2 "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

h1 + h2,
h2 + h3,
.h1 + .h2,
.h2 + .h3 {
  margin-top: 0;
}

h1, .h1 {
  margin: 0 0 2rem;
  font-size: 1.8em;
}

h2, .h2 {
  color: #ab2127;
  font-weight: bold;
  font-size: 1.65em;
}

h3, .h3 {
  color: #153a4c;
  font-weight: bold;
  font-size: 1.4em;
}

h4, .h4 {
  font-size: 1.25em;
}

/* text */
p {
  margin-bottom: 1.2rem;
  font-size: 1em;
  line-height: 1.66;
}
p:last-child {
  margin-bottom: 0;
}

sup {
  font-size: 0.8em;
  vertical-align: super;
}

/* links */
a {
  color: #225e7a;
  text-decoration: none;
  -webkit-transition: color 300ms ease, background 300ms ease, border 300ms ease;
  -o-transition: color 300ms ease, background 300ms ease, border 300ms ease;
  transition: color 300ms ease, background 300ms ease, border 300ms ease;
}
a:hover, a:focus, a:active {
  color: #ab2127;
}
main a {
  color: #ab2127;
  font-weight: bold;
  border-bottom: 2px solid #df9295;
}
main a:hover, main a:focus, main a:active {
  color: #225e7a;
  border-color: #95bacc;
}

/* lists */
main ul {
  margin: 0 0 1.2em 3em;
  list-style: disc;
}

main ol {
  margin: 0 0 1.2em 3em;
  list-style: decimal;
}

main ul ul,
main ol ol {
  margin: 0.3em 0 0.8em 1.6em;
}

main li {
  margin: 0 0 0.5em;
  font-size: 1em;
  line-height: 1.5;
}
main li li {
  font-size: 1em;
}

/* elements */
embed, iframe, object {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

hr {
  border-top: 1px solid #ecbebf;
}

/* custom font sizes */
.has-small-font-size {
  font-size: 0.875em;
}

.has-normal-font-size {
  font-size: 1em;
}

.has-large-font-size {
  font-size: 1.25em;
  line-height: 1.26;
}

.has-huge-font-size {
  font-size: 1.4em;
  line-height: 1.26;
}

/* custom colors */
.has-white-color {
  color: #fff;
}

.has-white-background-color {
  background-color: #fff;
}

.has-black-color {
  color: #000000;
}

.has-black-background-color {
  background-color: #000000;
}

.has-primary-color {
  color: #2b7598;
}

.has-primary-background-color {
  background-color: #2b7598;
}

.has-primary-light-color {
  color: #eaf1f5;
}

.has-primary-light-background-color {
  background-color: #eaf1f5;
}

.has-primary-dark-color {
  color: #153a4c;
}

.has-primary-dark-background-color {
  background-color: #153a4c;
}

.has-secondary-color {
  color: #be252b;
}

.has-secondary-background-color {
  background-color: #be252b;
}

.has-secondary-light-color {
  color: #5f1215;
}

.has-secondary-light-background-color {
  background-color: #5f1215;
}

.has-secondary-dark-color {
  color: #f9e9ea;
}

.has-secondary-dark-background-color {
  background-color: #f9e9ea;
}

/* images */
img {
  margin: 0 auto;
  max-width: 100%;
  vertical-align: middle;
}
img[width] {
  height: auto;
}

.wp-block-image .alignleft,
.wp-block-image .alignright,
.wp-block-image .aligncenter {
  clear: both;
  float: none;
  margin: 2rem auto;
}

.alignwide {
  margin: 2rem 0 2rem 50%;
  width: 100%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.alignfull {
  margin: 2rem 0 2rem 50%;
  width: 100vw;
  min-width: 100vw;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media only screen and (min-width: 800px) {
  .wp-block-image .alignleft {
    clear: none;
    float: left;
    margin: 0 2.5rem 2rem 0;
  }
  .wp-block-image .alignright {
    clear: none;
    float: right;
    margin: 0 0 2rem 2.5rem;
  }
  .wp-block-image .aligncenter {
    margin: 3rem auto;
  }
  .alignwide {
    margin: 3rem 0 3rem 50%;
    width: 88vw;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .alignfull {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}
.wp-caption-text,
.wp-block-image figcaption,
.post-media--caption figcaption {
  margin: 1em auto 0;
  font-size: 0.875em;
  line-height: 1.52;
  text-align: center;
}

.post-media--caption figcaption {
  font-size: 0.7em;
}

@media only screen and (min-width: 800px) {
  .wp-caption-text,
  .wp-block-image figcaption,
  .post-media--caption figcaption {
    font-size: 0.8em;
  }
}
.post-media--caption figcaption {
  margin-top: 0.5em;
}

/* blockquote */
.wp-block-quote {
  position: relative;
  clear: both;
  margin: 2rem auto;
  padding: 1rem 1rem 1rem 1.6rem;
  border: 0;
}
.wp-block-quote::before {
  z-index: -1;
  position: absolute;
  top: -0.18em;
  left: 0;
  display: block;
  content: "“";
  color: #e6e6e6;
  font: 12rem/1 Georgia, "Times New Roman", Times, serif;
  text-align: center;
}
.wp-block-quote p {
  font: italic 1.2em/1.46 Georgia, "Times New Roman", Times, serif;
}
.wp-block-quote cite {
  display: block;
  margin: 0;
  color: #999999;
  font-style: normal;
  font-size: 0.85em;
  text-transform: none;
}
.wp-block-quote cite::before {
  margin-right: 0.25em;
  content: "—";
}

@media only screen and (min-width: 600px) {
  .wp-block-quote {
    padding: 1rem 2rem;
    width: 80%;
  }
}
/* pullquote */
.wp-block-pullquote {
  margin: 3rem 0;
  padding: 0;
  color: #404040;
  border: 0;
}
.wp-block-pullquote blockquote {
  position: relative;
  padding: 2.5rem 2rem 2rem;
  border: 1px solid #aac8d6;
  border-width: 1px 0;
}
.wp-block-pullquote blockquote::before {
  position: absolute;
  top: -0.24em;
  left: 50%;
  display: block;
  width: 0.8em;
  height: 0.45em;
  content: "“";
  color: #95bacc;
  font: 6rem/0.8 Georgia, "Times New Roman", Times, serif;
  text-align: center;
  background: #fff;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.wp-block-pullquote p {
  font: italic 1.1em/1.46 Georgia, "Times New Roman", Times, serif;
}
.wp-block-pullquote cite {
  display: block;
  margin: 0;
  color: #999999;
  font-style: normal;
  font-size: 0.85em;
  text-transform: none;
}
.wp-block-pullquote cite {
  margin: 0 1em;
}
.wp-block-pullquote cite::before {
  margin-right: 0.25em;
  content: "—";
}

/* q + a */
.accordion {
  margin-top: 2rem;
}
.accordion-item--question {
  margin: 0.8em 0 0;
}
.accordion-item--question:first-of-type {
  margin-top: 0;
}
.accordion-link {
  position: relative;
  display: block;
  padding: 0.8em 2em 0.8em 1em;
  color: #2b7598;
  font-size: 1em;
  text-decoration: none;
  border: 1px solid #2b7598;
}
.accordion-link:hover, .accordion-link.active {
  color: #fff;
  background: #2b7598;
}
.accordion-link::before {
  position: absolute;
  top: 0.6em;
  right: 0.8em;
  content: "\f107";
  color: #2b7598;
  font: 1em/1 Font Awesome\ 5 Pro !important;
  text-indent: 0;
}
.accordion-link.active::before {
  content: "\f106";
}
.accordion-link:hover::before, .accordion-link.active::before {
  color: #fff;
}
.csstransforms .accordion-link::before {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 600px) {
  .accordion-link {
    font-size: 1.2em;
  }
}
.accordion-item--answer {
  padding: 0.8em 1em;
}
.accordion-empty {
  font-weight: 500;
  text-align: center;
}

/* tables */
.wp-block-table table {
  margin: 0 auto 1rem;
  width: 100%;
  font-size: 0.9em;
}
.wp-block-table table thead {
  border: 0;
}
.wp-block-table table td,
.wp-block-table table th {
  padding: 0.8rem;
  max-width: none;
  line-height: 1.46;
  border: 1px solid #cccccc;
  border-width: 0 0 1px;
}
.wp-block-table table th {
  color: #fff;
  font-weight: bold;
  font-size: 0.8em;
  letter-spacing: 0.2em;
  text-align: left;
  text-transform: uppercase;
  background: #000000;
  border: 0;
}
@media only screen and (min-width: 800px) {
  .wp-block-table table {
    margin-bottom: 1.5rem;
  }
}
@media only screen and (max-width: 600px) {
  .wp-block-table table {
    display: block;
    margin: -0.8rem auto 1.5rem;
    table-layout: auto;
  }
  .wp-block-table table thead,
  .wp-block-table table tbody,
  .wp-block-table table th,
  .wp-block-table table td,
  .wp-block-table table tr {
    display: block;
  }
  .wp-block-table table thead {
    display: none;
  }
  .wp-block-table table tr {
    padding: 0.8em 0;
    border-bottom: 1px solid #bfd6e0;
  }
  .wp-block-table table tr:last-of-type {
    border: 0;
  }
  .wp-block-table table td {
    padding: 0.1em 1em;
    max-width: none;
    border: 0;
  }
  .wp-block-table table td:first-of-type {
    font-weight: 600;
  }
}

/* form elements + buttons */
input:not([type=button]):not([type=submit]),
textarea,
select {
  margin: 0;
  padding: 0.8em;
  height: 2.8em !important;
  color: #153a4c;
  font: 1em/normal "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  text-align: left;
  background: #eaf1f5;
  border: 1px solid transparent;
  border-radius: 0;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  outline-color: transparent;
  outline-style: none;
  -webkit-transition: background 300ms ease, border 300ms ease;
  -o-transition: background 300ms ease, border 300ms ease;
  transition: background 300ms ease, border 300ms ease;
  behavior: url("/?pie=true");
}

textarea {
  height: 8.6em !important;
  line-height: 1.4;
}

select:not([multiple]) {
  padding-right: 1.5em;
}

select[multiple] {
  height: auto !important;
}

input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

input[type=checkbox],
input[type=radio] {
  padding: 0;
  vertical-align: middle;
}

input:not([type=button]):focus,
textarea:focus,
select:focus {
  background: #fff;
  border-color: #2b7598;
}

input[type=checkbox]:focus,
input[type=radio]:focus {
  outline: 1px solid #2b7598;
}

::-webkit-input-placeholder {
  color: #153a4c;
}

::-moz-placeholder {
  color: #153a4c;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #153a4c;
}

:-moz-placeholder {
  color: #153a4c;
  opacity: 1;
}

::placeholder {
  color: #153a4c;
}

.btn,
.wp-block-buttons .wp-block-button__link,
.wp-block-file .wp-block-file__button,
.button,
form button,
form [type=button],
form [type=submit],
form [type=reset],
[type=button].nf-element {
  display: inline-block;
  padding: 1.4em 2.4em;
  color: #fff;
  font-weight: bold;
  font-size: 0.65rem;
  line-height: 1.6;
  letter-spacing: 0.2em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  background: #be252b;
  border: 1px solid #be252b;
  border-radius: 0;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  -webkit-transition: background 300ms ease, border 300ms ease;
  -o-transition: background 300ms ease, border 300ms ease;
  transition: background 300ms ease, border 300ms ease;
  behavior: url("/?pie=true");
}
.btn:hover, .btn:focus,
.wp-block-buttons .wp-block-button__link:hover,
.wp-block-buttons .wp-block-button__link:focus,
.wp-block-file .wp-block-file__button:hover,
.wp-block-file .wp-block-file__button:focus,
.button:hover,
.button:focus,
form button:hover,
form button:focus,
form [type=button]:hover,
form [type=button]:focus,
form [type=submit]:hover,
form [type=submit]:focus,
form [type=reset]:hover,
form [type=reset]:focus,
[type=button].nf-element:hover,
[type=button].nf-element:focus {
  color: #fff;
  background: #2b7598;
  border-color: #2b7598;
}

.btn.btn--outline,
.is-style-outline .wp-block-button__link {
  color: #be252b;
  background: transparent;
  border: 1px solid #be252b;
}

.btn.has-white-color,
.wp-block-button .has-white-color {
  color: #fff;
}

.btn--outline.has-white-color,
.is-style-outline .has-white-color {
  border-color: #fff;
}

.btn.has-white-background-color,
.wp-block-button .has-white-background-color {
  background-color: #fff;
  border-color: #fff;
}

.btn.has-black-color,
.wp-block-button .has-black-color {
  color: #000000;
}

.btn--outline.has-black-color,
.is-style-outline .has-black-color {
  border-color: #000000;
}

.btn.has-black-background-color,
.wp-block-button .has-black-background-color {
  background-color: #000000;
  border-color: #000000;
}

.btn.has-primary-color,
.wp-block-button .has-primary-color {
  color: #2b7598;
}

.btn--outline.has-primary-color,
.is-style-outline .has-primary-color {
  border-color: #2b7598;
}

.btn.has-primary-background-color,
.wp-block-button .has-primary-background-color {
  background-color: #2b7598;
  border-color: #2b7598;
}

.btn.has-primary-light-color,
.wp-block-button .has-primary-light-color {
  color: #eaf1f5;
}

.btn--outline.has-primary-light-color,
.is-style-outline .has-primary-light-color {
  border-color: #eaf1f5;
}

.btn.has-primary-light-background-color,
.wp-block-button .has-primary-light-background-color {
  background-color: #eaf1f5;
  border-color: #eaf1f5;
}

.btn.has-primary-dark-color,
.wp-block-button .has-primary-dark-color {
  color: #153a4c;
}

.btn--outline.has-primary-dark-color,
.is-style-outline .has-primary-dark-color {
  border-color: #153a4c;
}

.btn.has-primary-dark-background-color,
.wp-block-button .has-primary-dark-background-color {
  background-color: #153a4c;
  border-color: #153a4c;
}

.btn.has-secondary-color,
.wp-block-button .has-secondary-color {
  color: #be252b;
}

.btn--outline.has-secondary-color,
.is-style-outline .has-secondary-color {
  border-color: #be252b;
}

.btn.has-secondary-background-color,
.wp-block-button .has-secondary-background-color {
  background-color: #be252b;
  border-color: #be252b;
}

.btn.has-secondary-light-color,
.wp-block-button .has-secondary-light-color {
  color: #5f1215;
}

.btn--outline.has-secondary-light-color,
.is-style-outline .has-secondary-light-color {
  border-color: #5f1215;
}

.btn.has-secondary-light-background-color,
.wp-block-button .has-secondary-light-background-color {
  background-color: #5f1215;
  border-color: #5f1215;
}

.btn.has-secondary-dark-color,
.wp-block-button .has-secondary-dark-color {
  color: #f9e9ea;
}

.btn--outline.has-secondary-dark-color,
.is-style-outline .has-secondary-dark-color {
  border-color: #f9e9ea;
}

.btn.has-secondary-dark-background-color,
.wp-block-button .has-secondary-dark-background-color {
  background-color: #f9e9ea;
  border-color: #f9e9ea;
}

.btn.btn--disabled:hover {
  color: #fff !important;
  background: #be252b !important;
  border-color: #be252b !important;
}

.btn--outline.btn--disabled:hover {
  color: #be252b !important;
  background: transparent !important;
  border-color: #be252b !important;
}

.btn.btn--small {
  padding: 0.72em 1.8em;
  font-size: 0.6rem;
}

.wp-block-button__link,
.wp-block-file__button {
  height: auto !important;
}

/* screen readers */
.screen-reader-text {
  position: absolute !important;
  top: -999em;
  left: -999em;
  display: block;
  margin: -1px;
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}

/* skip link */
.skip-link {
  position: fixed;
  z-index: 100000;
  top: -10em;
  left: -10em;
  color: #fff;
  font-weight: bold;
  font-size: 0.8em;
  letter-spacing: 0.1em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  background: #2b7598;
  opacity: 0;
  -webkit-transition: opacity 300ms ease-in;
  -o-transition: opacity 300ms ease-in;
  transition: opacity 300ms ease-in;
}
.skip-link:focus, .skip-link:active, .skip-link:hover {
  top: 0;
  left: 0;
  padding: 0.6em 1em;
  color: #fff;
  width: auto;
  height: auto;
  opacity: 1;
  overflow: visible;
}

/* links list */
.links-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 -0.6em;
  list-style: none;
}
.links-list-item {
  margin: 0.6em;
  padding: 0;
}
.links-list-item::before {
  display: none;
}
.links-list-link {
  display: inline-block;
  padding: 0.7em 1.2em;
  background: #fff;
  border: 1px solid #d5e3ea;
  -webkit-transition: color 0.3s ease, background 0.3s ease, border 0.3s ease;
  -o-transition: color 0.3s ease, background 0.3s ease, border 0.3s ease;
  transition: color 0.3s ease, background 0.3s ease, border 0.3s ease;
}
.links-list-link:hover, .links-list-link:focus {
  color: #fff;
  background: #2b7598;
  border-color: #2b7598;
}

/* column list */
.column-list main ul {
  margin: 0;
  list-style: none;
}
.column-list main ul li {
  display: inline-block;
  margin: 0;
  width: 100%;
  padding: 0.5em 0.5em 0.5em 1em;
  border-bottom: 1px solid #eaf1f5;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
.column-list main ul li li:not(.sitemap-list-sub-item) {
  border: 0;
}
.column-list main ul li:last-of-type {
  margin-bottom: 0;
}
.column-list main ul li::before {
  margin: 0 0.6em 0 -1em;
  content: "\f105";
  color: #2b7598;
  font: 1em/1 Font Awesome\ 5 Pro !important;
}
.column-list main ul li a {
  color: #225e7a;
  font-weight: normal !important;
  border-width: 0 !important;
}
.column-list main ul li a:hover, .column-list main ul li a:focus {
  color: #ab2127;
}
@media only screen and (min-width: 800px) {
  .column-list main ul {
    -webkit-columns: 2;
    columns: 2;
    -webkit-column-gap: 5em;
    column-gap: 5em;
  }
  .column-list main ul ul {
    -webkit-columns: 1;
    columns: 1;
    margin-left: 1em;
  }
}

/* ---------------------------------------------
# page structure
--------------------------------------------- */
.master-wrapper {
  overflow: hidden;
}

.site-content {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.home .site-content {
  padding: 0;
  max-width: none;
}
@media only screen and (min-width: 800px) {
  .site-content {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .has-sidebar .site-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

main {
  width: 100%;
}
@media only screen and (min-width: 800px) {
  .has-sidebar main {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    float: left;
    width: 70%;
  }
}

.sidebar {
  margin: 4rem 0 0;
}
@media only screen and (min-width: 800px) {
  .sidebar {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    float: right;
    margin-top: 0;
    width: 25%;
  }
}

/*
 * layout
 */
.row {
  position: relative;
  margin: 0 auto;
  padding-right: 5.6vw;
  padding-left: 5.6vw;
  max-width: 70rem;
}
.row--wide {
  max-width: 88rem;
}
@media only screen and (min-width: 2000px) {
  .row {
    max-width: 78rem;
  }
  .row--wide {
    max-width: 92rem;
  }
}

.master-wrapper .is-full-width {
  margin: 0 -9999em;
  padding: 2rem 0;
}
@media only screen and (min-width: 800px) {
  .master-wrapper .is-full-width {
    padding: 3rem 0;
  }
}

.group::after {
  content: "";
  display: table;
  clear: both;
}

/*
 * grid
 */
.grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: minmax(250px, auto);
  grid-template-rows: minmax(250px, auto);
  -webkit-column-gap: 2px;
  -moz-column-gap: 2px;
  column-gap: 2px;
  row-gap: 2px;
  border: 2px solid #fff;
  border-width: 2px 0;
}
.grid.spaced {
  -webkit-column-gap: 2.5vw;
  -moz-column-gap: 2.5vw;
  column-gap: 2.5vw;
  row-gap: 2.5vw;
  border-width: 0;
}
.grid + .grid {
  border-top-width: 0;
}
.grid.col4 {
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (min-width: 600px) {
  .grid.col3 {
    -ms-grid-columns: repeat(3, 1fr);
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 800px) {
  .grid.col2 {
    -ms-grid-columns: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
  }
  .grid.col4 {
    -ms-grid-columns: repeat(4, 1fr);
    grid-template-columns: repeat(4, 1fr);
  }
}
.grid.align-middle .box, .grid.align-middle > div {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

/* content */
.box-content {
  padding: 3rem 5.6vw;
}
.col4 .box-content {
  padding: 4vw;
  font-size: 0.8em;
}
@media only screen and (min-width: 600px) {
  .box-content {
    padding: 5.6vw;
  }
  .row .box-content, .col3 .box-content {
    padding: 4vw;
  }
}
@media only screen and (min-width: 800px) {
  .col4 .box-content {
    padding: 2vw;
  }
}

.box-title {
  margin: 0;
}

.box-title + p {
  margin-top: 1.4em;
  margin-bottom: 0;
}

.box-link {
  text-decoration: none;
}

/* has background image */
.has-background-image {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  -webkit-transform: translate3d(0, 0, 1px);
  -ms-transform: translate3d(0, 0, 1px);
  transform: translate3d(0, 0, 1px);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.has-background-image .box-content {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  -webkit-transition: background 0.3s ease;
  -o-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.has-background-image .box-image {
  max-height: 40vh;
  opacity: 0;
}
.has-background-image.has-text .box-image {
  position: absolute;
  top: -999rem;
  left: -999rem;
}
.has-background-image .box-title {
  color: #fff;
}

/* has link */
.has-link .box-link {
  display: block;
  width: 100%;
  height: 100%;
}
.has-link .box-link:hover .box-content, .has-link .box-link:focus .box-content {
  background: rgba(0, 0, 0, 0.3);
}

/* has hover */
.has-hover .box-link {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  background: none;
  overflow: hidden;
}
.has-hover .box-link .box-content {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  -o-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.has-hover .box-link .box-content * {
  position: relative;
  top: 100%;
  -webkit-transition: top 0.5s ease;
  -o-transition: top 0.5s ease;
  transition: top 0.5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.has-hover .box-link:hover .box-content, .has-hover .box-link:focus .box-content {
  opacity: 1;
}
.has-hover .box-link:hover .box-content *, .has-hover .box-link:focus .box-content * {
  top: 0;
}

/* fixed aspect */
.fixed-aspect .box {
  display: -ms-grid;
  display: grid;
}
.fixed-aspect .box::before {
  -ms-grid-column: 1;
  grid-column: 1;
  -ms-grid-row: 1;
  grid-row: 1;
  display: block;
  content: "";
  padding-top: 125%;
  height: 0;
  overflow: hidden;
}
.fixed-aspect .box > * {
  -ms-grid-column: 1;
  grid-column: 1;
  -ms-grid-row: 1;
  grid-row: 1;
}

/* ---------------------------------------------
# menus
--------------------------------------------- */
/*
 * multi level menus
 */
@media only screen and (min-width: 1000px) {
  .ml-nav-item {
    position: relative;
    display: inline-block;
    vertical-align: middle;
  }
  .ml-nav-link {
    display: inline-block;
  }
  .ml-nav-sub-menu {
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 0;
    width: 14rem;
  }
  .ml-nav-menu > .ml-nav-item:nth-last-child(-n+3) > .ml-nav-sub-menu {
    right: 0;
    left: auto;
  }
  .ml-nav-sub-menu .ml-nav-item {
    position: relative;
    display: block;
    font-size: 0.95em;
  }
  .ml-nav-sub-menu .ml-nav-link {
    display: block;
    width: 100%;
  }
  .ml-nav-sub-menu .menu-item-has-children > .ml-nav-link {
    padding-right: 1.4em;
  }
  .ml-nav-sub-menu .menu-item-has-children > .ml-nav-link::after {
    position: absolute;
    top: calc(50% - 0.4em);
    right: 0.8em;
    content: "\f105";
    font: 0.8em/1 Font Awesome\ 5 Pro !important;
  }
  .ml-nav-sub-menu--level3 {
    margin-left: calc(100% + 1px);
  }
  .ml-nav-menu > .ml-nav-item:nth-last-child(-n+3) .ml-nav-sub-menu--level3 {
    margin: 0 0 0 calc(-100% - 1px);
  }
  .ml-nav-sub-menu .ml-nav-sub-menu--level3 .ml-nav-item {
    font-size: 1em;
  }
  /* hide and reveal */
  .ml-nav-menu .ml-nav-sub-menu {
    display: none;
  }
  .ml-nav-menu > .parent:hover > .ml-nav-sub-menu,
  .ml-nav-sub-menu .parent:hover .ml-nav-sub-menu,
  .ml-nav-menu li:focus-within > ul,
  .ml-nav-menu li ul.focused {
    display: block;
  }
}
/*
 * main menu
 */
.main-nav {
  margin: 0 auto;
  width: 100%;
  text-align: right;
}

@media only screen and (min-width: 1000px) {
  .main-nav {
    margin-top: 1.2rem;
    margin-bottom: -1.2rem;
  }
  .anchor .main-nav {
    margin-top: 0;
    margin-bottom: -0.5rem;
    font-size: 0.9em;
  }
  .main-nav-menu {
    width: 100%;
  }
  .main-nav-menu > .main-nav-item {
    margin-left: -0.4em;
    font-size: 0.8em;
    text-align: left;
  }
  .main-nav-menu > .main-nav-item::before {
    margin: 0 0.32em;
    content: "|";
    color: #8ab3c6;
    font-weight: normal;
  }
  .main-nav-menu > .main-nav-item:first-of-type::before {
    display: none;
  }
  .main-nav-menu > .main-nav-item > .main-nav-link {
    margin: 0;
    padding: 1em 0.2em 1.5rem;
    color: #225e7a;
    font-weight: bold;
    letter-spacing: 0.01em;
  }
  .main-nav-menu > .main-nav-item:hover > .main-nav-link,
  .main-nav-menu > .main-nav-item > .main-nav-link:focus {
    color: #ab2127;
  }
  .main-nav-menu > .menu-item-home .menu-item-title {
    position: absolute !important;
    top: -999em;
    left: -999em;
    display: block;
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
  }
  /* level 2 */
  .main-nav-sub-menu {
    padding: 0.2em 1em 0.5em;
    background: #fff;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15);
  }
  .main-nav-sub-menu .main-nav-item {
    font-size: 1em;
    letter-spacing: 0;
    text-transform: none;
    border-bottom: 1px solid #eaf1f5;
  }
  .main-nav-sub-menu .main-nav-item:last-of-type {
    border: 0;
  }
  .main-nav-sub-menu .main-nav-link, .main-nav-item:hover .main-nav-sub-menu .main-nav-link,
  .main-nav-sub-menu .main-nav-link:focus {
    padding: 0.68em 0.4em;
    color: #225e7a;
  }
  .main-nav-sub-menu .main-nav-item:hover > .main-nav-link,
  .main-nav-sub-menu .main-nav-item:hover .main-nav-link,
  .main-nav-sub-menu .main-nav-link:focus {
    color: #ab2127;
  }
  /* level 3 */
  .main-nav-sub-menu--level3 {
    top: -0.2em;
  }
}
@media only screen and (min-width: 1200px) {
  .main-nav-menu > .main-nav-item {
    font-size: 0.9em;
  }
}
/*
 * mobile menu
 */
.js .is-desktop-nav {
  display: none;
}

.js .is-mobile-nav {
  display: block;
}

@media only screen and (min-width: 1000px) {
  .is-desktop-nav,
  .js .is-desktop-nav {
    display: inline-block;
  }
  .is-mobile-nav,
  .js .is-mobile-nav {
    display: none;
  }
}
.slicknav_btn {
  right: -0.5em;
  padding: 0.2em 0.5em;
  color: #225e7a;
  font-size: 1.2em;
}

.slicknav_nav {
  background: #fff;
  border-bottom: 2px solid #cadde5;
}
.slicknav_nav > li {
  border-color: #eaf1f5;
}
.slicknav_nav > li > a {
  font-weight: bold;
  font-size: 0.9em;
  letter-spacing: 0.01em;
}
.slicknav_nav li li a {
  font-size: 0.9em;
}
.slicknav_nav .slicknav_arrow::before {
  color: #225e7a;
}
.slicknav_nav .slicknav_row:hover .slicknav_arrow::before {
  color: #ab2127;
}
.slicknav_nav a {
  color: #225e7a;
}
.slicknav_nav a:hover, .slicknav_nav a:focus {
  color: #ab2127 !important;
}
.slicknav_nav > .menu-item-home .menu-item-icon {
  position: absolute !important;
  top: -999em;
  left: -999em;
  display: block;
  margin: -1px;
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}

/*
 * footer menu
 */
.footer-menu li {
  line-height: 1.6;
}

/* ---------------------------------------------
# header
--------------------------------------------- */
.site-header {
  position: relative;
  z-index: 999;
  border-bottom: 2px solid #cadde5;
}
.site-header.anchor {
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  animation: header 1s -0.4s ease-in-out forwards;
}
.site-header-masthead {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: space-between;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.anchor .site-header-masthead {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
@media only screen and (min-width: 1000px) {
  .site-header-masthead {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
  }
}
.site-header-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: flex-end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: flex-end;
  justify-content: flex-end;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding-left: 20px;
}
@media only screen and (min-width: 600px) {
  .site-header-content {
    padding-left: 40px;
  }
}
@media only screen and (min-width: 1000px) {
  .site-header-content {
    -ms-flex-item-align: flex-end;
    -ms-grid-row-align: flex-end;
    align-self: flex-end;
  }
}

@keyframes header {
  from {
    top: -100%;
  }
  to {
    top: 0;
  }
}
.logo {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 120px;
}
.anchor .logo {
  width: 100px;
}
.logo-img {
  display: block;
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 350px) {
  .logo {
    width: 150px;
  }
}
@media only screen and (min-width: 800px) {
  .logo {
    width: 180px;
  }
}
@media only screen and (min-width: 1300px) {
  .logo {
    width: 230px;
  }
}

.anchor .top-links {
  display: none;
}
.top-links-item {
  display: inline-block;
  margin: 0 0 0 -0.2em;
  font-weight: bold;
  font-size: 0.9em;
  letter-spacing: 0.01em;
  vertical-align: middle;
}
.top-links-item:first-of-type {
  font-weight: normal;
  font-size: 0.9em;
}
.top-links-item:first-of-type .top-links-icon {
  margin-right: 0.3em;
  color: #be252b;
  font-size: 0.8em;
}
@media only screen and (max-width: 1000px) {
  .top-links-item--contact, .top-links-item--search {
    display: none !important;
  }
}
@media only screen and (min-width: 1000px) {
  .top-links-item {
    margin-left: 1.8em;
  }
  .top-links-item:first-of-type {
    margin-right: 1em;
    font-size: 1.2em;
  }
}
.top-links-link {
  display: block;
  padding: 0.4em 0;
  color: #225e7a;
}

.search-toggle {
  display: block;
  padding: 0.4em;
  width: 1.8em;
  height: 1.8em;
  color: #225e7a;
  font-size: 0.9em;
  background: none;
  border: 0;
  -webkit-transition: color 300ms ease, background 300ms ease;
  -o-transition: color 300ms ease, background 300ms ease;
  transition: color 300ms ease, background 300ms ease;
  -webkit-appearance: none;
  -moz-appearance: none;
  overflow: hidden;
}
.search-toggle:hover, .search-toggle:focus, .search-toggle:active {
  color: #ab2127;
}
.search-toggle .top-links-icon {
  display: block;
  margin-bottom: 99em;
}

/* ---------------------------------------------
# footer
--------------------------------------------- */
.site-footer {
  color: #cadde5;
  background: #153a4c;
}

/* colophon */
.site-footer-colophon {
  padding-top: 2rem;
  padding-bottom: 2rem;
  max-width: 60rem;
  font-size: 0.85em;
  text-align: center;
}
@media only screen and (min-width: 1000px) {
  .site-footer-colophon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: flex-start;
    align-items: flex-start;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: space-between;
    justify-content: space-between;
    padding-top: 4rem;
    padding-bottom: 4rem;
    text-align: left;
  }
}
.site-footer-colophon a {
  color: #cadde5;
}
.site-footer-colophon a:hover, .site-footer-colophon a:focus {
  color: #fff;
  text-decoration: underline;
}
.site-footer-colophon .h3 {
  margin: 0 auto 0.5em;
  color: #fff;
  font-weight: bold;
  font-size: 1.25em;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.footer-column {
  margin: 0 0 3rem;
}
.footer-column:last-of-type {
  margin-bottom: 0;
}
@media only screen and (min-width: 1000px) {
  .footer-column {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-bottom: 0;
  }
  .footer-column:first-of-type {
    min-width: 230px;
  }
}

.footer-logo {
  width: 180px;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
  opacity: 0.7;
}
@media only screen and (min-width: 1000px) {
  .footer-logo {
    width: 230px;
  }
}

/* credit */
.site-footer-credit {
  padding: 0.8rem 0;
  color: #225e7a;
  font-size: 0.8em;
  text-align: center;
  background: #fff;
}
@media only screen and (min-width: 1000px) {
  .site-footer-credit {
    padding: 1.4rem 0;
  }
}

.legal-item {
  line-height: 1.8;
}
.legal-item:nth-child(n+2) {
  display: inline;
}
.legal-item::after {
  display: inline;
  margin: 0 0.5em;
  content: "|";
  color: #efc9ca;
}
.legal-item:first-of-type::after, .legal-item:last-of-type::after {
  display: none;
}
@media only screen and (min-width: 1000px) {
  .legal-item {
    display: inline;
  }
  .legal-item:first-of-type {
    margin-right: 2em;
  }
}

.legal-link {
  color: #ab2127;
  font-weight: bold;
}
.legal-link:hover, .legal-link:focus {
  color: #225e7a;
}

/* ---------------------------------------------
# blog pages
--------------------------------------------- */
/*
 * post meta
 */
.post-meta-list {
  margin: 0;
  list-style: none;
}

.post-meta--cats {
  margin-bottom: 0.4rem;
  text-align: center;
}
.post-meta--cats .post-meta-link {
  padding-bottom: 0.2em;
  font-size: 0.6em;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-bottom: 1px solid #2b7598;
  -webkit-transition: color 300ms ease, border 300ms ease;
  -o-transition: color 300ms ease, border 300ms ease;
  transition: color 300ms ease, border 300ms ease;
}
.post-meta--cats .post-meta-link:hover, .post-meta--cats .post-meta-link:focus {
  color: #000000;
  border-color: #000000;
}

.post-meta--tags {
  font-size: 0.9em;
}

/*
 * pagination
 */
.post-nav {
  margin: 0 auto;
  padding-top: 2rem;
  padding-bottom: 2rem;
  list-style: none;
}
.single-post .post-nav {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media only screen and (min-width: 800px) {
  .single-post .post-nav {
    padding-top: 4rem;
  }
}

.post-nav-item {
  margin: 0;
}
.post-nav-item--is-empty {
  opacity: 0.4;
}
@media only screen and (min-width: 360px) {
  .post-nav--page .post-nav-item {
    width: auto;
  }
  .post-nav--page .post-nav-item--prev {
    border-right-width: 1.25vw;
  }
}

.post-nav-link,
.post-nav-item .btn--disabled {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  margin-top: 0 !important;
  padding: 1.4em 1.2em 1.4em 4em !important;
  width: 100%;
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
}

.post-nav-item--next .post-nav-link,
.post-nav-item--next .btn--disabled {
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: flex-end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: flex-end;
  justify-content: flex-end;
  padding: 1.4em 4em 1.4em 1.2em !important;
  text-align: right;
}

.post-nav-item--prev .post-nav-icon {
  position: absolute;
  top: calc(50% - 0.5em);
  left: 1.6em;
}

.post-nav-item--next .post-nav-icon {
  position: absolute;
  top: calc(50% - 0.5em);
  right: 1.6em;
}

.post-nav-title {
  display: block;
  width: 100%;
  font-weight: normal;
  letter-spacing: 0;
  text-transform: none;
}

.post-nav-link:hover .post-nav-icon,
.post-nav-link:focus .post-nav-icon {
  color: #fff;
}

/*
 * posts archive
 */
.post-header,
.post-content {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
}

.post {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.post-media {
  width: 100%;
}

.post-image {
  margin: 0 auto 0.8rem;
  width: 100%;
}

.post-title {
  margin: 0 0 1rem;
  font-size: 1.2em;
  font-family: Georgia, "Times New Roman", Times, serif;
  letter-spacing: 0.02em;
  text-align: center;
}

.post-link {
  color: #000000;
}

.post-link:hover,
.post-link:focus {
  color: #666666;
}

.post-content {
  font-size: 0.8em;
}

.readmore {
  font-weight: bold;
  font-size: 0.9em;
  text-transform: lowercase;
}

/*
 * posts
 */
.single-post .post-header {
  margin-bottom: 2rem;
  text-align: center;
}

.single-post .post-header h1 {
  margin-top: 0.6em;
  font-size: 1.4em;
  font-family: Georgia, "Times New Roman", Times, serif;
}

.single-post .post-image {
  display: block;
  margin: 2rem auto;
  width: 100%;
}

.single-post .post-content {
  font-size: 1em;
}

.post-content > p:last-child,
.post-content > div:last-child {
  margin-bottom: 0;
}

.single-post .post-footer {
  margin-top: 2rem;
}

@media only screen and (min-width: 800px) {
  .single-post .post-footer {
    margin-top: 3rem;
  }
}
/*
 * comments
 */
.post + .comments {
  margin-top: 5rem;
}

.comment-title,
.comment-reply-title {
  display: block;
  margin: 0 auto 0.8em;
  color: #000000;
  font-weight: bold;
  font-size: 0.9em;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.comment-title {
  text-align: center;
}

.comment-respond {
  margin-top: 2rem;
  overflow: hidden;
}

.comment-respond p {
  margin: 0 0 0.8em;
  font-size: 0.9em;
}

@media only screen and (min-width: 800px) {
  .comment-respond p[class*=comment-form-] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.comment-respond label {
  display: block;
}

@media only screen and (min-width: 800px) {
  .comment-respond label {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 8rem;
  }
}
.comment-respond input[type=text],
.comment-respond input[type=email],
.comment-respond input[type=url] {
  width: 100%;
  max-width: 800px;
  vertical-align: top;
}

.comment-respond input[type=checkbox] {
  margin-right: 0.6em;
}

.comment-respond textarea {
  width: 100%;
  max-width: 800px;
  height: 5em;
  vertical-align: top;
}

.comment-respond .form-submit {
  margin: 2rem 0 0;
  text-align: center;
}

@media only screen and (min-width: 800px) {
  .comment-respond .form-submit {
    margin-left: 8rem;
    text-align: left;
  }
}
.comments ol {
  margin: 0;
  list-style: none;
}

.comments ol ol {
  margin-left: 1.5rem;
}

@media only screen and (min-width: 800px) {
  .comments ol ol {
    margin-left: 4rem;
  }
}
.comment-list-item {
  margin: 0 auto;
}

.comment-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2rem 0;
  font-size: 0.85em;
  border-bottom: 1px solid #f2f2f2;
}

.comment-image {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-right: 20px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  overflow: hidden;
}

.comment-body {
  width: 100%;
}

.comment-author {
  display: block;
  margin-bottom: 0.25em;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.comment-date {
  display: block;
  margin-bottom: 0.8em;
  color: #999999;
  font-style: italic;
  font-size: 0.8em;
}

.comment-body p {
  line-height: 1.46;
}

.comment-reply {
  float: right;
}

/* ---------------------------------------------
# pages
--------------------------------------------- */
.page-header {
  margin-bottom: 2rem;
  width: 100%;
  text-align: center;
}

@media only screen and (min-width: 800px) {
  .page-header {
    margin-bottom: 3.4rem;
  }
}
.page-title {
  margin: 0 auto;
  font-weight: bold;
  font-size: 2.2em;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
@media only screen and (min-width: 800px) {
  .page-title {
    letter-spacing: 0.08em;
  }
}

.page-content :first-child {
  margin-top: 0;
}

.archive-header {
  margin-top: -2rem;
  padding-top: 2em;
  padding-bottom: 2em;
  background: #f9f9f9;
}

@media only screen and (min-width: 800px) {
  .archive-header {
    margin-top: -4rem;
  }
}
.archive-title {
  font-family: Georgia, "Times New Roman", Times, serif;
  letter-spacing: 0;
  text-transform: none;
}

.page-small-title {
  display: inline-block;
  margin-bottom: 0.8em;
  padding-bottom: 0.2em;
  color: #999999;
  font-weight: normal;
  font-size: 0.65em;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-bottom: 1px solid #cccccc;
}

/*
 * front page
 */
.section {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media only screen and (min-width: 1000px) {
  .section {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
}
.section.has-background-color {
  color: #225e7a;
  background-color: #eaf1f5;
}
.section-title {
  margin: 0 auto;
  font-weight: bold;
}
.has-background-color .section-title {
  color: #153a4c;
}

.section--slider {
  padding-top: 0;
  padding-bottom: 0;
}

.section--intro .section-media {
  margin: 0 auto 3rem;
  max-width: 500px;
}
.section--intro .section-title {
  color: #225e7a;
}
.section--intro .section-title::after {
  display: block;
  margin: 1.8rem 0 1.5rem;
  content: "";
  width: 100%;
  border-bottom: 2px solid #cadde5;
}
@media only screen and (min-width: 1000px) {
  .section--intro {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .section--intro .section-media {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 45%;
    flex: 1 1 45%;
    margin-bottom: 0;
    padding: 0 4.5vw;
    max-width: none;
  }
  .section--intro .section-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 55%;
    flex: 1 1 55%;
    padding: 0 4.5vw;
  }
}

.features-item {
  margin-bottom: 4rem;
  text-align: center;
}
.features-item:last-of-type {
  margin-bottom: 0;
}
.features-icon {
  margin-bottom: 2.2rem;
  color: #b5cfdb;
  font-size: 5em;
}
.features-image {
  margin-bottom: 1.2rem;
  width: auto;
  height: 6em !important;
}
.features-title {
  margin-bottom: 0.6rem;
  font-size: 1.1em;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.features p {
  color: #1e526a;
  font-size: 0.88em;
}
@media only screen and (min-width: 1000px) {
  .features {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: space-between;
    justify-content: space-between;
  }
  .features-item {
    margin-bottom: 0;
    width: calc((100% - 7rem) / 3);
  }
}

.testimonial {
  padding-top: 3rem;
  text-align: center;
}
.testimonial::before {
  z-index: -1;
  position: absolute;
  top: -0.8rem;
  right: auto;
  left: auto;
  content: "\f10d";
  color: #c13036;
  font: bold 2.6em/1 Font Awesome\ 5 Pro;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.testimonial p {
  color: #225e7a;
  font-weight: 300;
  font-style: italic;
  font-size: 1.4em;
  line-height: 1.5;
}
.testimonial-footer {
  margin-top: 2rem;
  font-size: 0.9em;
}
.testimonial-author {
  font-weight: bold;
}
.testimonial-author + .testimonial-company::before {
  content: ", ";
}
@media only screen and (min-width: 1000px) {
  .testimonial p {
    font-size: 1.6em;
  }
}
@media only screen and (min-width: 1400px) {
  .testimonial {
    padding-top: 0;
  }
  .testimonial::before {
    top: -1.5rem;
    left: -1.6rem;
    font-size: 5em;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .testimonial p {
    font-size: 2.2em;
  }
}

.section--manufacturers {
  text-align: center;
}
.section--manufacturers .section-title {
  margin-bottom: 0.8rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.manufacturers-list {
  margin-top: 3rem;
}
.manufacturers-list-image {
  display: block;
  margin: 0 3vw;
  width: auto !important;
  max-width: 8rem;
  max-height: 4rem;
}
@media only screen and (min-width: 800px) {
  .manufacturers-list-image {
    max-width: 12rem;
    max-height: 6rem;
  }
}

/*
 * disciplines
 */
.surgical-disciplines .site-content {
  padding-top: 0;
  padding-bottom: 0;
}

.discipline-icons-wrapper {
  border-bottom: 2px solid #cadde5;
}
.discipline-icons-wrapper.anchor {
  z-index: 998;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
}

.discipline-icons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  list-style: none;
}
.discipline-icons-item {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  position: relative;
  margin: 0;
  max-width: 120px;
  text-align: center;
}
.discipline-icons-link {
  display: block;
  border-bottom-width: 0;
}
.discipline-icons-link:hover, .discipline-icons-link:focus {
  color: #ab2127;
}
.discipline-icons-image {
  width: 90%;
  max-width: 90px;
  opacity: 1;
  -webkit-filter: blur(0);
  filter: blur(0);
  -webkit-transition: opacity 200ms ease, filter 200ms ease;
  -o-transition: opacity 200ms ease, filter 200ms ease;
  transition: opacity 200ms ease, filter 200ms ease;
}
.discipline-icons-title {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  font-weight: bold;
  font-size: 0.9em;
  line-height: 1.2;
  opacity: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity 300ms ease;
  -o-transition: opacity 300ms ease;
  transition: opacity 300ms ease;
}
@media only screen and (min-width: 600px) {
  .discipline-icons {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
  }
  .discipline-icons-image {
    width: 55%;
  }
  .discipline-icons-link:hover .discipline-icons-image, .discipline-icons-link:focus .discipline-icons-image {
    opacity: 0.2;
    -webkit-filter: blur(1px);
    filter: blur(1px);
  }
  .discipline-icons-link:hover .discipline-icons-title, .discipline-icons-link:focus .discipline-icons-title {
    opacity: 1;
  }
}

.discipline-section-header {
  margin: 0;
  padding: 0.6em 5.6vw;
  color: #fff;
  font-weight: bold;
  font-size: 1.4em;
  letter-spacing: 0.1em;
  text-align: center;
  text-transform: uppercase;
  background: #225e7a;
}
@media only screen and (min-width: 800px) {
  .discipline-section-header {
    padding: 0.4em 0.6em;
    font-size: 2.2em;
    letter-spacing: 0.2em;
  }
}

.discipline-media {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 4vw;
}
.discipline:nth-of-type(even) .discipline-media {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
.discipline-image {
  width: auto;
  max-width: 90%;
  max-height: 500px;
}
.discipline-content {
  position: relative;
  padding: 10vw 5.6vw;
  background: #f4f8fa;
  overflow: hidden;
}
.discipline-content::before {
  position: absolute;
  top: -0.6em;
  left: 50%;
  content: "\f354";
  color: #fff;
  font: bold 5em/1 Font Awesome\ 5 Pro !important;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.discipline-title {
  color: #ab2127;
  font-weight: bold;
}
.discipline-link {
  display: inline-block;
  margin: 0 1.5em 0.6em 0;
  color: #153a4c;
  font-size: 0.9em;
  border-bottom-width: 0;
}
.discipline-icon {
  margin-right: 0.5em;
  color: #5591ad;
}
@media only screen and (min-width: 800px) {
  .discipline {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .discipline-media {
    padding: 3vw;
    width: 50%;
  }
  .discipline-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 5.6vw 7vw;
    width: 50%;
  }
  .discipline-content::before {
    top: 50%;
    left: -0.6em;
    -webkit-transform: translateY(-50%) rotate(-90deg);
    -ms-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
  }
  .discipline:nth-of-type(even) .discipline-content::before {
    right: -0.6em;
    left: auto;
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
  }
}
@media only screen and (min-width: 1400px) {
  .discipline-content::before {
    font-size: 8em !important;
  }
}

/*
 * manufacturers
 */
.manufacturer-wrapper {
  margin-bottom: -2rem;
}
@media only screen and (min-width: 800px) {
  .manufacturer-wrapper {
    margin-bottom: -4rem;
  }
}

.manufacturer.box {
  text-align: center;
  background: rgb(255, 255, 255);
  background: -moz-linear-gradient(top, rgb(255, 255, 255) 0%, #eaf1f5 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgb(255, 255, 255)), color-stop(100%, #eaf1f5));
  background: -webkit-linear-gradient(top, rgb(255, 255, 255) 0%, #eaf1f5 100%);
  background: -o-linear-gradient(top, rgb(255, 255, 255) 0%, #eaf1f5 100%);
  background: -ms-linear-gradient(top, rgb(255, 255, 255) 0%, #eaf1f5 100%);
  background: linear-gradient(to bottom, rgb(255, 255, 255) 0%, #eaf1f5 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffffff", endColorstr="#eaf1f5", GradientType=0 );
}
.manufacturer-image {
  width: auto;
  max-height: 120px;
}
@media only screen and (min-width: 800px) {
  .manufacturer-image {
    max-height: 160px;
  }
}
.manufacturer-image.portrait {
  margin-bottom: 2rem;
}
.manufacturer-link {
  display: inline-block;
  margin: 0 1.5em 0.6em 0;
  color: #153a4c;
  font-size: 0.9em;
  border-bottom-width: 0;
}
.manufacturer-icon {
  margin-right: 0.5em;
  color: #5591ad;
}
.manufacturer-icon {
  margin-right: 0.5em;
  color: #5591ad;
}

/*
 * contact
 */
.page-id-18 .page-header {
  position: absolute !important;
  top: -999em;
  left: -999em;
  display: block;
  margin: -1px;
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}

.contact-info-wrapper.alignfull {
  margin-top: -2rem;
}
@media only screen and (min-width: 800px) {
  .contact-info-wrapper.alignfull {
    margin-top: -4rem;
  }
}
@media only screen and (min-width: 600px) {
  .contact-info-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.contact-info-wrapper .map {
  min-height: 46vh;
  background-position: center center;
  background-size: cover;
  border-right: 2px solid #fff;
}
@media only screen and (min-width: 600px) {
  .contact-info-wrapper .map {
    width: 50%;
    min-height: 0;
  }
}
.contact-info-wrapper .contact-info {
  margin: 0;
  padding: 4rem 6vw;
  color: #cadde5;
  list-style: none;
  background-color: #153a4c;
}
@media only screen and (min-width: 600px) {
  .contact-info-wrapper .contact-info {
    padding-right: 8vw;
    padding-left: 8vw;
    width: 50%;
  }
}
.contact-info-wrapper .contact-info-item {
  margin: 0;
  line-height: 1.5;
}
.contact-info-wrapper .contact-info-item[itemprop=address] + .contact-info-wrapper .contact-info-item {
  margin-top: 1em;
}
.contact-info-wrapper .contact-info-item.h3 {
  margin: 0 auto 0.5em;
  color: #fff;
  font-weight: bold;
  font-size: 1.2em;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.contact-info-wrapper .contact-info-link {
  color: #cadde5;
  font-weight: normal;
  border-bottom-width: 0;
}
.contact-info-wrapper .contact-info-link:hover, .contact-info-wrapper .contact-info-link:focus {
  text-decoration: underline;
}

/*
 * search results
 */
.results-count {
  display: block;
  margin-bottom: 0.4em;
  font-weight: normal;
  font-size: 1rem;
  letter-spacing: 0;
  text-transform: none;
}

.search-result {
  margin-bottom: 2rem;
}
.search-result:last-of-type {
  margin-bottom: 0;
}
.search-result-title {
  margin: 0 0 0.1em;
  font-size: 1.4em;
}
.search-result-link {
  color: #ab2127;
  text-decoration: none;
}
.search-result-link:hover, .search-result-link:focus {
  color: #225e7a;
}
.search-result p {
  margin-bottom: 0.2em;
  font-size: 0.9em;
  line-height: 1.46;
}

/*
 * 404 page
 */
.error404 .page-list {
  margin-bottom: 3rem;
}

/* ---------------------------------------------
# widgets
--------------------------------------------- */
.widget-title {
  margin: 0 auto 1.2rem;
  font-weight: bold;
  font-size: 1em;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.widget p {
  font-size: 0.9625em;
  line-height: 1.66;
}
.widget ul {
  list-style: none;
}
.widget li {
  padding: 0.6em 0.1em;
  border-bottom: 1px solid #ececec;
}
.widget p:last-of-type,
.widget ul:last-of-type,
.widget li:last-of-type {
  margin-bottom: 0;
  border: 0;
}
.widget a:not(.social-link):not(.tag-cloud-link) {
  color: #404040;
}
.widget a:not(.social-link):not(.tag-cloud-link):hover, .widget a:not(.social-link):not(.tag-cloud-link):focus {
  color: #000000;
  text-decoration: underline;
}

/* sidebar widgets */
.widget--sidebar {
  margin-bottom: 3rem;
  font-size: 0.9em;
}
.widget--sidebar:last-of-type {
  margin-bottom: 0;
}
.widget--sidebar .widget-title {
  padding: 1.25em;
  font-size: 0.8em;
  text-align: center;
  border: 1px solid #2b7598;
}
.widget--sidebar .widget-title + div {
  margin-top: 1em;
}
.widget--sidebar li {
  padding: 0.68em 0.2em;
  border-bottom: 1px solid #ececec;
}
.widget--sidebar li li {
  margin-left: 0.8em;
  padding-top: 0.6em;
  padding-bottom: 0;
  font-size: 1em;
  border: 0;
}

/* footer widget */
.widget--footer {
  margin-bottom: 1.8rem;
}
.widget--footer:last-of-type {
  margin-bottom: 0;
}
.widget--footer .widget-title {
  color: #fff;
  text-align: center;
}
@media only screen and (min-width: 1000px) {
  .widget--footer .widget-title {
    text-align: left;
  }
}

/*
 * tag cloud
 */
.tagcloud {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 0.65em;
}

.widget--footer .tagcloud {
  -webkit-box-pack: flex-start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: flex-start;
  justify-content: flex-start;
}

.tag-cloud-link,
.tag-cloud-link[style] {
  display: inline-block;
  margin: 0 0.3rem 0.6rem;
  padding: 0.8em 1.2em;
  color: #666666;
  font-size: 1em !important;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
  background: #f2f2f2;
}

.tag-cloud-link:hover,
.tag-cloud-link:focus {
  color: #000000;
  background: #eaf1f5;
}

/* ---------------------------------------------
# asides
--------------------------------------------- */
/*
 * search
 */
.search-form {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.search-form-field {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  margin-right: 0.6em;
  padding-right: 0.6em;
  padding-left: 0.6em;
  width: calc(100% - 5em);
  height: 2.8rem !important;
  font-size: 0.9em;
}
.search-form-btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 4em;
  height: 2.8rem !important;
  padding: 1.1em 0.4em !important;
  font-size: 0.8rem !important;
  line-height: normal !important;
}
@media only screen and (min-width: 800px) {
  .search-form-field {
    font-size: 1em;
  }
  .search-form-btn {
    width: 5em;
  }
}

.site-content .search-form {
  margin-top: 2rem;
  margin-bottom: 3rem;
  max-width: 40rem;
}
.site-content .search-form-field {
  margin-right: 0.5em;
  border-color: transparent;
}
.site-content .search-form-field:focus {
  border-color: #be252b;
}

.mobile-search .search-form {
  margin: 1.5em 0.5em 1em;
}

.search-bar {
  display: none;
  position: absolute;
  top: calc(100% + 2px);
  padding-top: 0.8em;
  padding-bottom: 0.8em;
  width: 100%;
  background: #cadde5;
}
.search-bar .search-form {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.search-bar .search-form-field {
  margin-right: 0.5em;
  background: #fff;
  border-color: #fff;
}
.search-bar .search-form-field:focus {
  border-color: #be252b;
}

/*
 * social icons
 */
.social-item {
  display: inline-block;
  margin: 0 0.25em;
  border: 0 !important;
}

@media only screen and (min-width: 800px) {
  .social-item {
    margin: 0 0 0 0.5em;
  }
}
.social-link {
  position: relative;
  display: block;
  margin: 0;
  padding: 0.6em 0;
  width: 2.4em;
  height: 2.4em;
  color: #000000;
  font-size: 1em;
  line-height: 1;
  text-align: center;
  background: transparent;
  border: 1px solid #2b7598;
  border-radius: 50%;
  overflow: hidden;
  behavior: url("/?pie=true");
}

.social-link:hover,
.social-link:focus {
  color: #fff;
  background: #2b7598;
  border-color: #2b7598;
}

.social-icon {
  margin-bottom: 99em;
}

.social--header {
  display: none;
  font-size: 0.9em;
}

@media only screen and (min-width: 600px) {
  .social--header {
    display: block;
  }
}
.social--header .social-item {
  font-size: 0.9em;
}

.connect {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 0;
}

@media only screen and (min-width: 1000px) {
  .connect:not(.column-count--1 .connect) {
    -webkit-box-pack: flex-end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: flex-end;
    justify-content: flex-end;
  }
}
.connect .widget-title {
  margin: 0 0 0.28em;
}

.social--footer {
  width: 100%;
}

@media only screen and (min-width: 1000px) {
  .social--footer {
    margin: 0 0 0.5em 1em !important;
    width: auto;
  }
}
/* contact info */
.contact-info-item {
  line-height: 1.5;
}
.contact-info-item[itemprop=address] + .contact-info-item {
  margin-top: 1em;
}

/* ---------------------------------------------
# blocks
--------------------------------------------- */
.wp-block-video,
.wp-block-file,
.wp-block-media-text,
.wp-block-verse {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

/* ---------------------------------------------
# misc
--------------------------------------------- */
/* top link */
.top-link {
  z-index: 999;
  position: fixed;
  right: 0.5rem;
  bottom: 0.5rem;
  display: block;
  padding: 0.15em;
  width: 1.4em;
  height: 1.4em;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
  background: rgba(0, 0, 0, 0.25);
  border-radius: 2px;
  -webkit-transition: background 300ms ease;
  -o-transition: background 300ms ease;
  transition: background 300ms ease;
  overflow: hidden;
}
.mobile .top-link {
  right: 0;
  bottom: 4.2rem;
}
.top-link:hover {
  color: #fff;
  background: #be252b;
}
.top-link-icon {
  display: block;
  margin-bottom: 999em;
}
@media only screen and (min-width: 800px) {
  .top-link {
    right: 1.4rem;
    bottom: 1.3rem;
  }
}

/* ---------------------------------------------
# gallery
--------------------------------------------- */
.wp-block-gallery:not(.alignfull) {
  margin: 3rem 0 2rem;
}

.wp-block-gallery .blocks-gallery-item {
  max-height: 40vw;
}

@media only screen and (min-width: 600px) {
  .wp-block-gallery .blocks-gallery-item {
    max-height: 22vw;
  }
}
.wp-block-gallery .blocks-gallery-image figcaption,
.wp-block-gallery .blocks-gallery-item figcaption {
  line-height: 1.36;
}

.gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 -0.5em 1.5em -0.5em;
}

.gallery::after {
  display: table;
  content: "";
  clear: both;
}

.gallery-item {
  float: left;
  margin: 0;
  padding: 0.5em;
  max-width: 50%;
}

@media only screen and (min-width: 500px) {
  .gallery-columns-1 .gallery-item {
    float: none;
    width: 100%;
  }
  .gallery-columns-2 .gallery-item {
    max-width: 50%;
  }
  .gallery-columns-3 .gallery-item {
    max-width: 33.33%;
  }
  .gallery-columns-4 .gallery-item {
    max-width: 25%;
  }
  .gallery-columns-5 .gallery-item {
    max-width: 20%;
  }
  .gallery-columns-6 .gallery-item {
    max-width: 16.66%;
  }
  .gallery-columns-7 .gallery-item {
    max-width: 14.28%;
  }
  .gallery-columns-8 .gallery-item {
    max-width: 12.5%;
  }
  .gallery-columns-9 .gallery-item {
    max-width: 11.11%;
  }
  .gallery-columns-2 .gallery-item:nth-child(2n+1), .gallery-columns-3 .gallery-item:nth-child(3n+1), .gallery-columns-4 .gallery-item:nth-child(4n+1), .gallery-columns-5 .gallery-item:nth-child(5n+1), .gallery-columns-6 .gallery-item:nth-child(6n+1), .gallery-columns-7 .gallery-item:nth-child(7n+1), .gallery-columns-8 .gallery-item:nth-child(8n+1), .gallery-columns-9 .gallery-item:nth-child(9n+1) {
    clear: left;
  }
}
.gallery-item img {
  display: block;
  margin: 0 auto;
}

.gallery-caption {
  display: block;
}

/* ---------------------------------------------
# ninja forms
--------------------------------------------- */
.nf-form-cont {
  margin-top: 2.5rem;
}

.nf-form-fields-required {
  margin-bottom: 1.5em;
}

.ninja-forms-req-symbol {
  color: #be252b !important;
  font-weight: bold;
  font-size: 1em;
}

.hr-container div {
  width: 100%;
}

/* fields */
.nf-field-container {
  margin-bottom: 2rem;
}

.field-wrap .nf-field-label label {
  font-weight: normal !important;
  font-size: 1em !important;
  line-height: 1.46;
  text-align: left !important;
}

.label-above .nf-field-label,
.nf-field-description {
  margin-bottom: 0.4em !important;
}

.field-wrap textarea {
  max-width: 100% !important;
}

.list-select-wrap .nf-field-element {
  position: relative;
}

.list-select-wrap .nf-field-element::before {
  position: absolute;
  top: 50%;
  right: 0.5em;
  margin: 0;
  content: "\f0d7";
  color: #153a4c;
  font: bold 1em/1 Font Awesome\ 5 Pro !important;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.list-wrap li {
  line-height: 1.26;
}

.list-checkbox-wrap .nf-field-element li input,
.list-radio-wrap .nf-field-element li input {
  margin-top: 0.3em !important;
}

.label-right .checkbox-wrap .nf-field-label {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding-left: 0.2em;
}

.nf-error .ninja-forms-field {
  border-color: #be252b !important;
}

/* submit button */
.submit-container {
  margin-top: 3rem;
}

.submit-container.label-above {
  text-align: center;
}

/* error msg */
.nf-error-msg {
  color: #be252b !important;
  font-weight: 600;
  font-size: 0.85em;
}

.nf-form-errors .nf-error-msg {
  margin-top: 2.5rem;
  font-size: 1em;
  text-align: center;
}

.nf-input-limit + .nf-error {
  margin-top: 0.4em;
}

/* success msg */
.nf-response-msg {
  margin: 2em auto;
  padding: 1.2em;
  color: #be252b;
  font-size: 1.3em;
  text-align: center;
  border-top: 1px solid #be252b;
  border-bottom: 1px solid #be252b;
}

/* smaller screens */
@media only screen and (max-width: 800px) {
  .nf-field-container {
    margin-right: 0 !important;
    margin-left: 0 !important;
    width: 100% !important;
  }
  .label-left .nf-field-label,
  .label-left .nf-field-element,
  .label-left .nf-field-description,
  .label-left .nf-after-field {
    margin-left: 0 !important;
    width: 100% !important;
  }
  .label-left .nf-field-description {
    -webkit-box-ordinal-group: 7;
    -ms-flex-order: 6;
    order: 6;
  }
  .submit-container {
    margin-top: 2rem;
    text-align: center;
  }
  .nf-form-errors .nf-error-msg {
    margin-top: 1.8rem;
  }
}
