/**
 * DBS Slate Stylesheet
 * DBS>Interactive
 *
 * Add and remove modules according to the projects needs. Be sure to remove
 * the commented out modules if you are not using them.
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/**
	 * 1. Set default font family to sans-serif.
	 * 2. Prevent iOS and IE text size adjust after device orientation change,
	 *	without disabling user zoom.
	 */
html {
  font-size: 100%;
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
	 * Remove default margin.
	 */
body {
  margin: 0; }

/* HTML5 display definitions
	   ========================================================================== */
/**
	 * Correct `block` display not defined for any HTML5 element in IE 8/9.
	 * Correct `block` display not defined for `details` or `summary` in IE 10/11
	 * and Firefox.
	 * Correct `block` display not defined for `main` in IE 11.
	 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
	 * 1. Correct `inline-block` display not defined in IE 8/9.
	 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
	 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  *display: inline;
  *zoom: 1;
  vertical-align: baseline;
  /* 2 */ }

/**
	 * Prevent modern browsers from displaying `audio` without controls.
	 * Remove excess height in iOS 5 devices.
	 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
	   * Address `[hidden]` styling not present in IE 8/9/10.
	   */
[hidden] {
  display: none; }

/**
	 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
	 */
template {
  display: none; }

/* Links
	   ========================================================================== */
/**
	   * Remove the gray background color from active links in IE 10.
	   */
a {
  background-color: transparent; }

/**
	 * Improve readability of focused elements when they are also in an
	 * active/hover state.
	 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
	   ========================================================================== */
/**
	 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
	 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
	 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
	 */
b,
strong {
  font-weight: bold; }

/**
	 * Address styling not present in Safari and Chrome.
	 */
dfn {
  font-style: italic; }

/**
	 * Address variable `h1` font-size and margin within `section` and `article`
	 * contexts in Firefox 4+, Safari, and Chrome.
	 */
h1 {
  font-size: 2em;
  /* Set 1 unit of vertical rhythm on the top and bottom margins. */
  margin: 0.75em 0; }

h2 {
  font-size: 1.5em;
  margin: 1em 0; }

h3 {
  font-size: 1.17em;
  margin: 1.28205em 0; }

h4 {
  font-size: 1em;
  margin: 1.5em 0; }

h5 {
  font-size: 0.83em;
  margin: 1.80723em 0; }

h6 {
  font-size: 0.67em;
  margin: 2.23881em 0; }

/**
	   * Address styling not present in IE 8/9.
	   */
mark {
  background: #ff0;
  color: #000; }

/**
	 * Address inconsistent and variable font size in all browsers.
	 */
small {
  font-size: 80%; }

/**
	 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
	 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
	   ========================================================================== */
/**
	   * Remove border when inside `a` element in IE 8/9/10.
	   */
img {
  border: 0;
  /* Improve image quality when scaled in IE 7. */
  -ms-interpolation-mode: bicubic; }

/**
	 * Correct overflow not hidden in IE 9/10/11.
	 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
	   ========================================================================== */
/**
	   * Address margins set differently in IE 6/7.
	   */
dl,
menu,
ol,
ul {
  margin: 1.5em 0; }

dd {
  margin: 0 0 0 40px; }

/**
	   * Address paddings set differently in IE 6/7.
	   */
menu,
ol,
ul {
  padding: 0 0 0 40px; }

/**
	   * Correct list images handled incorrectly in IE 7.
	   */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
  padding: 0;
  margin: 0; }

/**
	   * Set 1 unit of vertical rhythm on the top and bottom margin.
	   */
blockquote {
  margin: 1.5em 40px; }

/**
	   * Address margin not present in IE 8/9 and Safari.
	   */
figure {
  margin: 1.5em 40px; }

/**
	 * Address differences between Firefox and other browsers.
	 */
hr {
  box-sizing: content-box;
  height: 0; }

/**
	   * Set 1 unit of vertical rhythm on the top and bottom margin.
	   */
p,
pre {
  margin: 1.5em 0; }

/**
	 * Contain overflow in all browsers.
	 */
pre {
  overflow: auto; }

/**
	 * Address odd `em`-unit font size rendering in all browsers.
	 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  _font-family: 'courier new', monospace;
  font-size: 1em; }

/* Forms
	   ========================================================================== */
/**
	 * Known limitation: by default, Chrome and Safari on OS X allow very limited
	 * styling of `select`, unless a `border` property is set.
	 */
/**
	   * Correct margin displayed oddly in IE 6/7.
	   */
form {
  margin: 0; }

/**
	 * 1. Correct color not being inherited.
	 *	Known issue: affects color of disabled elements.
	 * 2. Correct font properties not being inherited.
	 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
	 * 4. Address `font-family` inconsistency between `textarea` and other form in IE 7
	 * 5. Improve appearance and consistency with IE 6/7.
	 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
  *font-family: sans-serif;
  /* 4 */
  *vertical-align: middle;
  /* 5 */ }

/**
	 * Address `overflow` set to `hidden` in IE 8/9/10/11.
	 */
button {
  overflow: visible; }

/**
	 * Address inconsistent `text-transform` inheritance for `button` and `select`.
	 * All other form control elements do not inherit `text-transform` values.
	 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
	 * Correct `select` style inheritance in Firefox.
	 */
button,
select {
  text-transform: none; }

/**
	 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
	 *	and `video` controls.
	 * 2. Correct inability to style clickable `input` types in iOS.
	 * 3. Improve usability and consistency of cursor style between image-type
	 *	`input` and others.
	 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
	 *	Known issue: inner spacing remains in IE 6.
	 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */ }

/**
	 * Re-set default cursor for disabled elements.
	 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
	 * Remove inner padding and border in Firefox 4+.
	 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
	 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
	 * the UA stylesheet.
	 */
input {
  line-height: normal; }

/**
	   * It's recommended that you don't attempt to style these elements.
	   * Firefox's implementation doesn't respect box-sizing, padding, or width.
	   *
	   * 1. Address box sizing set to `content-box` in IE 8/9/10.
	   * 2. Remove excess padding in IE 8/9/10.
	   * 3. Remove excess padding in IE 7.
	   *	Known issue: excess padding remains in IE 6.
	   */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

/**
	 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
	 * `font-size` values of the `input`, it causes the cursor style of the
	 * decrement button to change from `default` to `text`.
	 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
	 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
	 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
	 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  /**
	   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
	   * Safari (but not Chrome) clips the cancel button when the search input has
	   * padding (and `textfield` appearance).
	   */ }
  input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

/**
	 * Define consistent border, margin, and padding.
	 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
	 * 1. Correct `color` not being inherited in IE 8/9/10/11.
	 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
	 * 3. Correct alignment displayed oddly in IE 6/7.
	 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
  *margin-left: -7px;
  /* 3 */ }

/**
	 * Remove default vertical scrollbar in IE 8/9/10/11.
	 */
textarea {
  overflow: auto; }

/**
	 * Don't inherit the `font-weight` (applied by a rule above).
	 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
	 */
optgroup {
  font-weight: bold; }

/* Tables
	   ========================================================================== */
/**
	 * Remove most spacing between table cells.
	 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/**
 * Global Mixins
 * DBS>Interactive
 */
/**
 * Helpful mixin for font size scaling.
 *
 * Decimal values should not be used here!
 * The results will not be what you'd expect.
 *
 * @usage
 * 		@include font-scale(-1) - smaller
 * 		@include font-scale(0) = 1em (.8em in mobile)
 * 		@include font-scale(1) - larger
 * 			etc...
 */
/**
 * Fixes clear bug in certain situations
 *
 * @group layout
 * @link http://fuseinteractive.ca/blog/understanding-humble-clearfix#.VJ853sAEo Understanding the humble clearfix
 * @example scss - Usage
 *   @extend clearFix; // That's It!
 */
.clearfix:before, .clearfix:after {
  content: "";
  display: table; }

.clearfix:after {
  clear: both; }

/**
 * An easy way to truncate text with an ellipsis. Requires the element to be block or inline-block.
 *
 * @group Typography
 * @link http://web-design-weekly.com/2013/05/12/handy-sass-mixins/ Handy Sass Mixins
 * @example scss - Usage
 *   .text-truncate {
 *	  @extend text-truncate;
 *   }
 */
/**
 * Hide On Breakpoint
 *
 * @param {Variable} $bp - Breakpoint variable, ie $largeScreen
 * @param {String} $determinate ('min') - Whether it is max-width or min-width based
 * @group General
 * @link https://github.com/GumbyFramework/Gumby/blob/master/sass/functions/_visibility.scss Gumby Framework
 * @example scss - Basic Usage
 *   .class{
 *	  @include hideOn($largeScreen);
 *   }
 *
 * @example scss - Reversed Determinate
 *   @include hideOn($baby, 'max');
 */
/**
 * Show On Breakpoint
 *
 * @param {Variable} $bp - Breakpoint variable, ie $largeScreen
 * @param {String} $determinate ('min') - Whether it is max-width or min-width based
 * @group General
 * @link https://github.com/GumbyFramework/Gumby/blob/master/sass/functions/_visibility.scss Gumby Framework
 * @example scss - Basic Usage
 *   .class{
 *	  @include showOn($largeScreen);
 *   }
 *
 * @example scss - Reversed Determinate
 *   @include showOn($baby, 'max');
 */
/**
 * TODO: Document
 */
/**
 * Size mixin - Sets width and height.
 *
 * When only one argument is specified, both the height and width are set to the same value.
 *
 * @param width - required
 * @param height
 */
/**
 * REFLEX ISH GRID
 */
/**
 * Exponent function
 *
 * NOTE: This does NOT work for decimal values
 *
 *   @see: https://css-tricks.com/snippets/sass/power-function/
 */
/**
 * Slate Layout Mixins
 * DBS>Interactive
 */
/**
 * Default responsive padding mixin for layout content
 */
/**
 * Default responsive margin mixin for layout content
 */
/**
 * Mixin to keep space (either margin or padding) between cells consistent
 *
 * It takes 2 arguments:
 * 		@param $space_property = { 'margin'|'padding' }
 * 		@param $reverse = { true|false }
 */
/**
 * Responsive layout mixin to constrain a width to containSize.
 */
/**
 * To add a new font:
 * DBS>Interactive
 *
 * Take the fonts and upload them here:
 * 	https://www.fontsquirrel.com/tools/webfont-generator
 *
 * 	Download the resulting files and copy the eot, svg, ttf, woff, and woff2
 * 	files into the appropriate directory.
 *
 * 	Make sure that the font-weight and font-style match the appropriate font.
 */
@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans/opensans-light-webfont.eot");
  src: url("../fonts/open-sans/opensans-light-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans/opensans-light-webfont.woff2") format("woff2"), url("../fonts/open-sans/opensans-light-webfont.woff") format("woff"), url("../fonts/open-sans/opensans-light-webfont.ttf") format("truetype"), url("../fonts/open-sans/opensans-light-webfont.svg#opensans") format("svg");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans/opensans-lightitalic-webfont.eot");
  src: url("../fonts/open-sans/opensans-lightitalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans/opensans-lightitalic-webfont.woff2") format("woff2"), url("../fonts/open-sans/opensans-lightitalic-webfont.woff") format("woff"), url("../fonts/open-sans/opensans-lightitalic-webfont.ttf") format("truetype"), url("../fonts/open-sans/opensans-lightitalic-webfont.svg#opensans") format("svg");
  font-weight: 300;
  font-style: italic; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans/opensans-regular-webfont.eot");
  src: url("../fonts/open-sans/opensans-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans/opensans-regular-webfont.woff2") format("woff2"), url("../fonts/open-sans/opensans-regular-webfont.woff") format("woff"), url("../fonts/open-sans/opensans-regular-webfont.ttf") format("truetype"), url("../fonts/open-sans/opensans-regular-webfont.svg#opensans") format("svg");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans/opensans-bold-webfont.eot");
  src: url("../fonts/open-sans/opensans-bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans/opensans-bold-webfont.woff2") format("woff2"), url("../fonts/open-sans/opensans-bold-webfont.woff") format("woff"), url("../fonts/open-sans/opensans-bold-webfont.ttf") format("truetype"), url("../fonts/open-sans/opensans-bold-webfont.svg#opensans") format("svg");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Source Sarif Pro';
  src: url("../fonts/source-sarif-pro/SourceSerifPro-Regular.eot");
  src: url("../fonts/source-sarif-pro/SourceSerifPro-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sarif-pro/SourceSerifPro-Regular.woff2") format("woff2"), url("../fonts/source-sarif-pro/SourceSerifPro-Regular.woff") format("woff"), url("../fonts/source-sarif-pro/SourceSerifPro-Regular.ttf") format("truetype"), url("../fonts/source-sarif-pro/SourceSerifPro-Regular.svg#SourceSerifPro-Regular") format("svg");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'Source Sarif Pro';
  src: url("../fonts/source-sarif-pro/SourceSerifPro-Bold.eot");
  src: url("../fonts/source-sarif-pro/SourceSerifPro-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sarif-pro/SourceSerifPro-Bold.woff2") format("woff2"), url("../fonts/source-sarif-pro/SourceSerifPro-Bold.woff") format("woff"), url("../fonts/source-sarif-pro/SourceSerifPro-Bold.ttf") format("truetype"), url("../fonts/source-sarif-pro/SourceSerifPro-Bold.svg#SourceSerifPro-Bold") format("svg");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Source Sarif Pro';
  src: url("../fonts/source-sarif-pro/SourceSerifPro-Semibold.eot");
  src: url("./fonts/source-sarif-pro/SourceSerifPro-Semibold.eot?#iefix") format("embedded-opentype"), url("./fonts/source-sarif-pro/SourceSerifPro-Semibold.woff2") format("woff2"), url("./fonts/source-sarif-pro/SourceSerifPro-Semibold.woff") format("woff"), url("./fonts/source-sarif-pro/SourceSerifPro-Semibold.ttf") format("truetype"), url("./fonts/source-sarif-pro/SourceSerifPro-Semibold.svg#SourceSerifPro-Semibold") format("svg");
  font-weight: 500;
  font-style: normal; }

/**
 * Primary Font Family
 */
/**
 * Theme Variables - colors, font sizes, breakpoint etc.
 * All the variables will goes here based on project tech specification
 * DBS>Interactive
 */
/**
 * Type style definitions
 */
.button, .bg-dark .button,
.button--white, .show-and-hide-buttons button.show-more-content, html, body, nav {
  font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
  letter-spacing: 0.025em;
  background-color: transparent;
  color: #252525; }

.button, .bg-dark .button,
.button--white, .show-and-hide-buttons button.show-more-content {
  font-weight: bold; }

h1,
h2,
h3,
h4,
h5,
h6 {
  background-color: transparent;
  color: #252525;
  font-family: "Source Sarif Pro", "Times New Roman", "Times", serif;
  font-weight: bold;
  line-height: 1.25; }

/**
 * General styles and helpful classes
 * DBS>Interactive
 */
*,
*:after,
*:before,
input[type=search] {
  box-sizing: inherit; }

* {
  -webkit-tap-highlight-color: rgba(59, 70, 70, 0.3); }

::selection {
  background: rgba(59, 70, 70, 0.3); }

body :not(div):focus {
  box-shadow: 0 0 0 2px #000, 0 0 0 4px #ffffff !important;
  outline: 0 !important; }

body .site-content:after {
  content: '';
  background-color: rgba(0, 0, 0, 0.8);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity .35s linear;
  z-index: 9;
  visibility: hidden; }

body.contains-open-search-field .site-content:after, body.opened-menu .site-content:after {
  opacity: 1;
  transition: opacity .35s linear;
  visibility: visible; }

body .site-content {
  margin-top: 3.5em; }
  @media screen and (min-width: 48em) {
    body .site-content {
      margin-top: 6em; } }

body.contains-open-search-field .site-content {
  margin-top: 0; }

body.contains-open-search-field .search-form__container {
  margin-top: 6em; }

body.wp-admin :focus {
  box-shadow: none; }

html {
  box-sizing: border-box; }

address,
ol,
p,
ul {
  margin: 0 0 1.5rem; }

ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0 0 1.5rem; }

hr {
  border: none;
  border-top: 1px solid #dadada;
  display: block;
  height: 1px;
  margin: 3rem 0;
  padding: 0; }

table {
  table-layout: fixed; }

table td {
  overflow: hidden; }

@media screen and (max-width: 47.999em) {
  iframe {
    max-width: 100%; } }

blockquote {
  border-left: 0.5rem solid #b61d69;
  font-style: normal;
  font-weight: 400;
  margin: 2.25rem auto;
  max-width: 90%;
  overflow: hidden;
  padding: 1em 0;
  position: relative;
  text-align: left; }
  @media screen and (min-width: 48em) {
    blockquote {
      max-width: 80%; } }
  blockquote img.alignnone {
    border-radius: 100%;
    display: block;
    margin: 0 auto;
    overflow: hidden;
    text-align: center; }
    @media screen and (min-width: 48em) {
      blockquote img.alignnone {
        display: inline-block;
        float: left;
        margin-right: 7%;
        max-height: 8em;
        max-width: 8em; } }
  blockquote p {
    margin-left: 2rem; }
  blockquote small {
    font-size: 0.60883em;
    display: inline-block;
    margin: 0 0 0.8em 1.5em; }
    @media (min-width: 48em) {
      blockquote small {
        font-size: 0.76104em; } }
    blockquote small:before {
      content: '\2014 \00A0'; }
  blockquote cite {
    font-weight: bold; }
  blockquote cite a {
    font-weight: normal; }

p:last-child {
  margin-bottom: 0; }

dl {
  margin: 0 0 0.75rem; }
  dl dt {
    font-weight: bold;
    margin: 0 0 0.75rem;
    padding-right: 1em; }
  dl dd {
    margin-bottom: 0.75rem;
    margin-left: 2em; }

mark {
  background-color: #e5e5e5; }

code,
tt {
  font-size: 0.60883em;
  background: #e5e5e5;
  border-radius: 2px;
  border: 1px solid #c1c1c1;
  font-family: Inconsolata, monospace, sans-serif;
  padding: 1px 3px;
  white-space: pre; }
  @media (min-width: 48em) {
    code,
    tt {
      font-size: 0.76104em; } }

pre {
  font-size: 0.60883em;
  background: #e5e5e5;
  border-radius: 3px;
  border: 1px solid #cccccc;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  font-family: Inconsolata, monospace, sans-serif;
  margin: 0 0 1.5rem;
  overflow: auto;
  padding: 1em 1.25em;
  white-space: pre;
  width: 100%; }
  @media (min-width: 48em) {
    pre {
      font-size: 0.76104em; } }

pre code,
tt {
  background: transparent;
  border: none;
  font-size: inherit;
  padding: 0;
  white-space: -moz-pre-wrap;
  white-space: pre-wrap; }

img,
svg {
  max-width: 100%; }

img {
  height: auto; }

svg {
  width: 100%; }

li > ol,
li > ul {
  margin-bottom: 0; }

/**
 * Helpful Re-usable Classes
 */
.site-logo {
  fill: #3b4646;
  transition: fill ease-in-out 0.25s; }
  .site-logo:hover {
    fill: #526262; }

@media screen and (min-width: 48em) {
  .desktop-hidden {
    display: none !important; } }

@media screen and (max-width: 48em) {
  .mobile-hidden,
  .notmobile {
    display: none !important; } }

.lazy-load {
  max-width: 100%; }

.linkclicker {
  cursor: pointer; }

.alignright {
  float: right;
  margin-left: 1.5rem;
  margin-bottom: 1.5rem; }
  .alignright.size-large {
    max-width: 65%; }

.alignleft {
  float: left;
  margin-right: 1.5rem;
  margin-bottom: 1.5rem; }
  .alignleft.size-large {
    max-width: 65%; }

.aligncenter,
.center {
  margin: 1.5rem auto;
  display: block; }

.alignnone {
  margin: 0; }

.left {
  float: left; }

.right {
  float: right; }

.hidden,
.hide {
  display: none !important; }

.assistive,
.hide-text,
.screen-reader-text {
  height: 1px;
  width: 1px;
  border: 0;
  clip: rect(0 0 0 0);
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  background: #fff;
  color: #000; }
  .assistive.show-on-focus:focus,
  .hide-text.show-on-focus:focus,
  .screen-reader-text.show-on-focus:focus {
    background: rgba(0, 0, 0, 0.9);
    border-radius: 1em;
    box-shadow: 0 0 3px 5px;
    color: #fff;
    clip: unset;
    display: inline-block;
    height: auto;
    left: 50%;
    padding: 1em;
    position: fixed;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: background .35s linear;
    width: auto;
    z-index: 99999; }
    @media screen and (min-width: 48em) {
      .assistive.show-on-focus:focus,
      .hide-text.show-on-focus:focus,
      .screen-reader-text.show-on-focus:focus {
        padding: 6em; } }

.hide-text {
  text-indent: -9999px; }

.screen-reader-text:active,
.screen-reader-text:focus {
  height: auto;
  width: auto;
  clip: auto;
  margin: 0;
  overflow: visible;
  position: static; }

.overlay {
  background: rgba(0, 0, 0, 0);
  display: none;
  height: 101vh;
  position: fixed;
  top: 0;
  left: 0;
  transition: 0s display .3s linear, .3s background 0s ease-in-out;
  width: 101vw;
  z-index: 100; }
  .overlay.active {
    background: rgba(0, 0, 0, 0.8);
    display: block;
    transition: 0s display 0s linear, .3s background 0s ease-in-out; }

/**
 * DBS>Interactive
 * General Theme Type classes
 * These classes are generic repeatable patterns of type styles that can be
 * extended by other classes to maintain consistency throughout the theme.
 *
 * Recommended usage:
 * 		@extend %button-type;
 */
/**
 * Default Typography
 */
@media (min-width: 48em) {
  html {
    font-size: 0.95em; } }

@media (min-width: 62em) {
  html {
    font-size: 1em; } }

@media (min-width: 93em) {
  html {
    font-size: 1.1em; } }

body {
  background-color: #fff;
  font-size: 1em;
  font-weight: 100;
  line-height: 1.7; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 1rem;
  text-rendering: optimizeLegibility; }
  h1 a,
  h2 a,
  h3 a,
  h4 a,
  h5 a,
  h6 a {
    text-decoration: none; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, a {
  word-break: break-word; }

.h1, .h2, .h3, .h4, .h5, .h6 {
  line-height: 1.25; }

.h1,
h1 {
  font-size: 1.93177em; }
  @media (min-width: 48em) {
    .h1,
    h1 {
      font-size: 2.41472em; } }

.eyebrow-h1 h1 {
  font-size: 1.25em;
  font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
  font-weight: 300; }

.h2,
h2 {
  font-size: 1.47015em; }
  @media (min-width: 48em) {
    .h2,
    h2 {
      font-size: 1.83769em; } }

.h3,
h3 {
  font-size: 1.11883em; }
  @media (min-width: 48em) {
    .h3,
    h3 {
      font-size: 1.39854em; } }

.h4,
h4 {
  font-size: 0.85147em; }
  @media (min-width: 48em) {
    .h4,
    h4 {
      font-size: 1.06434em; } }

.h5,
h5 {
  font-size: 0.648em; }
  @media (min-width: 48em) {
    .h5,
    h5 {
      font-size: 0.81em; } }

.h6,
h6 {
  font-size: 0.49315em; }
  @media (min-width: 48em) {
    .h6,
    h6 {
      font-size: 0.61644em; } }

a {
  background-color: transparent;
  color: #000;
  font-weight: bold;
  text-decoration: underline;
  transition: color ease-in-out 0.25s; }
  a:active, a:focus, a:hover {
    text-decoration: none; }

.bg-dark a {
  background-color: transparent;
  color: #fff;
  font-weight: bold;
  transition: color ease-in-out 0.25s; }
  .bg-dark a:active, .bg-dark a:focus, .bg-dark a:hover {
    color: #e6e6e6; }

p {
  margin-top: 0;
  margin-bottom: 1rem; }

.dropcap {
  color: #3b4646;
  float: left;
  font-size: 6.25em;
  font-weight: 400;
  line-height: 90px;
  margin-bottom: -.031em;
  margin-top: 0.03em;
  padding-right: 0.5rem; }

.font_small,
small {
  font-size: 0.85em; }

.caps {
  text-transform: uppercase; }

.thin {
  font-weight: normal; }

.body-font-header-style h1, .body-font-header-style h2, .body-font-header-style h3, .body-font-header-style h4, .body-font-header-style h5, .body-font-header-style h6 {
  font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
  font-weight: 300; }

.body-font h1, .body-font h2, .body-font h3, .body-font h4, .body-font h5, .body-font h6 {
  font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
  font-weight: 300; }

/**
 * Slate contain Styles
 * DBS>Interactive
 *
 * This module contains the 3 different sized width contain classes.
 *
 * When givin a choice, prefer to use these classnames in the html rather than the constrained-width mixin. This will
 * help to keep the SCSS files less complicated and more efficient.
 *
 * 		contain-narrow
 * 		contain (contain or contain-medium)
 * 		contain-wide
 *
 * Use the layout classes on the layout div:
 * 		layout-narrow
 * 		layout-default
 * 		layout-wide
 *
 * The layout classes will work whether the contain element is the layout itself, or a child of the layout.
 */
.contain,
.contain-medium,
.layout-wide .contain,
.layout-wide.contain {
  width: 100%; }
  @media screen and (min-width: 42.667rem) {
    .contain,
    .contain-medium,
    .layout-wide .contain,
    .layout-wide.contain {
      margin-left: auto;
      margin-right: auto;
      max-width: 66.667rem; } }

.contain-narrow,
.layout-narrow .contain,
.layout-narrow.contain {
  width: 100%; }
  @media screen and (min-width: 42.667rem) {
    .contain-narrow,
    .layout-narrow .contain,
    .layout-narrow.contain {
      margin-left: auto;
      margin-right: auto;
      max-width: 42.667rem; } }

.contain-wide,
.layout-wide .contain,
.layout-wide.contain {
  width: 100%; }
  @media screen and (min-width: 42.667rem) {
    .contain-wide,
    .layout-wide .contain,
    .layout-wide.contain {
      margin-left: auto;
      margin-right: auto;
      max-width: 88.889rem; } }

.contain-full-width,
.contain-full-width.contain {
  margin-left: 0;
  margin-right: 0;
  max-width: 100%; }

/**
 * Default layout styles
 * DBS>Interactive
 */
/**
 * Main site wrapper
 */
.site {
  overflow: hidden;
  position: relative; }

/**
 * Basic generic styles for all layouts
 */
.layout {
  overflow: hidden; }
  .layout .cell {
    padding: 1.5rem;
    width: 100%; }
  @media screen and (min-width: 48em) {
    .layout [class*=bg-] .cell {
      padding: 1.5em 1em 1em; } }
  .layout.columns {
    margin: 3rem auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media screen and (min-width: 48em) {
      .layout.columns {
        margin: 4.5rem auto; } }
  .layout .column {
    position: relative; }
    .layout .column > img {
      z-index: 0; }
      .layout .column > img + .cell {
        position: relative;
        z-index: 1; }

/**
 * Extended attribute classes for Flex Layouts
 * DBS>Interactive
 */
.bg-img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  position: relative; }
  .bg-img > .image-wrapper {
    height: auto; }
    .bg-img > .image-wrapper img {
      vertical-align: bottom; }
  .bg-img > .contain {
    padding-top: 3em;
    padding-bottom: 3em; }
  .bg-img h1,
  .bg-img h2,
  .bg-img h3,
  .bg-img h4,
  .bg-img h5,
  .bg-img h6,
  .bg-img p {
    color: #fff; }

.bg-dark {
  background-color: rgba(7, 40, 88, 0.9); }
  .bg-dark,
  .bg-dark h1,
  .bg-dark h2,
  .bg-dark h3,
  .bg-dark h4,
  .bg-dark h5,
  .bg-dark h6 {
    color: #fff; }

.bg-light {
  background-color: #dadada; }

.bg-overlay .cell,
.bg-overlay .contain {
  position: relative;
  z-index: 1; }

.bg-overlay .image-wrapper:after {
  background: rgba(9, 51, 112, 0.5);
  content: '';
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%; }

.no-bottom-margin.layout {
  margin-bottom: 0 !important; }
  .no-bottom-margin.layout + .layout {
    margin-top: 0 !important; }

.thumbnail .column {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 1em; }
  @media screen and (min-width: 48em) {
    .thumbnail .column {
      padding: 0 1em 1em; } }
  .thumbnail .column > :first-child {
    margin-right: 1em; }

.thumbnail .cell {
  -ms-flex: 1;
  flex: 1;
  padding: 0; }

.thumbnail .image-wrapper {
  height: 0;
  padding-top: 5em;
  overflow: hidden;
  position: relative;
  width: 6em; }
  .thumbnail .image-wrapper img {
    height: 100%;
    max-width: initial;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto; }

.image-card .image-wrapper {
  margin-right: 1em;
  margin-left: 1em;
  margin-bottom: 1em;
  max-height: 20em;
  overflow: hidden;
  text-align: center;
  max-width: 30%;
  margin: 0 auto;
  padding: 1em; }

/**
 * Full Width Flex Layout
 * DBS>Interactive
 *
 * This default layout has no background image and is constrained by a container.
 */
.layout-default {
  margin: 3rem auto; }
  @media screen and (min-width: 48em) {
    .layout-default {
      margin: 4.5rem auto; } }
  .layout-default .contain,
  .layout-default .contain-narrow,
  .layout-default .contain-wide {
    padding: 0 1.5rem; }

/**
 * Flex Blocks Layout
 * DBS>Interactive
 */
.flex-blocks {
  text-align: center; }
  .flex-blocks__content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .flex-blocks .cell {
    padding-top: 1em;
    width: 100%; }
    @media screen and (min-width: 48em) {
      .flex-blocks .cell {
        width: 50%; } }
    @media screen and (min-width: 62em) {
      .flex-blocks .cell {
        width: 33.33%; } }
    .flex-blocks .cell a:focus {
      display: inline-block; }

/**
 * Half and half flex layout
 * DBS>Interactive
 */
.half-and-half__left, .half-and-half__right {
  width: 50%; }
  .half-and-half__left.bg-img .cell, .half-and-half__right.bg-img .cell {
    position: absolute; }

@media screen and (max-width: 47.999em) {
  .half-and-half {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .half-and-half__left, .half-and-half__right {
      padding-bottom: 0;
      -ms-flex-order: 1;
      order: 1;
      width: 100%; }
      .half-and-half__left.bg-img, .half-and-half__right.bg-img {
        -ms-flex-order: 0;
        order: 0; } }

.half-and-half + .half-and-half {
  margin-top: -2rem; }
  @media screen and (min-width: 48em) {
    .half-and-half + .half-and-half {
      margin-top: 3rem; }
      .half-and-half + .half-and-half .cell {
        padding-top: 1.5em; } }

@media screen and (min-width: 48em) {
  .half-and-half {
    /**
		 * This little bit of hackery makes the edge of background images and
		 * background colors line up with the container content when a contain
		 * class is on the half and half layout, but not when the
		 * 'contain-full-width' reset class is used.
		 */ }
    .half-and-half[class*=contain]:not([class~=contain-full-width]) [class*=bg-] {
      width: calc(50% - 1em); }
      .half-and-half[class*=contain]:not([class~=contain-full-width]) [class*=bg-].half-and-half__left {
        margin-left: 1em; }
      .half-and-half[class*=contain]:not([class~=contain-full-width]) [class*=bg-].half-and-half__right {
        margin-right: 1em; } }

.half-and-half__right .caption {
  font-size: .8rem; }

@media screen and (max-width: 47.999em) {
  .half-and-half.text-only .cell {
    padding: 0 1.5rem; } }

.two-three .contain {
  max-width: 88.889rem;
  padding: 0; }

@media screen and (min-width: 48em) {
  .two-three .half-and-half__left {
    width: 40%; } }

@media screen and (min-width: 48em) {
  .two-three .half-and-half__right {
    width: 59%;
    margin-left: 1%; } }

.three-two .contain {
  max-width: 88.889rem;
  padding: 0; }

@media screen and (min-width: 48em) {
  .three-two .half-and-half__left {
    width: 59%;
    margin-right: 1%; } }

@media screen and (min-width: 48em) {
  .three-two .half-and-half__right {
    width: 40%; } }

/**
 * Hero Flex Layout
 * DBS>Interactive
 */
.hero-wrapper {
  margin-bottom: 2em;
  position: relative; }
  .hero-wrapper:after {
    border-left: 50vw solid transparent;
    border-right: 50vw solid transparent;
    border-bottom: 5.2vw solid #fff;
    content: '';
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 1; }
  .hero-wrapper:before {
    background: linear-gradient(to bottom right, transparent 50%, rgba(255, 255, 255, 0.8));
    content: '';
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 1; }

.layout-hero {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  height: 18em;
  min-height: 18em;
  position: relative; }
  @media screen and (min-width: 48em) {
    .layout-hero {
      -ms-flex-align: center;
      align-items: center;
      min-height: 30em; } }
  @media screen and (min-width: 100em) {
    .layout-hero {
      min-height: 35em; } }
  .layout-hero h1 {
    font-size: 6vw; }
    @media screen and (min-width: 48em) {
      .layout-hero h1 {
        font-size: 2.53835em; } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .layout-hero h1 {
      font-size: 3.17294em; } }
  .layout-hero p {
    font-weight: 400; }
  .layout-hero:before {
    background: rgba(7, 40, 88, 0.85);
    content: '';
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transform: skewY(-6deg);
    transform-origin: top left;
    width: 100%;
    z-index: 2; }
  .layout-hero:after {
    background: url("../images/angle-pattern.svg");
    background-position: 10em 60%;
    background-repeat: no-repeat;
    background-size: cover;
    content: '';
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%; }
  .layout-hero .contain {
    max-width: 68.66em;
    padding-top: 0;
    width: 85%;
    z-index: 3; }
    @media screen and (min-width: 48em) {
      .layout-hero .contain {
        position: relative; } }
    .layout-hero .contain .layout-hero__content {
      position: relative;
      width: 100%; }
      @media screen and (min-width: 48em) {
        .layout-hero .contain .layout-hero__content {
          padding: 6em 0;
          width: 60%; } }
      .layout-hero .contain .layout-hero__content .cell {
        padding: 1.5rem;
        opacity: 0;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        transform: translateX(-3em);
        transition: 0s opacity, 1s transform; }
        @media screen and (min-width: 48em) {
          .layout-hero .contain .layout-hero__content .cell {
            padding: 0 0 0 2em; } }
        .layout-hero .contain .layout-hero__content .cell.active {
          opacity: 1;
          transform: translateX(0);
          transition: 1s opacity, 1s transform;
          z-index: 2; }
    .layout-hero .contain .layout-hero__tabs {
      color: #dadada;
      position: absolute;
      bottom: 3em;
      right: 1em;
      z-index: 3; }
      @media screen and (min-width: 48em) {
        .layout-hero .contain .layout-hero__tabs {
          transform: rotate(-90deg);
          top: 40%;
          right: 0;
          bottom: auto; } }
      .layout-hero .contain .layout-hero__tabs ul {
        display: -ms-flexbox;
        display: flex;
        list-style: none;
        position: relative; }
        @media screen and (min-width: 48em) {
          .layout-hero .contain .layout-hero__tabs ul {
            -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; } }
        .layout-hero .contain .layout-hero__tabs ul:after {
          background: rgba(255, 255, 255, 0.6);
          content: '';
          height: 4px;
          position: absolute;
          bottom: -.5em;
          right: -1em;
          width: 120%; }
          @media screen and (min-width: 48em) {
            .layout-hero .contain .layout-hero__tabs ul:after {
              width: 300%; } }
        .layout-hero .contain .layout-hero__tabs ul li {
          color: rgba(255, 255, 255, 0.6);
          font-weight: 400;
          position: relative;
          transition: color .3s; }
          .layout-hero .contain .layout-hero__tabs ul li:first-child {
            margin-right: 1em; }
          .layout-hero .contain .layout-hero__tabs ul li button {
            background: transparent;
            border: none;
            border-radius: 3em;
            text-transform: uppercase; }
            .layout-hero .contain .layout-hero__tabs ul li button:after {
              border-bottom: 0px solid #fff;
              content: '';
              display: block;
              position: absolute;
              bottom: -9px;
              left: 0;
              transition: border-width .3s;
              width: 100%; }
            .layout-hero .contain .layout-hero__tabs ul li button:focus {
              box-shadow: 0 0 5px #fff; }
            .layout-hero .contain .layout-hero__tabs ul li button.active {
              color: #fff; }
              .layout-hero .contain .layout-hero__tabs ul li button.active:after {
                border-width: 8px; }

/**
 * Full Width Flex Layout
 * DBS>Interactive
 *
 * This layout takes up the full width of the browser and may have a background image.
 */
.layout-full-width {
  position: relative;
  padding: 6em 0;
  margin: 3rem auto; }
  @media screen and (min-width: 48em) {
    .layout-full-width {
      margin: 4.5rem auto; } }
  .layout-full-width:before {
    background-color: black;
    content: '';
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0.2; }
  .layout-full-width div {
    position: relative;
    z-index: 1; }
  .layout-full-width .contain-narrow {
    padding: 1.5rem;
    margin-left: 0; }
  .layout-full-width .link {
    padding: 0 1.5rem; }
  .layout-full-width:after {
    background-color: #000;
    background: url("../images/dot-pattern-wave-narrow.png");
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    content: '';
    display: inline-block;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0.15;
    background-size: 100%; }
    @media screen and (min-width: 62em) {
      .layout-full-width:after {
        background-size: cover; } }

/**
 * Three Columns Flex Layout
 * DBS>Interactive
 */
.three-columns {
  padding: 1.5rem; }
  @media screen and (min-width: 62em) {
    .three-columns {
      /**
    * This little bit of hackery makes the edge of background images and
    * background colors line up with the container content when a contain
    * class is on the half and half layout, but not when the
    * 'contain-full-width' reset class is used.
    */ }
      .three-columns[class*="contain"]:not([class~=contain-full-width]) [class*="bg-"].column:first-of-type, .three-columns[class*="contain"]:not([class~=contain-full-width]) [class*="bg-"].column:last-of-type {
        width: calc(33.3333% - 1em); }
      .three-columns[class*="contain"]:not([class~=contain-full-width]) [class*="bg-"].column:first-of-type {
        margin-left: 1em; }
      .three-columns[class*="contain"]:not([class~=contain-full-width]) [class*="bg-"].column:last-of-type {
        margin-right: 1em; } }
  .three-columns .column {
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 3em 1em;
    transition-delay: 0s, 0s;
    transition-timing-function: linear;
    transition-duration: 0.5s;
    transition-property: background-color, transform;
    width: 100%; }
    .three-columns .column:not(:last-child) {
      border-bottom: 1em solid #fff; }
    @media screen and (min-width: 62em) {
      .three-columns .column {
        transform: scale(0.95);
        width: 33.33333%; }
        .three-columns .column:not(:last-child) {
          border-bottom: 0; } }
    @media screen and (min-width: 48em) and (max-width: 61.999em) {
      .three-columns .column {
        display: -ms-flexbox;
        display: flex; }
        .three-columns .column > * {
          width: 50%; } }
    .three-columns .column .cell {
      transition: transform 0.35s ease;
      transform: scale(1); }
    .three-columns .column .icon-wrapper {
      width: 100%; }
      .three-columns .column .icon-wrapper svg {
        height: 5em; }
    .three-columns .column:nth-child(even) {
      transform: scale(1);
      transition-delay: 0s, 0s;
      transition-timing-function: linear;
      transition-duration: 0.5s;
      transition-property: background-color, transform; }
    .three-columns .column:not(.bg-dark) {
      background-color: #ebebeb; }
      .three-columns .column:not(.bg-dark),
      .three-columns .column:not(.bg-dark) h1,
      .three-columns .column:not(.bg-dark) h2,
      .three-columns .column:not(.bg-dark) h3,
      .three-columns .column:not(.bg-dark) h4,
      .three-columns .column:not(.bg-dark) h5,
      .three-columns .column:not(.bg-dark) h6 {
        color: #000; }

/**
 * Page Header Flex Layout
 * DBS>Interactive
 */
.layout-page-header {
  background-color: transparent;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 4em 0em 2em;
  overflow: visible;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media screen and (min-width: 48em) {
    .layout-page-header {
      padding: 6em 1.5em; } }
  .layout-page-header:before {
    background: linear-gradient(to top right, rgba(7, 40, 88, 0.95) 40%, rgba(7, 40, 88, 0.8));
    content: '';
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 101%; }
  .layout-page-header h1, .layout-page-header h2, .layout-page-header h3, .layout-page-header h4, .layout-page-header h5, .layout-page-header h6 {
    color: #fff;
    position: relative; }
  .layout-page-header.eyebrow-h1 h1 {
    font-weight: 400; }
  .layout-page-header p {
    font-weight: 400; }
  .layout-page-header .contain,
  .layout-page-header .contain-wide,
  .layout-page-header .contain-narrow {
    padding: 1.5rem;
    width: 100%;
    z-index: 3; }
    @media screen and (min-width: 48em) {
      .layout-page-header .contain,
      .layout-page-header .contain-wide,
      .layout-page-header .contain-narrow {
        padding: 2em 5vw;
        margin: 0;
        width: 75%; } }
    .layout-page-header .contain p,
    .layout-page-header .contain-wide p,
    .layout-page-header .contain-narrow p {
      color: #dadada; }
  .layout-page-header .down-button {
    display: none; }
  .layout-page-header.angled {
    margin-bottom: 2em; }
    .layout-page-header.angled:after {
      border-left: 50vw solid transparent;
      border-right: 50vw solid transparent;
      border-bottom: 2.6vw solid #fff;
      content: '';
      height: 100.5%;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100%;
      z-index: 1; }
    .layout-page-header.angled:before {
      background: linear-gradient(to top right, rgba(7, 40, 88, 0.95) 40%, rgba(7, 40, 88, 0.8));
      transform: translate(-50%, -50%) skewY(-3deg);
      transform-origin: top left;
      z-index: 2; }
    .layout-page-header.angled .contain {
      padding: 3em 1.5em; }
      @media screen and (min-width: 48em) {
        .layout-page-header.angled .contain {
          padding: 3em 5vw; } }
    .layout-page-header.angled .image-wrapper {
      z-index: unset; }
      .layout-page-header.angled .image-wrapper:before {
        background: linear-gradient(to bottom right, transparent 50%, rgba(255, 255, 255, 0.8));
        content: '';
        height: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        z-index: 1; }
      .layout-page-header.angled .image-wrapper img {
        margin-top: -1px; }
    .layout-page-header.angled .down-button {
      display: block;
      bottom: -2.5em; }

.layout-testimonial {
  margin: 3rem auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 6em 0.5em 0.5em;
  position: relative;
  -ms-flex-align: end;
  align-items: flex-end; }
  @media screen and (min-width: 48em) {
    .layout-testimonial {
      margin: 4.5rem auto; } }
  @media screen and (min-width: 48em) {
    .layout-testimonial {
      padding: 8em 0 1em; } }
  .layout-testimonial .testimonial-heading {
    -ms-flex-align: end;
    align-items: flex-end;
    border-top: 0.1em solid rgba(250, 250, 250, 0.6);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-bottom: 4rem;
    width: 40%;
    z-index: 1; }
    .layout-testimonial .testimonial-heading h2 {
      font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
      font-weight: 100;
      padding: 1em 0px; }
  .layout-testimonial .quote {
    background: white;
    border-radius: 0.4em;
    margin-left: auto;
    position: relative;
    z-index: 1; }
    @media screen and (min-width: 48em) {
      .layout-testimonial .quote {
        max-width: 35%; } }
    @media screen and (min-width: 62em) {
      .layout-testimonial .quote {
        max-width: 24em; } }
    .layout-testimonial .quote blockquote {
      max-width: none;
      border: none;
      padding: 0 3em; }
      @media screen and (min-width: 62em) {
        .layout-testimonial .quote blockquote {
          padding: 1em 3em 0; } }
      .layout-testimonial .quote blockquote p {
        color: #000;
        margin-left: 0; }
    .layout-testimonial .quote:before {
      background: url("../icons/src/quotes-left.svg");
      background-size: contain;
      content: '';
      transform: translate(-50%, -50%);
      position: absolute;
      left: 50%;
      width: 3rem;
      height: 3rem;
      z-index: 1; }
    .layout-testimonial .quote:after {
      background-color: white;
      content: '';
      transform: translate(-50%, -50%);
      position: absolute;
      top: 0;
      width: 5rem;
      height: 5rem;
      border-radius: 100%;
      left: 50%; }
  .layout-testimonial:after {
    background: linear-gradient(to right, rgba(9, 51, 112, 0.7), rgba(9, 51, 112, 0.4));
    content: '';
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }

.your-team-landing {
  margin: 0 auto;
  max-width: 75em; }
  .your-team-landing .boss-man {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 2em 1em 3em; }
    @media screen and (min-width: 600px) {
      .your-team-landing .boss-man {
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-direction: row;
        flex-direction: row;
        padding: 4em 2em; } }
    .your-team-landing .boss-man__image {
      height: 0;
      margin-bottom: 1em;
      max-width: 100%;
      overflow: hidden;
      padding-bottom: 100%;
      position: relative; }
      @media screen and (min-width: 600px) {
        .your-team-landing .boss-man__image {
          padding-bottom: 30%;
          width: 28%; } }
      @media screen and (min-width: 48em) {
        .your-team-landing .boss-man__image {
          padding-bottom: calc(33.33% - 3em);
          width: calc(33.33% - 3em); } }
      @media screen and (min-width: 62em) {
        .your-team-landing .boss-man__image {
          padding-bottom: 20%;
          width: 20%; } }
      .your-team-landing .boss-man__image img {
        height: auto;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%; }
    @media screen and (min-width: 600px) {
      .your-team-landing .boss-man__content {
        max-width: 45em;
        padding-left: 4em;
        width: 72%; } }
    .your-team-landing .boss-man__content h2 {
      font-weight: 700;
      margin-bottom: .25rem; }
    .your-team-landing .boss-man__content h3 {
      color: #336699;
      font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
      font-weight: normal;
      margin-bottom: 1.5rem;
      text-transform: uppercase; }
    .your-team-landing .boss-man__content button {
      padding-left: 0; }
  .your-team-landing .team-grid {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 4em; }
    .your-team-landing .team-grid__item {
      text-align: center;
      padding: 1em;
      width: 100%; }
      @media screen and (min-width: 30em) {
        .your-team-landing .team-grid__item {
          padding: 1em 2em;
          width: 50%; } }
      @media screen and (min-width: 48em) {
        .your-team-landing .team-grid__item {
          width: calc(100%/3); } }
      @media screen and (min-width: 62em) {
        .your-team-landing .team-grid__item {
          width: 25%; } }
      .your-team-landing .team-grid__item--image {
        height: 0;
        margin-bottom: 1em;
        max-width: 100%;
        overflow: hidden;
        padding-bottom: 100%;
        position: relative; }
        .your-team-landing .team-grid__item--image img {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: auto; }
      .your-team-landing .team-grid__item--heading {
        font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
        margin-bottom: .15rem; }
        @media screen and (max-width: 599px) {
          .your-team-landing .team-grid__item--heading {
            font-size: 1.11883em; } }
  @media screen and (max-width: 599px) and (min-width: 48em) {
    .your-team-landing .team-grid__item--heading {
      font-size: 1.39854em; } }
        .your-team-landing .team-grid__item--heading a {
          color: #000; }
      .your-team-landing .team-grid__item a {
        display: block; }
  .your-team-landing .your-team__nav ul {
    background: #f8f8f8;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    font-weight: 400;
    list-style: none;
    margin: 0 1em 2em;
    padding: 0; }
    @media screen and (min-width: 48em) {
      .your-team-landing .your-team__nav ul {
        background: transparent;
        -ms-flex-direction: row;
        flex-direction: row;
        font-weight: 300;
        -ms-flex-pack: center;
        justify-content: center;
        margin: 0 0 2em; } }
    @media screen and (max-width: 47.999em) {
      .your-team-landing .your-team__nav ul li {
        position: relative;
        text-align: center;
        width: 100%; }
        .your-team-landing .your-team__nav ul li:before {
          background: #e5e5e5;
          content: '';
          display: block;
          height: 1px;
          margin: 0 auto;
          width: 90%; }
        .your-team-landing .your-team__nav ul li:first-child::before {
          content: unset; } }
    @media screen and (min-width: 47.999em) {
      .your-team-landing .your-team__nav ul li:before {
        content: '|'; }
      .your-team-landing .your-team__nav ul li:first-child::before {
        content: ''; } }
    .your-team-landing .your-team__nav ul li button {
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background: transparent;
      border: none;
      padding: .25em 1vw;
      transition: .3s all; }
      @media screen and (max-width: 47.999em) {
        .your-team-landing .your-team__nav ul li button {
          padding: .75em 1vw;
          width: 100%; } }
      .your-team-landing .your-team__nav ul li button:after {
        border-bottom: 1px solid transparent;
        content: '';
        display: block;
        transform: translateY(-0.5em);
        transition: .3s all; }
      @media screen and (max-width: 47.999em) {
        .your-team-landing .your-team__nav ul li button:hover, .your-team-landing .your-team__nav ul li button:focus {
          background: #fff; } }
      @media screen and (min-width: 48em) {
        .your-team-landing .your-team__nav ul li button:hover, .your-team-landing .your-team__nav ul li button:focus {
          color: #336699; }
          .your-team-landing .your-team__nav ul li button:hover:after, .your-team-landing .your-team__nav ul li button:focus:after {
            border-color: #336699;
            transform: translateY(0); } }
    .your-team-landing .your-team__nav ul .view-all {
      display: none; }

/**
 * Image Grid (with sidebar)
 * DBS>Interactive
 *
 * ACF Special Classes styled by this stylesheet:
 *		.light-box (Light Box)
 *		.image-zoom (Image Zoom)
 *
 * Note: The .light-box class included later in this stylesheet
 * 		cooresponds with functionality included in lightbox/lightbox.js
 */
.layout-image-gallery {
  margin: 3rem auto;
  padding: 1.5rem; }
  @media screen and (min-width: 48em) {
    .layout-image-gallery {
      margin: 4.5rem auto; } }
  .layout-image-gallery .image-gallery__wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .layout-image-gallery .image-gallery__image {
    border: 0.1em solid #fff;
    box-shadow: 0 0;
    height: 16vw;
    padding: 0em;
    position: relative;
    overflow: hidden;
    width: 50%; }
    @media screen and (min-width: 48em) {
      .layout-image-gallery .image-gallery__image {
        width: 33.33%; } }
    .layout-image-gallery .image-gallery__image img {
      position: relative;
      width: 100%;
      height: 100%;
      object-fit: cover; }

.partial-newsletter-cta {
  padding: 4em 1.5em; }
  .partial-newsletter-cta .newsletter-cta {
    text-align: center; }

/**
* Newsletter and Contact (CTA)
*/
.partial-newsletter-and-contact {
  margin: 0 auto;
  position: relative;
  z-index: 2; }
  .partial-newsletter-and-contact .cell.full-width {
    z-index: 1;
    position: relative; }
  .partial-newsletter-and-contact .contain {
    max-width: none; }
  .partial-newsletter-and-contact .columns {
    margin: 0; }
    .partial-newsletter-and-contact .columns .column {
      padding: 3rem 0; }
      @media screen and (min-width: 48em) {
        .partial-newsletter-and-contact .columns .column {
          padding: 2rem; } }
  .partial-newsletter-and-contact .newsletter-and-contact {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .partial-newsletter-and-contact .newsletter-and-contact .subscribe-newsletter {
      width: 100%; }
      @media screen and (min-width: 48em) {
        .partial-newsletter-and-contact .newsletter-and-contact .subscribe-newsletter {
          width: 50%; } }
    .partial-newsletter-and-contact .newsletter-and-contact .contact-us {
      width: 100%; }
      @media screen and (min-width: 48em) {
        .partial-newsletter-and-contact .newsletter-and-contact .contact-us {
          width: 50%; } }
  .partial-newsletter-and-contact .address-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .partial-newsletter-and-contact .address-block {
    width: 100%;
    margin-bottom: 2em; }
    .partial-newsletter-and-contact .address-block:first-child {
      margin-bottom: 2em; }
    @media screen and (min-width: 48em) {
      .partial-newsletter-and-contact .address-block {
        width: 50%; }
        .partial-newsletter-and-contact .address-block:first-child {
          margin-bottom: 0;
          padding-right: 1em; }
        .partial-newsletter-and-contact .address-block a {
          font-size: .9em; } }
  .partial-newsletter-and-contact .phone-contact,
  .partial-newsletter-and-contact .address-contact {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 1rem; }
    .partial-newsletter-and-contact .phone-contact svg,
    .partial-newsletter-and-contact .address-contact svg {
      margin-right: 1rem;
      height: 1.5rem;
      width: 1.5rem; }
  @media screen and (min-width: 62em) {
    .partial-newsletter-and-contact .address-container {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
    .partial-newsletter-and-contact .newsletter-contact {
      padding: 2em; }
    .partial-newsletter-and-contact .address-block {
      margin-bottom: 0; } }
  @media screen and (min-width: 48em) {
    .partial-newsletter-and-contact .half-and-half__left {
      width: 40%; }
    .partial-newsletter-and-contact .half-and-half__right {
      width: 60%; } }

/**
 * Theme Buttons
 * DBS>Interactive
 */
/**
 * Button mixin
 * @param $color1 - foreground color
 * @param $color2 - background color
 */
/**
 *  Button Styling (or basic buttons 101)
 */
.button {
  background-color: #074d80;
  border: 1px solid #074d80;
  color: #fff;
  display: inline-block;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0.5em 2.5em;
  text-decoration: none;
  transition: all 0.3s ease;
  border-radius: 3em;
  text-transform: uppercase;
  border-radius: 3em;
  text-transform: uppercase; }
  .button:active, .button:focus, .button:hover {
    background-color: #fff;
    color: #074d80; }
  p .button {
    margin: 0.5em; }

/**
 *	Button styling on a dark background (or keep 'em visible at all times 301)
 */
.bg-dark .button,
.button--white {
  background-color: #fff;
  border: 1px solid #fff;
  color: #336699;
  display: inline-block;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0.5em 2.5em;
  text-decoration: none;
  transition: all 0.3s ease;
  border-radius: 3em;
  text-transform: uppercase; }
  .bg-dark .button:active, .bg-dark .button:focus, .bg-dark .button:hover,
  .button--white:active,
  .button--white:focus,
  .button--white:hover {
    background-color: #336699;
    color: #fff; }
  p .bg-dark .button, p
  .button--white {
    margin: 0.5em; }

/**
 *	Inline (Arrow) Button Styling (or aim carefully and fire)
 */
.button--inline {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  color: #336699;
  line-height: 2;
  padding: .5em 0.5em .5em 0em;
  position: relative;
  text-decoration: none; }
  .button--inline:after {
    background: url("../icons/src/arrow-left-dark.svg") no-repeat;
    background-size: cover;
    content: '';
    display: inline-block;
    height: 1.25rem;
    margin-left: 0.5em;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%) rotate(180deg);
    transition: transform 0.3s ease-in-out;
    vertical-align: middle;
    width: 1.25rem; }
  .button--inline:focus, .button--inline:hover {
    color: #336699; }
    .button--inline:focus:after, .button--inline:hover:after {
      transform: translate(0.5em, -50%) rotate(180deg); }
  .button--inline.excerpt-read-more {
    text-transform: uppercase; }
  .button--inline.back-button {
    position: relative;
    clear: both;
    display: inline-block;
    width: auto; }
    .button--inline.back-button:before {
      background: url("../icons/src/arrow-left-dark.svg");
      background-repeat: no-repeat;
      background-size: cover;
      content: '';
      display: inline-block;
      height: 1.25rem;
      margin-left: 0.5em;
      margin-right: 1rem;
      padding: .5em 0em .5em .5em;
      transition: transform 0.3s linear;
      vertical-align: middle;
      width: 1.25rem; }
    .button--inline.back-button:after {
      display: none; }
    .button--inline.back-button:focus, .button--inline.back-button:hover {
      color: #336699; }
      .button--inline.back-button:focus:before, .button--inline.back-button:hover:before {
        transform: translateX(-0.5em); }

.bg-dark .button--inline {
  color: #fff; }
  .bg-dark .button--inline:focus, .bg-dark .button--inline:hover {
    color: #fff; }
  .bg-dark .button--inline:after {
    background: url("../icons/src/arrow-left-light.svg");
    background-repeat: no-repeat;
    background-size: cover; }

.bg-dark .back-button:before {
  background: url("../icons/src/arrow-left-light.svg");
  background-repeat: no-repeat;
  background-size: contain; }

.down-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("../icons/src/double-down-arrows.svg") no-repeat;
  background-size: 2em;
  border: none;
  content: '';
  height: 2.2em;
  margin: 0 auto;
  position: absolute;
  right: 0;
  bottom: -2em;
  left: 0;
  width: 2em;
  z-index: 2; }
  @media screen and (min-width: 48em) {
    .down-button {
      bottom: -1em; } }

/**
 * Form Styles
 * DBS>Interactive
 */
/**
 * GravityForms Resets
 */
.validation_error {
  color: #b61d69; }

.gform_body {
  padding-top: 2em; }
  .gform_body ul {
    list-style: none;
    padding: 0; }
  .gform_body .gfield_label {
    font-weight: bold; }

.gform_button {
  margin-bottom: .75em; }

.gfield {
  margin-bottom: 1em; }

.gfield_list_icons {
  padding: .5em; }

.gform_validation_container {
  display: none !important; }

.gf_progressbar_wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.gfield_label_before_complex {
  display: none; }

/**
 * Input Field Styles
 */
textarea {
  min-height: 5em; }

input[type=radio] {
  margin-right: .5em; }

select {
  height: 2em;
  margin: 0;
  width: 100%; }

textarea,
input[type=text],
input[type=email],
input[type=date],
input[type=number],
input[type=time],
input[type=week],
input[type=month],
input[type=tel],
input[type=search],
input[type=url] {
  display: block;
  border: 1px solid #9c9c9c;
  margin: .333em 0;
  max-width: 100%;
  padding: 0.5em;
  width: 100%; }

fieldset {
  margin-bottom: 3rem; }

/**
 * Complex field arrangements
 */
.ginput_complex {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media screen and (min-width: 48em) {
    .ginput_complex {
      -ms-flex-direction: row;
      flex-direction: row; }
      .ginput_complex span {
        display: inline-block;
        width: 50%; }
        .ginput_complex span:nth-of-type(2n) {
          margin-left: 1em; } }
  .ginput_complex label {
    font-weight: 700; }

/**
 * Remove IE's clear so we don't conflict with the add-clear button functionality 2017-09-12
 */
input[type=text]::-ms-clear {
  display: none; }

/**
 * Validation and error message styling
 */
.gfield_error label,
.validation_message {
  color: #b61d69; }

.gfield_error input,
.gfield_error textarea,
.gfield_error select {
  border-color: #b61d69; }

/**
 * Loader animation
 */
.gform_ajax_spinner {
  height: 1em;
  width: 1em;
  animation: spinner_animation 1s infinite ease;
  border-radius: 50%;
  font-size: 5px;
  margin: 0 5em;
  transform: translateZ(0); }

@keyframes spinner_animation {
  0%,
  100% {
    box-shadow: 0em -2.6em 0em 0em #000, 1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2), 2.5em 0em 0 0em rgba(0, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(0, 0, 0, 0.2), 0em 2.5em 0 0em rgba(0, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(0, 0, 0, 0.2), -2.6em 0em 0 0em rgba(0, 0, 0, 0.5), -1.8em -1.8em 0 0em rgba(0, 0, 0, 0.7); }
  12.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0, 0, 0, 0.7), 1.8em -1.8em 0 0em #000, 2.5em 0em 0 0em rgba(0, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(0, 0, 0, 0.2), 0em 2.5em 0 0em rgba(0, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(0, 0, 0, 0.2), -2.6em 0em 0 0em rgba(0, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(0, 0, 0, 0.5); }
  25% {
    box-shadow: 0em -2.6em 0em 0em rgba(0, 0, 0, 0.5), 1.8em -1.8em 0 0em rgba(0, 0, 0, 0.7), 2.5em 0em 0 0em #000, 1.75em 1.75em 0 0em rgba(0, 0, 0, 0.2), 0em 2.5em 0 0em rgba(0, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(0, 0, 0, 0.2), -2.6em 0em 0 0em rgba(0, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2); }
  37.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(0, 0, 0, 0.5), 2.5em 0em 0 0em rgba(0, 0, 0, 0.7), 1.75em 1.75em 0 0em #000, 0em 2.5em 0 0em rgba(0, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(0, 0, 0, 0.2), -2.6em 0em 0 0em rgba(0, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2); }
  50% {
    box-shadow: 0em -2.6em 0em 0em rgba(0, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2), 2.5em 0em 0 0em rgba(0, 0, 0, 0.5), 1.75em 1.75em 0 0em rgba(0, 0, 0, 0.7), 0em 2.5em 0 0em #000, -1.8em 1.8em 0 0em rgba(0, 0, 0, 0.2), -2.6em 0em 0 0em rgba(0, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2); }
  62.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2), 2.5em 0em 0 0em rgba(0, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(0, 0, 0, 0.5), 0em 2.5em 0 0em rgba(0, 0, 0, 0.7), -1.8em 1.8em 0 0em #000, -2.6em 0em 0 0em rgba(0, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2); }
  75% {
    box-shadow: 0em -2.6em 0em 0em rgba(0, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2), 2.5em 0em 0 0em rgba(0, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(0, 0, 0, 0.2), 0em 2.5em 0 0em rgba(0, 0, 0, 0.5), -1.8em 1.8em 0 0em rgba(0, 0, 0, 0.7), -2.6em 0em 0 0em #000, -1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2); }
  87.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(0, 0, 0, 0.2), 2.5em 0em 0 0em rgba(0, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(0, 0, 0, 0.2), 0em 2.5em 0 0em rgba(0, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(0, 0, 0, 0.5), -2.6em 0em 0 0em rgba(0, 0, 0, 0.7), -1.8em -1.8em 0 0em #000; } }

/**
 * Header styles
 * DBS>Interactive
 *
 * 		site-header - the page's main header element
 * 			site-header__branding - the company logo
 * 			site-header__navigation - the site navigation
 * 				NOTE: Put navigation styles in _navigation.scss.
 *
 * ************************************************************************
 * This file is for the general header/branding styles. For specific
 * menu/navigation files, use _navigation.scss.
 * ************************************************************************
 */
.site-header {
  background: #fff;
  box-shadow: 0 0 12px -6px #000;
  position: fixed;
  transition: .5s ease-in-out;
  width: 100%;
  z-index: 100;
  /**
	 * Company logo in site header
	 */ }
  .site-header__container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: .5em 1em;
    position: relative; }
  .site-header__branding {
    /**
		 * Anchor tag that wraps svg element (logo graphic) for site homepage link
		 */ }
    .site-header__branding a {
      display: block;
      line-height: 0;
      margin-left: -.25em;
      max-width: calc(4em + 10vw);
      padding: 0.25em; }
      .site-header__branding a svg {
        max-height: 4em; }

@media screen and (max-width: 47.999em) {
  .sticky-header--hide .site-header {
    transform: translateY(-4em); } }

/**
 * Slate Navigation Styles
 * DBS>Interactive
 *
 * ************************************************************************
 * This file is for the navigation menu in the header - both the mobile and
 * desktop menu. Keep header/branding specific styles in _header.scss.
 * ************************************************************************
 *
 * 		menu-toggle - the hamburger menu button
 * 			open - the class given when the toggle button is in the open state
 * 			menu-toggle__bar - the individual hamburger bars
 * 		submenu-toggle - a submenu toggle button
 * 			open - the class given when the toggle button is in the open state
 *
 * 		site-header__navigation - the header container for all site header
 * 			navigation.
 *
 * 			secondary-menu - the (nav element) container for the secondary menu
 * 			main-menu - the (nav element) container for the main menu
 *
 * 		menu - the container class for a menu ( ul element )
 * 			open - the class added to a ( mobile ) menu that is opened
 *
 * 			menu__item - a menu item ( li element )
 * 				menu__item--active - the active item ( current page )
 * 				menu__item--parent - an item that has a submenu
 *
 * 			menu__submenu - a submenu element ( ul element )
 * 				menu__submenu--l1 - a first level submenu
 * 				menu__submenu--l2 - etc...
 *
 */
/**
 * Hamburger Icon
 */
.menu-toggle {
  background-color: transparent;
  border: 0;
  display: block;
  height: 2em;
  margin-right: -.4em;
  padding: 0.4em;
  width: 2.5em; }
  .menu-toggle__bar {
    background: #093370;
    display: block;
    height: 2px;
    margin: 0 auto 8px;
    opacity: 1;
    transition: transform 0.3s, width 0.3s;
    width: 100%; }
    .menu-toggle__bar:last-child {
      margin-bottom: 0; }
  .menu-toggle.open > .menu-toggle__bar:nth-child(1) {
    transform: translate(0, 5px) rotate(135deg); }
  .menu-toggle.open > .menu-toggle__bar:nth-child(2) {
    transform: translate(0, -5px) rotate(-135deg); }
  @media screen and (min-width: 48em) {
    .menu-toggle {
      display: none; } }

/**
 * Submenu Toggle Icon
 */
.submenu-toggle {
  background-color: transparent;
  border: 0;
  line-height: 1;
  margin: 0;
  padding: 0;
  top: 0;
  right: 0;
  transition: transform 0.3s ease-in-out;
  transform: none; }
  @media screen and (min-width: 48em) {
    .submenu-toggle {
      height: 3.75em; } }
  .submenu-toggle svg {
    display: inline-block;
    height: auto;
    width: 2em;
    height: 2em; }
    @media screen and (min-width: 48em) {
      .submenu-toggle svg {
        width: 1.25em;
        height: 1.25em; } }
    .submenu-toggle svg path {
      fill: #fff; }
  .submenu-toggle.open {
    transform: rotate(180deg); }
  .menu__submenu > .menu__item > .submenu-toggle {
    opacity: 1;
    right: 0;
    transform: translateY(-50%) rotate(-90deg); }
  @media screen and (min-width: 48em) {
    .submenu-toggle {
      height: 2em; }
      .submenu-toggle svg path {
        fill: #000; } }
  @media screen and (max-width: 47.999em) {
    .submenu-toggle:active, .submenu-toggle:focus, .submenu-toggle:hover {
      background-color: #336699; } }

/**
 * General Menu Styles
 *
 * These styles apply to both the mobile and the desktop menu.
 */
.site-header__navigation {
  font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
  z-index: 100; }
  @media screen and (min-width: 48em) {
    .site-header__navigation {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: end;
      justify-content: flex-end; } }
  .site-header__navigation ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  @media screen and (max-width: 47.999em) {
    .site-header__navigation li {
      border-bottom: 1px solid #fff; } }
  @media screen and (max-width: 47.999em) {
    .site-header__navigation .main-menu li:last-child {
      border-bottom: 0; } }
  .site-header__navigation a {
    border-bottom: 1px solid transparent;
    color: #fff;
    display: block;
    font-weight: 700;
    font-size: 1em;
    text-decoration: none;
    transition: 0.3s all; }
    .site-header__navigation a:active, .site-header__navigation a:focus, .site-header__navigation a:hover {
      border-color: #336699;
      color: #fff;
      background-color: #336699; }
    @media screen and (min-width: 48em) {
      .site-header__navigation a {
        color: #000; }
        .site-header__navigation a:active, .site-header__navigation a:focus, .site-header__navigation a:hover {
          background-color: #fff;
          color: #336699; } }
  .site-header__navigation li.blue a {
    color: #fff; }
    @media screen and (max-width: 47.999em) {
      .site-header__navigation li.blue a {
        background: #336699; }
        .site-header__navigation li.blue a:active, .site-header__navigation li.blue a:focus, .site-header__navigation li.blue a:hover {
          background-color: #093370; } }
    @media screen and (min-width: 48em) {
      .site-header__navigation li.blue a {
        color: #336699; }
        .site-header__navigation li.blue a:active, .site-header__navigation li.blue a:focus, .site-header__navigation li.blue a:hover {
          color: #093370; } }

/**
 * Mobile Menu Styles
 */
@media screen and (max-width: 47.999em) {
  .site-header__navigation {
    background-color: rgba(49, 66, 85, 0.99);
    border-bottom: 1px solid #3b4646;
    max-height: 0;
    overflow-x: auto;
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    transition: max-height 0.2s ease-in-out, opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
    visibility: hidden;
    /**
		 * Styles for when the mobile menu is opened.
		 */ }
    .site-header__navigation.open {
      max-height: 100vh;
      visibility: visible; }
  .menu {
    /**
		 * Individual menu item
		 */
    /**
		 * Submenu
		 */ }
    .menu__item {
      border-top: 1px solid #3b4646;
      display: block;
      position: relative; }
      .menu__item a {
        padding: .5em 1.5em; }
    .menu__submenu {
      background-color: #2d2d2d;
      max-height: 0;
      overflow: hidden;
      visibility: hidden;
      /**
			 * Submenus when hovering parent
			 */
      /**
			 * Submenu item styles
			 */
      /**
			 * Sub-Submenus
			 */ }
      .open > .menu__submenu {
        max-height: none;
        visibility: visible; }
      .menu__submenu .menu__item a {
        color: #fff;
        font-weight: 400;
        text-transform: none; } }
      @media screen and (max-width: 47.999em) and (max-width: 47.999em) {
        .menu__submenu .menu__item a:active, .menu__submenu .menu__item a:focus, .menu__submenu .menu__item a:hover {
          background-color: #336699; } }

@media screen and (max-width: 47.999em) {
      .menu__submenu .menu__submenu a {
        background-color: #dadada; } }

/**
 * Desktop Menu Styles
 */
@media screen and (min-width: 48em) {
  /**
	 * Styles specific to the main menu
	 */
  .main-menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end; }
  /**
	 * Styles specific to the secondary menu
	 */
  .secondary-menu {
    color: #404144;
    display: inline-block;
    width: 50%; }
    .secondary-menu .menu__item {
      margin: 0; }
      .secondary-menu .menu__item a {
        font-weight: 400;
        text-transform: none; }
  .menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
    /**
		 * Individual menu item
		 */
    /**
		 * Submenu
		 */ }
    .menu__item {
      display: block;
      margin: 0 0.5em;
      padding: 0.333em calc(.25em + .5vw);
      position: relative; }
      .menu__item:last-child {
        margin-right: 0;
        padding-right: 0; }
      .menu__item a {
        padding: 0.1em; }
        .menu__item a:active, .menu__item a:focus, .menu__item a:hover {
          border-color: #093370; }
    .menu__submenu {
      background-color: #f8f8f8;
      opacity: 0;
      position: absolute;
      top: 100%;
      transition: opacity 0.32s ease-in-out, visibility 0.32s ease-in-out;
      visibility: hidden;
      width: 16em;
      /**
			 * Submenus with open class and when hovering parent
			 */
      /**
			 * Submenu item styles
			 */
      /**
			 * Sub-Submenus
			 */ } }
    @media screen and (min-width: 48em) and (max-width: 47.999em) {
      .menu__submenu {
        left: 50%;
        transform: translateX(-50%); } }

@media screen and (min-width: 48em) {
      .menu__item--parent:hover > .menu__submenu,
      .open > .menu__submenu {
        opacity: 1;
        transition: opacity 0.16s ease-in-out, visibility 0.16s ease-in-out;
        visibility: visible; }
      .menu__submenu .menu__item {
        margin: 0; }
        .menu__submenu .menu__item a {
          border-bottom: 0;
          padding: .75em 1.25em;
          position: relative;
          text-transform: none;
          transition: .3s all; }
          .menu__submenu .menu__item a:after {
            background: #336699;
            content: '';
            display: block;
            height: 2px;
            position: absolute;
            bottom: 0;
            transition: .3s all;
            width: 0; }
          .menu__submenu .menu__item a:hover, .menu__submenu .menu__item a:focus {
            background-color: transparent; }
            .menu__submenu .menu__item a:hover:after, .menu__submenu .menu__item a:focus:after {
              width: 3em; }
      .menu__submenu .menu__submenu {
        border-left: 1px solid #3b4646;
        left: 100%;
        top: 0;
        transform: none; }
  .toplevel a {
    padding: 0; }
  li.toplevel {
    padding-bottom: 0;
    padding-top: 0; } }

.menu__item--parent {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center; }
  @media screen and (max-width: 47.999em) {
    .menu__item--parent {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 100%; }
      .menu__item--parent > a {
        width: 90%; }
      .menu__item--parent > button {
        width: 10%; }
      .menu__item--parent .menu__submenu {
        width: 100%; } }
  .menu__item--parent .submenu-toggle svg {
    transition: .25s transform; }
  @media screen and (min-width: 48em) {
    .menu__item--parent:hover .submenu-toggle svg, .menu__item--parent:focus .submenu-toggle svg {
      transform: rotate(180deg); } }

/**
 * Cookie Popup styles
 * DBS>Interactive
 */
.cookie-popup {
  background: #fff;
  box-shadow: 0 0 1.1em -.5em #000;
  padding: 1em;
  position: fixed;
  left: 0;
  bottom: 0;
  transform: translateY(100%);
  transition: all .5s ease-in-out;
  width: 100%;
  z-index: 3000; }
  .cookie-popup.loaded {
    opacity: 1 !important;
    transform: translateY(0%); }
  .cookie-popup__container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center; }
    .cookie-popup__container .cookie-popup__buttons {
      margin-top: 1em;
      width: 100%; }
      .cookie-popup__container .cookie-popup__buttons button {
        width: 100%; }
    @media screen and (min-width: 48em) {
      .cookie-popup__container {
        -ms-flex-direction: row;
        flex-direction: row; }
        .cookie-popup__container .cookie-popup__buttons {
          margin: 0 0 0 2em;
          width: auto; }
          .cookie-popup__container .cookie-popup__buttons button {
            width: auto; } }
  .cookie-popup p {
    font-size: .8em;
    margin-bottom: .5em;
    max-width: 40em; }
  .cookie-popup__learn-more {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: none;
    padding: 0;
    text-decoration: underline; }
  .cookie-popup__legal {
    display: none; }

/**
 * DBS Chevron Styles
 * DBS>Interactive
 */
#dbs-chev {
  color: #fff;
  font-family: sans-serif;
  font-size: 1rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column; }
  @media screen and (min-width: 48em) {
    #dbs-chev {
      display: inline-block;
      float: right;
      width: 1em; } }
  #dbs-chev svg {
    height: 2rem;
    max-width: 1rem; }
  #dbs-chev strong {
    font-size: 0.60883em;
    display: block;
    float: right;
    font-weight: normal;
    text-align: center;
    width: 15em; }
    @media (min-width: 48em) {
      #dbs-chev strong {
        font-size: 0.76104em; } }
    @media screen and (min-width: 48em) {
      #dbs-chev strong {
        width: 21em; } }
  #dbs-chev .text {
    background: #000;
    display: inline-block;
    max-width: 0;
    overflow: hidden;
    padding: .25em 0;
    transition: all .5s ease-out; }
    @media screen and (min-width: 48em) {
      #dbs-chev .text {
        float: left;
        position: absolute;
        right: 2em;
        top: 1px; } }
  #dbs-chev a {
    color: #fff;
    text-decoration: none; }
    #dbs-chev a:focus, #dbs-chev a:hover {
      color: #cccccc; }
  #dbs-chev polygon {
    fill: #fff; }
  #dbs-chev.show-additional-content span,
  #dbs-chev:hover span {
    max-width: 23em; }
    @media screen and (min-width: 48em) {
      #dbs-chev.show-additional-content span,
      #dbs-chev:hover span {
        float: left; } }

/**
 * Footer styles
 * DBS>Interactive
 *
 * Classname Structure
 *
 * The rational was to avoid using elements in the stylesheet and to limit nesting.
 *
 * 		site-footer - the footer element
 *
 * 			site-footer__navigation - footer menu
 * 				footer-menu__item - footer menu item
 *
 * 			site-footer__credits - copyright info container
 *
 * 			site-footer__copyright - copyright statement
 *
 */
.site-footer {
  background: #0c1824;
  clear: both;
  color: #fff;
  margin-top: auto;
  overflow: hidden;
  padding: 1.5rem; }
  .site-footer ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .site-footer a {
    color: #fff;
    text-decoration: none; }
    .site-footer a:hover {
      text-decoration: underline; }
  .site-footer .site-footer__logo svg {
    display: block;
    max-width: 10em;
    padding-bottom: 1em; }
  .site-footer__content {
    display: inline-block; }
  .site-footer__business li,
  .site-footer__business ul {
    display: block; }
  .site-footer__navigation {
    border-bottom: 2px solid rgba(218, 218, 218, 0.3);
    margin: 0 0 2em;
    padding: 0 0 2em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase; }
    .site-footer__navigation ul {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column; }
      @media screen and (min-width: 48em) {
        .site-footer__navigation ul {
          -ms-flex-direction: row;
          flex-direction: row;
          -ms-flex-pack: center;
          justify-content: center; } }
      .site-footer__navigation ul a {
        border-bottom: 1px solid transparent;
        display: block;
        transition: 0.3s all; }
        .site-footer__navigation ul a:hover {
          border-color: #fff;
          text-decoration: none; }
    .site-footer__navigation .footer-menu__item a {
      margin: 0 calc(.25em + .5vw);
      padding: 0.333em 0; }
    .site-footer__navigation li {
      display: inline-block; }
  .site-footer__credits {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
    max-width: 75em;
    padding: 1em 0;
    width: 100%; }
    @media screen and (min-width: 48em) {
      .site-footer__credits {
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-pack: justify;
        justify-content: space-between; } }
  .site-footer__copyright {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.8em;
    margin: 2em auto 3em;
    width: 100%; }
    .site-footer__copyright a {
      font-weight: normal; }
    @media screen and (min-width: 48em) {
      .site-footer__copyright {
        margin: auto; } }
  .site-footer .legal_footer ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .site-footer .legal_footer li:after {
    color: #fff;
    content: '|';
    padding: 0 0.5em; }
  .site-footer .legal_footer li:last-child:after {
    content: ''; }
  .site-footer .social-media {
    display: -ms-flexbox;
    display: flex; }
    .site-footer .social-media__link {
      margin: 0 1em;
      transform: scale(1);
      transition: all 0.3s; }
      .site-footer .social-media__link:first-child {
        margin-left: 0; }
      .site-footer .social-media__link a {
        display: block; }
        .site-footer .social-media__link a svg {
          max-width: 2em; }
          .site-footer .social-media__link a svg path {
            fill: #fff;
            transition: 0.3s fill; }
        .site-footer .social-media__link a:focus svg,
        .site-footer .social-media__link a:hover svg {
          transform: scale(1.1);
          transition: all 0.3s; }

/**
 * Search Form
 * DBS>Interactive
 */
.search-form {
  border-top: 1px solid #093370;
  box-shadow: 0px 0px 14px 1px #6a6a6a;
  overflow: hidden;
  position: relative;
  z-index: 12;
  width: 100%; }
  @media screen and (min-width: 48em) {
    .search-form {
      border: none;
      bottom: unset;
      display: block;
      float: right;
      height: auto;
      margin-top: -10em;
      transition: margin-top .35s ease-in-out;
      visibility: hidden; } }
  .search-form__container {
    background: #fff;
    border: .15em solid lightgray;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    float: right;
    opacity: 1;
    padding: 1.5em 1.4em;
    position: relative;
    width: 100%; }
    @media screen and (min-width: 48em) {
      .search-form__container {
        -ms-flex-direction: row;
        flex-direction: row;
        padding: 2em; } }
  .search-form .search-form__label {
    width: 100%; }
  .search-form input.search-form__field {
    border: 2px solid #e5e5e5;
    display: inline-block;
    margin: 0;
    margin-bottom: 1em;
    opacity: 1;
    padding: 1em;
    transition: opacity 1s ease-out, width 0.5s linear;
    transition-delay: 0.4s;
    width: 100%; }
    @media screen and (min-width: 48em) {
      .search-form input.search-form__field {
        margin-bottom: auto; } }
  .search-form__label {
    display: none; }
    @media screen and (min-width: 48em) {
      .search-form__label .search-form__focus {
        background: #fff;
        border: none;
        margin: 0; }
      .search-form__label.active--label {
        width: 100vw; } }
  .search-form__button, .search-form__button--open {
    border-radius: 0;
    border: none;
    display: inline-block;
    font-size: 1em;
    padding: 1em 0 1em 2em;
    position: relative;
    transition: transform 1s ease-in-out;
    vertical-align: middle;
    width: auto; }
    @media screen and (max-width: 47.999em) {
      .search-form__button, .search-form__button--open {
        float: none; }
        .search-form__button svg path, .search-form__button--open svg path {
          fill: #fff; } }
  .search-form__button--open {
    background: transparent;
    color: black;
    font-family: "Open Sans", "Verdana", "Helvetica", sans-serif;
    font-weight: 400;
    line-height: 2.2;
    margin: .5em 0 .5em 1em;
    padding: 0 0 .1em .5em; }
    .search-form__button--open:after {
      background: url("../icons/src/search.svg");
      content: '';
      display: inline-block;
      height: 1.5em;
      margin-left: .5em;
      position: relative;
      top: .25em;
      width: 1.5em; }
  @media screen and (min-width: 48em) {
    .search-form__button, .search-form__submit {
      margin-left: 1em; } }
  .search-form .clear_search_field {
    background-color: #fff;
    border: none;
    display: inline-block;
    height: auto;
    left: auto;
    position: absolute;
    top: 30%;
    right: 2em;
    width: auto;
    transform: translate(0, -50%); }
    @media screen and (min-width: 48em) {
      .search-form .clear_search_field {
        left: 70%;
        right: auto;
        top: 50%; } }
  .search-form .search_close {
    background-color: #336699;
    color: #fff;
    left: auto;
    right: 0;
    top: 6.25em;
    width: 2em;
    transform: none;
    height: 2em;
    position: absolute; }
    .search-form .search_close:after {
      background: url("../icons/src/arrow-up.svg");
      background-repeat: no-repeat;
      background-size: cover;
      content: '';
      display: inline-block;
      height: 1.25em;
      transition: transform 0.3s linear;
      vertical-align: middle;
      width: 1.25em; }

.search-form--active {
  margin-top: 0;
  transition: margin-top .35s ease-in-out;
  visibility: visible;
  float: right;
  height: auto;
  display: block; }

/**
 * Slate Blog Post Styles
 * DBS>Interactive
 */
.single .blog-title,
.archive .blog-title,
.blog .blog-title,
.search .blog-title {
  margin: 0 auto;
  padding: 2rem 2rem 0; }
  .single .blog-title > div,
  .archive .blog-title > div,
  .blog .blog-title > div,
  .search .blog-title > div {
    padding: 1.5rem; }

.single .blog-main,
.archive .blog-main,
.blog .blog-main,
.search .blog-main {
  width: 100%; }
  .single .blog-main .contain,
  .archive .blog-main .contain,
  .blog .blog-main .contain,
  .search .blog-main .contain {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    transition: .3s ease-in-out; }
    .single .blog-main .contain.fade-out,
    .archive .blog-main .contain.fade-out,
    .blog .blog-main .contain.fade-out,
    .search .blog-main .contain.fade-out {
      opacity: 0; }
    .single .blog-main .contain .post,
    .archive .blog-main .contain .post,
    .blog .blog-main .contain .post,
    .search .blog-main .contain .post {
      box-shadow: 0 0 8px -2px #093370;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column;
      margin-bottom: 1.5em;
      overflow: hidden;
      position: relative;
      width: 100%; }
      .single .blog-main .contain .post__overlay,
      .archive .blog-main .contain .post__overlay,
      .blog .blog-main .contain .post__overlay,
      .search .blog-main .contain .post__overlay {
        z-index: 1; }
        .single .blog-main .contain .post__overlay:after,
        .archive .blog-main .contain .post__overlay:after,
        .blog .blog-main .contain .post__overlay:after,
        .search .blog-main .contain .post__overlay:after {
          background: #074d80;
          content: '';
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          transform: translateY(-100%);
          transition: 0.4s ease-in-out;
          width: 100%;
          z-index: -1; }
      .single .blog-main .contain .post__image,
      .archive .blog-main .contain .post__image,
      .blog .blog-main .contain .post__image,
      .search .blog-main .contain .post__image {
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%; }
        .single .blog-main .contain .post__image img,
        .archive .blog-main .contain .post__image img,
        .blog .blog-main .contain .post__image img,
        .search .blog-main .contain .post__image img {
          height: 100%;
          object-fit: cover;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          width: 100%; }
      .single .blog-main .contain .post article,
      .archive .blog-main .contain .post article,
      .blog .blog-main .contain .post article,
      .search .blog-main .contain .post article {
        background: #fff;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        height: 100%;
        position: relative;
        z-index: 1; }
      .single .blog-main .contain .post__category,
      .archive .blog-main .contain .post__category,
      .blog .blog-main .contain .post__category,
      .search .blog-main .contain .post__category {
        background: #074d80;
        color: #fff;
        font-size: .85em;
        font-weight: 400;
        padding: .5rem 1rem;
        position: relative;
        z-index: 2; }
      .single .blog-main .contain .post__date,
      .archive .blog-main .contain .post__date,
      .blog .blog-main .contain .post__date,
      .search .blog-main .contain .post__date {
        color: #70777B;
        font-size: .85em;
        font-weight: normal;
        margin-bottom: 0.5rem;
        transition: 0.4s ease-in-out; }
      .single .blog-main .contain .post__body,
      .archive .blog-main .contain .post__body,
      .blog .blog-main .contain .post__body,
      .search .blog-main .contain .post__body {
        background-repeat: no-repeat;
        background-size: cover;
        height: 100%;
        padding: 1em 1em 4.25em; }
        .single .blog-main .contain .post__body:after,
        .archive .blog-main .contain .post__body:after,
        .blog .blog-main .contain .post__body:after,
        .search .blog-main .contain .post__body:after {
          background: linear-gradient(170deg, rgba(255, 255, 255, 0.95) 60%, rgba(255, 255, 255, 0.35));
          content: '';
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%; }
      .single .blog-main .contain .post__title,
      .archive .blog-main .contain .post__title,
      .blog .blog-main .contain .post__title,
      .search .blog-main .contain .post__title {
        font-size: 1.1rem;
        line-height: 1.4;
        position: relative;
        z-index: 2; }
        .single .blog-main .contain .post__title a,
        .archive .blog-main .contain .post__title a,
        .blog .blog-main .contain .post__title a,
        .search .blog-main .contain .post__title a {
          display: inline-block;
          transition: 0.4s ease-in-out; }
      .single .blog-main .contain .post__arrow,
      .archive .blog-main .contain .post__arrow,
      .blog .blog-main .contain .post__arrow,
      .search .blog-main .contain .post__arrow {
        background: url("../icons/src/arrow-left-darker.svg") no-repeat;
        background-size: cover;
        height: 1.25rem;
        position: absolute;
        right: 1em;
        bottom: 1em;
        transform: rotate(180deg);
        transition: transform 0.4s ease-in-out, 0s visibility 0s linear, 0.4s opacity ease-in-out;
        visibility: visible;
        width: 1.25em; }
      .single .blog-main .contain .post .button,
      .archive .blog-main .contain .post .button,
      .blog .blog-main .contain .post .button,
      .search .blog-main .contain .post .button {
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
        border: 1px solid #fff;
        position: absolute;
        bottom: 1em;
        text-align: center;
        text-transform: uppercase;
        transform: translateY(4em);
        transition: 0s visibility 0.4s linear, 0.4s transform ease-in-out, 0.4s background ease-in-out, 0.4s color ease-in-out;
        visibility: hidden;
        width: calc(100% - 2em);
        z-index: 2; }
      @media screen and (min-width: 48em) {
        .single .blog-main .contain .post,
        .archive .blog-main .contain .post,
        .blog .blog-main .contain .post,
        .search .blog-main .contain .post {
          min-height: 14rem;
          width: calc(50% - .75em); } }
      @media screen and (min-width: 62em) {
        .single .blog-main .contain .post,
        .archive .blog-main .contain .post,
        .blog .blog-main .contain .post,
        .search .blog-main .contain .post {
          width: calc(25% - 1.25em); } }
      .single .blog-main .contain .post:hover .button, .single .blog-main .contain .post:focus .button,
      .archive .blog-main .contain .post:hover .button,
      .archive .blog-main .contain .post:focus .button,
      .blog .blog-main .contain .post:hover .button,
      .blog .blog-main .contain .post:focus .button,
      .search .blog-main .contain .post:hover .button,
      .search .blog-main .contain .post:focus .button {
        transform: translateY(0);
        transition: 0s visibility 0s linear, 0.4s transform ease-in-out, 0.4s background ease-in-out, 0.4s color ease-in-out;
        visibility: visible; }
      .single .blog-main .contain .post:hover .post__arrow, .single .blog-main .contain .post:focus .post__arrow,
      .archive .blog-main .contain .post:hover .post__arrow,
      .archive .blog-main .contain .post:focus .post__arrow,
      .blog .blog-main .contain .post:hover .post__arrow,
      .blog .blog-main .contain .post:focus .post__arrow,
      .search .blog-main .contain .post:hover .post__arrow,
      .search .blog-main .contain .post:focus .post__arrow {
        opacity: 0;
        transition: transform 0.4s ease-in-out, 0s visibility 0.4s linear, 0.4s opacity ease-in-out;
        visibility: hidden; }
      .single .blog-main .contain .post:hover .post__overlay:after, .single .blog-main .contain .post:focus .post__overlay:after,
      .archive .blog-main .contain .post:hover .post__overlay:after,
      .archive .blog-main .contain .post:focus .post__overlay:after,
      .blog .blog-main .contain .post:hover .post__overlay:after,
      .blog .blog-main .contain .post:focus .post__overlay:after,
      .search .blog-main .contain .post:hover .post__overlay:after,
      .search .blog-main .contain .post:focus .post__overlay:after {
        transform: translateY(0); }
      .single .blog-main .contain .post:hover .post__title a,
      .single .blog-main .contain .post:hover .post__date, .single .blog-main .contain .post:focus .post__title a,
      .single .blog-main .contain .post:focus .post__date,
      .archive .blog-main .contain .post:hover .post__title a,
      .archive .blog-main .contain .post:hover .post__date,
      .archive .blog-main .contain .post:focus .post__title a,
      .archive .blog-main .contain .post:focus .post__date,
      .blog .blog-main .contain .post:hover .post__title a,
      .blog .blog-main .contain .post:hover .post__date,
      .blog .blog-main .contain .post:focus .post__title a,
      .blog .blog-main .contain .post:focus .post__date,
      .search .blog-main .contain .post:hover .post__title a,
      .search .blog-main .contain .post:hover .post__date,
      .search .blog-main .contain .post:focus .post__title a,
      .search .blog-main .contain .post:focus .post__date {
        color: #fff; }
      .single .blog-main .contain .post.deal .post__date,
      .archive .blog-main .contain .post.deal .post__date,
      .blog .blog-main .contain .post.deal .post__date,
      .search .blog-main .contain .post.deal .post__date {
        display: none; }
    .single .blog-main .contain .pagination,
    .archive .blog-main .contain .pagination,
    .blog .blog-main .contain .pagination,
    .search .blog-main .contain .pagination {
      width: 100%; }

.single .blog-nav,
.archive .blog-nav,
.blog .blog-nav,
.search .blog-nav {
  margin-top: 1em;
  overflow: visible;
  position: relative;
  z-index: 2; }
  .single .blog-nav nav,
  .archive .blog-nav nav,
  .blog .blog-nav nav,
  .search .blog-nav nav {
    padding: .5em 1.2em;
    position: relative; }
    @media screen and (min-width: 75em) {
      .single .blog-nav nav,
      .archive .blog-nav nav,
      .blog .blog-nav nav,
      .search .blog-nav nav {
        padding: .5em 1.5em; } }
  .single .blog-nav__toggle,
  .archive .blog-nav__toggle,
  .blog .blog-nav__toggle,
  .search .blog-nav__toggle {
    background: transparent;
    border: none;
    font-weight: 400;
    padding: .75em 0;
    position: relative; }
    @media screen and (min-width: 1025px) {
      .single .blog-nav__toggle,
      .archive .blog-nav__toggle,
      .blog .blog-nav__toggle,
      .search .blog-nav__toggle {
        display: none; } }
    .single .blog-nav__toggle:after,
    .archive .blog-nav__toggle:after,
    .blog .blog-nav__toggle:after,
    .search .blog-nav__toggle:after {
      background: url("../icons/src/arrow-down.svg") no-repeat center;
      content: '';
      height: 1em;
      position: absolute;
      top: 50%;
      right: -2em;
      transform: translateY(-50%);
      width: 1.5em; }
  .single .blog-nav ul,
  .archive .blog-nav ul,
  .blog .blog-nav ul,
  .search .blog-nav ul {
    background: #fff;
    box-shadow: 0 6px 8px -4px #000;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0 1.5em 1.5em;
    position: absolute;
    top: 5em;
    left: 0;
    transform: scaleY(0);
    transform-origin: top;
    transition: .3s ease-in-out;
    width: 100%; }
    .single .blog-nav ul.open,
    .archive .blog-nav ul.open,
    .blog .blog-nav ul.open,
    .search .blog-nav ul.open {
      transform: scaleY(1); }
    .single .blog-nav ul li:last-child,
    .archive .blog-nav ul li:last-child,
    .blog .blog-nav ul li:last-child,
    .search .blog-nav ul li:last-child {
      margin-top: .5em; }
    .single .blog-nav ul li.current-cat a,
    .archive .blog-nav ul li.current-cat a,
    .blog .blog-nav ul li.current-cat a,
    .search .blog-nav ul li.current-cat a {
      border-bottom: 2px solid #093370;
      color: #093370; }
    .single .blog-nav ul li a,
    .archive .blog-nav ul li a,
    .blog .blog-nav ul li a,
    .search .blog-nav ul li a {
      background: transparent;
      border: none;
      border-bottom: 2px solid transparent;
      display: inline-block;
      font-weight: normal;
      padding: .5rem 0;
      text-decoration: none;
      transition: .3s ease-in-out; }
      .single .blog-nav ul li a:hover, .single .blog-nav ul li a:focus,
      .archive .blog-nav ul li a:hover,
      .archive .blog-nav ul li a:focus,
      .blog .blog-nav ul li a:hover,
      .blog .blog-nav ul li a:focus,
      .search .blog-nav ul li a:hover,
      .search .blog-nav ul li a:focus {
        border-bottom: 2px solid #093370;
        color: #093370; }
    @media screen and (min-width: 62em) {
      .single .blog-nav ul li,
      .archive .blog-nav ul li,
      .blog .blog-nav ul li,
      .search .blog-nav ul li {
        padding-right: .9em;
        margin-right: .9em; } }
    @media screen and (min-width: 1025px) {
      .single .blog-nav ul,
      .archive .blog-nav ul,
      .blog .blog-nav ul,
      .search .blog-nav ul {
        box-shadow: none;
        -ms-flex-direction: row;
        flex-direction: row;
        font-size: .9em;
        padding: 0;
        position: static;
        transform: scaleY(1); }
        .single .blog-nav ul li,
        .archive .blog-nav ul li,
        .blog .blog-nav ul li,
        .search .blog-nav ul li {
          border-right: 1px solid rgba(0, 0, 0, 0.4); }
          .single .blog-nav ul li:last-child,
          .archive .blog-nav ul li:last-child,
          .blog .blog-nav ul li:last-child,
          .search .blog-nav ul li:last-child {
            margin: 0 0 0 auto;
            padding: 0; }
          .single .blog-nav ul li:last-child, .single .blog-nav ul li:nth-last-child(2),
          .archive .blog-nav ul li:last-child,
          .archive .blog-nav ul li:nth-last-child(2),
          .blog .blog-nav ul li:last-child,
          .blog .blog-nav ul li:nth-last-child(2),
          .search .blog-nav ul li:last-child,
          .search .blog-nav ul li:nth-last-child(2) {
            border: none; }
          .single .blog-nav ul li a,
          .archive .blog-nav ul li a,
          .blog .blog-nav ul li a,
          .search .blog-nav ul li a {
            padding: .25rem 0; } }
    @media screen and (min-width: 75em) {
      .single .blog-nav ul li,
      .archive .blog-nav ul li,
      .blog .blog-nav ul li,
      .search .blog-nav ul li {
        padding-right: 1em;
        margin-right: 1em; } }
  .single .blog-nav .blog-search__container,
  .archive .blog-nav .blog-search__container,
  .blog .blog-nav .blog-search__container,
  .search .blog-nav .blog-search__container {
    position: relative; }
  .single .blog-nav .blog-search__submit,
  .archive .blog-nav .blog-search__submit,
  .blog .blog-nav .blog-search__submit,
  .search .blog-nav .blog-search__submit {
    background: url("../icons/src/search.svg") no-repeat center;
    background-color: transparent;
    border: none;
    height: 1.5em;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    width: 1.5em; }
  .single .blog-nav .blog-search__label,
  .archive .blog-nav .blog-search__label,
  .blog .blog-nav .blog-search__label,
  .search .blog-nav .blog-search__label {
    display: block; }
  .single .blog-nav .blog-search__input,
  .archive .blog-nav .blog-search__input,
  .blog .blog-nav .blog-search__input,
  .search .blog-nav .blog-search__input {
    border: 1px solid rgba(0, 0, 0, 0.4);
    border-radius: 2em;
    margin: 0;
    padding: .5em 1em;
    padding-right: 2.5em; }

.blog-post h1 {
  color: #fff; }

.blog-post ol {
  counter-reset: item; }

.blog-post a:not([class^='button']),
.blog-post .sector-button {
  color: #3b4646; }
  .blog-post a:not([class^='button']):hover,
  .blog-post .sector-button:hover {
    color: #526262; }

.blog-post__header {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 8em 1em;
  position: relative;
  text-align: center; }
  .blog-post__header:before {
    background-color: rgba(7, 40, 88, 0.9);
    content: '';
    display: inline-block;
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0; }
  .blog-post__header .button,
  .blog-post__header h1,
  .blog-post__header time {
    position: relative;
    z-index: 1;
    max-width: 30em;
    margin: 0 auto; }
  .blog-post__header .button {
    background-color: transparent;
    color: #fff; }
  .blog-post__header h1 {
    padding: 1rem 0; }
  .blog-post__header .category,
  .blog-post__header .publication-date {
    text-transform: uppercase; }
  .blog-post__header.bg-dark {
    background-color: transparent; }

.blog-post.single .blog-post__content .blog-main {
  display: inline-block;
  -ms-flex-pack: unset;
  justify-content: unset;
  padding: 1.5rem; }

.blog-post__social-media {
  padding: 2em 1.2em 1.5rem; }
  @media screen and (min-width: 75em) {
    .blog-post__social-media {
      padding: 4em 2em 1.5rem 1.5rem; } }
  .blog-post__social-media li,
  .blog-post__social-media ul {
    margin: 0;
    padding: 0; }
  .blog-post__social-media ul li:before {
    display: none; }
  .blog-post__social-media ul {
    display: table; }
    .blog-post__social-media ul li {
      display: inline-block;
      padding-right: 1rem; }
  .blog-post__social-media .social-media__link {
    margin-bottom: 2px; }
    .blog-post__social-media .social-media__link svg {
      fill: #093370;
      height: 2em;
      transform: scale(1);
      transition: all 0.3s;
      vertical-align: top;
      width: 2em;
      transition: all 0.3s; }
    .blog-post__social-media .social-media__link:focus svg,
    .blog-post__social-media .social-media__link:hover svg {
      fill: #336699;
      transform: scale(1.1);
      transition: all 0.3s; }
    .blog-post__social-media .social-media__link svg .st0 {
      fill: #000;
      width: 5%; }
  .blog-post__social-media .social-media__google svg {
    margin-top: 0.07rem;
    width: 40px; }
  .blog-post__social-media .social-media__facebook svg {
    width: 1.75em; }

.blog-post .blog-sidebar {
  display: inline-block;
  vertical-align: top;
  width: 100%; }
  @media screen and (min-width: 48em) {
    .blog-post .blog-sidebar {
      width: 29%; } }
  .blog-post .blog-sidebar a,
  .blog-post .blog-sidebar button {
    text-decoration: none;
    border-bottom: 1px solid #ebebeb;
    display: block;
    line-height: 1.4;
    padding: 1rem 1.4em;
    transition: 0.3s all;
    word-break: break-word; }
    .blog-post .blog-sidebar a:active:not(.sector-button), .blog-post .blog-sidebar a:focus:not(.sector-button), .blog-post .blog-sidebar a:hover:not(.sector-button),
    .blog-post .blog-sidebar button:active:not(.sector-button),
    .blog-post .blog-sidebar button:focus:not(.sector-button),
    .blog-post .blog-sidebar button:hover:not(.sector-button) {
      color: #fff;
      background: #336699; }
  .blog-post .blog-sidebar .current-cat > a {
    color: #fff;
    background: #336699; }
  .blog-post .blog-sidebar .widgettitle {
    padding: 1.5rem;
    text-align: center;
    background: #000;
    color: #fff;
    font-weight: bold; }
  .blog-post .blog-sidebar .archive_list {
    background: #f3f3f391;
    border: 0.1em solid #ebebeb; }
  .blog-post .blog-sidebar .cat-item .children li a {
    padding: .75em;
    padding-left: 2.5em; }
  .blog-post .blog-sidebar .sector-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: none;
    font-weight: bold;
    position: relative;
    text-align: left;
    width: 100%; }
    .blog-post .blog-sidebar .sector-button:focus:after, .blog-post .blog-sidebar .sector-button:hover:after {
      transform: translateY(0.2em); }
    .blog-post .blog-sidebar .sector-button:after {
      content: url("../icons/src/arrow-down.svg");
      position: absolute;
      bottom: 0.5em;
      transition: 0.3s transform;
      width: 2em; }
    .blog-post .blog-sidebar .sector-button.open::after {
      transform: rotate(180deg); }
  .blog-post .blog-sidebar .sectors {
    display: none;
    margin: 0; }
    .blog-post .blog-sidebar .sectors a {
      border-bottom: none;
      font-weight: 400;
      padding-left: 2.5em; }

@media screen and (min-width: 48em) {
  .blog-post__content {
    margin: 0 auto;
    max-width: 66.667rem; } }

.blog-post__content a.unassist[target='_blank']:after {
  display: none; }

.blog-post__footer {
  clear: both;
  padding: 3em 0 2em;
  width: 100%; }
  .blog-post__footer .blog-post__navigation {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media screen and (max-width: 47.999em) {
      .blog-post__footer .blog-post__navigation .button-next,
      .blog-post__footer .blog-post__navigation .button-prev {
        margin-bottom: 1rem;
        text-align: center;
        width: 100%; } }
    .blog-post__footer .blog-post__navigation .button-next.nowhere,
    .blog-post__footer .blog-post__navigation .button-prev.nowhere {
      display: none; }

/**
 * Search Page
 */
.search .cat-filter__parent {
  display: none; }

/**
 * Pagination Styles
 * DBS>Interactive
 */
.pagination {
  margin-top: 1em;
  margin-bottom: 1em;
  text-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 0em; }
  .pagination__link, .pagination__more,
  .pagination .current,
  .pagination .page-numbers {
    display: inline-block;
    padding: 0.5em 1em;
    text-decoration: none;
    border-radius: 3px; }
  .pagination__more {
    margin: 0;
    padding: 0; }
  .pagination__link,
  .pagination .page-numbers {
    border: 1px solid #093370;
    font-weight: lighter; }
    .pagination__link:focus, .pagination__link:hover,
    .pagination .page-numbers:focus,
    .pagination .page-numbers:hover {
      background: #093370;
      color: #fff; }
  .pagination .current {
    background: #093370;
    font-weight: bold;
    color: #fff; }

/**
 * Table Styles with Responsive Design
 * Based on a CodePen Example by James TW:
 * https://codepen.io/james-tw/pen/GoaXrz
 */
/* Variables */
/**
 * Default styles
 */
table {
  margin-bottom: 1em;
  max-width: 100%;
  width: 100%;
  /**
	 * Responsive desktop styles
	 */
  /**
	 * Mobile only styles
	 */ }
  table tbody {
    display: block; }
  table tr {
    border: 1px solid #e0e0e0;
    display: block;
    margin-bottom: 1rem;
    transition: background-color .3s ease; }
  table th,
  table td {
    border-top: 0;
    padding: 1rem;
    transition: background-color .3s ease;
    text-align: left;
    vertical-align: top; }
  table th {
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    color: #757575;
    font-weight: 400;
    vertical-align: bottom; }
  table td {
    display: block; }
  table tfoot {
    border-top: 1px solid rgba(0, 0, 0, 0.12); }
    table tfoot td {
      color: #757575;
      font-weight: 400; }
  @media screen and (min-width: 48em) {
    table tbody {
      display: table-row-group; }
    table tr {
      border: none;
      display: table-row; }
    table td {
      display: table-cell;
      text-align: left; } }
  @media screen and (max-width: 47.999em) {
    table thead,
    table tfoot {
      display: none; }
    table td[data-title]:before {
      color: #757575;
      content: attr(data-title);
      float: left;
      font-size: inherit;
      font-weight: 400; } }

/* Table classes -- Add manually to the table element within the CMS */
/**
 * Bordered table
 *
 * Add horizontal borders between columns.
 */
.table--bordered {
  border: 0; }
  .table--bordered th,
  .table--bordered td {
    border-bottom: 1px solid #e0e0e0; }
    @media screen and (min-width: 48em) {
      .table--bordered th,
      .table--bordered td {
        border: 1px solid #e0e0e0; } }
  .table--bordered thead th,
  .table--bordered thead td {
    border-bottom-width: 2px; }

/**
 * Zebra-striping
 * Default zebra-stripe styles (alternating gray and transparent backgrounds)
 */
.table--striped td:nth-child(odd) {
  background-color: #f5f5f5; }

/**
 * Hover effect styling
 */
@media screen and (min-width: 48em) {
  .table--hover tr:hover {
    cursor: pointer; }
    .table--hover tr:hover td,
    .table--hover tr:hover td:first-child {
      background-color: rgba(0, 0, 0, 0.05); } }

/**
 * Default sidebar styles
 * DBS>Interactive
 */
.sidebar .menu {
  display: block;
  list-style: none;
  margin-bottom: 0rem;
  padding-left: 0em; }
  .sidebar .menu ul {
    list-style: none;
    margin-bottom: 0rem;
    padding-left: 0em; }
  .sidebar .menu a {
    display: inline-block;
    padding: .5em;
    text-decoration: none;
    word-break: normal;
    width: 100%; }
  .sidebar .menu .sub-menu {
    padding-left: 1.25em; }

/**
 * DBS Slate Stylesheet
 * DBS>Interactive
 */
/**
 * Sitemap page styles
 * DBS>Interactive
 */
.sitemap {
  padding: 1rem; }
  .sitemap li {
    list-style: none; }

.single-team .page-header {
  clear: both; }
  @media screen and (min-width: 30em) {
    .single-team .page-header {
      clear: none; } }

.team-member-image {
  display: inline-block;
  width: 70%;
  float: left;
  display: inline-block;
  vertical-align: top;
  position: relative;
  height: 100%; }
  @media screen and (min-width: 30em) {
    .team-member-image {
      margin: 0 3em 0 0;
      width: 30%; } }
  .team-member-image:after {
    background-image: url("../images/team-member-image-corners.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: -2px; }

.team-member-role {
  color: #093370;
  text-transform: uppercase;
  font-weight: 700;
  font-family: "Open Sans", "Verdana", "Helvetica", sans-serif; }

.team-member-social {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-bottom: 2em;
  padding-top: 4em; }
  @media screen and (min-width: 30em) {
    .team-member-social {
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-direction: row;
      flex-direction: row;
      width: 6em; } }
  .team-member-social .team-member-linkedin,
  .team-member-social .team-member-vcard {
    display: block;
    height: 2em;
    margin-bottom: 1rem;
    width: 2em;
    vertical-align: bottom; }
    @media screen and (min-width: 30em) {
      .team-member-social .team-member-linkedin,
      .team-member-social .team-member-vcard {
        width: 50%; } }
    .team-member-social .team-member-linkedin a,
    .team-member-social .team-member-vcard a {
      display: inline-block;
      height: 100%;
      width: 2.5em; }
    .team-member-social .team-member-linkedin svg,
    .team-member-social .team-member-vcard svg {
      height: 100%; }
  .team-member-social .team-member-linkedin svg path {
    fill: #093370; }

.team-member-posts {
  display: block;
  width: 100%;
  clear: both; }
  .team-member-posts h2 {
    font-weight: 700; }

.list-of-posts {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 0;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .list-of-posts .single-post {
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    margin-bottom: 2rem; }
    @media screen and (min-width: 48em) {
      .list-of-posts .single-post {
        padding: 0;
        box-shadow: 0 0;
        margin-right: 3%;
        width: 30.33%; } }
    .list-of-posts .single-post .h3 {
      margin-bottom: 1rem; }
    .list-of-posts .single-post:last-child {
      margin-right: 0; }

.transactions {
  background: linear-gradient(180deg, #15325F 0%, #305285 100%);
  position: relative;
  z-index: initial; }
  .transactions:after {
    background: url("../images/angle-pattern.svg");
    background-position: 7em -10em;
    background-repeat: no-repeat;
    background-size: 170%;
    content: '';
    height: 100%;
    opacity: .15;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%; }
    @media screen and (min-width: 48em) {
      .transactions:after {
        background-size: 100%; } }

.transactions-header {
  padding: 2em 1.5rem 0; }
  @media screen and (min-width: 48em) {
    .transactions-header {
      padding: 4em 1.5rem 0; } }
  .transactions-header h1 {
    font-size: 2.53835em;
    color: #fff;
    display: inline-block;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    position: relative; }
    @media (min-width: 48em) {
      .transactions-header h1 {
        font-size: 3.17294em; } }
    .transactions-header h1:after {
      background: #fff;
      content: '';
      height: 1px;
      position: absolute;
      bottom: 0;
      left: -400%;
      width: 500%; }

.transaction-grid {
  padding: 1.5rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .transaction-grid .single-transaction {
    margin-bottom: 2em;
    overflow: visible;
    position: relative;
    width: 100%;
    z-index: 1; }
    @media screen and (min-width: 48em) {
      .transaction-grid .single-transaction {
        width: calc(50% - 1em); } }
    @media screen and (min-width: 62em) {
      .transaction-grid .single-transaction {
        margin-bottom: 1.5em;
        width: calc(25% - 1.5em); } }
    .transaction-grid .single-transaction.not-shown {
      display: none; }
    .transaction-grid .single-transaction.active .single-transaction__content {
      opacity: 1;
      transition: 0s visibility 0s, .3s opacity linear 0s;
      visibility: visible; }
    .transaction-grid .single-transaction__card {
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background: #fff;
      border: none;
      color: #252525;
      overflow: hidden;
      padding: 1em;
      text-align: center;
      transition: .3s ease-in-out;
      width: 100%;
      will-change: transform;
      z-index: 0; }
      .transaction-grid .single-transaction__card .view-details {
        background-color: #fff;
        border: 1px solid #093370;
        border-radius: 2em;
        color: #093370;
        font-weight: 500;
        opacity: 0;
        padding: .5em 3em;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, 280%) scale(0.9);
        transition: .3s ease-in-out;
        text-transform: uppercase;
        width: 13em;
        will-change: opacity;
        z-index: 2; }
        .transaction-grid .single-transaction__card .view-details:hover {
          background-color: #093370;
          color: #fff; }
      .transaction-grid .single-transaction__card:hover, .transaction-grid .single-transaction__card:focus {
        transform: scale(1.05); }
        .transaction-grid .single-transaction__card:hover .view-details, .transaction-grid .single-transaction__card:focus .view-details {
          opacity: 1;
          transform: translate(-50%, -50%) scale(0.9); }
        .transaction-grid .single-transaction__card:hover .single-transaction__image, .transaction-grid .single-transaction__card:focus .single-transaction__image {
          opacity: .1; }
    .transaction-grid .single-transaction__title {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      height: 100%;
      padding: 1em;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 0; }
    .transaction-grid .single-transaction .single-transaction__image {
      height: 100%;
      overflow: hidden;
      position: relative;
      transition: .3s ease-in-out;
      width: 100%;
      z-index: 1; }
    .transaction-grid .single-transaction.bg-img .single-transaction__title {
      display: none; }

.transaction-popup {
  background: #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: calc(100% - 2em);
  max-height: 35em;
  max-width: 55.667rem;
  opacity: 0;
  padding: 1rem;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  transition: 0s visibility .3s linear, .3s opacity 0s ease-in-out, .3s transform ease-in-out 0s;
  visibility: hidden;
  width: calc(100% - 2em);
  z-index: 200; }
  .transaction-popup.active {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    transition: 0s visibility 0s linear, .3s opacity 0s ease-in-out, .3s transform ease-in-out 0s;
    visibility: visible; }
  .transaction-popup__date {
    color: #70777B;
    font-weight: bold;
    margin-bottom: .25em;
    text-transform: uppercase; }
  .transaction-popup__title {
    color: #093370;
    padding-right: 1rem; }
  .transaction-popup__content {
    height: 100%;
    margin-right: -1em;
    overflow: auto;
    transition: .3s ease-in-out; }
  .transaction-popup__body {
    padding-right: 1em; }
  .transaction-popup__text {
    margin-bottom: 2em; }
    .transaction-popup__text img {
      display: none; }
  .transaction-popup__button {
    background-color: transparent;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    border: none;
    height: 3em;
    position: absolute;
    bottom: -4em;
    width: 3em; }
  .transaction-popup__prev, .transaction-popup__next {
    background-image: url("../icons/src/nav-arrow.svg"); }
  .transaction-popup__prev {
    left: 0; }
  .transaction-popup__next {
    right: 0;
    transform: rotate(-180deg); }
  .transaction-popup__close {
    padding: 0;
    top: -3em;
    transform: none;
    right: 0;
    width: 2.5em; }
    .transaction-popup__close:before, .transaction-popup__close:after {
      background: #fff;
      border-radius: 8px;
      content: '';
      height: 2.25em;
      position: absolute;
      top: 50%;
      left: 50%;
      width: 3px; }
    .transaction-popup__close:before {
      transform: translate(-50%, -50%) rotate(-45deg); }
    .transaction-popup__close:after {
      transform: translate(-50%, -50%) rotate(45deg); }
  .transaction-popup hr {
    border-top: 1px solid rgba(64, 65, 68, 0.5);
    margin: 1rem auto; }
  @media screen and (min-width: 48em) {
    .transaction-popup {
      padding: 3em;
      top: 50%;
      transform: translate(-50%, -50%) scale(0); }
      .transaction-popup.active {
        transform: translate(-50%, -50%) scale(1); }
      .transaction-popup__body {
        display: -ms-flexbox;
        display: flex; }
        .transaction-popup__body .social-share {
          -ms-flex-order: -1;
          order: -1;
          padding-right: 3em; }
      .transaction-popup__button {
        bottom: auto;
        top: 50%;
        transform: translateY(-50%); }
      .transaction-popup__prev {
        left: -4em; }
      .transaction-popup__next {
        right: -4em;
        transform: translateY(-50%) rotate(-180deg); }
      .transaction-popup__close {
        top: 1.5em;
        right: .25em; }
        .transaction-popup__close:before, .transaction-popup__close:after {
          background: #70777B; }
      .transaction-popup hr {
        margin: 2rem auto; } }

.social-share {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0; }
  .social-share li {
    color: #70777B;
    line-height: 1.4;
    margin: 0 1em 0 0; }
  .social-share hr {
    margin: .5em 0 .75em; }
  .social-share .social-media__link {
    display: block; }
    .social-share .social-media__link svg {
      fill: #093370;
      height: 2em;
      width: 2em;
      transition: 0.3s; }
    .social-share .social-media__link:focus svg,
    .social-share .social-media__link:hover svg {
      fill: #336699; }
  .social-share .print {
    background: transparent;
    border: none;
    border-left: 1px solid rgba(64, 65, 68, 0.5);
    line-height: 1;
    padding-left: 1em; }
    .social-share .print strong {
      display: none; }
  @media screen and (min-width: 48em) {
    .social-share {
      -ms-flex-direction: column;
      flex-direction: column; }
      .social-share li {
        margin: 0 0 .6em 0; }
      .social-share .print {
        border-left: none;
        border-top: 1px solid rgba(64, 65, 68, 0.5);
        padding: 1em 0 0 0; }
        .social-share .print strong {
          display: block;
          margin-bottom: .5rem; } }

.show-and-hide-buttons {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 47em;
  width: 100%;
  z-index: 1; }
  .show-and-hide-buttons button {
    margin: 1em auto;
    white-space: normal; }
    .show-and-hide-buttons button.show-more-content {
      background-color: #fff;
      border: 1px solid #fff;
      color: #336699;
      display: inline-block;
      font-weight: 700;
      letter-spacing: 0.05em;
      padding: 0.5em 2.5em;
      text-decoration: none;
      transition: all 0.3s ease;
      border-radius: 3em;
      text-transform: uppercase; }
      .show-and-hide-buttons button.show-more-content:active, .show-and-hide-buttons button.show-more-content:focus, .show-and-hide-buttons button.show-more-content:hover {
        background-color: #336699;
        color: #fff; }
      p .show-and-hide-buttons button.show-more-content {
        margin: 0.5em; }

/*
	*	DBS Interactive ~~~~~~~~~~~~~~~~~~~~~~~~~~~
	*	This stylesheet is for print css rules :::::
	*
*/
@media print {
  .single .blog-post__content a[target='_blank']:not([href*=dbswebsite]):after {
    content: " ( URL: " attr(href) " ) ";
    font-size: 1em;
    display: inline-block;
    font-weight: bold; }
  .single .search-outer-container,
  .single .site-header,
  .single .social-media,
  .single .blog-nav,
  .single footer, .single aside {
    display: none; }
  .single h1 {
    color: #000; }
  .single .blog-post__header {
    background-image: none;
    padding: 0 1em; }
  .transaction-popup-visible {
    position: relative; }
    .transaction-popup-visible .site {
      overflow: visible; }
    .transaction-popup-visible .transactions-header,
    .transaction-popup-visible .transaction-grid,
    .transaction-popup-visible .site-header, .transaction-popup-visible footer, .transaction-popup-visible aside,
    .transaction-popup-visible .search-outer-container,
    .transaction-popup-visible .clearfix {
      display: none; }
    .transaction-popup-visible #transaction-popup,
    .transaction-popup-visible #transaction-content {
      display: block;
      overflow: visible;
      position: absolute;
      top: 0em;
      padding-bottom: 3rem;
      z-index: 999; }
      .transaction-popup-visible #transaction-popup .social-share,
      .transaction-popup-visible #transaction-content .social-share {
        display: none; } }
