/*! Flickity v2.2.2
https://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus { outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */

.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous { left: 10px; }
.flickity-prev-next-button.next { right: 10px; }
/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots { direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

[data-simplebar] {
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start;
}

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0;
}

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}

.simplebar-content-wrapper {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%; /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
  width: auto;
  max-width: 100%; /* Not required for horizontal scroll to trigger */
  max-height: 100%; /* Needed for vertical scroll to trigger */
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.simplebar-content:before,
.simplebar-content:after {
  content: ' ';
  display: table;
}

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none;
}

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  flex-grow: inherit;
  flex-shrink: 0;
  flex-basis: 0;
}

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
}

[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  user-select: none;
  -webkit-user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all;
}

.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px;
}

.simplebar-scrollbar:before {
  position: absolute;
  content: '';
  background: black;
  border-radius: 7px;
  left: 2px;
  right: 2px;
  opacity: 0;
  transition: opacity 0.2s linear;
}

.simplebar-scrollbar.simplebar-visible:before {
  /* When hovered, remove all transitions from drag handle */
  opacity: 0.5;
  transition: opacity 0s linear;
}

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px;
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px;
}

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 2px;
  right: 2px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 2px;
  height: 7px;
  min-height: 0;
  min-width: 10px;
  width: auto;
}

/* Rtl support */
[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}

.hs-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll;
}

.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

/*--------------------------------------------------------------
# Global
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Abstracts
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Mixins
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Variables
--------------------------------------------------------------*/
@font-face {
  font-family: "montserratregular";
  src: url("../../assets/fonts/montserrat-regular-webfont.woff2") format("woff2"), url("../../assets/fonts/montserrat-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "montserratsemibold";
  src: url("../../assets/fonts/montserrat-semibold-webfont.woff2") format("woff2"), url("../../assets/fonts/montserrat-semibold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

/**
 * Root Media Query Variables
 */
:root {
  --global--spacing-unit: 20px;
  --global--spacing-horizontal: 15px;
  --responsive--spacing-horizontal: calc(2 * var(--global--spacing-horizontal));
  --responsive--aligndefault-width: 100%;
  --responsive--alignwide-width: 100%;
  --responsive--alignfull-width: 100%;
  --responsive--alignwide-width-multiplier: calc(
    16 * var(--global--spacing-horizontal)
  );
  --responsive--alignright-margin: var(--global--spacing-horizontal);
  --responsive--alignleft-margin: var(--global--spacing-horizontal); }

@media only screen and (min-width: 720px) {
  :root {
    --responsive--aligndefault-width: calc(
      720px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignwide-width: calc(
      720px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignright-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    );
    --responsive--alignleft-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    ); } }

@media only screen and (min-width: 980px) {
  :root {
    --responsive--aligndefault-width: calc(
      980px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignwide-width: calc(
      1140px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignright-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    );
    --responsive--alignleft-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    ); } }

@media only screen and (min-width: 1140px) {
  :root {
    --responsive--aligndefault-width: calc(
      980px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignwide-width: calc(
      1140px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignright-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    );
    --responsive--alignleft-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    ); } }

@media only screen and (min-width: 1200px) {
  :root {
    --responsive--aligndefault-width: calc(
      1140px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignwide-width: calc(
      1200px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignright-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    );
    --responsive--alignleft-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    ); } }

@media only screen and (min-width: 1400px) {
  :root {
    --responsive--aligndefault-width: calc(
      1140px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignwide-width: calc(
      1200px - var(--responsive--spacing-horizontal)
    );
    --responsive--alignright-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    );
    --responsive--alignleft-margin: calc(
      0.5 * (100vw - var(--responsive--aligndefault-width))
    ); } }

/**
 * Extends
 */
.default-max-width, .u-default-max-width {
  max-width: var(--responsive--aligndefault-width);
  margin-left: auto;
  margin-right: auto; }

.wide-max-width, .u-wide-max-width {
  max-width: var(--responsive--alignwide-width);
  margin-left: auto;
  margin-right: auto; }

@media only screen and (min-width: 720px) {
  .full-max-width, .u-full-max-width {
    max-width: var(--responsive--alignfull-width);
    width: auto;
    margin-left: auto;
    margin-right: auto; } }

.wide-max-width,
.alignwide {
  max-width: var(--responsive--alignwide-width);
  margin-left: auto;
  margin-right: auto; }

.full-max-width,
.wp-block-group .wp-block-group__inner-container > *.alignfull,
.alignfull,
.singular .post-thumbnail {
  max-width: calc(100% + (2 * var(--global--spacing-horizontal)));
  width: calc(100% + (2 * var(--global--spacing-horizontal)));
  margin-left: calc(-1 * var(--global--spacing-horizontal));
  margin-right: auto; }

.wp-block-code {
  background-color: #e1e1e1;
  padding: 16px 16px; }

@media only screen and (min-width: 482px) {
  .full-max-width,
  .alignfull,
  .singular .post-thumbnail {
    max-width: var(--responsive--alignfull-width);
    width: auto;
    margin-left: auto;
    margin-right: auto; } }

.alignwide [class*="inner-container"] > .alignwide,
.alignfull [class*="inner-container"] > .alignwide {
  margin-left: auto;
  margin-right: auto;
  width: var(--responsive--alignwide-width);
  max-width: var(--responsive--alignfull-width); }

.entry-content > .alignleft {
  /*rtl:ignore*/
  margin-left: 0;
  /*rtl:ignore*/
  margin-right: var(--responsive--spacing-horizontal); }

@media only screen and (min-width: 482px) {
  .entry-content > .alignleft {
    /*rtl:ignore*/
    margin-left: var(--responsive--alignleft-margin);
    /*rtl:ignore*/
    margin-right: var(--global--spacing-horizontal); } }

.entry-content > .alignright {
  /*rtl:ignore*/
  margin-left: var(--responsive--spacing-horizontal);
  /*rtl:ignore*/
  margin-right: 0; }

@media only screen and (min-width: 482px) {
  .entry-content > .alignright {
    /*rtl:ignore*/
    margin-left: var(--global--spacing-horizontal);
    /*rtl:ignore*/
    margin-right: var(--responsive--alignright-margin); } }

/**
 * Output
 */
/*--------------------------------------------------------------
# Animations
--------------------------------------------------------------*/
/*------------------------------------*\
  #Laptop/Desktop blur animations
\*------------------------------------*/
@keyframes blur {
  0% {
    -webkit-filter: blur(0px);
    filter: blur(0px); }
  100% {
    -webkit-filter: blur(10px);
    filter: blur(10px); } }

@-webkit-keyframes blur {
  0% {
    -webkit-filter: blur(0px);
    filter: blur(0px); }
  100% {
    -webkit-filter: blur(10px);
    filter: blur(10px); } }

@keyframes blurReverse {
  0% {
    -webkit-filter: blur(10px);
    -moz-filter: blur(10px);
    -o-filter: blur(10px);
    -ms-filter: blur(10px);
    filter: blur(10px); }
  99% {
    -webkit-filter: blur(0.5px);
    -moz-filter: blur(0.5px);
    -o-filter: blur(0.5px);
    -ms-filter: blur(0.5px);
    filter: blur(0.5px); }
  100% {
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -o-filter: blur(0px);
    -ms-filter: blur(0px);
    filter: blur(0px); } }

@-webkit-keyframes blurReverse {
  0% {
    -webkit-filter: blur(10px);
    -moz-filter: blur(10px);
    -o-filter: blur(10px);
    -ms-filter: blur(10px);
    filter: blur(10px); }
  99% {
    -webkit-filter: blur(0.5px);
    -moz-filter: blur(0.5px);
    -o-filter: blur(0.5px);
    -ms-filter: blur(0.5px);
    filter: blur(0.5px); }
  100% {
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -o-filter: blur(0px);
    -ms-filter: blur(0px);
    filter: blur(0px); } }

/*------------------------------------*\
  #fadein
\*------------------------------------*/
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

/*------------------------------------*\
  #fadeout
\*------------------------------------*/
@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*------------------------------------*\
  #nav drop down 
\*------------------------------------*/
@keyframes navDropdown {
  0% {
    max-height: 0px; }
  100% {
    max-height: max-content; } }

@-webkit-keyframes navDropdown {
  0% {
    max-height: 0px; }
  100% {
    max-height: max-content; } }

/*------------------------------------*\
  #nav drop down reverse
\*------------------------------------*/
@keyframes navDropReverse {
  0% {
    height: 140px; }
  99% {
    height: 0px; }
  100% {
    display: none; } }

@-webkit-keyframes navDropReverse {
  0% {
    height: 140px; }
  99% {
    height: 0px; }
  100% {
    display: none; } }

/*------------------------------------*\
  #Laptop/Desktop header animations
\*------------------------------------*/
@keyframes increaseHeaderWidth {
  0% {
    width: 90px; }
  100% {
    width: 250px; } }

@-webkit-keyframes increaseHeaderWidth {
  0% {
    width: 90px; }
  100% {
    width: 250px; } }

@keyframes decreaseHeaderWidth {
  0% {
    width: 250px; }
  99% {
    width: 90px; }
  100% {
    width: 100%; } }

@-webkit-keyframes decreaseHeaderWidth {
  0% {
    width: 250px; }
  99% {
    width: 90px; }
  100% {
    width: 100%; } }

/*------------------------------------*\
  #Preloader Circle animation
\*------------------------------------*/
@keyframes preloader {
  0% {
    width: 0px;
    height: 0px;
    opacity: 1; }
  80% {
    width: 70px;
    height: 70px; }
  100% {
    border-radius: 50%;
    opacity: 0; } }

@-webkit-keyframes preloader {
  0% {
    width: 0px;
    height: 0px;
    opacity: 1; }
  80% {
    width: 70px;
    height: 70px; }
  100% {
    border-radius: 50%;
    opacity: 0; } }

/**/
@keyframes myDisplay {
  0% {
    height: max-content; }
  100% {
    height: 100%; } }

@-webkit-keyframes myDisplay {
  0% {
    height: max-content; }
  100% {
    height: 100%; } }

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
.u-header-space {
  width: 100%;
  height: 90px; }
  @media only screen and (min-width: 980px) {
    .u-header-space {
      display: none; } }

.u-header-space-mobile {
  width: 100%;
  height: 60px; }

.u-border {
  width: 100%;
  padding: 0px 16px;
  margin: 16px 0px 24px 0px;
  border-top: 1px solid #e1e1e1; }
  @media only screen and (min-width: 980px) {
    .u-border {
      width: 615px;
      margin: 16px 206px 24px 206px; } }

/*--------------------------------------------------------------
# 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; }
  .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-size: 0.875rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000; }

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

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/*! normalize.css v8.0.1 | 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; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * 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; }

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit; }

html {
  box-sizing: border-box; }

/*--------------------------------------------------------------
# Objects
--------------------------------------------------------------*/
/* Preloader
--------------------------------------------- */
.o-preloader {
  position: fixed;
  z-index: 100;
  width: 100%;
  height: 100%;
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  align-content: center;
  text-align: center; }

.o-preloader__loader {
  width: 100%;
  height: 150px;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center; }

.o-preloader__circle {
  width: 0px;
  height: 0px;
  opacity: 0;
  border: 4px solid #f7484e;
  border-radius: 50%;
  animation-name: preloader;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite; }

/* Overlay
--------------------------------------------- */
/*------------------------------------*\
  #Overlay - Fade content menu expand
\*------------------------------------*/
.o-overlay {
  display: none;
  position: fixed;
  width: 100%;
  height: 100vh;
  z-index: 20;
  align-items: center;
  justify-content: flex-start; }
  @media only screen and (min-width: 980px) {
    .o-overlay {
      background: linear-gradient(90deg, white 23%, white 0%, rgba(255, 255, 255, 0) 100%); } }

.o-overlay--active {
  display: flex; }

/* bullet
--------------------------------------------- */
/*------------------------------------*\
  #Red bullet
\*------------------------------------*/
.o-bullet-numeric {
  height: 100%;
  width: max-content;
  display: inline-block;
  color: #111111; }
  .o-bullet-numeric::before {
    content: counter(chapter);
    counter-increment: chapter;
    font-size: 14px;
    width: 20px;
    height: 20px;
    margin-right: 5px; }
  .o-bullet-numeric::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: var(--cavatina_accent-color);
    border-radius: 50%;
    font-size: 14px;
    width: 5px;
    height: 5px;
    margin-right: 8px;
    margin-left: 6px; }

.o-bullet-decimal-numeric {
  height: 100%;
  width: max-content;
  display: inline-block;
  color: var(--cavatina_primary-color); }
  .o-bullet-decimal-numeric::before {
    content: "0" counter(chapter);
    counter-increment: chapter;
    font-size: 14px;
    width: 20px;
    height: 20px;
    margin-right: 5px; }
  .o-bullet-decimal-numeric::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: var(--cavatina_accent-color);
    border-radius: 50%;
    font-size: 14px;
    width: 5px;
    height: 5px;
    margin-right: 8px;
    margin-left: 6px; }

.o-bullet-decimal-numeric-small {
  height: 100%;
  width: max-content;
  display: inline-block;
  color: var(--cavatina_primary-color); }
  .o-bullet-decimal-numeric-small::before {
    content: "0" counter(chapter);
    counter-increment: chapter;
    font-size: 14px;
    width: 20px;
    height: 20px;
    margin-right: 5px; }
  .o-bullet-decimal-numeric-small::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: var(--cavatina_accent-color);
    border-radius: 50%;
    font-size: 14px;
    width: 3px;
    height: 3px;
    margin-right: 8px;
    margin-left: 6px; }

.o-bullet::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-color: var(--cavatina_accent-color);
  border-radius: 50%;
  font-size: 14px;
  width: 7px;
  height: 7px;
  margin-right: 8px;
  margin-left: 6px; }

.o-bullet--sm::before {
  width: 5px;
  height: 5px; }

.o-bullet-after {
  font-family: "montserratregular";
  font-size: 14px;
  line-height: 17px;
  vertical-align: top; }
  .o-bullet-after::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: var(--cavatina_accent-color);
    border-radius: 50%;
    font-size: 14px;
    width: 5px;
    height: 5px;
    margin-right: 8px;
    margin-left: 8px; }

/* block
--------------------------------------------- */
/*------------------------------------*\
  #Page
\*------------------------------------*/
.o-page {
  width: 100%;
  height: max-content;
  max-height: max-content; }
  @media only screen and (min-width: 980px) {
    .o-page {
      text-align: left;
      height: calc(100vh);
      max-height: 100vh;
      padding-left: 90px;
      display: block; } }
  @media only screen and (min-width: 980px) and (max-width: 1005px) {
    .o-page {
      display: flex; } }
  @media only screen and (min-width: 1400px) {
    .o-page {
      display: flex; } }

.o-page--home {
  height: max-content; }
  @media only screen and (min-width: 980px) {
    .o-page--home {
      height: calc(100vh);
      padding-left: 15%; } }
  @media only screen and (min-width: 1400px) {
    .o-page--home {
      display: inline-block; } }
  .o-page--home .c-footer {
    padding-left: 14px;
    padding-right: 0px;
    padding-bottom: 28px; }
    @media only screen and (min-width: 980px) {
      .o-page--home .c-footer {
        padding-right: 26px; } }

.o-page--404 {
  height: calc(100vh - 125px); }
  @media only screen and (min-width: 980px) {
    .o-page--404 {
      height: calc(100vh); } }

/*------------------------------------*\
  #Page main
\*------------------------------------*/
.o-page__main {
  animation-name: blurReverse;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  overflow: auto;
  height: max-content;
  padding-bottom: 75px; }
  @media only screen and (min-width: 980px) {
    .o-page__main {
      width: calc(99% - 175px);
      height: 99%;
      overflow-x: hidden;
      display: inline-block;
      text-align: left;
      padding-bottom: 0px; } }
  @media only screen and (min-width: 1400px) {
    .o-page__main {
      width: calc(99% - 165px); } }

.o-page__main--blur {
  animation-name: blur !important;
  animation-duration: 1s;
  animation-fill-mode: forwards; }

.o-page--home .o-page__main {
  height: 100%;
  padding-bottom: 0; }
  @media only screen and (min-width: 980px) {
    .o-page--home .o-page__main {
      width: calc(99% - 22%);
      height: 90%; } }

@media only screen and (min-width: 980px) {
  .o-page__main--page-single .c-footer {
    padding-right: 0; } }

@media only screen and (min-width: 980px) {
  .o-page__main--search .c-footer {
    padding-right: 65px; } }

@media only screen and (min-width: 980px) {
  .o-page__main--posts .c-footer {
    padding-right: 36px; } }

.o-page__main__header {
  width: 100%; }

@media only screen and (min-width: 980px) {
  .o-page__main--privacy .c-footer {
    padding-right: 60px; } }

.o-page__main--blog {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap; }
  @media only screen and (min-width: 980px) {
    .o-page__main--blog .c-footer {
      width: 1114px;
      padding-right: 0;
      padding-left: 0; } }

.o-page__main--projects .c-footer {
  padding-right: 45px; }

.o-page__main__header--align-left {
  text-align: left; }

.o-page__main--no-bottom-space {
  padding-bottom: 0; }
  @media only screen and (min-width: 980px) {
    .o-page__main--no-bottom-space {
      padding-bottom: 64px; } }

/*------------------------------------*\
  #Page col
\*------------------------------------*/
@media only screen and (min-width: 980px) {
  .o-page__col {
    display: inline-block;
    vertical-align: middle;
    height: 100%; } }

/*------------------------------------*\
  #Page 404
\*------------------------------------*/
.o-page__main--404 {
  display: inline-block;
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 25%; }
  @media only screen and (min-width: 980px) {
    .o-page__main--404 {
      padding: 0;
      padding-left: 32px;
      padding-right: 32px;
      padding-top: 32px;
      width: 100%; } }
  .o-page__main--404 form {
    width: 90%;
    margin-top: 16px; }
  .o-page__main--404 .c-footer {
    display: none; }

.o-page__main__error-404 {
  text-align: center;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap; }
  @media only screen and (min-width: 980px) {
    .o-page__main__error-404 {
      width: 100%; } }
  .o-page__main__error-404 .page-content p {
    margin-bottom: 32px; }

/*------------------------------------*\
    #Page Main - Error
\*------------------------------------*/
.o-page__main__error {
  font-size: 24px;
  margin: 0;
  line-height: 41px;
  font-family: "montserratsemibold";
  color: var(--cavatina_primary-color);
  font-weight: normal; }

.o-page__main__error-desc {
  font-family: "montserratregular";
  font-size: 19px;
  line-height: 30px;
  color: var(--cavatina_secondary-color);
  text-align: center;
  font-weight: normal;
  margin-top: 24px;
  margin-bottom: 0; }

/*------------------------------------*\
  #Search nothing found
\*------------------------------------*/
.o-page__main--no-results {
  width: 100%;
  height: max-content; }
  @media only screen and (min-width: 980px) {
    .o-page__main--no-results {
      width: 750px;
      max-width: 70%;
      height: 50vh;
      display: flex;
      flex-wrap: wrap;
      align-content: center;
      justify-content: center;
      align-items: center; } }
  .o-page__main--no-results .c-search__form {
    margin-top: 64px; }
  .o-page__main--no-results .o-page__main__desc {
    margin-bottom: 64px; }
  .o-page__main--no-results .o-page__main__header {
    width: 100%; }

.o-page__main__content {
  width: 100%; }
  .o-page__main__content .search-submit-mobile {
    display: none; }

.o-page__main__content--404 {
  width: max-content; }
  .o-page__main__content--404 .c-social-share {
    justify-content: center; }

/*------------------------------------*\
  #Carousel Image showcase
\*------------------------------------*/
.o-page_image-overlay {
  width: 100%;
  height: 100vh;
  position: fixed;
  z-index: 100;
  background-color: rgba(3, 3, 3, 0.418);
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-fill-mode: forwards; }

/* layout
--------------------------------------------- */
/* Images
--------------------------------------------- */
img {
  width: 100%;
  height: 100%; }

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# External
--------------------------------------------------------------*/
/*--------------------------------------------------------------
  # Custom Flickity
  --------------------------------------------------------------*/
/* ---- previous/next buttons ---- */
.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 40%;
  height: 40%; }

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: center;
  padding-left: 16px;
  padding-right: 16px; }
  @media only screen and (min-width: 980px) {
    .flickity-page-dots {
      padding: 0; } }

.flickity-page-dots {
  bottom: -55px; }
  @media only screen and (min-width: 980px) {
    .flickity-page-dots {
      bottom: -35px;
      padding-left: 0;
      padding-right: 0; } }
  .flickity-page-dots .dot {
    display: inline-block;
    width: 100%;
    height: 2px;
    margin: 0;
    border-radius: 0;
    background: #8a8a8a;
    opacity: 0.25;
    cursor: pointer;
    transition: 0.5s all; }
  .flickity-page-dots .dot.is-selected {
    height: 2px;
    background: #8a8a8a; }

/* ---- page buttons ---- */
.flickity-button {
  position: absolute;
  left: 94%;
  padding: 5%;
  top: 140%;
  transform: translate(-50%, -50%);
  color: #767676;
  background-color: transparent; }
  @media only screen and (min-width: 980px) {
    .flickity-button {
      top: 115%;
      left: 99%;
      padding: 15px; } }
  .flickity-button:focus {
    background-color: transparent; }

.flickity-prev-next-button.previous {
  left: 80%; }
  @media only screen and (min-width: 980px) {
    .flickity-prev-next-button.previous {
      left: 95%; } }

.flickity-enabled:focus:focus {
  outline: var(--cavatina_primary-color) dotted 1px; }

/*--------------------------------------------------------------
  # Custom Simplebar
  --------------------------------------------------------------*/
.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
  margin-top: 12%;
  background: #e1e1e1;
  border-radius: 15px;
  width: 12px;
  max-width: 1px;
  padding: 1px; }

.simplebar-scrollbar {
  background-color: #767676;
  padding: 0.5px;
  width: 7px; }

.simplebar-content-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 20; }
  @media only screen and (min-width: 980px) {
    .simplebar-content-wrapper::before {
      background-image: linear-gradient(top, #ffffff00 77.53%, #fff 62%);
      background-image: -ms-linear-gradient(top, #ffffff00 77.53%, #fff 62%);
      background-image: -o-linear-gradient(top, #ffffff00 77.53%, #fff 62%);
      background-image: -webkit-linear-gradient(top, #ffffff00 35.53%, #fff 62%);
      background-image: -moz-linear-gradient(top, #ffffff00 5%, #fff 62%);
      bottom: 10%;
      content: "\00a0";
      height: 30%;
      position: fixed;
      z-index: 10;
      width: 50%;
      pointer-events: none; } }
  @media only screen and (min-width: 1400px) {
    .simplebar-content-wrapper::before {
      background-image: linear-gradient(top, #ffffff00 77.53%, #fff 67%);
      background-image: -ms-linear-gradient(top, #ffffff00 77.53%, #fff 67%);
      background-image: -o-linear-gradient(top, #ffffff00 77.53%, #fff 67%);
      background-image: -webkit-linear-gradient(top, #ffffff00 35.53%, #fff 67%);
      background-image: -webkit-linear-gradient(top, #ffffff00 35.53%, white 67%);
      background-image: -moz-linear-gradient(top, #ffffff00 5%, #fff 67%);
      bottom: 10%;
      content: "\00a0";
      height: 30%;
      position: fixed;
      z-index: 10;
      width: 50%;
      pointer-events: none; } }

/*------------------------------------*\
  #Components
\*------------------------------------*/
/* Preloader
--------------------------------------------- */
.c-preloader {
  position: absolute;
  width: 100%;
  height: 100vh;
  background-color: #e1e1e1;
  z-index: 90; }

.preloader {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 20px;
  display: block;
  width: 3.75em;
  height: 4.25em;
  margin-left: -1.875em;
  margin-top: -2.125em;
  transform-origin: center center;
  transform: rotateY(180deg) rotateZ(-60deg); }

.preloader .slice {
  border-top: 1.125em solid transparent;
  border-right: none;
  border-bottom: 1em solid transparent;
  border-left: 1.875em solid #f7484e;
  position: absolute;
  top: 0px;
  left: 50%;
  transform-origin: left bottom;
  border-radius: 3px 3px 0 0; }

.preloader .slice:nth-child(1) {
  transform: rotateZ(60deg) rotateY(0deg) rotateX(0);
  -webkit-animation: 0.15s linear 0.82s preload-hide-1 both 1;
  animation: 0.15s linear 0.82s preload-hide-1 both 1; }

.preloader .slice:nth-child(2) {
  transform: rotateZ(120deg) rotateY(0deg) rotateX(0);
  -webkit-animation: 0.15s linear 0.74s preload-hide-2 both 1;
  animation: 0.15s linear 0.74s preload-hide-2 both 1; }

.preloader .slice:nth-child(3) {
  transform: rotateZ(180deg) rotateY(0deg) rotateX(0);
  -webkit-animation: 0.15s linear 0.66s preload-hide-3 both 1;
  animation: 0.15s linear 0.66s preload-hide-3 both 1; }

.preloader .slice:nth-child(4) {
  transform: rotateZ(240deg) rotateY(0deg) rotateX(0);
  -webkit-animation: 0.15s linear 0.58s preload-hide-4 both 1;
  animation: 0.15s linear 0.58s preload-hide-4 both 1; }

.preloader .slice:nth-child(5) {
  transform: rotateZ(300deg) rotateY(0deg) rotateX(0);
  -webkit-animation: 0.15s linear 0.5s preload-hide-5 both 1;
  animation: 0.15s linear 0.5s preload-hide-5 both 1; }

.preloader .slice:nth-child(6) {
  transform: rotateZ(360deg) rotateY(0deg) rotateX(0);
  -webkit-animation: 0.15s linear 0.42s preload-hide-6 both 1;
  animation: 0.15s linear 0.42s preload-hide-6 both 1; }

.preloader.loading {
  -webkit-animation: 2s preload-flip steps(2) infinite both;
  animation: 2s preload-flip steps(2) infinite both; }

.preloader.loading .slice:nth-child(1) {
  transform: rotateZ(60deg) rotateY(90deg) rotateX(0);
  -webkit-animation: 2s preload-cycle-1 linear infinite both;
  animation: 2s preload-cycle-1 linear infinite both; }

.preloader.loading .slice:nth-child(2) {
  transform: rotateZ(120deg) rotateY(90deg) rotateX(0);
  -webkit-animation: 2s preload-cycle-2 linear infinite both;
  animation: 2s preload-cycle-2 linear infinite both; }

.preloader.loading .slice:nth-child(3) {
  transform: rotateZ(180deg) rotateY(90deg) rotateX(0);
  -webkit-animation: 2s preload-cycle-3 linear infinite both;
  animation: 2s preload-cycle-3 linear infinite both; }

.preloader.loading .slice:nth-child(4) {
  transform: rotateZ(240deg) rotateY(90deg) rotateX(0);
  -webkit-animation: 2s preload-cycle-4 linear infinite both;
  animation: 2s preload-cycle-4 linear infinite both; }

.preloader.loading .slice:nth-child(5) {
  transform: rotateZ(300deg) rotateY(90deg) rotateX(0);
  -webkit-animation: 2s preload-cycle-5 linear infinite both;
  animation: 2s preload-cycle-5 linear infinite both; }

.preloader.loading .slice:nth-child(6) {
  transform: rotateZ(360deg) rotateY(90deg) rotateX(0);
  -webkit-animation: 2s preload-cycle-6 linear infinite both;
  animation: 2s preload-cycle-6 linear infinite both; }

/* Header
--------------------------------------------- */
/*------------------------------------*\
  #Header
\*------------------------------------*/
.c-header {
  width: 100%;
  border-bottom: 1px solid #e1e1e1;
  position: relative;
  z-index: 50;
  top: 0;
  background-color: #fff;
  padding-top: 25px;
  padding-bottom: 25px; }
  @media only screen and (min-width: 980px) {
    .c-header {
      width: max-content;
      min-width: 90px;
      position: fixed;
      height: calc(100% - 120px);
      border-right: 1px solid #e1e1e1;
      border-bottom: none;
      padding-top: 0px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      top: 50%;
      left: 0;
      transform: translate(0%, -50%); } }

.c-header__holder {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center; }
  @media only screen and (min-width: 980px) {
    .c-header__holder {
      width: 100%;
      height: 100%;
      flex-direction: column-reverse;
      justify-content: space-between;
      display: flex;
      align-items: center;
      padding-bottom: 0px; } }

/*------------------------------------*\
    #Header logo
\*------------------------------------*/
.c-header__logo {
  width: 35%;
  text-align: left;
  padding-left: 16px;
  order: 1; }
  @media only screen and (min-width: 980px) {
    .c-header__logo {
      width: max-content;
      margin-bottom: 15%;
      padding: 0;
      transform: rotate(-90deg); } }
  .c-header__logo h1 {
    font-size: 1.5em;
    margin: 0;
    margin-bottom: 8px; }
    @media only screen and (min-width: 980px) {
      .c-header__logo h1 {
        font-size: 1.7em; } }

.c-header__logo__anchor {
  display: flex;
  color: var(--cavatina_primary-color); }
  @media only screen and (min-width: 980px) {
    .c-header__logo__anchor {
      display: block; } }

.c-header__logo__image {
  width: 95px;
  height: 17px; }

.c-header__logo__text {
  width: 91px;
  height: 17px;
  color: var(--cavatina_primary-color);
  transition: 0.2s all;
  line-height: 23px; }
  .c-header__logo__text:hover {
    color: #767676; }

/*------------------------------------*\
    #Header text
\*------------------------------------*/
.c-header__text {
  color: var(--cavatina_secondary-color);
  display: none;
  order: 2;
  font-size: 14px; }

/*------------------------------------*\
    #Header menu
\*------------------------------------*/
.c-header__menu {
  text-align: right;
  background-color: transparent;
  order: 2;
  width: 45px;
  height: 30px;
  position: relative;
  display: inline-block; }
  .c-header__menu:hover {
    background-color: transparent; }
  .c-header__menu::before {
    height: 0;
    border-bottom: 1px solid #000;
    top: 10px;
    left: 0;
    transform-origin: top left; }
  .c-header__menu::after {
    height: 0;
    border-bottom: 1px solid #000;
    bottom: 10px;
    left: 0;
    transform-origin: bottom left; }
  .c-header__menu:focus {
    outline: #767676 dotted 1px !important;
    background-color: transparent; }
  @media only screen and (min-width: 980px) {
    .c-header__menu {
      margin-left: 25%;
      text-align: center; } }

.c-header__menu::before,
.c-header__menu::after {
  width: 50%;
  content: "";
  position: absolute;
  border-color: #000;
  display: block;
  transition: transform 700ms cubic-bezier(0.75, 0.01, 0.07, 0.99);
  will-change: transform; }

/*------------------------------------*\
    #Header search
\*------------------------------------*/
.c-header__search {
  cursor: pointer;
  width: 27px;
  height: 30px;
  position: relative;
  display: inline-block;
  display: none;
  background: transparent;
  padding: 0px; }
  .c-header__search::before {
    width: 24px;
    height: 24px;
    border: 1px solid #000;
    border-radius: 12px;
    top: 0; }
  .c-header__search::after {
    width: 12px;
    height: 0;
    border-bottom: 1px solid #000;
    transform: rotate(40deg) translateY(-8px);
    bottom: 0;
    right: 0; }
  .c-header__search:hover {
    background: transparent; }
  .c-header__search:focus {
    background: transparent;
    outline: #000 dotted 1px; }
  @media only screen and (min-width: 980px) {
    .c-header__search {
      display: block;
      order: 3; } }

.c-header__search::after,
.c-header__search::before {
  content: "";
  position: absolute;
  transform-origin: center;
  border-color: #000;
  display: block;
  transition: all 700ms cubic-bezier(0.75, 0.01, 0.07, 0.99);
  will-change: transform, width, border; }

.c-header__search--toggle::before {
  width: 30px;
  height: 1px;
  border-color: #fff;
  border-bottom: 1px solid #000;
  border-radius: 0;
  transform: rotate(-45deg) translateY(10px) translateX(-12px);
  top: 0;
  left: 0; }

.c-header__search--toggle::after {
  width: 30px;
  height: 0;
  transform: rotate(45deg) translateY(-10px) translateX(-8px); }

/*------------------------------------*\
    #Header Home Modifier
\*------------------------------------*/
@media only screen and (min-width: 980px) {
  .c-header--home {
    width: 15%;
    border-bottom: none;
    padding-top: 25px; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__holder {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding-top: 60%; } }

@media only screen and (min-width: 1100px) and (min-height: 700px) and (max-width: 1399px) {
  .c-header--home .c-header__holder {
    padding-bottom: 80%;
    justify-content: center; } }

@media only screen and (min-width: 1400px) {
  .c-header--home .c-header__holder {
    padding-bottom: 100%;
    justify-content: center; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__logo {
    transform: rotate(0deg);
    margin-bottom: 0;
    padding-left: 32px; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__logo .c-header__logo__image {
    width: 120px;
    height: auto;
    margin-bottom: 8px;
    margin-top: 8px; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__logo .c-header__logo__text {
    margin-top: 10px;
    max-width: 150px;
    width: auto;
    height: auto; } }

@media only screen and (min-width: 1400px) {
  .c-header--home .c-header__logo .c-header__logo__text {
    margin-top: 0px; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__text {
    display: block;
    width: 150px;
    margin: 0; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__menu {
    display: none; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__search {
    display: none; } }

/*------------------------------------*\
    #Header Holder toggled
\*------------------------------------*/
@media only screen and (min-width: 980px) {
  .c-header__holder.toggled {
    justify-content: flex-end;
    flex-direction: row;
    align-items: center;
    height: max-content;
    align-content: center;
    animation-name: increaseHeaderWidth;
    animation-duration: 0.7s;
    animation-fill-mode: forwards;
    padding-left: 20%;
    padding-right: 5%; } }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .c-header__logo {
    width: 52%;
    margin-bottom: 0;
    transform: rotate(0deg); } }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .c-header__logo h1 {
    margin-bottom: 20px; } }

.c-header__holder.toggled .c-header__menu {
  width: 45px;
  height: 30px;
  text-align: right; }
  @media only screen and (min-width: 980px) {
    .c-header__holder.toggled .c-header__menu {
      padding: 0;
      width: 40px;
      height: 14px; }
      .c-header__holder.toggled .c-header__menu::before {
        transform: rotate(45deg) translate(-15px, -5px); }
      .c-header__holder.toggled .c-header__menu::after {
        transform: rotate(-45deg) translateX(-10px); } }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .c-header__menu::before,
  .c-header__holder.toggled .c-header__menu::after {
    margin-left: 20px; } }

.c-header__holder.toggled .c-nav {
  padding-top: 24px;
  padding-bottom: 16px;
  max-height: calc(25em);
  text-align: left;
  display: block;
  flex-wrap: wrap;
  width: 100%;
  order: 3;
  margin-top: 40px;
  opacity: 1;
  visibility: visible;
  height: 250px; }
  @media only screen and (min-width: 980px) {
    .c-header__holder.toggled .c-nav {
      padding-top: 12px;
      margin-left: 5px;
      margin-top: 0px; } }
  @media only screen and (min-width: 980px) {
    .c-header__holder.toggled .c-nav .s-nav {
      margin-left: 0;
      padding-left: 0;
      margin-top: 10%; } }

.c-header__holder.toggled .c-header__search::before {
  width: 30px;
  height: 1px;
  border-color: #fff;
  border-bottom: 1px solid #000;
  border-radius: 0;
  transform: rotate(-45deg) translateY(10px) translateX(-11px);
  top: 0;
  left: 0; }

.c-header__holder.toggled .c-header__search::after {
  width: 30px;
  height: 0;
  transform: rotate(45deg) translateY(-10px) translateX(-8px); }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .c-header__search {
    display: none; } }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .js-logo.is-open.logo-out {
    opacity: 0;
    display: none; } }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .js-logo.is-open.logo-in {
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-fill-mode: forwards; } }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .js-navigation.is-open.nav-out {
    opacity: 0;
    display: none; } }

@media only screen and (min-width: 980px) {
  .c-header__holder.toggled .js-navigation.is-open.nav-in {
    opacity: 0;
    display: block;
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-delay: 0.2s;
    animation-fill-mode: forwards; } }

@media only screen and (min-width: 980px) {
  .space-top {
    padding-top: 100%; } }

@media only screen and (min-width: 980px) {
  .js-nav.has-animation-out {
    animation-name: decreaseHeaderWidth;
    animation-duration: 1s;
    animation-fill-mode: forwards; } }

/*------------------------------------*\
    #Header 404 Modifier
\*------------------------------------*/
.c-header--404 .c-header__holder {
  padding-top: 0px;
  padding-bottom: 0px; }
  @media only screen and (min-width: 980px) {
    .c-header--404 .c-header__holder {
      justify-content: center; } }

.c-header--404 .c-header__menu {
  display: none; }

/* Navigation
--------------------------------------------- */
/*------------------------------------*\
  #Navigation
\*------------------------------------*/
.c-nav {
  width: 100%;
  max-height: 0;
  transition: 1s ease-in-out;
  transition-delay: 0s;
  overflow: hidden;
  margin-left: 8px;
  order: 3;
  opacity: 0;
  visibility: hidden; }
  @media only screen and (min-width: 980px) {
    .c-nav {
      display: none;
      order: 1; } }
  .c-nav .sub-menu {
    display: none; }

.s-nav {
  list-style-type: none;
  margin: 2%; }
  @media only screen and (min-width: 980px) {
    .s-nav {
      margin: 0; } }
  .s-nav .menu-item {
    line-height: 17px; }
    .s-nav .menu-item a {
      font-size: 19px !important;
      line-height: 23px !important; }
      @media only screen and (min-width: 980px) {
        .s-nav .menu-item a {
          font-size: 14px !important;
          line-height: 17px !important; } }

.menu-item {
  margin-bottom: 24px; }
  @media only screen and (min-width: 980px) {
    .menu-item {
      margin-bottom: 10px; } }
  .menu-item a {
    font-size: 19px;
    color: var(--cavatina_primary-color) !important; }
    @media only screen and (min-width: 980px) {
      .menu-item a {
        font-size: 14px;
        line-height: 17px; } }
    .menu-item a:hover {
      color: #767676 !important; }

/* Common
--------------------------------------------- */
/*--------------------------------------------------------------
# SideBar
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Social Share
--------------------------------------------------------------*/
/*------------------------------------*\
  #Social media links
\*------------------------------------*/
.c-social-media {
  transition: 1s all; }

.c-social-media__item {
  margin-right: 18px;
  transition: 0.2s all; }

.c-social-media__item:hover .c-social-media__icon {
  fill: var(--cavatina_primary-color); }

.c-social-media__item .c-social-media__icon {
  transition: 0.3s all;
  color: var(--cavatina_secondary-color);
  fill: var(--cavatina_secondary-color); }
  .c-social-media__item .c-social-media__icon:hover {
    color: var(--cavatina_primary-color); }

.c-social-share--footer {
  display: flex; }

/*------------------------------------*\
  #Blog social media
\*------------------------------------*/
.c-social-media--blog {
  margin-top: 32px;
  margin-bottom: 16px;
  order: 6;
  margin-left: 0;
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: flex-start; }
  @media only screen and (min-width: 980px) {
    .c-social-media--blog {
      width: 20%;
      margin-top: 40px;
      margin-left: 206px;
      margin-bottom: 4px;
      align-items: flex-end; } }

.c-social-media__title {
  margin-right: 21px;
  color: var(--cavatina_secondary-color); }

/*------------------------------------*\
  #404 social media
\*------------------------------------*/
.c-social-media--404 {
  margin-top: 50px;
  margin-bottom: 23px; }
  .c-social-media--404 a {
    margin: 0 10px; }

/*------------------------------------*\
  #Social share custom github icon
\*------------------------------------*/
.c-social-media__icon--github:before {
  content: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14pt' height='14pt' viewBox='0 0 14 14' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb(0%25,0%25,0%25);fill-opacity:1;' d='M 13.046875 3.652344 C 12.421875 2.582031 11.574219 1.734375 10.503906 1.109375 C 9.429688 0.484375 8.261719 0.171875 6.992188 0.171875 C 5.722656 0.171875 4.554688 0.484375 3.484375 1.109375 C 2.410156 1.734375 1.5625 2.582031 0.9375 3.652344 C 0.3125 4.726562 0 5.894531 0 7.164062 C 0 8.6875 0.445312 10.058594 1.332031 11.273438 C 2.222656 12.492188 3.371094 13.332031 4.78125 13.800781 C 4.945312 13.832031 5.066406 13.808594 5.144531 13.738281 C 5.222656 13.664062 5.261719 13.574219 5.261719 13.464844 C 5.261719 13.445312 5.261719 13.28125 5.257812 12.972656 C 5.253906 12.664062 5.253906 12.394531 5.253906 12.164062 L 5.042969 12.199219 C 4.910156 12.222656 4.742188 12.234375 4.539062 12.230469 C 4.335938 12.226562 4.125 12.207031 3.90625 12.167969 C 3.6875 12.128906 3.484375 12.035156 3.296875 11.894531 C 3.109375 11.75 2.972656 11.566406 2.894531 11.335938 L 2.804688 11.125 C 2.742188 10.984375 2.648438 10.832031 2.515625 10.660156 C 2.386719 10.492188 2.253906 10.375 2.121094 10.3125 L 2.058594 10.269531 C 2.015625 10.238281 1.976562 10.203125 1.9375 10.160156 C 1.902344 10.117188 1.875 10.074219 1.855469 10.03125 C 1.839844 9.988281 1.855469 9.953125 1.902344 9.925781 C 1.953125 9.898438 2.039062 9.886719 2.167969 9.886719 L 2.347656 9.914062 C 2.46875 9.9375 2.621094 10.011719 2.800781 10.132812 C 2.980469 10.253906 3.125 10.410156 3.242188 10.605469 C 3.382812 10.855469 3.550781 11.042969 3.746094 11.175781 C 3.945312 11.304688 4.144531 11.371094 4.34375 11.371094 C 4.542969 11.371094 4.714844 11.355469 4.863281 11.324219 C 5.007812 11.292969 5.144531 11.25 5.273438 11.1875 C 5.328125 10.78125 5.476562 10.46875 5.71875 10.25 C 5.371094 10.214844 5.0625 10.160156 4.785156 10.085938 C 4.507812 10.011719 4.222656 9.894531 3.929688 9.730469 C 3.632812 9.566406 3.390625 9.363281 3.195312 9.121094 C 3 8.878906 2.84375 8.558594 2.71875 8.164062 C 2.59375 7.769531 2.53125 7.316406 2.53125 6.800781 C 2.53125 6.066406 2.769531 5.441406 3.25 4.921875 C 3.027344 4.371094 3.046875 3.753906 3.3125 3.066406 C 3.488281 3.011719 3.75 3.050781 4.097656 3.1875 C 4.441406 3.324219 4.695312 3.441406 4.859375 3.539062 C 5.019531 3.636719 5.148438 3.71875 5.246094 3.785156 C 5.808594 3.628906 6.390625 3.550781 6.992188 3.550781 C 7.59375 3.550781 8.175781 3.628906 8.742188 3.785156 L 9.085938 3.566406 C 9.324219 3.421875 9.601562 3.289062 9.925781 3.167969 C 10.246094 3.046875 10.492188 3.011719 10.664062 3.066406 C 10.933594 3.753906 10.960938 4.371094 10.734375 4.921875 C 11.214844 5.441406 11.453125 6.066406 11.453125 6.800781 C 11.453125 7.316406 11.390625 7.773438 11.269531 8.167969 C 11.144531 8.566406 10.984375 8.886719 10.785156 9.125 C 10.589844 9.367188 10.34375 9.566406 10.046875 9.730469 C 9.753906 9.894531 9.46875 10.011719 9.191406 10.085938 C 8.914062 10.160156 8.605469 10.214844 8.257812 10.25 C 8.574219 10.523438 8.730469 10.953125 8.730469 11.542969 L 8.730469 13.464844 C 8.730469 13.574219 8.769531 13.664062 8.847656 13.738281 C 8.921875 13.808594 9.042969 13.832031 9.207031 13.800781 C 10.613281 13.332031 11.761719 12.492188 12.652344 11.273438 C 13.539062 10.058594 13.984375 8.6875 13.984375 7.164062 C 13.984375 5.894531 13.671875 4.726562 13.046875 3.652344 Z M 13.046875 3.652344 '/%3E%3C/g%3E%3C/svg%3E%0A");
  vertical-align: text-bottom;
  display: inline-block; }

/*------------------------------------*\
  #Social share Iconify
\*------------------------------------*/
.c-social-media__icon.iconify {
  font-size: 20px; }

/*--------------------------------------------------------------
# Search form
--------------------------------------------------------------*/
/*------------------------------------*\
  #Search overlay block - (For Desktop)
\*------------------------------------*/
.c-search__overlay {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  z-index: 20;
  background-color: white;
  padding-left: 160px;
  display: none;
  align-items: center;
  justify-content: flex-start;
  animation-name: blurReverse;
  animation-duration: 1s;
  animation-fill-mode: forwards; }
  .c-search__overlay .c-search__form {
    position: relative;
    width: 50%; }
    @media only screen and (min-width: 1400px) {
      .c-search__overlay .c-search__form {
        width: 40%; } }
    .c-search__overlay .c-search__form .search-field {
      height: 100%;
      padding-bottom: 20px; }
    .c-search__overlay .c-search__form .search-submit {
      position: absolute;
      top: -30px;
      right: 0px; }

/*------------------------------------*\
   #Search block Mobile
\*------------------------------------*/
.c-search {
  position: fixed;
  width: 100%;
  bottom: 0;
  z-index: 9;
  background-color: #fff;
  border-top: 1px solid #e1e1e1;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media only screen and (min-width: 980px) {
    .c-search {
      display: none; } }

.c-search__content {
  width: 100%;
  justify-content: center;
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center; }
  @media only screen and (min-width: 980px) {
    .c-search__content {
      vertical-align: top;
      height: 100%;
      align-items: flex-start;
      justify-content: center;
      padding-left: 16px;
      padding-right: 16px; } }
  @media only screen and (min-width: 1400px) {
    .c-search__content {
      padding-bottom: 20%; } }

.c-search__wrapper {
  width: 100%;
  min-height: 50px;
  text-align: center;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 16px;
  border-bottom: 1px solid #e1e1e1; }
  @media only screen and (min-width: 980px) {
    .c-search__wrapper {
      border-bottom: 0px solid #e1e1e1;
      border-top: 0px solid #e1e1e1;
      justify-content: center; } }

.c-search__context {
  width: max-content;
  display: inline-block; }
  @media only screen and (min-width: 980px) {
    .c-search__context {
      text-align: left; } }

.c-search__title {
  font-size: 13px;
  margin: 0;
  display: inline-block;
  text-transform: capitalize; }
  @media only screen and (min-width: 980px) {
    .c-search__title {
      font-size: 18px;
      display: block;
      padding-bottom: 8px; } }

.c-search__form {
  width: 100%;
  max-height: 0;
  height: 0;
  transition: 0.5s all;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media only screen and (min-width: 980px) {
    .c-search__form {
      display: none; } }

.c-search__holder {
  visibility: hidden;
  width: 90%;
  animation-name: fadeOut;
  animation-duration: 0.3s;
  animation-fill-mode: forwards; }
  .c-search__holder .search-submit {
    display: none; }

.c-search__form--toggled {
  max-height: 200px;
  height: 200px; }
  .c-search__form--toggled .c-search__holder {
    visibility: visible;
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-fill-mode: forwards; }

.c-search__icon {
  background-color: transparent;
  width: 20px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: flex-start; }
  .c-search__icon::before {
    content: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='15pt' height='15pt' viewBox='0 0 15 15' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb(0%25,0%25,0%25);fill-opacity:1;' d='M 14.910156 14.464844 L 10.34375 9.902344 C 11.292969 8.851562 11.875 7.460938 11.875 5.9375 C 11.875 2.664062 9.210938 0 5.9375 0 C 2.664062 0 0 2.664062 0 5.9375 C 0 9.210938 2.664062 11.875 5.9375 11.875 C 7.460938 11.875 8.851562 11.292969 9.902344 10.34375 L 14.464844 14.90625 C 14.527344 14.96875 14.605469 15 14.6875 15 C 14.765625 15 14.847656 14.96875 14.910156 14.910156 C 15.03125 14.785156 15.03125 14.589844 14.910156 14.464844 Z M 5.9375 11.25 C 3.007812 11.25 0.625 8.867188 0.625 5.9375 C 0.625 3.007812 3.007812 0.625 5.9375 0.625 C 8.867188 0.625 11.25 3.007812 11.25 5.9375 C 11.25 8.867188 8.867188 11.25 5.9375 11.25 Z M 5.9375 11.25 '/%3E%3C/g%3E%3C/svg%3E%0A");
    cursor: pointer;
    width: 20px;
    height: 20px;
    display: block;
    background-size: 21px 21px; }
  @media only screen and (min-width: 980px) {
    .c-search__icon {
      display: none; } }
  .c-search__icon:focus {
    background-color: transparent;
    outline: 1px dotted #000; }
  .c-search__icon:hover {
    background-color: transparent; }

.c-search__icon--toggled::before {
  content: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='12pt' height='12pt' viewBox='0 0 12 12' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb(0%25,0%25,0%25);fill-opacity:1;' d='M 2.960938 5.601562 C 1.335938 7.222656 0.00390625 8.554688 0.00390625 8.5625 C 0 8.566406 0.140625 8.707031 0.308594 8.878906 L 0.617188 9.1875 L 3.265625 6.546875 C 4.722656 5.097656 5.917969 3.90625 5.921875 3.90625 C 5.925781 3.90625 7.121094 5.097656 8.578125 6.546875 L 11.226562 9.1875 L 11.535156 8.878906 C 11.703125 8.707031 11.84375 8.566406 11.84375 8.5625 C 11.84375 8.554688 5.9375 2.660156 5.921875 2.660156 C 5.917969 2.660156 4.585938 3.980469 2.960938 5.601562 Z M 2.960938 5.601562 '/%3E%3C/g%3E%3C/svg%3E%0A");
  cursor: pointer;
  width: 20px;
  height: 20px;
  display: block;
  background-size: 28px 28px; }

.search-submit-mobile {
  width: 30px;
  width: max-content;
  height: max-content;
  position: absolute;
  display: inline-block;
  background-color: transparent;
  right: -5px;
  top: -15px;
  padding: 1px 6px; }
  @media only screen and (min-width: 980px) {
    .search-submit-mobile {
      display: none; } }
  .search-submit-mobile:hover {
    background: transparent;
    outline: none; }
  .search-submit-mobile::before {
    content: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='15pt' height='15pt' viewBox='0 0 15 15' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb(0%25,0%25,0%25);fill-opacity:1;' d='M 14.910156 14.464844 L 10.34375 9.902344 C 11.292969 8.851562 11.875 7.460938 11.875 5.9375 C 11.875 2.664062 9.210938 0 5.9375 0 C 2.664062 0 0 2.664062 0 5.9375 C 0 9.210938 2.664062 11.875 5.9375 11.875 C 7.460938 11.875 8.851562 11.292969 9.902344 10.34375 L 14.464844 14.90625 C 14.527344 14.96875 14.605469 15 14.6875 15 C 14.765625 15 14.847656 14.96875 14.910156 14.910156 C 15.03125 14.785156 15.03125 14.589844 14.910156 14.464844 Z M 5.9375 11.25 C 3.007812 11.25 0.625 8.867188 0.625 5.9375 C 0.625 3.007812 3.007812 0.625 5.9375 0.625 C 8.867188 0.625 11.25 3.007812 11.25 5.9375 C 11.25 8.867188 8.867188 11.25 5.9375 11.25 Z M 5.9375 11.25 '/%3E%3C/g%3E%3C/svg%3E%0A");
    cursor: pointer;
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: 28px 28px; }
  .search-submit-mobile:focus {
    background-color: transparent;
    outline: #414141 dotted 1px; }

/*------------------------------------*\
  #Searchform general design
\*------------------------------------*/
.c-search__form {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center; }
  .c-search__form label {
    width: 100%; }

.search-field {
  width: 100%;
  padding-bottom: 8px; }
  .search-field:focus {
    outline: none;
    color: #414141; }

.search-submit {
  position: absolute;
  right: 0;
  top: -33px; }

/* Container
--------------------------------------------- */
/*------------------------------------------*\
  #Container block -> All posts => archives
\*------------------------------------------*/
.c-container {
  width: 100%;
  height: 100%;
  padding-left: 16px;
  padding-right: 16px; }
  @media only screen and (min-width: 980px) {
    .c-container {
      display: inline; } }

.c-container__content {
  width: 100%;
  height: max-content;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 32px; }
  @media only screen and (min-width: 980px) {
    .c-container__content {
      height: 100%;
      padding-right: 60px;
      padding-top: 115px;
      padding-bottom: 64px; } }
  @media only screen and (min-width: 1400px) {
    .c-container__content {
      margin-top: 110px;
      padding-top: 60px; } }
  .c-container__content .c-post__entery-content {
    display: none; }

/* Contact
--------------------------------------------- */
/*------------------------------------*\
    #Contact page block
\*------------------------------------*/
.c-contact {
  width: 100%;
  height: max-content;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row; }
  @media only screen and (min-width: 980px) {
    .c-contact {
      padding-top: 5%;
      height: 100%; } }

.c-contact__form__holder {
  width: 100%;
  height: max-content;
  padding-top: 23px;
  padding-bottom: 64px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 0; }
  @media only screen and (min-width: 980px) {
    .c-contact__form__holder {
      width: 50%;
      height: 100%;
      padding-top: 0;
      padding-bottom: 0;
      justify-content: flex-start; } }

.c-contact__context {
  width: 100%;
  height: max-content;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  padding-left: 16px;
  padding-right: 16px;
  padding-bottom: 0px;
  margin-top: 32px; }
  @media only screen and (min-width: 980px) {
    .c-contact__context {
      width: 50%;
      height: 100%;
      align-content: center;
      margin-top: 0px;
      margin-bottom: 0px;
      padding-bottom: 0px;
      padding-left: 64px;
      padding-top: 0px; } }
  @media only screen and (min-width: 1400px) {
    .c-contact__context {
      padding-top: 5%; } }

/*------------------------------------*\
  #Contact Form
\*------------------------------------*/
.c-contact__form {
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  text-align: left; }

.c-contact__form__text {
  margin-bottom: 32px;
  height: 30px;
  padding-top: 5%; }

.c-contact__form__text-area {
  width: 100%;
  text-align: left;
  height: 80px;
  font-size: 12px; }
  @media only screen and (min-width: 980px) {
    .c-contact__form__text-area {
      margin-top: 32px; } }

.c-contact__form__button {
  margin-top: 16px; }

.c-contact__widget {
  width: 100%;
  height: 280px;
  text-align: left;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding-bottom: 35px; }
  .c-contact__widget p {
    font-size: 14px;
    line-height: 17px;
    transition: 0.5s all;
    color: #767676; }
    .c-contact__widget p:hover {
      color: var(--cavatina_primary-color); }
  @media only screen and (min-width: 1400px) {
    .c-contact__widget {
      height: 400px;
      padding-bottom: 115px; } }

/*------------------------------------*\
  #Contact Form 7 Plugin 
\*------------------------------------*/
.wpcf7 {
  width: 90%; }
  @media only screen and (min-width: 980px) {
    .wpcf7 {
      width: 100%; } }
  .wpcf7 form input[type="text"] {
    height: 30px;
    padding-top: 10px; }
  .wpcf7 form input[type="email"] {
    margin-top: 22px;
    height: 30px;
    padding-top: 10px; }
    @media only screen and (min-width: 980px) {
      .wpcf7 form input[type="email"] {
        margin-top: 38px; } }
  .wpcf7 form input[type="submit"] {
    margin-top: 16px; }
  .wpcf7 form textarea {
    width: 100%;
    text-align: left;
    height: 84px;
    font-size: 12px;
    margin-top: 22px; }
    @media only screen and (min-width: 980px) {
      .wpcf7 form textarea {
        margin-top: 46px; } }

.wpcf7-not-valid-tip {
  margin-top: 8px;
  font-style: normal;
  font-weight: normal;
  font-size: 12px;
  line-height: 166.3%;
  font-family: "montserratregular";
  letter-spacing: 0.1em;
  color: var(--cavatina_accent-color); }
  .wpcf7-not-valid-tip::first-letter {
    text-transform: uppercase; }

.wpcf7-response-output {
  outline: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--cavatina_accent-color);
  font-size: 12px;
  line-height: 166.3%; }

/* Aside
--------------------------------------------- */
/*------------------------------------*\
  #Aside
\*------------------------------------*/
.c-aside {
  width: 100%;
  bottom: 0;
  z-index: 9;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 39px;
  animation-name: blurReverse;
  animation-duration: 1s;
  animation-fill-mode: forwards; }
  @media only screen and (min-width: 980px) {
    .c-aside {
      display: inline-block;
      width: 180px;
      height: 100%;
      vertical-align: top;
      position: relative;
      border-top: none;
      padding-top: 35px; } }

.c-aside--blur {
  animation-name: blur;
  animation-duration: 1s;
  animation-fill-mode: forwards; }

.c-aside--mobile-hide {
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-aside--mobile-hide {
      display: inline-block; } }

.c-aside--mobile-hide {
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-aside--mobile-hide {
      display: inline-block; } }

.c-aside--home {
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-aside--home {
      width: 22%;
      height: 90%;
      display: inline-block; } }
  @media only screen and (min-width: 980px) {
    .c-aside--home .c-aside__content {
      justify-content: flex-end;
      height: 100%;
      flex-direction: column;
      padding-bottom: 0;
      padding-left: 16px; } }
  .c-aside--home .c-nav {
    opacity: 1;
    visibility: visible; }

.c-aside__wrapper {
  width: 100%;
  text-align: center;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media only screen and (min-width: 980px) {
    .c-aside__wrapper {
      border-top: 0px solid #e1e1e1;
      justify-content: center;
      padding: 25px 16px;
      min-height: 50px; } }

@media only screen and (min-width: 980px) {
  .c-aside__wrapper--full-width {
    padding: 26px 0 0 0; } }

@media only screen and (min-width: 980px) {
  .c-aside--blog {
    display: none; } }

/*------------------------------------*\
  #Aside content
\*------------------------------------*/
.c-aside__content {
  width: 100%;
  justify-content: center;
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center; }
  @media only screen and (min-width: 980px) {
    .c-aside__content {
      vertical-align: top;
      height: 100%;
      align-items: flex-start;
      justify-content: center; } }
  @media only screen and (min-width: 1400px) {
    .c-aside__content {
      padding-bottom: 20%; } }

.c-aside__context {
  width: max-content;
  display: inline-block;
  padding-left: 16px; }
  @media only screen and (min-width: 980px) {
    .c-aside__context {
      text-align: left;
      padding-left: 0;
      width: 100%; } }

.c-aside__title {
  font-size: 14px;
  line-height: 17px;
  margin: 0;
  display: inline-block;
  text-transform: capitalize;
  font-weight: normal;
  color: var(--cavatina_primary-color); }
  @media only screen and (min-width: 980px) {
    .c-aside__title {
      font-size: 19px;
      display: block;
      padding-bottom: 8px;
      padding-top: 4px;
      margin-left: 39px; } }

.c-aside__counter {
  font-size: 14px;
  color: var(--cavatina_secondary-color);
  line-height: 17px;
  font-weight: normal; }
  @media only screen and (min-width: 980px) {
    .c-aside__counter {
      font-size: 14px; } }
  .c-aside__counter::before {
    content: "| \00a0"; }
    @media only screen and (min-width: 980px) {
      .c-aside__counter::before {
        content: ""; } }

.page-numbers.current {
  font-size: 14px; }

.c-aside__nav-title {
  font-style: normal;
  font-weight: normal;
  color: var(--cavatina_secondary-color) !important; }
  @media only screen and (min-width: 980px) {
    .c-aside__nav-title {
      margin: 0;
      text-align: left;
      margin-left: 8px;
      margin-bottom: 16px;
      padding-top: 16px; } }

.c-aside__nav {
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-aside__nav {
      display: block;
      padding-bottom: 10%; } }
  @media only screen and (min-width: 1400px) {
    .c-aside__nav {
      padding-bottom: 30%; } }
  @media only screen and (min-width: 980px) {
    .c-aside__nav .c-nav {
      display: inline-block;
      overflow: unset; } }
  @media only screen and (min-width: 980px) {
    .c-aside__nav .c-nav ul {
      list-style-type: none;
      text-align: left; } }

.c-aside__carousel {
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-aside__carousel {
      display: block;
      width: 100%;
      padding-left: 8px;
      text-align: left; } }

/*------------------------------------*\
  #Aside Category
\*------------------------------------*/
.c-aside__title--category {
  display: none;
  font-size: 14px;
  line-height: 17px;
  transition: 0.2s all;
  color: var(--cavatina_secondary-color); }
  @media only screen and (min-width: 980px) {
    .c-aside__title--category {
      display: block;
      margin-top: 69px; } }
  @media only screen and (min-width: 1400px) {
    .c-aside__title--category {
      margin-top: 95px; } }

.c-aside__category {
  display: none;
  margin-left: 39px;
  margin-top: 8px; }
  @media only screen and (min-width: 980px) {
    .c-aside__category {
      display: block; } }

.c-aside__category__link {
  width: 100%;
  display: block;
  margin-bottom: 10px;
  color: var(--cavatina_primary-color) !important;
  line-height: 17px; }
  .c-aside__category__link:hover {
    color: #767676; }
    .c-aside__category__link:hover h4 {
      color: #767676; }
  .c-aside__category__link h4 {
    transition: 0.2s;
    margin: 0px; }

/* Carousel
--------------------------------------------- */
/*------------------------------------*\
  #Carousel
\*------------------------------------*/
.c-carousel {
  width: 100%;
  height: 90%;
  text-align: left;
  margin-top: 0px;
  display: flex;
  flex-direction: column; }
  @media only screen and (min-width: 980px) {
    .c-carousel {
      width: 90%;
      height: 80%;
      margin-top: 7%;
      margin-left: 5%; } }

.c-carousel--aside {
  margin-left: 0;
  height: 22vh;
  width: 100%; }
  @media only screen and (min-width: 980px) {
    .c-carousel--aside {
      margin-bottom: 16px;
      padding-top: 25px; } }
  @media only screen and (min-width: 1400px) {
    .c-carousel--aside {
      height: 20vh; } }

.c-carousel__context {
  height: 100%;
  background: transparent;
  opacity: 0; }
  .c-carousel__context .flickity-viewport {
    height: 100%; }
  .c-carousel__context .flickity-slider {
    margin-left: -16px; }
    @media only screen and (min-width: 980px) {
      .c-carousel__context .flickity-slider {
        margin-left: 0px; } }

.c-carousel__title {
  font-style: normal;
  font-weight: normal;
  color: var(--cavatina_secondary-color);
  margin: 0 0 24px 0; }
  @media only screen and (min-width: 980px) {
    .c-carousel__title {
      margin: 0; } }
  .c-carousel__title::after {
    content: url("data:image/svg+xml,%3Csvg width='17' height='4' viewBox='0 0 17 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.1768 2.17678C16.2744 2.07915 16.2744 1.92086 16.1768 1.82322L14.5858 0.232234C14.4882 0.134603 14.3299 0.134603 14.2322 0.232234C14.1346 0.329865 14.1346 0.488157 14.2322 0.585788L15.6464 2L14.2322 3.41421C14.1346 3.51185 14.1346 3.67014 14.2322 3.76777C14.3299 3.8654 14.4882 3.8654 14.5858 3.76777L16.1768 2.17678ZM-2.18557e-08 2.25L16 2.25L16 1.75L2.18557e-08 1.75L-2.18557e-08 2.25Z' fill='%238A8A8A'/%3E%3C/svg%3E%0A");
    vertical-align: text-bottom;
    display: inline-block;
    background-size: 28px 28px;
    margin-left: 12px; }

.c-carousel__title--flex {
  display: flex;
  align-items: center; }

.c-carousel__slider {
  height: 40vh; }
  @media only screen and (min-width: 980px) {
    .c-carousel__slider {
      height: 90%; } }

.c-carousel__title--home {
  width: max-content;
  text-align: left;
  margin-left: 5%; }
  @media only screen and (min-width: 980px) {
    .c-carousel__title--home {
      display: none; } }

.c-carousel__cell {
  width: 80%;
  height: 100%;
  margin-right: 10px;
  counter-increment: gallery-cell; }
  @media only screen and (min-width: 980px) {
    .c-carousel__cell {
      width: 100%; } }

.c-carousel__image {
  width: 100%;
  height: 100%;
  border-radius: 5px;
  object-fit: cover; }

.c-carousel__post-title {
  counter-reset: section;
  width: max-content;
  transition: 0.2s all;
  font-style: normal;
  font-weight: normal;
  font-size: 14px;
  line-height: 200%;
  color: var(--cavatina_primary-color); }
  @media only screen and (min-width: 980px) {
    .c-carousel__post-title {
      margin-top: 11px;
      margin-bottom: 32px;
      width: 100%;
      padding-left: 1px; } }
  .c-carousel__post-title:hover {
    color: #767676; }

.c-carousel__post-title__text {
  width: max-content;
  color: var(--cavatina_primary-color);
  display: inline;
  transition: 0.2s all;
  font-size: 14px; }
  .c-carousel__post-title__text:hover {
    color: #767676; }

.c-carousel__more {
  font-size: 14px;
  color: var(--cavatina_primary-color) !important; }
  .c-carousel__more:hover {
    color: #767676 !important; }
  @media only screen and (min-width: 980px) {
    .c-carousel__more {
      margin: 0; } }

.c-carousel__more--home {
  margin-top: 78px;
  margin-left: 5%;
  margin-bottom: 66px;
  font-style: normal;
  font-weight: normal;
  font-size: 14px;
  line-height: 17px;
  /* identical to box height */
  color: var(--cavatina_primary-color); }
  @media only screen and (min-width: 980px) {
    .c-carousel__more--home {
      display: none; } }

.c-carousel__post-titles {
  width: 100%;
  height: max-content;
  opacity: 0; }
  .c-carousel__post-titles .flickity-viewport {
    width: 100%;
    height: 100%;
    max-height: 100px; }
  .c-carousel__post-titles .flickity-slider {
    width: 100%;
    height: 100%; }

.c-carousel__post-titles--mobile .flickity-slider {
  margin-left: 5%; }

.c-carousel__post-titles--mobile .c-carousel__post-title {
  width: 95%;
  height: 30px;
  overflow: hidden;
  margin-top: 5%;
  padding-right: 32px; }
  @media only screen and (min-width: 980px) {
    .c-carousel__post-titles--mobile .c-carousel__post-title {
      display: none; } }

@media only screen and (min-width: 980px) {
  .c-carousel__post-titles--mobile .c-carousel__post-title {
    display: none; } }

/*------------------------------------*\
  #single slider
\*------------------------------------*/
.c-carousel__single__slider {
  width: 100%;
  left: 0;
  height: max-content;
  transition: 1s all;
  background-color: #fff;
  right: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin-top: 24px;
  z-index: 5; }
  @media only screen and (min-width: 980px) {
    .c-carousel__single__slider {
      width: 100%;
      height: 100%;
      left: 50%;
      position: absolute;
      margin-top: 0; } }
  .c-carousel__single__slider:focus {
    outline: none !important; }
  .c-carousel__single__slider .flickity-viewport {
    width: 100%;
    height: 140px;
    margin-right: -0.5%; }
    @media only screen and (min-width: 980px) {
      .c-carousel__single__slider .flickity-viewport {
        width: 100%;
        height: 95%; } }
  @media only screen and (min-width: 980px) {
    .c-carousel__single__slider .flickity-slider {
      display: flex;
      justify-content: center;
      align-items: center; } }
  .c-carousel__single__slider .flickity-page-dots {
    padding-left: 16px;
    padding-right: 16px;
    bottom: -15px; }
    .c-carousel__single__slider .flickity-page-dots .dot {
      width: 30%; }

.c-carousel__single__cell {
  min-width: 90%;
  max-width: 600px;
  height: 100%;
  transition: 1s all;
  padding-left: 16px;
  padding-right: 16px;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media only screen and (min-width: 980px) {
    .c-carousel__single__cell {
      transition: 1s all;
      padding-left: 24px;
      padding-right: 24px;
      min-width: 30%; } }
  @media only screen and (min-width: 1140px) {
    .c-carousel__single__cell {
      max-width: 550px;
      width: max-content; } }
  @media only screen and (min-width: 1400px) {
    .c-carousel__single__cell {
      max-width: 600px; } }

.c-carousel__single__cell--page {
  width: 100%; }
  @media only screen and (min-width: 1140px) {
    .c-carousel__single__cell--page {
      width: 50%; } }

.flickity-page-dots {
  bottom: -23%; }
  @media only screen and (min-width: 980px) {
    .flickity-page-dots {
      bottom: -24px; } }

.c-carousel__single__image {
  border-radius: 10px; }

.c-carousel__single__cell__image {
  max-width: 100%;
  border-radius: 10px;
  max-height: 100%;
  width: auto; }

.c-carousel__single__cell_image--page {
  cursor: auto;
  width: 100%;
  object-position: top;
  object-fit: cover;
  height: 100%; }
  @media only screen and (min-width: 980px) {
    .c-carousel__single__cell_image--page {
      height: unset;
      object-position: center; } }
  @media only screen and (min-width: 1400px) {
    .c-carousel__single__cell_image--page {
      object-position: top; } }

/*------------------------------------*\
  #modifier
\*------------------------------------*/
.c-carousel__single__slider--full-width {
  left: 0; }
  .c-carousel__single__slider--full-width .c-single__slider__cell {
    width: 90%;
    padding-left: 10%;
    padding-right: 10%; }
    @media only screen and (min-width: 1400px) {
      .c-carousel__single__slider--full-width .c-single__slider__cell {
        padding-left: 15%;
        padding-right: 15%; } }

.c-carousel__single__slider--page .dot {
  display: none; }

/* widgets
--------------------------------------------- */
.c-widget__title {
  font-family: "montserratregular";
  font-style: normal;
  font-weight: normal;
  font-size: 14px;
  line-height: 17px;
  margin: 0;
  color: var(--cavatina_primary-color); }

.c-widget__content {
  width: 100%; }

.c-contact__widget a {
  font-size: 14px;
  line-height: 17px;
  color: var(--cavatina_secondary-color); }
  .c-contact__widget a:hover {
    color: var(--cavatina_primary-color); }

.c-widget__text {
  font-size: 14px;
  line-height: 17px;
  /* identical to box height */
  transition: 0.5s all;
  color: #767676; }
  .c-widget__text:hover {
    color: var(--cavatina_primary-color); }

/* Comments
--------------------------------------------- */
.comment-reply-title {
  margin-bottom: 0px;
  font-size: 14px;
  line-height: 17px;
  font-style: normal;
  font-family: "montserratsemibold";
  color: var(--cavatina_primary-color); }

.comment {
  margin-left: 0px;
  margin-top: 24px; }
  @media only screen and (min-width: 980px) {
    .comment {
      margin-top: 39px; } }
  .comment ol {
    list-style-type: none; }

.comment.depth-1 {
  border-bottom: 1px solid #e1e1e1; }
  .comment.depth-1:last-child {
    border-bottom: 0px; }

.comment.depth-2 {
  margin-left: 0px; }
  @media only screen and (min-width: 980px) {
    .comment.depth-2 {
      margin-left: 70px; } }

.c-comment-form {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .c-comment-form .comment-notes {
    width: 100%;
    margin-bottom: 24px;
    font-weight: normal;
    font-size: 14px;
    line-height: 17px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    color: #767676; }
    @media only screen and (min-width: 980px) {
      .c-comment-form .comment-notes {
        flex-wrap: nowrap;
        margin-bottom: 26px; } }
  .c-comment-form .comment-form-author {
    width: 100%;
    display: inline-block; }
    @media only screen and (min-width: 980px) {
      .c-comment-form .comment-form-author {
        width: 45%; } }
  .c-comment-form .comment-form-email {
    width: 100%;
    display: inline-block; }
    @media only screen and (min-width: 980px) {
      .c-comment-form .comment-form-email {
        width: 45%; } }
  .c-comment-form .comment-form-url {
    width: 100%; }
    @media only screen and (min-width: 980px) {
      .c-comment-form .comment-form-url {
        margin-top: 48px; } }
  .c-comment-form .comment-form-comment {
    width: 100%;
    margin-bottom: 0; }
    @media only screen and (min-width: 980px) {
      .c-comment-form .comment-form-comment {
        margin-top: 40px;
        margin-bottom: 16px; } }

.email-notes {
  text-align: left;
  width: 100%; }
  @media only screen and (min-width: 980px) {
    .email-notes {
      width: max-content; } }

.comments-area {
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (min-width: 980px) {
    .comments-area {
      text-align: left; } }

.wp-comment-cookies-consent {
  display: block;
  padding-top: 15px; }

.comments-title {
  border-top: 1px solid #e1e1e1;
  margin: 0px;
  padding-top: 39px;
  padding-bottom: 0px;
  width: 100%;
  font-family: "montserratsemibold";
  font-size: 14px;
  line-height: 17px;
  order: 2; }
  .comments-title span {
    font-family: "montserratsemibold"; }

.comment-list {
  list-style-type: none;
  order: 3;
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  @media only screen and (min-width: 980px) {
    .comment-list {
      width: 100%; } }

.children {
  margin-left: 0; }
  @media only screen and (min-width: 980px) {
    .children {
      margin-left: 1.5em; } }

.comment-awaiting-moderation {
  display: none;
  font-size: 16px;
  margin-left: 73px;
  margin-top: 8px; }
  @media only screen and (min-width: 980px) {
    .comment-awaiting-moderation {
      margin-top: 10px;
      margin-left: 16px; } }

.comment-meta {
  position: relative;
  min-width: 290px;
  height: max-content; }
  @media only screen and (min-width: 980px) {
    .comment-meta {
      display: flex;
      align-items: flex-start;
      width: max-content;
      min-width: max-content; } }
  .comment-meta .comment-author {
    position: relative; }
    .comment-meta .comment-author img {
      width: 50px;
      height: 50px; }
    .comment-meta .comment-author .fn {
      margin-left: 24px;
      width: max-content;
      font-style: normal;
      font-weight: normal;
      font-size: 12px;
      line-height: 15px;
      display: flex;
      align-items: flex-start;
      padding-top: 8px;
      color: var(--cavatina_primary-color); }
      @media only screen and (min-width: 980px) {
        .comment-meta .comment-author .fn {
          position: relative;
          margin-left: 24px;
          margin-top: 0px;
          padding-top: 5px; } }
      .comment-meta .comment-author .fn a {
        font-style: normal;
        font-weight: normal;
        font-size: 12px;
        line-height: 15px;
        display: flex;
        align-items: center;
        color: var(--cavatina_primary-color); }
        .comment-meta .comment-author .fn a:hover {
          color: #767676; }
  .comment-meta .comment-metadata {
    position: absolute;
    top: 30px;
    left: 75px;
    font-size: 12px; }
    @media only screen and (min-width: 980px) {
      .comment-meta .comment-metadata {
        margin-left: 16px;
        margin-top: 5px;
        position: static; } }
    .comment-meta .comment-metadata a {
      font-style: normal;
      font-weight: normal;
      font-size: 12px;
      line-height: 15px;
      color: var(--cavatina_secondary-color); }
      .comment-meta .comment-metadata a:hover {
        color: var(--cavatina_primary-color); }

.comment-content {
  margin-left: 75px;
  margin-right: 16px;
  transform: translate(0px, 0px);
  font-size: 14px;
  line-height: 28px;
  max-width: 70vw;
  overflow: auto;
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  @media only screen and (min-width: 980px) {
    .comment-content {
      padding-left: 15px;
      margin-left: 60px;
      transform: translate(0px, -16px);
      width: 100%; } }
  .comment-content p {
    margin-top: 8px; }
  .comment-content ol {
    list-style-type: decimal; }

.comment-body {
  margin-bottom: 40px; }
  @media only screen and (min-width: 980px) {
    .comment-body {
      margin-bottom: 35px; } }

.comment-author {
  display: flex;
  width: max-content; }
  @media only screen and (min-width: 980px) {
    .comment-author {
      width: max-content; } }
  .comment-author img {
    width: 100%;
    border-radius: 40px; }

.says {
  display: none; }

.reply {
  width: max-content;
  transform: translate(70px, 0px); }
  @media only screen and (min-width: 980px) {
    .reply {
      padding-left: 75px;
      transform: translate(0px, -16px); } }
  .reply:before {
    content: url("data:image/svg+xml,%3Csvg width='16' height='14' viewBox='0 0 16 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 4C13.2 4 16 7.8 16 14C14.5 11.6 13.3 10 8 10V14L0 7L8 0V4Z' fill='%23767676'/%3E%3C/svg%3E%0A");
    margin-right: 12px;
    font-size: 14px;
    width: 20px;
    height: 20px; }

#cancel-comment-reply-link {
  margin-left: 16px; }
  #cancel-comment-reply-link:hover {
    color: var(--cavatina_primary-color); }

.comment-reply-link {
  font-size: 12px;
  color: var(--cavatina_secondary-color); }
  .comment-reply-link:hover {
    color: var(--cavatina_primary-color); }

.comment-respond {
  padding-bottom: 39px; }

.comment-respond label {
  display: none; }

.comment-form-cookies-consent {
  width: 100%;
  display: block; }
  .comment-form-cookies-consent label {
    vertical-align: top;
    display: inline-block;
    width: 88%;
    margin-left: 8px;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    line-height: 15px;
    align-items: center;
    display: inline-block;
    color: #767676;
    padding-top: 8px; }

.logged-in-as a {
  font-size: 14px;
  line-height: 17px;
  color: var(--cavatina_secondary-color) !important; }
  .logged-in-as a:hover {
    color: var(--cavatina_primary-color) !important; }

/* Contents
--------------------------------------------- */
/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*------------------------------------*\
  #Content
\*------------------------------------*/
.c-content {
  height: 90%;
  overflow-x: hidden;
  overflow-y: auto; }
  @media only screen and (min-width: 980px) {
    .c-content {
      width: 100%;
      padding-bottom: 0; } }

.c-content--home {
  height: max-content;
  margin-top: 39px;
  overflow: hidden; }
  @media only screen and (min-width: 980px) {
    .c-content--home {
      height: 100%;
      margin-top: 0px; } }

.c-content--max-height {
  overflow: scroll;
  min-height: max-content; }
  @media only screen and (min-width: 980px) {
    .c-content--max-height {
      height: max-content;
      overflow: hidden;
      min-height: 90%; } }

.c-content--search {
  height: 90%;
  overflow-y: scroll; }
  .c-content--search .c-container__content {
    height: max-content; }
    .c-content--search .c-container__content .search-submit-mobile {
      display: none; }

/*--------------------------------------------------------------
# Pagination
--------------------------------------------------------------*/
.nav-links {
  display: none !important; }

.nav-previous {
  font-size: 1.8em;
  border-bottom: 1px solid grey;
  transition: 1s all; }

.nav-next {
  font-size: 1.8em;
  border-bottom: 1px solid grey;
  transition: 1s all; }

/*------------------------------------*\
  #Pagination
\*------------------------------------*/
.c-pagination {
  width: 100%;
  display: flex;
  align-content: center;
  justify-content: center; }

.c-pagination__load-more {
  width: 100%;
  border-radius: 2px;
  display: block;
  text-align: center;
  font-size: 0.875rem;
  font-weight: 800;
  letter-spacing: 1px;
  cursor: pointer;
  text-transform: uppercase;
  padding: 10px 0;
  transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; }

@media only screen and (min-width: 980px) {
  .c-pagination--load-more {
    padding-right: 0px; } }

/*------------------------------------*\
  #Page Numbers (Word Press pagination)
\*------------------------------------*/
.page-numbers {
  color: var(--cavatina_primary-color) !important;
  border-radius: 3px;
  cursor: pointer;
  margin: 2px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center; }
  .page-numbers:hover {
    color: #767676 !important; }

.page-numbers.current {
  background-color: var(--cavatina_primary-color);
  color: #ffffff !important; }

.dashicons {
  color: var(--cavatina_primary-color);
  font-family: dashicons !important; }
  .dashicons:hover {
    background-color: transparent;
    color: #767676; }

.next.page-numbers:hover,
.prev.page-numbers:hover {
  background-color: unset; }

/*--------------------------------------------------------------
# Posts
--------------------------------------------------------------*/
/*------------------------------------*\
  #Post
\*------------------------------------*/
.c-post {
  width: 100%;
  height: max-content;
  min-height: 325px;
  text-align: left;
  padding-bottom: 68px; }
  @media only screen and (min-width: 980px) {
    .c-post {
      width: 35%;
      margin-bottom: 56px;
      padding-bottom: 0px; } }
  @media only screen and (min-width: 1400px) {
    .c-post {
      margin-bottom: 7%; } }
  .c-post .page-links {
    margin-top: 16px; }

.c-post--project .c-post__meta__link {
  font-size: 12px;
  line-height: 15px; }
  @media only screen and (min-width: 980px) {
    .c-post--project .c-post__meta__link {
      font-size: 14px;
      line-height: 17px; } }

@media only screen and (min-width: 980px) {
  .c-post--archive .c-post__header {
    margin-bottom: 8px; } }

.c-post__header {
  min-height: max-content;
  margin-bottom: 26px;
  width: 100%; }
  @media only screen and (min-width: 980px) {
    .c-post__header {
      min-height: 60px;
      max-height: 60px; } }
  @media only screen and (min-width: 1400px) {
    .c-post__header {
      min-height: 70px;
      max-height: 70px;
      margin-bottom: 0px; } }

.c-post__header__col {
  vertical-align: top;
  display: inline-block;
  height: 100%; }

.c-post__header__col--left {
  max-width: 15%; }

.c-post__header__col--right {
  max-width: 84%; }

.c-post__header--space-height {
  margin-bottom: 24px; }
  @media only screen and (min-width: 980px) {
    .c-post__header--space-height {
      margin-bottom: 8px; } }
  @media only screen and (min-width: 1400px) {
    .c-post__header--space-height {
      margin-bottom: 0px; } }

.c-post__entry-title {
  display: inline-block;
  width: 100%;
  margin-bottom: 6px;
  vertical-align: top;
  margin-top: 0;
  counter-reset: section; }
  .c-post__entry-title::first-letter {
    text-transform: uppercase; }
  .c-post__entry-title:hover {
    color: #767676; }

.c-post__entry-title__anchor {
  font-weight: normal;
  line-height: 17px;
  color: var(--cavatina_primary-color) !important;
  vertical-align: top;
  font-family: "montserratsemibold";
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  .c-post__entry-title__anchor:hover {
    color: #767676 !important; }

.c-post__entry-title--projects {
  width: 100%; }

.c-post__excerpt {
  font-size: 14px;
  line-height: 200%;
  -ms-word-wrap: break-word;
  word-wrap: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* number of lines to show */
  -webkit-box-orient: vertical; }

.c-post__category {
  font-size: 14px;
  line-height: 17px;
  display: inline-block;
  color: #767676; }
  .c-post__category a:hover {
    color: var(--cavatina_primary-color); }

.c-post__category--blog {
  padding-left: 0; }

.c-post__meta {
  color: #767676;
  line-height: 15px; }
  @media only screen and (min-width: 980px) {
    .c-post__meta {
      line-height: 17px; } }

.c-post__meta__link {
  -ms-word-wrap: break-word;
  word-wrap: break-word;
  font-size: 14px; }
  .c-post__meta__link:hover {
    color: var(--cavatina_primary-color) !important; }

.c-post__category__anchor {
  font-size: 14px;
  line-height: 15px;
  color: var(--cavatina_secondary-color) !important; }
  .c-post__category__anchor:hover {
    color: var(--cavatina_primary-color) !important; }
  @media only screen and (min-width: 980px) {
    .c-post__category__anchor {
      font-size: 14px;
      line-height: 17 px; } }

.c-post__date {
  font-size: 14px;
  line-height: 17px;
  margin-right: 16px;
  color: var(--cavatina_secondary-color); }

.c-post__thumbnail {
  width: 100%;
  height: 30vh;
  min-height: 180px;
  max-height: 360px;
  overflow: hidden;
  border-radius: 7px; }
  @media only screen and (min-width: 980px) {
    .c-post__thumbnail {
      max-height: 180px; } }
  @media only screen and (min-width: 980px) {
    .c-post__thumbnail {
      max-height: 360px; } }
  .c-post__thumbnail a:focus img {
    border: 2px dotted #414141; }

.c-post__thumbnail__image {
  width: 100%;
  height: 100%;
  border-radius: 7px;
  object-fit: cover;
  object-position: center;
  background-color: #e8e8e8; }

.c-post__entery-content {
  margin-top: 16px;
  color: var(--cavatina_primary-color); }
  .c-post__entery-content p {
    line-height: 200%;
    font-size: 14px; }
  .c-post__entery-content .more-link {
    display: none; }

.posts-navigation {
  width: 100%; }

.nav-links {
  width: 100%;
  display: flex;
  justify-content: space-between; }

/*--------------------------------------------------------------
# Single
--------------------------------------------------------------*/
/*------------------------------------*\
  #single
\*------------------------------------*/
.c-single {
  width: 100%;
  height: max-content;
  position: relative;
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  margin-top: 16px; }
  @media only screen and (min-width: 980px) {
    .c-single {
      flex-direction: column;
      height: 100%;
      margin-top: 0;
      padding-bottom: 0; } }

/*------------------------------------*\
  #single context
\*------------------------------------*/
.c-single__context {
  width: 100%;
  height: 100%;
  margin-top: 37px;
  text-align: left;
  position: relative;
  min-height: 300px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-color: #555 #e1e1e1; }
  @media only screen and (min-width: 980px) {
    .c-single__context {
      width: 50%;
      margin-top: 0;
      padding-bottom: 15%; } }

.c-single__title {
  width: 100%;
  display: none;
  font-size: "montserratsemibold";
  -ms-word-wrap: break-word;
  word-wrap: break-word;
  color: var(--cavatina_primary-color); }
  @media only screen and (min-width: 980px) {
    .c-single__title {
      display: block; } }
  .c-single__title::first-letter {
    text-transform: uppercase; }

.c-single__title--red {
  color: var(--cavatina_accent-color);
  font-weight: normal;
  font-size: 14px;
  line-height: 17px;
  margin-bottom: 16px; }

.c-single__title--small {
  font-weight: 600;
  font-size: 14px;
  line-height: 17px;
  margin-top: 0;
  margin-bottom: 29px; }

.c-single__title--page {
  display: block;
  margin-left: 16px;
  margin-bottom: 0; }
  @media only screen and (min-width: 980px) {
    .c-single__title--page {
      margin-left: 0; } }

.c-single__meta {
  width: 100%;
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-single__meta {
      display: block; } }
  .c-single__meta li {
    display: inline-block;
    color: var(--cavatina_secondary-color);
    font-size: 14px; }
    .c-single__meta li:nth-child(2)::before {
      display: inline-block;
      content: "";
      -webkit-border-radius: 0.375rem;
      border-radius: 0.375rem;
      height: 5px;
      width: 5px;
      margin-right: 6px;
      vertical-align: middle;
      margin-left: 6px;
      background-color: var(--cavatina_accent-color); }
    .c-single__meta li a {
      color: var(--cavatina_secondary-color); }
      .c-single__meta li a:hover {
        color: var(--cavatina_primary-color); }

.c-single__text {
  font-size: 14px;
  width: 100%;
  text-align: left;
  line-height: 27px;
  margin-left: 14px;
  margin-right: 32px;
  -ms-word-wrap: break-word;
  word-wrap: break-word;
  max-width: 90vw; }
  @media only screen and (min-width: 980px) {
    .c-single__text {
      margin-left: 0;
      margin-right: 0;
      max-width: 100%; } }
  .c-single__text .wp-block-button__link {
    color: #ffffff !important;
    text-decoration: none; }
  .c-single__text a {
    color: #4169e1 !important;
    text-decoration: underline; }
    .c-single__text a:hover {
      color: #767676 !important; }
  .c-single__text ul {
    list-style-type: disc;
    margin-left: 16px; }
  .c-single__text ol {
    padding-left: 16px; }
  .c-single__text .blocks-gallery-grid {
    margin-left: 0px; }
  .c-single__text .comment-metadata {
    margin-top: 5px; }
    .c-single__text .comment-metadata a {
      text-decoration: none;
      color: var(--cavatina_secondary-color) !important; }
      .c-single__text .comment-metadata a:hover {
        color: var(--cavatina_primary-color) !important; }
  .c-single__text .comment-reply-link {
    text-decoration: none;
    color: var(--cavatina_secondary-color) !important; }
  .c-single__text .fn {
    color: var(--cavatina_primary-color) !important; }
    .c-single__text .fn a {
      color: var(--cavatina_primary-color) !important;
      text-decoration: none; }
      .c-single__text .fn a:hover {
        color: var(--cavatina_secondary-color) !important; }

.c-single__context__holder {
  height: max-content;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-end; }
  @media only screen and (min-width: 980px) {
    .c-single__context__holder {
      margin-top: calc(40vh);
      margin-right: 25px;
      min-height: calc(50vh); } }

.c-single__context__holder--full-height .c-single__context {
  width: 100%;
  margin-top: 9px; }

.c-single__context__holder--full-height .c-single__context__holder {
  width: 100%; }
  @media only screen and (min-width: 980px) {
    .c-single__context__holder--full-height .c-single__context__holder {
      width: 600px; } }

@media only screen and (min-width: 980px) {
  .c-single__context__holder--full-height .c-single__context__holder {
    margin-top: 131px; } }

.c-single__text--full-height {
  line-height: 30px;
  text-align: justify; }
  .c-single__text--full-height p {
    margin-bottom: 16px;
    text-align: left; }
  .c-single__text--full-height ul {
    margin-left: 16px;
    list-style-type: disc;
    text-align: left; }
  .c-single__text--full-height h3 {
    line-height: 28px; }

/*------------------------------------*\
    #single carousel
\*------------------------------------*/
.c-single__carousel {
  width: 100%; }
  @media only screen and (min-width: 980px) {
    .c-single__carousel {
      height: 100%; } }

/*------------------------------------*\
  #hide title and meta in tablet
\*------------------------------------*/
.c-single__carousel--mobile .c-single__title {
  display: block;
  font-size: 14px;
  line-height: 17px;
  margin-left: 16px;
  font-family: "montserratsemibold";
  max-width: 90%; }
  @media only screen and (min-width: 980px) {
    .c-single__carousel--mobile .c-single__title {
      display: none; } }

.c-single__carousel--mobile .c-single__meta {
  display: block;
  margin-left: 16px; }
  @media only screen and (min-width: 980px) {
    .c-single__carousel--mobile .c-single__meta {
      display: none; } }
  .c-single__carousel--mobile .c-single__meta li {
    font-weight: normal;
    font-size: 12px;
    line-height: 200%; }
  .c-single__carousel--mobile .c-single__meta a:hover {
    color: var(--cavatina_primary-color) !important; }

.c-single__carousel--mobile .flickity-viewport {
  height: 380px;
  cursor: grab; }
  @media only screen and (min-width: 980px) {
    .c-single__carousel--mobile .flickity-viewport {
      height: 89%; } }
  .c-single__carousel--mobile .flickity-viewport .c-single__slider__cell {
    height: 100%; }
    @media only screen and (min-width: 980px) {
      .c-single__carousel--mobile .flickity-viewport .c-single__slider__cell {
        height: 100%; } }

/*------------------------------------*\
  #Remove block if thumbnail didnt exist
\*------------------------------------*/
.c-single__carousel--remove {
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-single__carousel--remove {
      display: block; } }

/*------------------------------------*\
  #Post blog
\*------------------------------------*/
.c-single__blog {
  width: 100%;
  margin-top: 32px;
  padding: 0 16px;
  height: max-content; }
  @media only screen and (min-width: 980px) {
    .c-single__blog {
      width: 1114px;
      max-width: 100%;
      display: inline-block;
      margin-top: 107px;
      padding: 0 0; } }
  @media only screen and (min-width: 980px) {
    .c-single__blog .comments-area {
      margin-left: 206px;
      width: calc(825px - 212px); } }

.c-single__blog__post {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center; }
  @media only screen and (min-width: 980px) {
    .c-single__blog__post {
      flex-wrap: wrap;
      flex-direction: row;
      justify-content: flex-start; } }

.c-single__blog__header {
  width: 100%;
  order: 2; }
  @media only screen and (min-width: 980px) {
    .c-single__blog__header {
      width: 45%;
      text-align: left;
      margin-left: 54px; } }

.c-single__blog__meta {
  margin-top: 16px;
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  .c-single__blog__meta a {
    color: var(--cavatina_secondary-color) !important; }
    .c-single__blog__meta a:hover {
      color: var(--cavatina_primary-color) !important; }
  @media only screen and (min-width: 980px) {
    .c-single__blog__meta {
      margin-top: 0; } }

.c-single__blog__entry-title {
  font-weight: 600;
  line-height: 30px;
  max-width: 450px;
  color: var(--cavatina_primary-color);
  font-family: "montserratsemibold";
  font-style: normal;
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  .c-single__blog__entry-title::first-letter {
    text-transform: uppercase; }

.c-single__blog__thumbnail {
  width: 100%;
  height: 190px;
  order: 1; }
  @media only screen and (min-width: 980px) {
    .c-single__blog__thumbnail {
      height: 350px;
      width: 530px; } }

.c-single__blog__no-thumbnail {
  margin-left: 153px; }

.c-single__blog__thumbnail__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px; }

.c-single__blog__entery-content {
  order: 4;
  text-align: left;
  font-size: 14px;
  line-height: 30px;
  font-weight: normal;
  margin-top: 30px;
  height: max-content;
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  @media only screen and (min-width: 980px) {
    .c-single__blog__entery-content {
      text-align: justify;
      margin-left: 206px;
      margin-top: 0px; } }
  @media only screen and (min-width: 980px) {
    .c-single__blog__entery-content {
      width: 608px;
      margin-top: 48px; } }
  .c-single__blog__entery-content::first-letter {
    text-transform: uppercase; }
  .c-single__blog__entery-content .blocks-gallery-grid {
    margin-left: 0px; }
  .c-single__blog__entery-content .wp-block-button__link {
    color: #ffffff !important;
    text-decoration: none; }
  .c-single__blog__entery-content a {
    color: #4169e1 !important;
    text-decoration: underline; }
    .c-single__blog__entery-content a:hover {
      color: #767676 !important; }
  .c-single__blog__entery-content ul {
    list-style-type: disc;
    margin-left: 16px; }
  .c-single__blog__entery-content h2 {
    font-family: "montserratsemibold"; }

.c-single__blog__tags {
  order: 5;
  width: 100%;
  text-align: left;
  margin-top: 39px; }
  @media only screen and (min-width: 980px) {
    .c-single__blog__tags {
      display: inline-block;
      padding-left: 206px;
      width: calc(100% - 280px); } }
  .c-single__blog__tags li {
    display: inline-block;
    margin-right: 16px; }
  .c-single__blog__tags a {
    color: var(--cavatina_secondary-color) !important;
    font-size: 14px; }
    .c-single__blog__tags a:hover {
      color: var(--cavatina_primary-color) !important; }

.c-post__category--blog {
  padding-left: 0; }

/*------------------------------------*\
  #Author avatar
\*------------------------------------*/
.c-single__author {
  width: 100%;
  display: flex;
  align-items: center;
  margin-top: 39px; }

.c-single__author__avatar {
  display: inline-block;
  vertical-align: top;
  width: 50px;
  height: 50px; }
  .c-single__author__avatar img {
    border-radius: 40px; }

.c-single__author__info {
  display: inline-block;
  margin-left: 24px;
  font-family: "montserratregular";
  font-style: normal;
  font-weight: normal;
  font-size: 12px;
  line-height: 15px;
  color: var(--cavatina_secondary-color); }
  .c-single__author__info h3 {
    margin: 0; }
  .c-single__author__info span a {
    font-size: 12px;
    line-height: 15px;
    color: var(--cavatina_secondary-color); }
    .c-single__author__info span a:hover {
      color: var(--cavatina_primary-color) !important; }

/* Footer
--------------------------------------------- */
/*------------------------------------*\
  #Footer
\*------------------------------------*/
.c-footer {
  width: 100%;
  min-height: 9%;
  bottom: 0;
  z-index: 8;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  background-color: transparent;
  padding-left: 16px;
  padding-right: 10px;
  margin-top: 28px; }
  @media only screen and (min-width: 980px) {
    .c-footer {
      padding-left: 0;
      padding-right: 36px;
      padding-top: 1.5%;
      margin-top: 0px; } }

@media only screen and (min-width: 980px) {
  .c-footer--home {
    position: absolute;
    bottom: 10px;
    padding-left: 16%; } }

.c-footer--404 {
  display: none; }

@media only screen and (min-width: 980px) {
  .c-footer--normal {
    background-color: #ffffff;
    padding-left: 270px;
    position: absolute;
    left: 0px;
    bottom: 0px;
    padding-bottom: 16px; } }

.c-footer__context {
  width: 100%;
  height: 100%;
  margin-top: 36px;
  padding-bottom: 16px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end; }
  @media only screen and (min-width: 980px) {
    .c-footer__context {
      width: 100%;
      padding-bottom: 0px;
      margin-top: 10px;
      flex-direction: row-reverse;
      align-items: center;
      justify-content: space-between; } }

.c-footer__text {
  font-size: 12px;
  font-style: normal;
  font-weight: normal;
  line-height: 20px;
  color: var(--cavatina_secondary-color); }
  @media only screen and (min-width: 980px) {
    .c-footer__text {
      margin-top: 0;
      margin-bottom: 0px;
      line-height: 17px; } }
  .c-footer__text::first-letter {
    text-transform: uppercase; }

.c-footer__copy {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  order: 2; }

.c-footer__nav {
  list-style-type: none;
  display: inline-block;
  padding-top: 27px;
  font-size: 12px; }
  @media only screen and (min-width: 980px) {
    .c-footer__nav {
      padding-top: 0px; } }
  .c-footer__nav .menu-item {
    display: inline-block;
    margin: 0px;
    color: var(--cavatina_secondary-color);
    font-size: 12px; }
    .c-footer__nav .menu-item a {
      font-size: 12px; }
    .c-footer__nav .menu-item:nth-child(2) a::before {
      content: " | \00a0";
      display: inline-block;
      color: var(--cavatina_secondary-color); }
    .c-footer__nav .menu-item:nth-child(n + 3) a::before {
      content: " & \00a0";
      display: inline-block;
      color: var(--cavatina_secondary-color); }
  .c-footer__nav .sub-menu {
    display: none; }

.c-footer__text__link {
  line-height: 17px;
  color: var(--cavatina_primary-color) !important;
  margin: 0 2px;
  padding-bottom: 1px; }
  .c-footer__text__link:hover {
    color: #767676 !important; }

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
/* Headings
--------------------------------------------- */
h1,
.h1 {
  font-size: 24px;
  line-height: 30px;
  font-weight: normal;
  font-family: "montserratsemibold"; }

h2,
.h2 {
  font-size: 19px;
  font-weight: normal;
  font-family: "montserratregular"; }

h3,
.h3 {
  font-family: "montserratsemibold";
  font-size: 14px;
  font-weight: normal;
  line-height: 20px; }

.h3--regular {
  font-family: "montserratregular";
  font-weight: 400;
  line-height: 30px;
  margin-bottom: 15px; }

h4,
.h4 {
  font-family: "montserratregular";
  font-size: 14px;
  font-weight: 400; }

.h4-lh--sm {
  line-height: 17px; }

h5,
.h5 {
  font-size: 12px;
  font-family: "montserratregular";
  font-weight: 400; }

h6,
.h6 {
  font-size: 10px;
  font-family: "montserratregular";
  font-weight: 400; }

/* Typography
--------------------------------------------- */
* {
  font-family: "montserratregular"; }

/* copy
--------------------------------------------- */
blockquote {
  border-left: 1px solid #e1e1e1;
  margin: 0;
  padding-left: 17px; }

pre {
  max-width: 100%;
  overflow: auto;
  background-color: #e1e1e1; }

/* Elements
--------------------------------------------- */
/* Elements
--------------------------------------------- */
*,
html,
body {
  font-family: "montserratregular"; }

body {
  background: #fff;
  counter-reset: chapter;
  /* Create a chapter counter scope */ }
  @media only screen and (max-width: 719px) {
    body {
      padding-bottom: 64px; } }
  body.has-no-scrollbar {
    height: 100%;
    overflow: hidden; }

@media only screen and (max-width: 719px) {
  body.home {
    padding-bottom: 0px; } }

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

img {
  height: auto;
  max-width: 100%;
  transition: 0.5s all; }
  img:hover {
    filter: brightness(0.78); }
  img:focus {
    outline: #767676 dotted 1px !important; }

figure {
  margin: 1em 0;
  max-width: 100%; }

button,
.btn,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: none;
  font-weight: var(--heading-typography-variant);
  background-color: var(--cavatina_primary-color);
  color: #ffffff;
  border-radius: 3px;
  background: var(--cavatina_primary-color);
  border-radius: 5px;
  font-size: 14px;
  cursor: pointer;
  transition: 0.2s;
  padding: 12px 25px; }
  button:hover,
  .btn:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  input[type="submit"]:hover {
    background-color: #767676; }
  button:focus,
  .btn:focus,
  input[type="button"]:focus,
  input[type="reset"]:focus,
  input[type="submit"]:focus {
    background-color: #767676; }

.button--small {
  padding: 12px 25px; }

.wp-block-button__link {
  padding: 12px 25px;
  padding-bottom: 10px;
  border: none;
  font-weight: var(--heading-typography-variant);
  background-color: var(--cavatina_primary-color);
  border-radius: 3px;
  background: var(--cavatina_primary-color);
  border-radius: 5px;
  font-size: 14px;
  color: #ffffff;
  cursor: pointer;
  transition: 0.2s; }
  .wp-block-button__link:hover {
    background-color: #767676; }

.btn--404 {
  color: #ffffff !important; }

/*------------------------------------*\
  #WordPress Buttons
\*------------------------------------*/
.wp-block-button.is-style-outline .wp-block-button__link {
  border: 1px solid #767676;
  color: var(--cavatina_primary-color) !important; }
  .wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: #d2d2d2; }

.wp-block-button.alignright {
  text-align: right; }

.wp-block-button.alignleft {
  text-align: left; }

.wp-block-button__link:hover {
  background-color: #d2d2d2; }

/*------------------------------------*\
  #columns
\*------------------------------------*/
.wp-block-column {
  text-align: initial;
  margin: 0px 16px; }

/*------------------------------------*\
  #blockquote
\*------------------------------------*/
.wp-block-quote.has-text-align-right {
  border-left: 0px;
  border-right: 1px solid #e1e1e1;
  padding-right: 16px; }

/*------------------------------------*\
  #Block category: Common
\*------------------------------------*/
.has-large-font-size {
  text-align: initial;
  line-height: 46px !important; }

.wp-block-file .wp-block-file__button {
  color: #f4f4f4 !important;
  text-decoration: none; }

/*------------------------------------*\
  #Block category: Embeds
\*------------------------------------*/
.fb-post.fb_iframe_widget {
  max-width: 100%;
  overflow: auto; }

.wp-block-embed__wrapper {
  margin: 0px 16px; }

figcaption {
  margin: 0 16px; }
  @media only screen and (min-width: 980px) {
    figcaption {
      margin: 0px; } }

/*------------------------------------*\
  #Block category: Widgets
\*------------------------------------*/
.wp-block-search__inside-wrapper {
  border: none;
  outline: none; }

.wp-block-search__input {
  border: 0px !important;
  border-bottom: 1px solid black !important; }

.wp-block-search__button {
  padding: 12px 25px;
  border: none;
  font-weight: var(--heading-typography-variant);
  background-color: var(--cavatina_primary-color);
  border-radius: 3px;
  background: var(--cavatina_primary-color);
  border-radius: 5px;
  font-size: 14px;
  color: #ffffff;
  cursor: pointer;
  transition: 0.2s; }
  .wp-block-search__button:hover {
    background-color: #767676; }

/*------------------------------------*\
  #Block category: Layout Elements
\*------------------------------------*/
.post-page-numbers {
  padding: 10px 12px;
  border-radius: 3px;
  color: #dfdfdf; }
  .post-page-numbers:hover {
    text-decoration: underline; }

.page-links {
  margin-top: 16px; }

/*------------------------------------*\
  #Block category: Formatting
\*------------------------------------*/
.wp-block-verse {
  background-color: #e1e1e1; }

/*------------------------------------*\
  #WordPress Admin bar space 
\*------------------------------------*/
@media only screen and (min-width: 980px) {
  .admin-bar .o-page {
    height: calc(100vh - 32px); } }

.admin-bar .c-aside__wrapper {
  padding-top: 0px; }

@media only screen and (min-width: 980px) {
  .admin-bar {
    margin-top: 0px; } }

a {
  color: var(--cavatina_secondary-color);
  transition: 0.2s;
  text-decoration: none;
  transition: 0.2s all;
  font-style: normal;
  font-weight: normal;
  line-height: 23px;
  font-family: "montserratregular";
  line-height: 17px; }
  a:visited {
    color: var(--cavatina_secondary-color); }
  a:hover, a:focus, a:active {
    color: #767676; }
  a:focus {
    outline: thin dotted;
    color: #414141 !important; }
  a:hover, a:active {
    outline: 0; }

/*------------------------------------*\
  #Fields elements
\*------------------------------------*/
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 {
  color: #767676;
  background-color: transparent;
  border: 0;
  border-bottom: 1px solid var(--cavatina_primary-color);
  width: 100%;
  font-size: 12px;
  min-height: max-content; }
  input[type="text"]::placeholder,
  input[type="email"]::placeholder,
  input[type="url"]::placeholder,
  input[type="password"]::placeholder,
  input[type="search"]::placeholder,
  input[type="number"]::placeholder,
  input[type="tel"]::placeholder,
  input[type="range"]::placeholder,
  input[type="date"]::placeholder,
  input[type="month"]::placeholder,
  input[type="week"]::placeholder,
  input[type="time"]::placeholder,
  input[type="datetime"]::placeholder,
  input[type="datetime-local"]::placeholder,
  input[type="color"]::placeholder,
  textarea::placeholder {
    color: #767676;
    opacity: 1;
    font-weight: normal;
    font-size: 12px;
    color: #767676; }
  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: #414141; }
  input[type="text"]:active,
  input[type="email"]:active,
  input[type="url"]:active,
  input[type="password"]:active,
  input[type="search"]:active,
  input[type="number"]:active,
  input[type="tel"]:active,
  input[type="range"]:active,
  input[type="date"]:active,
  input[type="month"]:active,
  input[type="week"]:active,
  input[type="time"]:active,
  input[type="datetime"]:active,
  input[type="datetime-local"]:active,
  input[type="color"]:active,
  textarea:active {
    color: #414141; }
  input[type="text"]:focus:-moz-placeholder,
  input[type="email"]:focus:-moz-placeholder,
  input[type="url"]:focus:-moz-placeholder,
  input[type="password"]:focus:-moz-placeholder,
  input[type="search"]:focus:-moz-placeholder,
  input[type="number"]:focus:-moz-placeholder,
  input[type="tel"]:focus:-moz-placeholder,
  input[type="range"]:focus:-moz-placeholder,
  input[type="date"]:focus:-moz-placeholder,
  input[type="month"]:focus:-moz-placeholder,
  input[type="week"]:focus:-moz-placeholder,
  input[type="time"]:focus:-moz-placeholder,
  input[type="datetime"]:focus:-moz-placeholder,
  input[type="datetime-local"]:focus:-moz-placeholder,
  input[type="color"]:focus:-moz-placeholder,
  textarea:focus:-moz-placeholder {
    color: #414141; }
  input[type="text"]:focus:-ms-input-placeholder,
  input[type="email"]:focus:-ms-input-placeholder,
  input[type="url"]:focus:-ms-input-placeholder,
  input[type="password"]:focus:-ms-input-placeholder,
  input[type="search"]:focus:-ms-input-placeholder,
  input[type="number"]:focus:-ms-input-placeholder,
  input[type="tel"]:focus:-ms-input-placeholder,
  input[type="range"]:focus:-ms-input-placeholder,
  input[type="date"]:focus:-ms-input-placeholder,
  input[type="month"]:focus:-ms-input-placeholder,
  input[type="week"]:focus:-ms-input-placeholder,
  input[type="time"]:focus:-ms-input-placeholder,
  input[type="datetime"]:focus:-ms-input-placeholder,
  input[type="datetime-local"]:focus:-ms-input-placeholder,
  input[type="color"]:focus:-ms-input-placeholder,
  textarea:focus:-ms-input-placeholder {
    color: #414141; }
  input[type="text"]:focus::-webkit-input-placeholder,
  input[type="email"]:focus::-webkit-input-placeholder,
  input[type="url"]:focus::-webkit-input-placeholder,
  input[type="password"]:focus::-webkit-input-placeholder,
  input[type="search"]:focus::-webkit-input-placeholder,
  input[type="number"]:focus::-webkit-input-placeholder,
  input[type="tel"]:focus::-webkit-input-placeholder,
  input[type="range"]:focus::-webkit-input-placeholder,
  input[type="date"]:focus::-webkit-input-placeholder,
  input[type="month"]:focus::-webkit-input-placeholder,
  input[type="week"]:focus::-webkit-input-placeholder,
  input[type="time"]:focus::-webkit-input-placeholder,
  input[type="datetime"]:focus::-webkit-input-placeholder,
  input[type="datetime-local"]:focus::-webkit-input-placeholder,
  input[type="color"]:focus::-webkit-input-placeholder,
  textarea:focus::-webkit-input-placeholder {
    color: #414141; }

select {
  color: #767676;
  border: none;
  border-radius: 3px;
  background-color: #f4f4f4;
  padding: 10px 14px; }

textarea {
  width: 100%; }

#comment {
  height: 84px; }

[type="checkbox"] {
  width: 18px;
  height: 18px;
  vertical-align: middle; }

[type="text"],
[type="email"],
[type="url"] {
  padding-bottom: 20px; }
  [type="text"]::placeholder,
  [type="email"]::placeholder,
  [type="url"]::placeholder {
    font-size: 12px !important; }

.form-submit .submit {
  padding: 13px 25px; }

.error {
  margin-top: 8px; }

.c-error__title {
  padding: 10px 0 20px 0;
  color: #ff0000;
  font-family: "montserratregular"; }

input.error,
textarea.error {
  color: var(--cavatina_primary-color); }

/* remore X button from inputs */
input[type="text"]::-ms-clear {
  display: none;
  width: 0;
  height: 0; }

input[type="text"]::-ms-reveal {
  display: none;
  width: 0;
  height: 0; }

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none; }

ul,
ol {
  margin: 0;
  padding: 0; }

ol {
  list-style: decimal; }

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

dt {
  font-weight: 700; }

dd {
  margin: 0 1.5em 1.5em; }

li {
  margin: 0 0 0.5em; }

thead tr {
  background-color: #b3b3b3; }

tbody tr:nth-child(odd) {
  background-color: #e6e6e6; }
