/*! HTML5 Boilerplate v5.3.0 | MIT License | https://html5boilerplate.com/ */

/*
* What follows is the result of much research on cross-browser styling.
* Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
* Kroc Camen, and the H5BP dev community and team.
*/

/* ==========================================================================
 Base styles: opinionated defaults
 ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

/*
* Remove text-shadow in selection highlight:
* https://twitter.com/miketaylr/status/12228805301
*
* These selection rule sets have to be separate.
* Customize the background color to match your design.
*/

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
* A better looking default horizontal rule
*/

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
* Remove the gap between audio, canvas, iframes,
* images, videos and the bottom of their containers:
* https://github.com/h5bp/html5-boilerplate/issues/440
*/

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
* Remove default fieldset styles.
*/

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
* Allow only vertical resizing of textareas.
*/

textarea {
  resize: vertical;
}

/* ==========================================================================
 City Home Helpers
 ========================================================================== */

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

::-webkit-input-placeholder {
  color: #d1d1d1;
}

:-moz-placeholder {
  color: #d1d1d1;
}

::-moz-placeholder {
  color: #d1d1d1;
}

:-ms-input-placeholder {
  color: #d1d1d1;
}

html {
  line-height: 1;
  color: #346094;
}

a {
  text-decoration: none;
  color: #346094;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

ul {
  list-style: none;
}

body,
input,
textarea {
  font-family: 'FrizQuadrataTT', sans-serif;
  font-weight: normal;
  font-style: normal;
}

strong {
  font-family: 'FrizQua-Bold', sans-serif;
  font-weight: normal;
  font-style: normal;
}

em {
  font-weight: normal;
  font-style: normal;
}

ul, li, p, h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  line-height: 1;
  font-weight: normal;
  font-style: normal;
}

.slicknav_menu,
.mobile-nav {
  display: none;
}

.slicknav_menu {
  background: #fff;
  border-bottom: 1px solid #cbcbcb;
}

.slicknav_nav a {
  color: #e5007e;
}

.slicknav_btn {
  background: #346094;
}

.container {
  max-width: 1000px;
  padding: 0 20px;
  margin: 0 auto;
}

.container:before,
.container:after {
  content: "";
  display: table;
  clear: both;
}

.ribbon {
  height: 50px;
  border-bottom: 1px solid #cbcbcb;
  font-family: 'FrizQua-Bold', sans-serif;
  font-size: 13px;
  text-transform: uppercase;
  text-align: right;
  padding: 18px 0;
}

.ribbon__social {
  float: left;
}

.ribbon__social a {
  float: left;
  display: block;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto 12px;
  padding-left: 20px;
}

.ribbon__social a.facebook {
  background-image: url(/img/facebook.svg)
}

.ribbon__contact {
  float: right;
}

.ribbon span {
  display: inline-block;
  margin-right: 20px;
}

.ribbon span:last-of-type {
  margin-right: 0;
}

.ribbon span em {
  color: #e5007e;
}

header {
  height: 224px;
  margin: 0 auto;
  background-image: url(/img/bg.jpg);
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: cover;
}

.active-page-home header {
  height: 766px;
  background-image: url(/img/bg.jpg);
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: cover;
}

header .logo {
  float: left;
  width: 18.958333333333332%; /* 182px */
  margin-top: 32px;
}

header nav {
  float: right;
  margin-top: 92px;
}

header nav li {
  display: inline;
}

header nav li a {
  display: inline-block;
  margin-right: 14px;
  font-size: 16px;
  text-transform: uppercase;
  font-family: 'FrizQua-Bold', sans-serif;
  padding: 12px 14px;
  border-radius: 4px;
}

header nav li:last-of-type a {
  margin-right: 0;
}

header nav li a.active {
  background: #e5007e;
  color: #fff;
}

.banner__text {
  float: left;
  width: 40%;
  margin-top: 80px;
  text-align: right;
}

.banner__text img {
  width: 80%;
  display: inline-block;
  margin-bottom: 20px;
}

.banner__text p {
  font-size: 18px;
  text-transform: uppercase;
  line-height: 1.4;
  font-family: 'FrizQua-Bold', sans-serif;
  margin-bottom: 30px;
}

.banner__image {
  float: right;
  width: 60%;
}

.button {
  display: inline-block;
  padding: 12px 32px;
  border-radius: 4px;
  border: 1px solid #346094;
  font-family: 'FrizQua-Bold', sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  vertical-align: middle;
  line-height: normal;
}

.button_solid {
  background-color: #346094;
  color: #fff;
}

.main {
  background: #ececec;
  background: rgba(244,244,244,1);
  background: -moz-linear-gradient(left, rgba(244,244,244,1) 0%, rgba(244,244,244,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
  background: -webkit-gradient(left top, right top, color-stop(0%, rgba(244,244,244,1)), color-stop(50%, rgba(244,244,244,1)), color-stop(50%, rgba(255,255,255,1)), color-stop(100%, rgba(255,255,255,1)));
  background: -webkit-linear-gradient(left, rgba(244,244,244,1) 0%, rgba(244,244,244,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
  background: -o-linear-gradient(left, rgba(244,244,244,1) 0%, rgba(244,244,244,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
  background: -ms-linear-gradient(left, rgba(244,244,244,1) 0%, rgba(244,244,244,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
  background: linear-gradient(to right, rgba(244,244,244,1) 0%, rgba(244,244,244,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#ffffff', GradientType=1 );
}

.main--full {
  width: 100%;
  background: #ececec;
}

.column {
  float: left;
  width: 50%;
}

.main--full .column {
  width: 100%;
}

.main__news .column:last-of-type {
  border-bottom: 1px dashed #cbcbcb;
}

.main__news .container:last-of-type .column:last-of-type {
  border-bottom: 0;
}

.main__news .column p:first-of-type {
  margin-bottom: 20px;
}

.column__text {
  padding: 50px 40px;
}

.column__text p a.facebook {
  display: block;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto 12px;
  padding-left: 20px;
  background-image: url(/img/facebook.svg);
}

.column h2 {
  font-size: 36px;
  line-height: 1.1;
  color: #e5007e;
  margin-bottom: 40px;
}

.column h3 {
  font-size: 30px;
  line-height: 1.1;
  color: #346094;
  margin-bottom: 30px;
}

.column p {
  font-size: 18px;
  color: #808080;
  line-height: 1.3;
  margin-bottom: 30px;
}

.column p a {
  text-decoration: underline;
}

.column ol {
  margin: 0 0 30px;
  padding-left: 20px;
}

.column ol li {
  margin-bottom: 20px;
  font-size: 18px;
  color: #808080;
  line-height: 1.3;
}

.column p em {
  color: #e5007e;
}

.quote {
  min-height: 450px;
  background-color: #346094;
  background-position: 20px 20px;
  background-repeat: no-repeat;
  background-image: url(/img/quote-bg.svg);
}

.no-svg .quote {
  background-image: url(/img/quote-bg.png);
}

.quote__text {
  margin-top: 30px;
  margin-left: 31.25%; /* 300px */
  color: #fff;
  background-image: url(/img/quotes.svg);
  background-position: left top;
  background-repeat: no-repeat;
  padding: 70px 0 40px;
}

.quote__text h3 {
  font-size: 28px;
  line-height: 1.1;
  margin-bottom: 30px;
}

.quote__text p {
  font-size: 20px;
}

.heading {
  text-align: center;
  padding: 60px 0;
}

.heading h1 {
  font-size: 46px;
  color: #e5007e;
  text-transform: uppercase;
}

.blocks {
  padding: 80px 0;
}

.blocks__block {
  float: left;
  width: 33.33333333333333%; /* 320px */
  text-align: center;
  padding: 50px 0;
}

.blocks__block.second {
  background: #fafafa;
}

.blocks__block .icon {
  display: inline-block;
  margin-bottom: 30px;
  height: 85px;
}

.blocks__block h3 {
  font-size: 30px;
  color: #e5007e;
  margin-bottom: 30px;
}

.blocks__block-text {
  min-height: 150px;
}

.blocks__block p {
  font-size: 14px;
  line-height: 1.4;
  color: #808080;
  margin-bottom: 30px;
  padding: 0 40px;
}

.person {
  margin-bottom: 30px;
}

.person h3 {
  margin-bottom: 20px;
}

.person__contact a,
.person__contact span {
  display: inline-block;
  padding: 3px 0 3px 42px;
  font-size: 18px;
  color: #e5007e;
  background-position: left center;
  background-repeat: no-repeat;
}

.person__contact .email {
  margin-right: 30px;
  background-size: 30px 22px;
  background-image: url(/img/email.svg);
}

.no-svg .person__contact .email {
  background-image: url(/img/email.png);
}

.person__contact .telephone {
  padding: 3px 0 3px 36px;
  background-size: 24px 24px;
  background-image: url(/img/telephone.svg);
}

.no-svg .person__contact .telephone {
  background-image: url(/img/telephone.png);
}

textarea,
input[type="text"],
input[type="button"],
input[type="submit"] {
  -webkit-appearance: none;
}

.form-wrapper {
  margin-bottom: 40px;
}

.form-wrapper,
.form-inputs {
  overflow: hidden;
}

.form-wrapper input[type="text"],
.form-wrapper textarea {
  border: 1px solid #dedfde;
  color: #222;
  padding: 14px;
  font-size: 16px;
  margin-bottom: 20px;
  width: 100%;
  -webkit-appearance: none;
  border-radius: 0;
  vertical-align: middle;

}

.form-wrapper label {
  font-size: 16px;
  text-transform: uppercase;
  color: gray;
  margin-bottom: 10px;
  display: block;
}

.form-wrapper label span {}

.form-input {
  width: 100%;
}

.form-wrapper input[type="text"] {
  width: 100%;
}

.form-wrapper .first {
  margin-right: 2%;
}

.form-buttons {
  overflow: hidden;
}

.form-wrapper .button {
  float: left;
}

.required-warning {
  float: right;
  font-size: 11px;
  text-transform: uppercase;
  color: #222;
}

.required-warning span {
  color: #da0000;
}

.form-wrapper input.error, textarea.error {
  background: #ffefef;
}

input#blueSteel {
  display: none;
}

footer {
  border-top: 1px solid #efefef;
  padding: 80px 0;
}

.footer__logos {
  float: left;
  width: 10.833333333333334%; /* 104px */
  margin-right: 4.583333333333333%; /* 44px */
}

.footer__logos img {
  margin-bottom: 20px;
}

.footer__nav {
  float: left;
  width: 21.041666666666668%; /* 202px */
}

.footer__nav li {
  font-size: 16px;
  font-family: 'FrizQua-Bold', sans-serif;
  margin-bottom: 12px;
  text-transform: uppercase;
  line-height: 1.4;
}

.footer__nav li a {
  color: #e5007e;
}

.footer__details {
  float: left;
  width: 37.708333333333336%; /* 362px */
}

.footer__details p {
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 20px;
}

.footer__details p a.facebook {
  display: block;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto 12px;
  padding-left: 20px;
  background-image: url(/img/facebook.svg);
}

.footer__details p strong {
  color: #e5007e;
  text-transform: uppercase;
}

.footer__entities {
  float: left;
  width: 25.833333333333336%; /* 248px */
}

.footer__entities p {
  font-size: 12px;
  line-height: 1.4;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.footer__entities p strong {
  color: #e5007e;
}

.legal {
  font-size: 12px;
  text-transform: uppercase;
  color: #808080;
  padding-bottom: 80px;
}

/* ==========================================================================
 Helper classes
 ========================================================================== */

/*
* Hide visually and from screen readers
*/

.hidden {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*/

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*
* Extends the .visuallyhidden class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}

.clearfix:after {
  clear: both;
}

/* ==========================================================================
 EXAMPLE Media Queries for Responsive Design.
 These examples override the primary ('mobile first') styles.
 Modify as content requires.
 ========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
 Print styles.
 Inlined to avoid the additional HTTP request:
 http://www.phpied.com/delay-loading-your-print-css/
 ========================================================================== */

@media print {
  *,
  *:before,
  *:after,
  *:first-letter,
  *:first-line {
    background: transparent !important;
    color: #000 !important; /* Black prints faster: http://www.sanbeiji.com/archives/953 */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]:after {
    content: " (" attr(href) ")";
  }

  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */

  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  /*
   * Printing Tables:
   * http://css-discuss.incutio.com/wiki/Printing_Tables
   */

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  img {
    max-width: 100% !important;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}
