/*! 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: 107px; }
  100% {
    width: 250px; } }

@-webkit-keyframes increaseHeaderWidth {
  0% {
    width: 107px; }
  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: 0; } }
  @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; }

/* wrapper
--------------------------------------------- */
@media only screen and (min-width: 980px) {
  .o-wrapper {
    display: flex;
    width: 100%;
    height: 100vh;
    max-height: 100vh;
    justify-content: flex-end; } }

.o-wrapper .c-footer {
  width: 100%; }

/* layout
--------------------------------------------- */
/* Images
--------------------------------------------- */
img {
  height: auto;
  max-width: 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
--------------------------------------------- */
.c-header {
  width: 100%; }
  @media only screen and (min-width: 980px) {
    .c-header {
      align-items: center;
      width: max-content;
      position: absolute;
      display: flex;
      height: 100%;
      z-index: 50;
      top: 0; } }
  @media only screen and (min-width: 980px) {
    .c-header .c-header__search {
      display: block; } }
  .c-header .c-header__menu {
    display: block; }
    @media only screen and (min-width: 980px) {
      .c-header .c-header__menu {
        order: 1; } }

@media only screen and (min-width: 980px) {
  .c-header--home {
    width: 100%;
    max-width: 350px;
    height: 100%;
    display: flex;
    align-items: center;
    position: relative; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__holder {
    border-right: 1px solid #e1e1e1;
    width: 100%;
    align-content: center; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__wrapper {
    height: max-content;
    padding-left: 50px;
    padding-right: 16px;
    padding-bottom: 45%; } }

@media only screen and (min-width: 1600px) {
  .c-header--home .c-header__wrapper {
    padding-bottom: 25%; } }

@media only screen and (min-width: 980px) {
  .c-header--home .c-header__search {
    display: none; } }

@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__logo__anchor {
    transform: none;
    position: relative;
    left: 0;
    max-width: 90%;
    word-wrap: unset;
    overflow: unset;
    text-overflow: unset;
    display: unset;
    -webkit-line-clamp: unset;
    -webkit-box-orient: unset; } }

.c-header__holder {
  width: 100%;
  min-height: 65px;
  padding: 10px 16px 43px 16px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  overflow: hidden;
  transition: height 1s;
  height: 0px;
  border-bottom: 1px solid #e1e1e1;
  background-color: #ffffff; }
  @media only screen and (min-width: 980px) {
    .c-header__holder {
      height: calc(100% - 15%) !important;
      width: 100%;
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      padding: 0;
      border-bottom: none;
      transition: width 0.5s;
      align-content: space-between;
      justify-content: center;
      border-right: 1px solid #e1e1e1;
      padding-left: 10px;
      width: 107px; } }

.c-header__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%; }
  @media only screen and (min-width: 980px) {
    .c-header__wrapper {
      width: max-content;
      height: 100%;
      align-content: space-between;
      justify-content: center; } }

.c-header__holder.is-open {
  height: max-content; }
  @media only screen and (min-width: 980px) {
    .c-header__holder.is-open {
      height: calc(100% - 15%) !important;
      align-items: center;
      align-content: flex-end; } }
  @media only screen and (min-width: 980px) {
    .c-header__holder.is-open .c-header__wrapper {
      justify-content: space-between;
      align-content: flex-end;
      padding-left: 50px;
      padding-right: 16px; } }
  .c-header__holder.is-open .c-header__search {
    display: none; }
  .c-header__holder.is-open .c-header__navigation {
    display: block; }
    @media only screen and (min-width: 980px) {
      .c-header__holder.is-open .c-header__navigation {
        padding-top: 0;
        height: 50%;
        transition: 1s all;
        display: block; } }
  .c-header__holder.is-open .c-header__menu {
    order: 2; }
    .c-header__holder.is-open .c-header__menu::before {
      transform: rotate(45deg) translate(-5px, -15px); }
    .c-header__holder.is-open .c-header__menu::after {
      transform: rotate(-45deg) translate(-5px, 10px); }
  @media only screen and (min-width: 980px) {
    .c-header__holder.is-open .c-header__logo {
      margin-bottom: 0px;
      order: 1;
      width: max-content; } }
  @media only screen and (min-width: 980px) {
    .c-header__holder.is-open .c-header__logo__anchor {
      position: relative;
      transform: none;
      left: unset; } }

.c-header__logo__anchor:hover .c-header__logo__text, .c-header__logo__anchor:focus .c-header__logo__text, .c-header__logo__anchor:active .c-header__logo__text {
  color: #767676; }

/*------------------------------------*\
  #Header Menu
\*------------------------------------*/
.c-header__menu {
  order: 2;
  display: block;
  background-color: transparent !important;
  border: none;
  position: relative;
  width: max-content;
  min-width: 0px;
  height: max-content;
  padding: 8px 12px;
  animation-name: fadeIn;
  animation-duration: 0.5s;
  animation-fill-mode: forwards; }
  .c-header__menu::before {
    height: 5px;
    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; }
  @media only screen and (min-width: 980px) {
    .c-header__menu {
      display: none; } }

.c-header__menu::before,
.c-header__menu::after {
  width: 100%;
  content: "";
  position: absolute;
  border-color: #000;
  display: block;
  transition: transform 700ms cubic-bezier(0.75, 0.01, 0.07, 0.99);
  will-change: transform; }

.c-header__navigation {
  order: 3;
  width: 100%;
  padding-top: 65px;
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-header__navigation {
      display: none;
      opacity: 0;
      animation-name: fadeIn;
      animation-duration: 0.5s;
      animation-fill-mode: forwards;
      animation-delay: 0.8s; } }

.c-header__search {
  display: none;
  background-color: transparent;
  border: none;
  outline: none;
  width: 100%;
  opacity: 0;
  margin-left: 5px; }
  .c-header__search:focus, .c-header__search:active, .c-header__search:hover {
    background-color: transparent;
    border: none;
    outline: none; }

.c-header__search.is-active {
  animation-name: fadeIn;
  animation-duration: 0.5s;
  animation-delay: 1s;
  animation-fill-mode: forwards; }

.c-header__logo {
  order: 1;
  transition: 0s all;
  max-width: 100%; }
  @media only screen and (min-width: 980px) {
    .c-header__logo {
      width: 100%;
      padding-right: 8px;
      margin-bottom: 0px;
      position: relative; } }

.c-header__logo.is-hide {
  opacity: 0; }

.c-header__logo.has-animation {
  transition: 1s all;
  opacity: 1; }

.c-header__logo.has-animation-out {
  visibility: hidden; }

.c-header__logo__anchor {
  word-wrap: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  max-width: 240px; }
  @media only screen and (min-width: 980px) {
    .c-header__logo__anchor {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(0%, -50%) rotate(270deg);
      width: max-content;
      transform-origin: left;
      word-wrap: break-word;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-line-clamp: 1;
      -webkit-box-orient: vertical;
      max-width: 390%; } }

.c-header__text {
  display: none; }
  @media only screen and (min-width: 980px) {
    .c-header__text {
      display: block; } }
  @media only screen and (orientation: portrait) and (min-width: 1024px) and (max-height: 1366px) and (-webkit-min-device-pixel-ratio: 1.5) {
    .c-header__text {
      display: none; } }

.c-header__logo__image {
  margin-top: 10px;
  width: 116px;
  max-width: 116px; }
  @media only screen and (min-width: 980px) {
    .c-header__logo__image {
      max-width: 90%;
      margin-bottom: 16px; } }

/*------------------------------------*\
  #Search Box 
\*------------------------------------*/
.magnifier-icon {
  display: block;
  position: relative;
  cursor: pointer;
  opacity: 1;
  transition: opacity 2s; }
  .magnifier-icon .c-header__search--toggle > .magnifier-icon:before {
    animation: close 0.25s ease 0.25s 1 forwards; }

.magnifier-handle,
.magnifier-handle-x {
  content: "";
  display: block;
  width: 25px;
  height: 1px;
  transform: rotate(45deg);
  background: #000000;
  position: absolute;
  top: 0px;
  left: 0px;
  transition: all 0.3s; }
  .c-header__search--toggle > .magnifier-icon .magnifier-handle, .c-header__search--toggle > .magnifier-icon
  .magnifier-handle-x {
    animation: x-stroke-in 0.5s ease 0s 1 forwards; }

.magnifier-handle-x {
  height: 25px;
  background: transparent;
  border: 1px solid #000000;
  border-radius: 50%; }

.magnifier-handle {
  top: 25px;
  left: 19px;
  width: 15px; }

.c-header__search--toggle > .magnifier-icon .magnifier-handle {
  top: 10px;
  left: 0;
  width: 25px; }

.c-header__search--toggle > .magnifier-icon .magnifier-handle-x {
  height: 1px;
  background: #000000;
  border-radius: 0;
  border: 0;
  transform: rotate(-50deg);
  top: 10px;
  left: 0px; }

.c-header__search:focus .magnifier-handle-x, .c-header__search:active .magnifier-handle-x, .c-header__search:hover .magnifier-handle-x {
  border: 1px solid #767676; }

.c-header__search:focus .magnifier-handle, .c-header__search:active .magnifier-handle, .c-header__search:hover .magnifier-handle {
  background: #767676; }

.c-header__search--toggle:focus .magnifier-handle-x, .c-header__search--toggle:active .magnifier-handle-x, .c-header__search--toggle:hover .magnifier-handle-x {
  background: #767676;
  border: 0px solid #767676; }

/* Navigation
--------------------------------------------- */
/*------------------------------------*\
  #Navigation
\*------------------------------------*/
.s-nav {
  list-style-type: none; }

.c-nav .sub-menu {
  display: none; }

.s-nav {
  list-style-type: none; }
  .s-nav .menu-item {
    line-height: 17px;
    margin-bottom: 24px; }
    @media only screen and (min-width: 980px) {
      .s-nav .menu-item {
        margin-bottom: 12px; } }
    .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 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: 12px 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: 30px;
  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: 0px;
      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: 10%; } }
  @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 screen and (orientation: landscape) {
      .c-carousel__context .flickity-slider {
        margin-left: -10vh; } }
    @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 screen and (orientation: landscape) {
    .c-carousel__slider {
      height: 360px; } }
  @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 */
  width: max-content;
  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);
        text-transform: capitalize; }
        .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-top: 5px;
        margin-left: 16px;
        position: static;
        display: flex; } }
    .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); }
    @media only screen and (min-width: 980px) {
      .comment-meta .comment-metadata .edit-link {
        display: flex;
        margin-left: 8px; } }

.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__header {
  display: flex; }

.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: 40px;
  width: 100%; }

.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: 0%;
    padding-right: 32px;
    margin-top: 8px;
    width: 100%;
    z-index: 500;
    padding: 0;
    display: flex;
    justify-content: flex-end;
    padding-left: 16px; } }

@media only screen and (min-width: 980px) {
  .c-footer--home .c-footer__context {
    width: calc(100% - 350px);
    margin-top: 16px; } }

.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; }
