@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal; }

:root {
  --swiper-theme-color: #007aff; }

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

/* Auto Height */
.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height; }

/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */ }
  .swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none; }

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start; }

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory; }

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory; }

.has-float-label {
  display: block;
  position: relative; }
  .has-float-label label, .has-float-label > span {
    position: absolute;
    left: 0;
    top: 0;
    cursor: text;
    font-size: 75%;
    opacity: 1;
    transition: all .2s; }
  .has-float-label select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .has-float-label textarea {
    width: 100%; }
  .has-float-label input, .has-float-label select, .has-float-label textarea {
    font-size: inherit;
    padding-top: 1em;
    margin-bottom: 2px;
    border: 0;
    border-radius: 0;
    border-bottom: 2px solid rgba(0, 0, 0, 0.1); }
    .has-float-label input::placeholder, .has-float-label select::placeholder, .has-float-label textarea::placeholder {
      opacity: 1;
      transition: all .2s; }
    .has-float-label input:placeholder-shown:not(:focus)::placeholder, .has-float-label select:placeholder-shown:not(:focus)::placeholder, .has-float-label textarea:placeholder-shown:not(:focus)::placeholder {
      opacity: 0; }
    .has-float-label input:placeholder-shown:not(:focus) + *, .has-float-label select:placeholder-shown:not(:focus) + *, .has-float-label textarea:placeholder-shown:not(:focus) + * {
      font-size: 150%;
      opacity: .5;
      top: .25em; }
    .has-float-label input:focus, .has-float-label select:focus, .has-float-label textarea:focus {
      outline: none;
      border-color: rgba(0, 0, 0, 0.5); }
  .has-float-label select {
    padding-right: 1em;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23333' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.5em bottom 0.25em;
    background-size: 8px 10px; }

/*

    @include breakpoint($from, $to, $and);
    You can find a list of breakpoints in the file abstracts/variables/_breakpoints.scss

    Usage:
    a) Min width example
        @include breakpoint(small) {
            color: red;
        }
    b) Range example
        @include breakpoint(small, large) {
            color: red;
        }
    c) Max width example
        @include breakpoint($to: large) {
            color: red;
        }
    d) Min-width with additional properties
        @include breakpoint(small, $and: 'orientation: portrait') {
            color: red;
        }
*/
.columns {
  display: flex;
  flex-flow: row wrap;
  margin-left: -15px;
  margin-right: -15px;
  /*
    Function for breaking grid according to breakpoints
    add columns--break-mobile to .columns class to break it on that breakpoint. i.e. <div class="columns columns--break-mobile"></div>
    this is autogenerated based on $breakpoints inside abstracts/variables/breakpoints.scss
  */ }
  .columns:not(:last-of-type) {
    margin-bottom: 15px; }
  .columns .columns {
    margin-left: -15px;
    margin-right: -15px; }
  @media (max-width: 439px) {
    .columns--break-small {
      flex-direction: column; }
      .columns--break-small > .col {
        max-width: 100%; } }
  @media (max-width: 639px) {
    .columns--break-mobile {
      flex-direction: column; }
      .columns--break-mobile > .col {
        max-width: 100%; } }
  @media (max-width: 767px) {
    .columns--break-tablet {
      flex-direction: column; }
      .columns--break-tablet > .col {
        max-width: 100%; } }
  @media (max-width: 1023px) {
    .columns--break-desktop {
      flex-direction: column; }
      .columns--break-desktop > .col {
        max-width: 100%; } }
  @media (max-width: 1199px) {
    .columns--break-desktop-big {
      flex-direction: column; }
      .columns--break-desktop-big > .col {
        max-width: 100%; } }
  @media (max-width: 1339px) {
    .columns--break-large {
      flex-direction: column; }
      .columns--break-large > .col {
        max-width: 100%; } }

.col {
  flex: 1 1 auto;
  max-width: 100%;
  padding-left: 15px;
  padding-right: 15px;
  width: auto; }

.col-1 {
  flex: calc((1 / 12) * 100%);
  max-width: calc((1 / 12) * 100%); }

.col-2 {
  flex: calc((2 / 12) * 100%);
  max-width: calc((2 / 12) * 100%); }

.col-3 {
  flex: calc((3 / 12) * 100%);
  max-width: calc((3 / 12) * 100%); }

.col-4 {
  flex: calc((4 / 12) * 100%);
  max-width: calc((4 / 12) * 100%); }

.col-5 {
  flex: calc((5 / 12) * 100%);
  max-width: calc((5 / 12) * 100%); }

.col-6 {
  flex: calc((6 / 12) * 100%);
  max-width: calc((6 / 12) * 100%); }

.col-7 {
  flex: calc((7 / 12) * 100%);
  max-width: calc((7 / 12) * 100%); }

.col-8 {
  flex: calc((8 / 12) * 100%);
  max-width: calc((8 / 12) * 100%); }

.col-9 {
  flex: calc((9 / 12) * 100%);
  max-width: calc((9 / 12) * 100%); }

.col-10 {
  flex: calc((10 / 12) * 100%);
  max-width: calc((10 / 12) * 100%); }

.col-11 {
  flex: calc((11 / 12) * 100%);
  max-width: calc((11 / 12) * 100%); }

.col-12 {
  flex: calc((12 / 12) * 100%);
  max-width: calc((12 / 12) * 100%); }

.element {
  align-items: center;
  background: #00bfff;
  color: white;
  display: flex;
  font-weight: 500;
  height: 50px;
  justify-content: center; }

.slider__link {
  appearance: none;
  border: 0;
  font-family: inherit;
  padding: 0; }
  .slider__link:focus {
    outline: none; }

.slider__link {
  transition: color 0.2s ease-in; }

.services__title, .services__item-title, .projects__section-title, .projects__title, .single-project__title, .content-image__name, .team__title, .team__item-title, .article__title, .contact__title, .contact__title h1, .contact-information p, .social__title, .simple-page h1 {
  margin: 0;
  padding: 0; }

.services__text {
  margin: 0;
  padding: 0; }

.primary-menu, .primary-menu__sub-menu, .category-list {
  list-style: none;
  margin: 0;
  padding: 0; }

.footer__info, .slider__content, .services__container, .single-project, .single-project__content, .content-image, .team__container, .intro, .clients, .latest-news__container, .contact, .contact__container, .simple-page {
  padding-left: 15px;
  padding-right: 15px; }

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type='checkbox'],
[type='radio'] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #6f7072;
  font-family: "urw-din-semi-condensed", sans-serif;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1rem; }

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both; }

p {
  margin-bottom: 1.5em; }

dfn,
cite,
em,
i {
  font-style: italic; }

blockquote {
  margin: 0 1.5em; }

address {
  margin: 0 0 1.5em; }

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
  font-size: 15px;
  font-size: 0.9375rem; }

code,
kbd,
tt,
var {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem; }

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help; }

mark,
ins {
  background: #fff9c0;
  text-decoration: none; }

big {
  font-size: 125%; }

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit; }

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */
  font-size: 18px;
  overflow-x: hidden !important;
  position: relative !important; }

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em; }

ul,
ol {
  margin: 0 0 10px 0; }

ul {
  list-style: none;
  padding-left: 20px;
  position: relative; }
  ul li {
    position: relative; }
    ul li::before {
      border-bottom: 2px solid #cb0019;
      border-right: 2px solid #cb0019;
      content: '';
      height: 10px;
      left: -20px;
      position: absolute;
      top: 15px;
      transform: translateY(-50%) rotate(-45deg);
      width: 10px; }
  ul#moove-gdpr-menu li::before {
    content: none; }

#sections li::before,
.site-footer li::before {
  content: none; }

ol {
  list-style: decimal; }

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

dt {
  font-weight: bold; }

dd {
  margin: 0 1.5em 1.5em; }

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */ }

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */ }

a {
  color: #cb0019; }

table {
  margin: 0 0 1.5em;
  width: 100%; }

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
  background: #e6e6e6;
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
  font-size: 12px;
  font-size: 0.75rem; }
  button:hover,
  input[type='button']:hover,
  input[type='reset']:hover,
  input[type='submit']:hover {
    border-color: #ccc #bbb #aaa; }
  button:active, button:focus,
  input[type='button']:active,
  input[type='button']:focus,
  input[type='reset']:active,
  input[type='reset']:focus,
  input[type='submit']:active,
  input[type='submit']:focus {
    border-color: #aaa #bbb #bbb; }

input[type='text'],
input[type='email'],
input[type='url'],
input[type='password'],
input[type='search'],
input[type='number'],
input[type='tel'],
input[type='range'],
input[type='date'],
input[type='month'],
input[type='week'],
input[type='time'],
input[type='datetime'],
input[type='datetime-local'],
input[type='color'],
textarea {
  border: 1px solid #ccc;
  border-radius: 3px;
  color: #666;
  padding: 3px; }
  input[type='text']:focus,
  input[type='email']:focus,
  input[type='url']:focus,
  input[type='password']:focus,
  input[type='search']:focus,
  input[type='number']:focus,
  input[type='tel']:focus,
  input[type='range']:focus,
  input[type='date']:focus,
  input[type='month']:focus,
  input[type='week']:focus,
  input[type='time']:focus,
  input[type='datetime']:focus,
  input[type='datetime-local']:focus,
  input[type='color']:focus,
  textarea:focus {
    color: #111; }

select {
  border: 1px solid #ccc; }

textarea {
  width: 100%; }

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.primary-menu {
  align-items: center;
  background: transparent;
  display: block;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  top: 100px;
  width: 100%; }
  .primary-menu__sub-menu {
    margin-left: 35px; }
    .primary-menu__sub-menu__link {
      color: #fff;
      display: block;
      font-size: 14px;
      letter-spacing: 1.8px;
      margin: 5px 0 5px auto;
      margin-left: auto;
      max-width: max-content;
      overflow: hidden;
      position: relative;
      text-align: right;
      text-decoration: none;
      text-transform: uppercase; }
      .primary-menu__sub-menu__link::before {
        background: #fff;
        bottom: 0;
        content: '';
        height: 2px;
        left: 0;
        position: absolute;
        right: 100%;
        transition-duration: 0.3s;
        transition-property: right;
        transition-timing-function: ease-out; }
      .primary-menu__sub-menu__link:hover::before, .primary-menu__sub-menu__link:focus::before, .primary-menu__sub-menu__link:active::before {
        right: 0; }
      @media (min-width: 768px) {
        .primary-menu__sub-menu__link {
          display: none; } }
  .primary-menu__item {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    margin: 0 28px;
    overflow: hidden;
    padding: 10px;
    position: relative;
    text-align: right;
    transition: all 0.3s ease-out;
    width: auto; }
    .primary-menu__item--current_page_parent > .primary-menu__link,
    .primary-menu__item--current_page_parent > .primary-menu__sub-menu__link, .primary-menu__item--active > .primary-menu__link,
    .primary-menu__item--active > .primary-menu__sub-menu__link {
      color: #fff;
      font-weight: 500;
      position: relative;
      width: auto; }
      .primary-menu__item--current_page_parent > .primary-menu__link::before,
      .primary-menu__item--current_page_parent > .primary-menu__sub-menu__link::before, .primary-menu__item--active > .primary-menu__link::before,
      .primary-menu__item--active > .primary-menu__sub-menu__link::before {
        background: #fff;
        bottom: 0;
        content: '';
        height: 2px;
        left: 0;
        position: absolute;
        right: 0;
        transition-duration: 0.3s;
        transition-property: right;
        transition-timing-function: ease-out; }
    .primary-menu__item--d-none {
      display: none; }
  .primary-menu__link {
    color: #fff;
    display: block;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1.8px;
    margin-left: auto;
    overflow: hidden;
    position: relative;
    text-align: right;
    text-decoration: none;
    text-transform: uppercase; }
    .primary-menu__link::before {
      background: #fff;
      bottom: 0;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      right: 100%;
      transition-duration: 0.3s;
      transition-property: right;
      transition-timing-function: ease-out; }
    .primary-menu__link:hover::before, .primary-menu__link:focus::before, .primary-menu__link:active::before {
      right: 0; }

.mobile-menu {
  height: 14px;
  position: relative;
  position: absolute;
  right: 15px;
  width: 24px;
  z-index: 10;
  z-index: 100; }
  .mobile-menu__link {
    display: block;
    height: 18px;
    position: relative; }
  .mobile-menu__link-item {
    background: #fff;
    height: 2px;
    position: absolute;
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    width: 100%; }
    .mobile-menu__link-item:nth-child(2) {
      top: 6px; }
    .mobile-menu__link-item:nth-child(3) {
      top: 12px; }
  .mobile-menu__link.is-active .mobile-menu__link-item:first-child {
    margin-top: 7px;
    transform: rotate(45deg); }
  .mobile-menu__link.is-active .mobile-menu__link-item:nth-child(2) {
    opacity: 0; }
  .mobile-menu__link.is-active .mobile-menu__link-item:last-child {
    top: 7px;
    transform: rotate(-45deg); }

.header {
  background: white;
  display: flex;
  height: 50px;
  position: fixed;
  transition: all 0.3s ease;
  width: 100%;
  z-index: 100; }
  .header .header__logo-img .cls-1 {
    fill: #6f7072; }
  .header.is-sticky {
    background: rgba(255, 255, 255, 0.8);
    transition: all 0.3s ease; }
    .header.is-sticky .header__logo-img {
      transition: all 0.3s ease;
      width: 140px; }
      .header.is-sticky .header__logo-img .cls-1 {
        fill: #6f7072; }
  .header__logo-img {
    margin-left: 30px;
    padding-top: 13px;
    position: relative;
    transition: all 0.3s ease;
    width: 140px; }
    .header__logo-img--dark svg .cls-1 {
      fill: #fff; }

.footer-menu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 30px 0 0; }
  @media (min-width: 768px) {
    .footer-menu {
      flex-direction: row; } }
  .footer-menu__item {
    color: #6f7072;
    margin: 0 15px; }
    .footer-menu__item--active {
      color: #cb0019; }
  .footer-menu__link {
    color: inherit;
    text-decoration: none;
    text-transform: uppercase; }

.footer {
  background: #6f7072;
  padding: 50px 0; }
  .footer__info {
    margin: 0 auto;
    max-width: 1260px;
    color: #fff;
    letter-spacing: 1.4px;
    line-height: 24px;
    text-align: center; }
  .footer__logo-img {
    margin: 0 auto;
    max-width: 215px; }

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }
  .screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    clip-path: none;
    color: #21759b;
    display: block;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
    font-size: 14px;
    font-size: 0.875rem; }

/* Do not show the outline on the skip link target. */
#content[tabindex='-1']:focus {
  outline: 0; }

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em; }

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em; }

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto; }

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear::before,
.clear::after,
.entry-content::before,
.entry-content::after,
.comment-content::before,
.comment-content::after,
.site-header::before,
.site-header::after,
.site-content::before,
.site-content::after,
.site-footer::before,
.site-footer::after {
  content: '';
  display: table;
  table-layout: fixed; }

.clear::after,
.entry-content::after,
.comment-content::after,
.site-header::after,
.site-content::after,
.site-footer::after {
  clear: both; }

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */ }
  .widget select {
    max-width: 100%; }

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block; }

.post,
.page {
  margin: 0 0 1.5em; }

.updated:not(.published) {
  display: none; }

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0; }

.page-links {
  clear: both;
  margin: 0 0 1.5em; }

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word; }

.bypostauthor {
  display: block; }

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none; }

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block; }

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0; }

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%; }

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block; }

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%; }
  .wp-caption img[class*='wp-image-'] {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .wp-caption .wp-caption-text {
    margin: 0.8075em 0; }

.wp-caption-text {
  text-align: center; }

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em; }

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%; }
  .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .gallery-columns-6 .gallery-item {
    max-width: 16.66%; }
  .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }

.gallery-caption {
  display: block; }

/*--------------------------------------------------------------
# Sections
--------------------------------------------------------------*/
.slider {
  height: 100%; }
  .slider__wrapper {
    height: 580px;
    padding-bottom: 50px; }
    @media (min-width: 768px) {
      .slider__wrapper {
        height: calc(100vh - 50px); } }
  .slider__item {
    align-items: center;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center; }
  .slider__content {
    margin: 0 auto;
    max-width: 1260px;
    display: flex;
    flex-direction: column; }
  .slider__title {
    color: #fff;
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    letter-spacing: 1.25px;
    line-height: normal;
    text-align: center;
    width: 100%; }
    @media (min-width: 768px) {
      .slider__title {
        font-size: 84px; } }
  .slider__subtitle {
    color: #fff;
    color: #fff;
    font-size: 16px;
    margin: 20px auto 0;
    max-width: 430px;
    text-align: center;
    width: 100%; }
    @media (min-width: 768px) {
      .slider__subtitle {
        font-size: 18px; } }
  .slider__link {
    color: #fff;
    font-size: 18px;
    letter-spacing: 1.2px;
    line-height: 40px;
    margin-top: 70px;
    text-align: center;
    text-decoration: none;
    text-transform: capitalize; }
  .slider__pagination {
    bottom: 20px;
    display: flex;
    justify-content: center;
    left: 0;
    padding-left: 20%;
    padding-right: 20%;
    position: absolute;
    right: 0;
    z-index: 1; }
    @media (min-width: 768px) {
      .slider__pagination {
        bottom: 20px; } }
  .slider__bullet {
    background: #e6e7e7;
    border-radius: 50%;
    cursor: pointer;
    display: block;
    height: 10px;
    margin: 0 10px;
    max-width: 10px;
    outline: none;
    width: 100%; }
    .slider__bullet--active {
      background: #cb0019; }
  .slider .swiper-button-prev {
    bottom: 17px;
    display: block;
    display: none;
    height: 18px;
    margin-left: 5%;
    outline: none;
    position: absolute;
    transform: scale(-1);
    width: 50px;
    z-index: 2; }
    @media (min-width: 768px) {
      .slider .swiper-button-prev {
        bottom: 73px;
        margin-left: 15%; } }
    .slider .swiper-button-prev::before {
      background: #cb0019;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      top: 1px;
      transform: rotate(15deg);
      width: 50px; }
    .slider .swiper-button-prev::after {
      background: #cb0019;
      bottom: 2px;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      transform: rotate(165deg);
      width: 50px; }
  .slider .swiper-button-next {
    bottom: 17px;
    display: block;
    display: none;
    height: 18px;
    margin-right: 5%;
    outline: none;
    position: absolute;
    right: 0;
    width: 50px;
    z-index: 2; }
    @media (min-width: 768px) {
      .slider .swiper-button-next {
        bottom: 73px;
        margin-right: 15%; } }
    .slider .swiper-button-next::before {
      background: #cb0019;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      top: 1px;
      transform: rotate(15deg);
      width: 50px; }
    .slider .swiper-button-next::after {
      background: #cb0019;
      bottom: 2px;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      transform: rotate(165deg);
      width: 50px; }
  .slider--project-single {
    overflow: hidden; }
    .slider--project-single .swiper-button-prev {
      bottom: 15px;
      margin-left: 15px; }
    .slider--project-single .swiper-button-next {
      bottom: 15px;
      margin-right: 15px; }
    .slider--project-single .slider__pagination {
      bottom: 30px;
      padding-left: 15%;
      padding-right: 15%; }

.services {
  background: #efefef;
  padding: 40px 0; }
  @media (min-width: 768px) {
    .services {
      padding: 120px 0; } }
  .services__container {
    margin: 0 auto;
    max-width: 1260px; }
  .services__title {
    color: #4a4747;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 1.4px;
    line-height: 40px;
    text-align: center;
    text-transform: uppercase; }
    @media (min-width: 768px) {
      .services__title {
        font-size: 28px; } }
  .services__intro {
    font-size: 18px;
    line-height: 36px;
    margin: 30px auto 0;
    max-width: 630px;
    text-align: center;
    width: 100%; }
    @media (min-width: 768px) {
      .services__intro {
        font-size: 18px; } }
  .services__list {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 100px -15px 0; }
    .services__list > * {
      flex: 0 0 100%;
      max-width: 100%; }
    @media (min-width: 768px) {
      .services__list {
        align-items: stretch;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        .services__list > * {
          flex: 0 0 50%;
          max-width: 50%; } }
    @media (min-width: 992px) {
      .services__list {
        align-items: stretch;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        .services__list > * {
          flex: 0 0 33.33333%;
          max-width: 33.33333%; } }
  .services__item {
    display: flex; }
  .services__content {
    background: #fff;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.2);
    margin: 15px;
    padding: 40px 20px;
    transition: box-shadow 0.3s ease-in-out; }
    .services__content:hover {
      box-shadow: 0 12px 10px 0 rgba(0, 0, 0, 0.2); }
  .services__image {
    display: block;
    margin: 0 auto; }
  .services__item-title {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1.8px;
    padding-top: 25px;
    text-align: center;
    text-transform: uppercase; }
  .services__text {
    font-size: 16px;
    line-height: 32px;
    padding-top: 25px;
    text-align: center; }

.js-projects-container {
  visibility: hidden; }

.projects {
  padding: 50px 0; }
  .projects__container {
    margin: 0 auto;
    overflow: hidden;
    position: relative; }
    .projects__container--similar {
      max-width: 100%;
      padding: 0;
      width: 100%; }
  .projects__intro {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    padding: 20px 30px;
    width: 100%; }
  .projects__more {
    color: #cb0019;
    text-transform: uppercase; }
    .projects__more a {
      color: #cb0019;
      text-decoration: none; }
  .projects__section-title {
    font-size: 36px;
    font-weight: 300;
    line-height: normal;
    text-align: center;
    text-align: left; }
    @media (min-width: 768px) {
      .projects__section-title {
        font-size: 48px; } }
  .projects__title {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 48px;
    font-size: 24px;
    font-weight: 300;
    line-height: 30px;
    text-align: center;
    text-align: left;
    text-transform: uppercase;
    transform: skew(15deg) translateX(3%); }
  .projects__title-arrow {
    display: block;
    height: 18px;
    margin-left: auto;
    margin-right: 20%;
    position: relative;
    width: 30px; }
    .projects__title-arrow::before {
      background: #fff;
      content: '';
      height: 1px;
      left: 0;
      position: absolute;
      top: 4px;
      transform: rotate(15deg);
      width: 30px; }
    .projects__title-arrow::after {
      background: #fff;
      bottom: 5px;
      content: '';
      height: 1px;
      left: 0;
      position: absolute;
      transform: rotate(165deg);
      width: 30px; }
  .projects__list {
    column-gap: 15px;
    display: grid;
    grid-template-columns: auto;
    overflow: hidden;
    position: relative;
    row-gap: 15px; }
    @media (min-width: 768px) {
      .projects__list {
        grid-template-columns: auto auto; } }
    @media (min-width: 992px) {
      .projects__list {
        grid-template-columns: auto auto auto; } }
    @media (min-width: 1200px) {
      .projects__list {
        grid-template-columns: auto auto auto auto; } }
  .projects__item {
    display: flex;
    justify-content: center;
    position: relative; }
  .projects__content {
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.2);
    margin: 15px;
    transition: box-shadow 0.3s ease-in-out; }
    .projects__content:hover {
      box-shadow: 0 12px 10px 0 rgba(0, 0, 0, 0.2); }
  .projects__image {
    display: block;
    margin: 0 auto; }
  .projects__img-wrap {
    display: block;
    height: auto;
    overflow: hidden;
    padding: 71.64% 0 0 0;
    /* 34.37% = 100 / (w / h) = 100 / (640 / 220) */
    position: relative;
    width: 100%; }
  .projects__img {
    bottom: 0;
    display: block;
    left: 0;
    max-height: 100%;
    max-width: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%; }
  .projects__link:hover .projects__overlay {
    left: -10%; }
  .projects__overlay {
    background: rgba(203, 0, 25, 0.85);
    cursor: pointer;
    display: block;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
    left: -140%;
    padding: 20px;
    position: absolute;
    top: 0;
    transform: skew(-15deg);
    transition: 1s ease-in-out left;
    width: 120%;
    z-index: 10; }
  .projects__info {
    color: #fff;
    display: block;
    font-size: 18px; }
  .projects__info-wrap {
    transform: skew(15deg) translateX(16%); }

.single-project {
  margin: 0 auto;
  max-width: 1260px;
  padding: 0; }
  .single-project__intro {
    height: auto;
    overflow: hidden;
    position: relative; }
  .single-project__image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    width: 100%;
    padding-bottom: 66.66%; }
    .single-project__image img {
      height: 100%;
      object-fit: scale-down;
      position: absolute;
      width: 100%; }
  .single-project__content {
    margin: 0 auto;
    max-width: 1260px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-top: 20px; }
    @media (min-width: 768px) {
      .single-project__content {
        flex-direction: row;
        padding-top: 40px; } }
  .single-project__category {
    font-size: 18px;
    font-weight: normal;
    line-height: normal;
    margin: 0;
    padding-bottom: 5px;
    text-transform: uppercase; }
  .single-project__heading {
    display: flex;
    flex-direction: column;
    padding-bottom: 20px;
    width: 100%; }
    @media (min-width: 768px) {
      .single-project__heading {
        padding-bottom: 0;
        width: 50%; } }
    .single-project__heading a {
      color: #6f7072;
      display: inline-block;
      text-decoration: none; }
      .single-project__heading a:hover {
        text-decoration: underline; }
  .single-project__content-inner {
    width: 100%; }
    @media (min-width: 768px) {
      .single-project__content-inner {
        width: 50%; } }
    .single-project__content-inner p {
      margin: 0 0 10px; }
      .single-project__content-inner p:last-child {
        margin: 0; }
  .single-project__title {
    font-size: 36px;
    font-weight: normal;
    line-height: normal;
    padding-bottom: 20px; }
  .single-project .slider {
    height: 100%;
    margin: 0; }
    .single-project .slider__wrapper {
      height: 100%;
      padding-bottom: 0; }
    .single-project .slider__content {
      display: none; }
    .single-project .slider__bullet {
      background: #e6e7e7; }
      .single-project .slider__bullet--active {
        background: #cb0019; }
    .single-project .slider .swiper-slide {
      padding-bottom: 66.66%; }
    .single-project .slider img {
      height: 100%;
      object-fit: scale-down;
      position: absolute;
      width: 100%; }

.single-project-wrapper,
.single-projects {
  position: relative; }
  .single-project-wrapper .projects,
  .single-projects .projects {
    padding: 50px 0 !important; }
    .single-project-wrapper .projects__similar-title,
    .single-projects .projects__similar-title {
      font-size: 24px;
      font-weight: normal;
      margin: 0;
      padding: 0 30px 20px 30px; }

.category-list {
  display: none;
  padding-top: 50px; }
  @media (min-width: 768px) {
    .category-list {
      display: flex;
      flex-wrap: wrap;
      margin-bottom: -25px;
      padding-left: 15px;
      padding-top: 50px;
      height: auto; } }
  @media only screen and (min-width: 1200px) {
    .category-list {
      visibility: hidden;
      height: 1px;
      display: none; } }
  .category-list--header {
    display: none; }
    @media only screen and (min-width: 1200px) {
      .category-list--header {
        display: flex;
        padding-top: 0;
        visibility: visible; } }
    .category-list--header .category-list__item {
      font-size: 21px;
      margin: 9px 15px; }
  .category-list__item {
    margin: 10px 15px; }
    .category-list__item a {
      color: #9B9C9E;
      text-decoration: none;
      text-transform: uppercase;
      transition: all 0.3s ease; }
      .category-list__item a:hover, .category-list__item a:active {
        color: #cb0019;
        text-decoration: underline;
        transition: all 0.3s ease; }
    .category-list__item--active a {
      color: #cb0019;
      text-decoration: underline; }

.content-image {
  margin: 0 auto;
  max-width: 1260px;
  align-items: center;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0;
  padding: 40px 0; }
  .content-image--reverse {
    flex-direction: row-reverse; }
    .content-image--reverse .content-image__image-wrapper {
      display: flex;
      justify-content: flex-start; }
      @media (min-width: 768px) {
        .content-image--reverse .content-image__image-wrapper {
          -webkit-clip-path: polygon(0 0, 85% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 85% 100%, 0% 100%); } }
  @media (max-width: 991px) {
    .content-image .col-1,
    .content-image .col-2,
    .content-image .col-3,
    .content-image .col-5,
    .content-image .col-6,
    .content-image .col-7,
    .content-image .col-8,
    .content-image .col-4 {
      flex: 100%;
      max-width: 100% !important; } }
  .content-image__name {
    color: #6f7072;
    font-size: 36px;
    font-weight: 300; }
    .content-image__name span {
      font-size: 24px; }
  .content-image__title {
    color: #6f7072;
    font-size: 48px;
    font-weight: 300; }
  .content-image__text {
    color: #6f7072;
    font-size: 18px;
    line-height: 24px; }
  .content-image__link-wrapper {
    padding-top: 25px; }
  .content-image__link {
    color: #cb0019;
    font-size: 16px;
    text-decoration: none;
    text-transform: uppercase; }
  .content-image__contact-wrapper {
    display: flex;
    flex-direction: row;
    padding-bottom: 15px;
    padding-top: 15px; }
    @media (min-width: 768px) {
      .content-image__contact-wrapper {
        padding-top: 45px; } }
  .content-image__contact {
    display: flex;
    flex-direction: column;
    padding-left: 10px; }
  .content-image__phone {
    color: #6f7072;
    font-size: 18px;
    text-decoration: none;
    transition: all 0.3s ease-in-out; }
    .content-image__phone:hover, .content-image__phone:active {
      color: #cb0019;
      text-decoration: underline; }
  .content-image__mail {
    color: #6f7072;
    font-size: 18px;
    text-decoration: none;
    transition: all 0.3s ease-in-out; }
    .content-image__mail:hover, .content-image__mail:active {
      color: #cb0019;
      text-decoration: underline; }
  .content-image__image-wrapper {
    display: flex;
    justify-content: flex-end; }
    @media (min-width: 768px) {
      .content-image__image-wrapper {
        -webkit-clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);
        clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%); } }

.home .content-image__image-wrapper {
  display: none; }
  @media (min-width: 992px) {
    .home .content-image__image-wrapper {
      display: flex; } }

.team {
  background: #efefef;
  padding: 40px 0; }
  @media (min-width: 768px) {
    .team {
      padding: 120px 0; } }
  .team__container {
    margin: 0 auto;
    max-width: 1260px; }
  .team__title {
    color: #4a4747;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 1.4px;
    line-height: 40px;
    text-align: center;
    text-transform: uppercase; }
    @media (min-width: 768px) {
      .team__title {
        font-size: 28px; } }
  .team__intro {
    font-size: 18px;
    line-height: 36px;
    margin: 30px auto 0;
    max-width: 630px;
    text-align: center;
    width: 100%; }
    @media (min-width: 768px) {
      .team__intro {
        font-size: 18px; } }
  .team__list {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 100px -15px 0; }
    .team__list > * {
      flex: 0 0 100%;
      max-width: 100%; }
    @media (min-width: 768px) {
      .team__list {
        align-items: stretch;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        .team__list > * {
          flex: 0 0 50%;
          max-width: 50%; } }
    @media (min-width: 992px) {
      .team__list {
        align-items: stretch;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        .team__list > * {
          flex: 0 0 25%;
          max-width: 25%; } }
  .team__item {
    display: flex;
    justify-content: center; }
  .team__content {
    background: #fff;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.2);
    display: flex;
    margin: 15px;
    overflow: hidden;
    position: relative;
    transition: box-shadow 0.3s ease-in-out; }
    .team__content:hover {
      box-shadow: 0 12px 10px 0 rgba(0, 0, 0, 0.2); }
      .team__content:hover .team__info {
        bottom: 0; }
  .team__image {
    display: block;
    margin: 0 auto; }
  .team__info {
    background: rgba(255, 255, 255, 0.5);
    bottom: 0;
    padding: 20px 10px 15px;
    position: absolute;
    transition: bottom 0.3s ease-in-out;
    width: 100%; }
    @media (min-width: 992px) {
      .team__info {
        bottom: -100%; } }
  .team__item-title {
    font-size: 18px;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase; }
  .team__social {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 140px;
    padding-top: 10px;
    width: 100%; }
    .team__social--fb {
      background: url("/wp-content/themes/am2/public/images/fb.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      height: 20px;
      width: 20px; }
    .team__social--rss {
      background: url("/wp-content/themes/am2/public/images/rss.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      height: 20px;
      width: 20px; }
    .team__social--tw {
      background: url("/wp-content/themes/am2/public/images/tw.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      height: 20px;
      width: 20px; }
    .team__social--pt {
      background: url("/wp-content/themes/am2/public/images/pt.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      height: 20px;
      width: 20px; }

.intro {
  margin: 0 auto;
  max-width: 1260px;
  padding-bottom: 50px;
  padding-top: 50px; }
  .intro__content {
    display: flex;
    flex-direction: column; }
    @media (min-width: 544px) {
      .intro__content {
        flex-direction: row; } }
  .intro__title {
    color: #6f7072;
    font-size: 36px;
    font-weight: 300;
    font-weight: 300;
    padding-right: 20px; }
  .intro__content {
    padding-top: 30px; }
  .intro__text p {
    margin: 0 0 15px; }
    .intro__text p:last-of-type {
      margin: 0; }

.testimonials {
  background-position: center;
  background-size: cover;
  height: 100%;
  padding: 40px 0; }
  @media (min-width: 768px) {
    .testimonials {
      padding: 120px 0; } }
  .testimonials__item {
    align-items: center;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center; }
  .testimonials__content {
    background: #fff;
    max-width: 970px;
    padding: 50px 50px 120px;
    width: 100%; }
  .testimonials__image {
    display: block;
    margin: 0 auto; }
  .testimonials__text {
    color: #4a4747;
    font-size: 16px;
    letter-spacing: 1.2px;
    line-height: 32px;
    margin: 0 auto;
    max-width: 700px;
    padding-top: 20px;
    text-align: center;
    width: 100%; }
    @media (min-width: 768px) {
      .testimonials__text {
        font-size: 16px; } }
  .testimonials__pagination {
    bottom: 70px;
    display: flex;
    justify-content: center;
    left: 0;
    position: relative;
    right: 0;
    z-index: 1; }
  .testimonials__bullet {
    background-color: rgba(38, 175, 95, 0.5);
    cursor: pointer;
    display: block;
    height: 10px;
    margin: 0 10px;
    transform: rotate(45deg);
    width: 10px; }
    .testimonials__bullet--active {
      background-color: #1e8c4b; }

.clients {
  margin: 0 auto;
  max-width: 1260px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 40px 0; }
  @media (min-width: 768px) {
    .clients {
      justify-content: space-between;
      padding: 120px 0; } }
  .clients__logo {
    cursor: pointer;
    filter: grayscale(100%);
    height: 30px;
    margin: 15px;
    max-width: 100%;
    opacity: 0.6;
    transition: all 0.6s ease-in-out; }
    .clients__logo:hover {
      filter: grayscale(0%);
      opacity: 1; }

.latest-news {
  background: #f8f8f8;
  padding: 40px 0; }
  .latest-news__container {
    margin: 0 auto;
    max-width: 1260px; }
  .latest-news__title {
    font-size: 24px;
    font-weight: 500;
    margin: 0;
    padding-bottom: 50px;
    padding-top: 25px;
    text-align: center;
    text-transform: uppercase; }
    @media (min-width: 768px) {
      .latest-news__title {
        font-size: 28px; } }
  .latest-news__wrapper {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    justify-content: center;
    margin: 0 -15px; }
    .latest-news__wrapper > * {
      flex: 0 0 100%;
      max-width: 100%; }
  .latest-news__item {
    max-width: 400px;
    padding: 0 15px 15px;
    width: 100%; }
  .latest-news__nav {
    margin-top: 150px; }
  .latest-news .article {
    height: auto; }
    .latest-news .article__link {
      margin-top: auto; }

.article {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 50px 0;
  position: relative;
  transition: background-color 0.3s ease; }
  .article__item {
    margin-bottom: 40px; }
    .article__item--featured {
      margin-bottom: 80px; }
  .article__image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 5px 5px 0 0;
    height: 100%;
    max-height: 245px;
    min-height: 244px;
    width: 100%; }
  .article__content {
    background: #fff;
    border-radius: 0 0 5px 5px;
    padding: 0 25px 20px; }
  .article__title {
    color: #4a4747;
    display: inline-block;
    font-size: 24px;
    font-weight: 400;
    margin-top: 30px;
    width: 100%; }
    @media (min-width: 768px) {
      .article__title {
        margin-top: 20px; } }
  .article__intro {
    color: #4a4747;
    display: inline-block;
    font-size: 14px;
    line-height: 21px;
    padding-top: 30px; }
    .article__intro p {
      margin: 0; }
  .article__footer {
    display: flex;
    flex-direction: row;
    justify-content: space-between; }
  .article__date {
    color: #4a4747;
    display: inline-block;
    font-size: 14px;
    padding-left: 20px;
    padding-top: 25px;
    position: relative;
    text-decoration: none; }
    .article__date::before {
      background: url("/wp-content/themes/am2/public/images/date.png");
      background-size: cover;
      bottom: 4px;
      content: '';
      height: 14px;
      left: 0;
      position: absolute;
      width: 14px; }
  .article__comments {
    color: #4a4747;
    display: inline-block;
    font-size: 14px;
    padding-left: 20px;
    padding-top: 25px;
    position: relative;
    text-decoration: none; }
    .article__comments::before {
      background: url("/wp-content/themes/am2/public/images/comments.png");
      background-size: cover;
      bottom: 4px;
      content: '';
      height: 14px;
      left: 0;
      position: absolute;
      width: 14px; }
  .article__link {
    border-radius: 5px;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.2);
    text-decoration: none;
    transition: box-shadow 0.3s ease-in-out; }
    .article__link:hover {
      box-shadow: 0 12px 10px 0 rgba(0, 0, 0, 0.2); }

.contact {
  margin: 0 auto;
  max-width: 1260px;
  background-position: center;
  background-size: cover;
  padding-top: 80px; }
  .contact__container {
    margin: 0 auto;
    max-width: 1260px;
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .contact__container > * {
      flex: 0 0 100%;
      max-width: 100%; }
    @media (min-width: 768px) {
      .contact__container {
        align-items: stretch;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        .contact__container > * {
          flex: 0 0 50%;
          max-width: 50%; } }
  .contact__title {
    font-size: 48px;
    font-weight: 300;
    letter-spacing: normal;
    padding-bottom: 40px; }
    .contact__title h1 {
      color: #6f7072 !important;
      font-size: 48px;
      font-weight: 300; }
  .contact__details {
    margin: 0 auto; }
    @media (min-width: 768px) {
      .contact__details {
        padding-left: 60px; } }
    @media (min-width: 992px) {
      .contact__details {
        padding-left: 130px; } }
  .contact .columns {
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
    @media (min-width: 768px) {
      .contact .columns {
        flex-direction: row; } }
    @media (max-width: 991px) {
      .contact .columns .col-5,
      .contact .columns .col-6 {
        max-width: 100%; } }

.contact-information {
  margin-top: 50px; }
  @media (min-width: 768px) {
    .contact-information {
      margin-top: 0; } }
  .contact-information .svg-wrap {
    margin-right: 10px;
    width: 45px; }
  .contact-information svg {
    width: 75%; }
  .contact-information__logo {
    max-width: 220px; }
  .contact-information__location {
    display: flex;
    padding-top: 20px; }
  .contact-information__location-details {
    color: #6f7072; }
  .contact-information__contact-details {
    display: flex;
    padding-top: 30px; }
    .contact-information__contact-details svg {
      position: relative; }
  .contact-information__phone a, .contact-information__mail a {
    color: #6f7072;
    text-decoration: none;
    transition: all 0.3s ease-in-out; }
    .contact-information__phone a:hover, .contact-information__phone a:active, .contact-information__mail a:hover, .contact-information__mail a:active {
      color: #cb0019;
      text-decoration: underline; }
  .contact-information__company {
    display: flex;
    padding-top: 20px; }
  .contact-information__company-details {
    color: #6f7072; }

.page-template-page-contact .contact-side {
  display: none; }

.floating-label__two {
  display: flex;
  margin-right: -30px; }
  .floating-label__two > div {
    padding-right: 30px;
    width: 50%; }
  .floating-label__two input,
  .floating-label__two textarea,
  .floating-label__two select {
    width: 100%; }
    .floating-label__two input::placeholder,
    .floating-label__two textarea::placeholder,
    .floating-label__two select::placeholder {
      color: #fff; }

.floating-label__one {
  display: flex; }
  .floating-label__one > div {
    margin-top: 100px;
    width: 100%; }
  .floating-label__one input,
  .floating-label__one textarea,
  .floating-label__one select {
    width: 100%; }
    .floating-label__one input::placeholder,
    .floating-label__one textarea::placeholder,
    .floating-label__one select::placeholder {
      color: #fff; }

.floating-label__field {
  background: transparent;
  border-bottom: 1px solid #fff !important;
  border-left: none !important;
  border-radius: 0 !important;
  border-right: none !important;
  border-top: none !important;
  color: #fff !important;
  height: 40px;
  overflow: hidden;
  position: relative;
  z-index: 10; }

.floating-label__message {
  background: transparent;
  border-bottom: 1px solid #fff !important;
  border-left: none !important;
  border-radius: 0 !important;
  border-right: none !important;
  border-top: none !important;
  color: #fff !important;
  height: 70px;
  overflow: hidden;
  position: relative;
  resize: none;
  z-index: 10; }

.floating-label__label {
  color: #fff;
  font-size: 20px !important; }

.has-float-label input:placeholder-shown:not(:focus) + *, .has-float-label select:placeholder-shown:not(:focus) + *, .has-float-label textarea:placeholder-shown:not(:focus) + * {
  opacity: 1; }

.has-float-label label, .has-float-label > span {
  top: -20px; }

.form {
  font-size: 18px; }
  .form__input {
    background: #fff;
    border: 1px solid #6f7072;
    border-radius: 0 !important;
    color: #fff;
    margin-top: 15px;
    padding: 10px !important;
    width: 100%; }
  .form__textarea {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 0 !important;
    color: #6f7072;
    margin-top: 15px;
    padding: 10px;
    width: 100%; }
  .form__button {
    max-width: 170px; }
  .form input[type=submit] {
    align-items: center;
    background: #cb0019;
    border: none;
    border-radius: 0;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-family: "urw-din-semi-condensed", sans-serif;
    font-size: 18px;
    font-weight: 500;
    justify-content: center;
    letter-spacing: 0.6px;
    line-height: 24px;
    padding: 15px 0;
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
    transform: perspective(1px) translateZ(0);
    transition-duration: 0.3s;
    transition-property: color;
    width: 100%; }
    .form input[type=submit]::before {
      background: #fff;
      bottom: 0;
      content: '';
      left: 0;
      position: absolute;
      right: 0;
      top: 0;
      transform: scaleX(0);
      transform-origin: 0 50%;
      transition-duration: 0.3s;
      transition-property: transform;
      transition-timing-function: ease-out;
      z-index: -1; }
    .form input[type=submit]:hover, .form input[type=submit]:active, .form input[type=submit]:focus {
      color: #fff; }
      .form input[type=submit]:hover::before, .form input[type=submit]:active::before, .form input[type=submit]:focus::before {
        transform: scaleX(1); }

span.wpcf7-list-item {
  margin: 0; }

.wpcf7-not-valid {
  border-color: #cb0019 !important; }

.wpcf7-mail-sent-ok {
  border: none; }

.wpcf7-response-output {
  border: none !important;
  margin: 20px 0 !important;
  padding: 0 !important; }

.wpcf7-validation-errors {
  border: none !important;
  color: #cb0019;
  margin: 20px 0 !important;
  padding: 0 !important; }

.social__icons {
  display: block;
  padding-top: 30px;
  text-align: center; }

.social__title {
  font-size: 16px;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase; }
  @media (min-width: 768px) {
    .social__title {
      font-size: 16px; } }

.social__icon {
  color: #6f7072;
  font-size: 24px;
  margin: 15px;
  transition: color 0.3s ease; }
  .social__icon:hover, .social__icon:active {
    color: #cb0019; }

.contact-side {
  bottom: 78px;
  display: none;
  position: absolute;
  right: -3px;
  z-index: 100; }
  @media (min-width: 992px) {
    .contact-side {
      display: none; } }
  .contact-side__link {
    background-color: #cb0019;
    color: #fff;
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 25px;
    text-decoration: none;
    text-transform: uppercase;
    transform: rotate(-90deg) translate(0, 50%);
    transform-origin: 50% -50%; }

.home .contact-side {
  display: block; }
  @media (min-width: 992px) {
    .home .contact-side {
      display: block; } }

.error-404 {
  height: calc(100vh - 325px);
  padding: 200px 30px;
  text-align: center; }
  .error-404__text {
    color: #6f7072;
    font-size: 18px;
    padding-top: 30px; }
  .error-404__link {
    color: #cb0019;
    display: block;
    padding-top: 20px;
    text-decoration: none; }

.simple-page {
  margin: 0 auto;
  max-width: 1260px;
  padding-bottom: 50px;
  padding-top: 50px; }
  @media (min-width: 992px) {
    .simple-page {
      padding-bottom: 120px;
      padding-top: 120px; } }
  .simple-page h1 {
    color: #6f7072;
    font-size: 36px;
    font-weight: 300;
    padding: 10px 0 15px; }
    @media (min-width: 768px) {
      .simple-page h1 {
        font-size: 48px;
        padding: 15px 0 30px; } }
  .simple-page h2 {
    color: #6f7072;
    font-size: 24px;
    font-weight: 300;
    padding: 10px 0 15px; }
    @media (min-width: 768px) {
      .simple-page h2 {
        font-size: 36px;
        padding: 15px 0 30px; } }
  .simple-page h3 {
    font-weight: 300; }

