@charset "UTF-8";
/*!

Theme Name: Reason Two: No Features blog
Description: Reason Two Child theme
Author: Geoff Muskett
Theme URI: https://reasontwo.net
Author URI: https://reasontwo.net
Template: KAWmaster
Version: 0.1

*/
/* *********************************************************************
========================================================================

Styles are compiled in a way that combines the parent and child into one with Gulp.
This is controlled with the child theme gulpfile.

This file contains ALL parent theme styles

Contents:

    1. Reset
    2. Config
    3. Mixins
    4. Grid
    5. Typography
    6. Media
    7. Buttons
    8. Tables
    9. Forms
    10. Alerts
    11. Overlays
    12. Social icons
    13. Global helpers
    14. Standards

    15a. Navigation - standard
    15b. Navigation - nav under
    15c. Navigation - Nav under logo AND CTA section

    16. Layout section - Header
    17. Layout section - Columns
    18. Layout section - Panels
    19. Layout section - Carousel base styles (don't edit unless necessary)
    20. Layout section - Carousel theme
    21. Layout section - Text
    22. Layout section - Team
    23. Layout section - Blog feed
    23a. Layout section - Blog feed: panels
    24. Layout section - Gallery
    25. Layout section - Divider
    26. Layout section - Single
    27. Layout section - Footer
    28. Layout section - Take Payment Online
    29. Layout section - Product
    30. Layout section - Text with image

    (space for more layouts in future)

    40. loading spinner

    End - Print


========================================================================
********************************************************************* */
/* *********************************************************************

    1. Reset default browser styles using Normalize

********************************************************************* */
/* Document  */
.grecaptcha-badge {
  visibility: hidden;
}

html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

/* Sections  */
* {
  box-sizing: border-box;
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  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  */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 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  */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 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 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * 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 style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * 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 */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

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

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms  */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 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;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  /* 2 */
}

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

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

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

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
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 and cancel buttons in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-cancel-button,
[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 IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

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

/* Scripting  */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

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

/* *********************************************************************

    2. Config

********************************************************************* */
/* *********************************************************************

    3. Mixins

********************************************************************* */
.clearfix,
.group,
.blog-feed__group {
  zoom: 1;
}
.clearfix:before, .clearfix:after,
.group:before,
.blog-feed__group:before,
.group:after,
.blog-feed__group:after {
  content: " ";
  display: block;
  height: 0;
  overflow: hidden;
}
.clearfix:after,
.group:after,
.blog-feed__group:after {
  clear: both;
}

/* *********************************************************************

    4. Grid

********************************************************************* */
body {
  width: 100%;
  overflow-x: hidden;
}

.pad {
  padding: 1em;
}

.group, .blog-feed__group {
  display: flex;
  flex-direction: column;
}

.span1,
.span2,
.span3,
.span4,
.blog-feed__group__item,
.span5,
.span6,
.span7,
.span8,
.span9,
.span10,
.span11,
.span12 {
  margin-bottom: 2em;
  width: 100%;
}

.span-no-margin-bottom {
  margin-bottom: 0;
}

.pad.pad-left-right {
  padding-top: 0;
  padding-bottom: 0;
}

.section-no-pad-bottom .span1,
.section-no-pad-bottom .span2,
.section-no-pad-bottom .span3,
.section-no-pad-bottom .span4,
.section-no-pad-bottom .blog-feed__group__item,
.section-no-pad-bottom .span5,
.section-no-pad-bottom .span6,
.section-no-pad-bottom .span7,
.section-no-pad-bottom .span8,
.section-no-pad-bottom .span9,
.section-no-pad-bottom .span10,
.section-no-pad-bottom .span11,
.section-no-pad-bottom .span12 {
  margin-bottom: 0;
}

.section-no-pad-bottom h1:last-child, .section-no-pad-bottom h2:last-child, .section-no-pad-bottom h3:last-child, .section-no-pad-bottom h4:last-child, .section-no-pad-bottom h5:last-child, .section-no-pad-bottom h6:last-child, .section-no-pad-bottom p:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .pad {
    padding: 4.5%;
  }

  .group, .blog-feed__group {
    display: flex;
    flex: 0 1 auto;
    flex-direction: row;
    flex-wrap: wrap;
    margin-left: -2.1277%;
  }

  .span1,
.span2,
.span3,
.span4,
.blog-feed__group__item,
.span5,
.span6,
.span7,
.span8,
.span9,
.span10,
.span11,
.span12 {
    flex: 0 0 auto;
  }

  .span1 {
    flex-basis: 6.2056333%;
    margin-left: 2.1277%;
    max-width: 6.2056333%;
  }

  .offset1 {
    margin-left: 10.4610333%;
  }

  .span2 {
    flex-basis: 14.5389666%;
    margin-left: 2.1277%;
    max-width: 14.5389666%;
  }

  .offset2 {
    margin-left: 18.7943666%;
  }

  .span3 {
    flex-basis: 22.8722999%;
    margin-left: 2.1277%;
    max-width: 22.8722999%;
  }

  .offset3 {
    margin-left: 27.1276999%;
  }

  .span4, .blog-feed__group__item {
    flex-basis: 31.2056332%;
    margin-left: 2.1277%;
    max-width: 31.2056332%;
  }

  .offset4 {
    margin-left: 35.4610332%;
  }

  .span5 {
    flex-basis: 39.5389665%;
    margin-left: 2.1277%;
    max-width: 39.5389665%;
  }

  .offset5 {
    margin-left: 43.7943665%;
  }

  .span6 {
    flex-basis: 47.8722998%;
    margin-left: 2.1277%;
    max-width: 47.8722998%;
  }

  .offset6 {
    margin-left: 52.1276998%;
  }

  .span7 {
    flex-basis: 56.2056331%;
    margin-left: 2.1277%;
    max-width: 56.2056331%;
  }

  .offset7 {
    margin-left: 60.4610331%;
  }

  .span8 {
    flex-basis: 64.5389664%;
    margin-left: 2.1277%;
    max-width: 64.5389664%;
  }

  .offset8 {
    margin-left: 68.7943664%;
  }

  .span9 {
    flex-basis: 72.8722997%;
    margin-left: 2.1277%;
    max-width: 72.8722997%;
  }

  .offset9 {
    margin-left: 77.1276997%;
  }

  .span10 {
    flex-basis: 81.205633%;
    margin-left: 2.1277%;
    max-width: 81.205633%;
  }

  .offset10 {
    margin-left: 85.461033%;
  }

  .span11 {
    flex-basis: 89.5389663%;
    margin-left: 2.1277%;
    max-width: 89.5389663%;
  }

  .offset11 {
    margin-left: 93.7943663%;
  }

  .span12 {
    flex-basis: 97.8722996%;
    margin-left: 2.1277%;
    max-width: 97.8722996%;
  }

  .offset12 {
    margin-left: 102.1276996%;
  }
}
/* *********************************************************************

    5. Typography

********************************************************************* */
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1.25em;
  font-size: 1.5vw;
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
}
@media (max-width: 60em) {
  body {
    font-size: 0.9em;
  }
}
@media (min-width: 66.6666666667em) {
  body {
    font-size: 1em;
  }
}

blockquote {
  border-left: 2px solid #1271db;
  font-family: Georgia, Times, "Times New Roman", serif;
  font-style: italic;
  font-weight: 400;
  margin: 0 0 1.5em 0;
  padding-left: 1.5em;
}

h1,
h2,
h3,
h4,
h5 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

h1 {
  font-style: normal;
  font-weight: 400;
  font-size: 2em;
  font-size: 3vw;
  margin: 0 0 1.5rem;
}
@media (max-width: 83.3333333333em) {
  h1 {
    font-size: 2.5em;
  }
}
@media (min-width: 200em) {
  h1 {
    font-size: 6em;
  }
}

h2 {
  font-style: normal;
  font-weight: 400;
  font-size: 2em;
  margin: 0 0 1.5rem;
}

h3 {
  font-style: normal;
  font-weight: 400;
  margin: 0 0 1.5rem;
  font-size: 1.5em;
}

h4 {
  font-style: normal;
  font-weight: 400;
  margin: 0 0 1.5rem;
  font-size: 1.3em;
}

h5 {
  font-style: normal;
  font-weight: normal;
  margin: 0 0 1.5rem;
  font-size: 1.2em;
}

h6 {
  font-style: normal;
  font-weight: normal;
  margin: 0 0 1.5rem;
  font-size: 1.1em;
}

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

pre {
  background: #222;
  color: #fff;
  display: block;
  font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
  font-size: 13px;
  line-height: 20px;
  margin: 0 0 1.5rem;
  padding: 1em;
  word-break: break-all;
  word-wrap: break-word;
}

code {
  border-radius: 0.5em;
  background: #f5f5f5;
  border: 1px solid rgba(0, 0, 0, 0.1);
  font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
  line-height: 1.6;
  padding: 0.5em 1em;
  word-break: break-all;
  word-wrap: break-word;
}

.small {
  font-size: 0.8em;
}

a {
  color: #1271db;
}
a:hover, a:focus {
  text-decoration: none;
}

.arrow-up {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 7px solid #1271db;
}

.arrow-down {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 7px solid #1271db;
}

.arrow-right {
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid #1271db;
}

.arrow-left {
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-right: 7px solid #1271db;
}

.break-word {
  word-break: break-all;
}

/* *********************************************************************

    6. Media

********************************************************************* */
img,
video,
audio,
iframe,
object {
  max-width: 100%;
  height: auto;
}

/* *********************************************************************

    7. Buttons

********************************************************************* */
button:hover {
  cursor: pointer;
}

.button-no-style, button.button-no-style {
  -webkit-appearance: none;
  border: none;
  background: none;
  outline: 0;
  transition: all 0.3s ease;
  font-weight: 400;
}

.btn, input[type=submit] {
  border-radius: 5px;
  background: transparent;
  border: 1px solid #1271db;
  color: #1271db;
  display: inline-block;
  vertical-align: top;
  font-size: 100%;
  line-height: 1.25;
  outline: none;
  padding: 0.5em 1.5em;
  text-align: center;
  text-decoration: none;
  text-transform: capitalize;
  margin: 0.25em;
}
.btn:hover, .btn:focus, input[type=submit]:hover, input[type=submit]:focus {
  background: #1271db;
  border-color: #1271db;
  color: #fff;
  text-decoration: none;
}
.btn:active, input[type=submit]:active {
  background: #0e59ac;
  border-color: #0e59ac;
}

.btn-primary {
  background-color: #1271db;
  border-color: #1271db;
  color: #fff;
}
.btn-primary:hover, .btn-primary:focus {
  background: #1065c3;
  border-color: #1065c3;
  color: #fff;
}
.btn-primary:active {
  background: #0e59ac;
  border-color: #0e59ac;
  color: #fff;
}

.btn-block {
  width: 100%;
  display: block;
  margin-left: 0;
  margin-right: 0;
}

.btn-link {
  box-shadow: none;
  background: transparent;
  border: 0;
  color: #1271db;
  text-shadow: none;
  text-transform: none;
}
.btn-link:hover, .btn-link:focus {
  background: transparent;
  color: #1271db;
  text-decoration: underline;
}

/* *********************************************************************

    8. Tables

********************************************************************* */
table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  border-bottom: 0;
  border-left: 0;
  margin-bottom: 1.5em;
}
table th,
table td {
  padding: 1em;
  text-align: left;
  border-left: 1px solid #ccc;
}
table th h1:last-of-type, table th h2:last-of-type, table th h3:last-of-type, table th h4:last-of-type, table th h5:last-of-type, table th h6:last-of-type, table th p:last-of-type, table th ul:last-of-type, table th ol:last-of-type,
table td h1:last-of-type,
table td h2:last-of-type,
table td h3:last-of-type,
table td h4:last-of-type,
table td h5:last-of-type,
table td h6:last-of-type,
table td p:last-of-type,
table td ul:last-of-type,
table td ol:last-of-type {
  margin-bottom: 0;
}
table tr {
  border-bottom: 1px solid #ccc;
}

/* *********************************************************************

    9. Forms

********************************************************************* */
label {
  display: block;
  margin-bottom: 5px;
}

input[type=text],
input[type=email],
input[type=phone],
input[type=tel],
input[type=password],
input[type=number],
input[type=search],
input[type=file],
textarea {
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.05);
  border-radius: 5px;
  border: 1px solid #ccc;
  height: 44px;
  outline: none;
  padding: 5px 10px;
  width: 100%;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=phone]:focus,
input[type=tel]:focus,
input[type=password]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=file]:focus,
textarea:focus {
  border-color: #1271db;
}

textarea {
  height: 132px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
  -moz-appearance: textfield !important;
}

fieldset {
  margin-bottom: 1em;
  padding: 1.5em;
}
fieldset label {
  position: relative;
  padding: 0.4em 0.4em 0.4em 1.6em;
  margin-bottom: 0;
}
fieldset input[type=radio] {
  position: absolute;
  top: 50%;
  left: 0;
  margin: 0;
  padding: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  outline: none;
  background: #fff;
  border: 2px solid;
  display: inline-block;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  cursor: pointer;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: all 0.2s linear;
}
fieldset input[type=radio]:checked {
  border-color: #1271db;
}
fieldset input[type=radio]:after {
  content: "";
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  top: 0;
  left: 0;
  margin: 2px;
  opacity: 0;
  border-radius: 50%;
  -ms-transform: scale(0.6);
  transform: scale(0.6);
  transition: opacity 0.2s linear, transform 0.2s ease;
  background: #1271db;
}
fieldset input[type=radio]:checked:after {
  opacity: 1;
  transform: scale(0.8);
}
fieldset input[type=checkbox] {
  position: absolute;
  top: 50%;
  left: 0;
  margin: 0;
  padding: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  outline: none;
  background: #fff;
  border: 2px solid;
  display: inline-block;
  height: 20px;
  width: 20px;
  cursor: pointer;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: all 0.2s linear;
}
fieldset input[type=checkbox]:checked {
  border-color: #1271db;
}
fieldset input[type=checkbox]:after {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 2px;
  width: 4px;
  height: 3px;
  background: #1271db;
  transition: opacity 0.2s linear, transform 0.2s ease;
  opacity: 0;
  transform: rotate(0);
}
fieldset input[type=checkbox]:checked:after {
  opacity: 1;
  transform: scale(0.8);
  transform: rotate(45deg);
  top: 9px;
}
fieldset input[type=checkbox]:before {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 3px;
  width: 13px;
  height: 3px;
  background: #1271db;
  transition: opacity 0.2s linear, transform 0.2s ease;
  opacity: 0;
}
fieldset input[type=checkbox]:checked:before {
  opacity: 1;
  transform: scale(0.8);
  transform: rotate(-45deg);
}

form {
  margin-bottom: 40px;
}
form .field {
  margin-bottom: 20px;
}
form .hint {
  color: #aaa;
  margin-top: 5px;
}
form .is-required {
  font-style: italic;
}
form .has-error .error-description {
  color: #ff4136;
  margin-top: 5px;
}
form .has-error input[type=text],
form .has-error input[type=email],
form .has-error input[type=phone],
form .has-error input[type=password],
form .has-error input[type=number],
form .has-error input[type=search],
form .has-error textarea {
  border-color: #ff4136;
}

.wpcf7-mail-sent-ok {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 15em;
  height: 15em;
  margin: -7.5em 0 0 -7.5em;
  z-index: 11;
  background-color: #fff;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.3);
  color: #233e5b;
  border-radius: 0.3em;
  padding: 2.5em 2em 2em 2em;
  display: flex;
  align-items: center;
  text-align: center;
  flex-shrink: 0;
}
.wpcf7-mail-sent-ok .btn {
  padding: 0.5em 0.8em;
  font-size: 0.8em;
  width: 8em;
}

.btn.sent-message-close {
  position: absolute;
  bottom: 2em;
  left: 50%;
  margin-left: -4em;
}

.sent-message-tick {
  position: absolute;
  top: 1.5em;
  left: 50%;
  margin-left: -1.5em;
  width: 3em;
  height: 3em;
  fill: #1271db;
}

/* *********************************************************************

    10. Alerts

********************************************************************* */
.alert {
  zoom: 1;
  border-left: 3px solid;
  margin-bottom: 40px;
  padding: 10px;
}
.alert:before, .alert:after {
  content: " ";
  display: block;
  height: 0;
  overflow: hidden;
}
.alert:after {
  clear: both;
}
.alert.alert-danger {
  background: #ffeae9;
  border-color: #ff4136;
  color: #e90d00;
}
.alert.alert-success {
  background: #e6f9e8;
  border-color: #2ecc40;
  color: #25a233;
}
.alert.alert-warning {
  background: #fff2e7;
  border-color: #ff851b;
  color: #e76b00;
}
.alert.alert-info {
  background: #cfe9ff;
  border-color: #0074d9;
  color: #0059a6;
}
.alert.alert-empty {
  background: #f4f4f4;
  border: 1px dashed #ddd;
  text-align: center;
}
.alert p:last-child {
  margin-bottom: 0;
}

/* *********************************************************************

    11. Overlays

********************************************************************* */
.overlay-bg {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 11;
  display: none;
}

.overlay {
  position: fixed;
  top: 2.5em;
  left: 1em;
  right: 1em;
  bottom: 1em;
  background-color: #fff;
  border-radius: 0.5em;
  overflow: auto;
  z-index: 12;
  padding: 1em;
  display: none;
}

.closeButton {
  position: fixed;
  top: 0.5em;
  right: 1em;
  z-index: 12;
  color: #fff;
  display: none;
}

@media only screen and (min-width: 600px) {
  .overlay {
    top: 10%;
    right: 10%;
    bottom: 10%;
    left: 10%;
    padding: 4.5%;
  }

  .closeButton {
    top: 6%;
    right: 10%;
  }
}
@media only screen and (min-width: 1024px) {
  .overlay {
    top: 20%;
    right: 20%;
    bottom: 20%;
    left: 20%;
    padding: 4.5%;
  }

  .overlay--gallery {
    top: 10%;
    right: 10%;
    bottom: 10%;
    left: 10%;
    padding: 2.5%;
  }

  .closeButton {
    top: 16%;
    right: 21%;
  }

  .closeButton--gallery {
    top: 5%;
    right: 11%;
  }
}
.sticky-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  padding: 0.5em 1em;
  text-align: center;
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.48);
  z-index: 10;
}

/* *********************************************************************

    12. Social icons

********************************************************************* */
.nav__nav__socials {
  display: flex;
}

.nav__nav__socials__link {
  position: relative;
  background: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  margin: 10px 2px;
  transition: 0.3s;
}
.nav__nav__socials__link .element-invisible {
  position: absolute;
  left: -10000000px;
}

.social-svg {
  align-self: center;
  width: 17px;
  height: 17px;
  fill: #000;
}

.social-svg__inner {
  background-color: #000;
}

.social-svg__inner-rectangle {
  fill: transparent;
}

.youtube_the_sharpness {
  fill: #e0e0e0;
}

.nav__nav__socials__link:hover .social-svg,
.nav__nav__socials__link:focus .social-svg,
.nav__nav__socials__link:active .social-svg {
  fill: #1271db;
}

/* *********************************************************************

    13. Global helpers

********************************************************************* */
.element-invisible, .screen-reader-response {
  visibility: hidden;
  width: 0;
  height: 0;
  padding: 0;
  display: block;
}

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

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

.hide {
  display: none;
}

.pad.section-no-pad-top {
  padding-top: 0;
}

/* *********************************************************************

    14. Standards
    - default styles for wireframes

********************************************************************* */
.main-section:nth-child(odd) {
  background-color: #f7f7f7;
}

@media (max-width: 767px) {
  .hide-when-one-col {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .hide-when-multiple-cols {
    display: none !important;
  }
}
.text-content .wp-caption {
  width: 100%;
  display: block;
}
.text-content img {
  width: 100%;
  display: block;
  height: auto;
}
.text-content .alignleft {
  float: left;
  width: 50%;
  margin: 0 1em 1em 0;
}
.text-content .alignright {
  float: right;
  width: 50%;
  margin: 0 0 1em 1em;
}
.text-content .aligncenter {
  width: 50%;
  display: block;
  margin: 0 auto 1em auto;
}
.text-content .wp-caption-text {
  background: #f7f7f7;
  font-size: 0.8em;
  padding: 1em;
}

@media (min-width: 1024px) {
  .content-max-width {
    width: 100%;
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
  }

  .text-content .alignleft {
    width: 33.33%;
  }
}
/* *********************************************************************

    15a. Navigation - standard

********************************************************************* */
.nav--standard {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 1em 1em 0 1em;
  width: 100%;
}

.nav__inner {
  display: flex;
  align-items: center;
  line-height: 1.3;
  flex-wrap: wrap;
}

.nav__nav {
  order: 3;
  flex-basis: 100%;
  display: flex;
  flex-direction: column;
  margin-top: 1em;
  max-height: 0;
  overflow: hidden;
  transition: 0.5s;
}

.nav__nav__link {
  flex-basis: 100%;
  padding: 0.5em;
}

.nav__nav--open {
  max-height: 100em;
}

.nav__nav__link:last-of-type {
  margin-bottom: 1em;
}

.nav__nav__link__subcontainer {
  position: relative;
}

.nav__nav__link--button__arrow {
  display: inline-block;
  vertical-align: middle;
}

.nav__nav__link--button {
  color: #1271db;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  line-height: 1.3;
}
.nav__nav__link--button:hover .nav__nav__link--button__arrow, .nav__nav__link--button:focus .nav__nav__link--button__arrow, .nav__nav__link--button:active .nav__nav__link--button__arrow {
  border-top-color: #233e5b;
}

.nav__nav__link__subcontainer__submenu {
  display: flex;
  flex-direction: column;
  display: none;
}

.nav__nav__link__subcontainer__submenu__item {
  padding: 0.5em;
}

.nav__button-container {
  margin-left: auto;
}

.nav__button-container__button__bar {
  width: 20px;
  height: 4px;
  background: #1271db;
  margin-bottom: 3px;
}

.nav__button-container__button__bar:last-of-type {
  margin-bottom: 0;
}

.nav__button-container__button {
  padding: 0.5em;
  background: #e5e5e5;
}
.nav__button-container__button:hover .nav__button-container__button__bar, .nav__button-container__button:focus .nav__button-container__button__bar, .nav__button-container__button:active .nav__button-container__button__bar {
  background: #0e59ac;
}

@media screen and (min-width: 768px) {
  .nav {
    padding: 1em;
  }

  .nav__nav {
    overflow: visible;
    max-height: 1000em;
    flex-basis: auto;
    margin: 0 0 0 auto;
    flex-direction: row;
    align-items: flex-start;
    display: flex;
    align-items: center;
  }

  .nav__nav__link {
    flex-basis: auto;
  }

  .nav__nav__link:last-of-type {
    margin-bottom: 0;
  }

  .nav__nav__link__subcontainer__submenu {
    position: absolute;
    z-index: 1;
    top: 100%;
    left: 0;
    background-color: #fff;
    min-width: 10em;
  }

  .nav__nav__link__subcontainer__submenu__item {
    text-align: left;
  }

  .nav__button-container {
    display: none;
  }
}
/* *********************************************************************

    15b. Navigation - Nav under

    • Has navigation under logo
    • Builds on navigation--standard

********************************************************************* */
.nav--navunder {
  position: relative;
  text-align: center;
  padding: 1em;
}
.nav--navunder .nav__logo-container {
  width: 100%;
  max-width: 18em;
  display: block;
  margin: 0 auto 1em auto;
}
.nav--navunder .nav__button-container {
  flex-basis: 100%;
}
.nav--navunder .nav__nav__socials {
  justify-content: center;
  flex-basis: 100%;
}

@media (min-width: 768px) {
  .nav--navunder .nav__nav__link:last-of-type {
    margin-bottom: 0;
  }
  .nav--navunder .nav__nav {
    flex-basis: 100%;
    text-align: center;
    max-height: 1000em;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .nav--navunder .nav__nav__link {
    flex-basis: auto;
  }
  .nav--navunder .nav__button-container {
    display: none;
  }
  .nav--navunder .nav__nav__socials {
    flex-basis: 100%;
  }
}
/* *********************************************************************

    15c. Navigation - Nav under logo AND CTA section

    • Has navigation under logo and CTA section
    • Builds on navigation - standard
    • Builds on navigation - nav under

********************************************************************* */
.nav--navunder__inner--with-ctas .nav__logo-container {
  max-width: none;
}
.nav--navunder__inner--with-ctas .nav__cta-area {
  flex-basis: 100%;
}

@media (min-width: 600px) {
  .nav--navunder__inner--with-ctas .nav__inner {
    display: flex;
    flex-wrap: wrap;
  }
  .nav--navunder__inner--with-ctas .nav__logo-container {
    flex-basis: 49%;
    text-align: left;
    margin: 0;
  }
  .nav--navunder__inner--with-ctas .nav__cta-area {
    flex-basis: 49%;
    text-align: right;
    margin-left: auto;
  }
  .nav--navunder__inner--with-ctas .nav__cta-area p {
    margin: 0;
  }
  .nav--navunder__inner--with-ctas .nav__nav__socials {
    flex-basis: auto;
    margin-left: auto;
  }
}
/* *********************************************************************

    16. Layout section - Header

********************************************************************* */
header.header {
  min-height: 500px;
  background-size: cover;
  background-position: center;
  align-items: center;
  justify-content: center;
  text-align: center;
  display: flex;
  background-color: #f7f7f7;
}

/* *********************************************************************

    17. Layout section - Columns

********************************************************************* */
section.columns {
  background-size: cover;
  background-position: center;
  align-items: center;
  justify-content: center;
  display: flex;
}

.column-group {
  justify-content: center;
  display: flex;
  flex-wrap: wrap;
}

.columns__column-group__column-item__icon {
  margin-bottom: 1.5em;
}

.columns__column-group__column-item__icon__image {
  display: block;
  width: 100%;
}

.columns__column-group__column-item__buttons .btn:first-of-type {
  margin-left: 0;
}

@media screen and (min-width: 768px) {
  .columns__column-group__column-item {
    margin-bottom: 0;
  }
}
/* *********************************************************************

    18. Layout section - Panels

********************************************************************* */
.panels {
  justify-content: flex-start;
}
.panels .panels__item {
  border: 2px solid #ddd;
  padding: 1em;
  background-color: #f7f7f7;
  text-align: left;
  background-position: center;
  background-size: cover;
}
.panels a.panels__item--link:hover, .panels a.panels__item--link:focus, .panels a.panels__item--link:active {
  background-color: #ddd;
}

/* *********************************************************************

    19. Layout section - Carousel base styles (don't edit unless necessary)

********************************************************************* */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* *********************************************************************

    20. Layout section - Carousel theme

********************************************************************* */
.carousel__module:not(.arrows-inside) {
  margin: 0 2em;
}

.carousel__module.product-carousel {
  margin: 0;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: arial;
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -2em;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -2em;
}
.slick-next {
  right: -2em;
}
[dir=rtl] .slick-next {
  left: -2em;
  right: auto;
}
.arrows-inside .slick-prev {
  left: 2em;
}
[dir=rtl] .arrows-inside .slick-prev {
  left: auto;
  right: 2em;
}
.arrows-inside .slick-next {
  right: 2em;
}
[dir=rtl] .arrows-inside .slick-next {
  left: 2em;
  right: auto;
}
/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 1.5em 0.25em 0 0.25em;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  padding: 5px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  cursor: pointer;
  border: 3px solid #1271db;
  border-radius: 50%;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
  background: rgba(18, 113, 219, 0.5);
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  font-family: arial;
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button {
  background: #1271db;
}

.carousel__module__item {
  padding: 1em;
  text-align: center;
  background-position: center;
  background-size: cover;
}
.carousel__module__item img {
  display: inline-block;
}

.chevron::before {
  border-style: solid;
  border-width: 4px 4px 0 0;
  content: "";
  display: inline-block;
  height: 11px;
  position: relative;
  top: 0;
  transform: rotate(-135deg);
  vertical-align: top;
  width: 11px;
}

.chevron__text {
  color: transparent;
}

.chevron--next::before {
  transform: rotate(45deg);
}

.slick-next, .slick-prev {
  font-size: 1em;
  color: rgba(18, 113, 219, 0.5);
  z-index: 10000;
  padding: 5px;
  width: 30px;
  height: 35px;
  z-index: 9;
}
.slick-next:hover .chevron::before, .slick-next:focus .chevron::before, .slick-next:active .chevron::before, .slick-prev:hover .chevron::before, .slick-prev:focus .chevron::before, .slick-prev:active .chevron::before {
  color: #1271db;
}

.carousel__module__item__content-container {
  height: 20em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

img.carousel__module__item__content-container__image {
  max-height: 90%;
  width: auto;
}

.carousel__module__item__text-container,
.carousel__module__item__content-container__caption,
.carousel__module__item__content-container__description {
  flex-basis: 100%;
  width: 100%;
}

@media (min-width: 600px) {
  .carousel__module__item__content-container {
    height: 25em;
  }
}
@media (min-width: 1024px) {
  .carousel__module__item__content-container {
    height: 30em;
  }
}
@media (min-width: 1024px) {
  .carousel__module__item__content-container {
    height: 35em;
  }
}
/* *********************************************************************

    21. Layout section - Text

********************************************************************* */
.main-section.textonly {
  background-position: center;
  background-size: cover;
}

.textonly__textonly_container .alignleft {
  width: 50%;
  float: left;
  margin: 0 1em 0 0;
}
@media screen and (min-width: 768px) {
  .textonly__textonly_container .alignleft {
    width: 33.33%;
  }
}
/* *********************************************************************

    22. Layout section - Team

********************************************************************* */
.team__content__members__item__long-bio {
  display: none;
}

.team__content__members__item {
  text-align: left;
}

.team__content__members__item__image {
  display: block;
  margin-bottom: 0.5rem;
  width: 100%;
}

@media screen and (min-width: 600px) {
  .team__content__members {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .team__content__members__item {
    flex-basis: 50%;
    padding: 1em;
  }
}
@media screen and (min-width: 768px) {
  .team__content__members__item {
    flex-basis: 33.33%;
  }
}
/* *********************************************************************

    23. Layout section - Blog feed

********************************************************************* */
.blog-feed__group__item {
  padding: 2em 0;
  border-bottom: 1px solid #ddd;
  display: flex;
  text-align: left;
}

.blog-feed__group__item:first-of-type {
  padding-top: 0;
}

.blog-feed__group__item:last-of-type {
  border: 0;
}

.blog-feed__group__item__thumbnail {
  flex-basis: 25%;
}

.blog-feed__group__item__thumbnail__image {
  width: 100%;
}

.blog-feed__group__item__content {
  flex-basis: 75%;
  padding-left: 1em;
}

.blog-feed__group__item__content--no-thumb {
  flex-basis: 100%;
}

.blog-feed__group__item__content__date {
  font-weight: 400;
  font-size: 0.8em;
  margin-bottom: 0;
}

.blog-feed__group__item__content__title_h2 {
  margin-bottom: 0.3rem;
}

.feed__group__item__content__type, .blog-feed__group__item__content__type__h4 {
  display: inline-block;
  vertical-align: top;
}

.blog-feed__group__item__content__type__h4 {
  font-weight: 400;
  margin-bottom: 0;
}

.blog-feed__group__item__content__category {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 0.8rem;
}

.blog-feed__group__item__content__category__h4 {
  display: inline-block;
  margin-right: 0.3em;
  font-weight: 400;
  margin-bottom: 0;
}

.blog-feed__group__item__content__content p {
  margin-bottom: 1em;
}

.blog-feed__group__item__content__readmore__btn {
  margin: 0;
}

@media screen and (min-width: 600px) {
  .blog-feed__group__item__thumbnail {
    padding-right: 1em;
  }
}
/* *********************************************************************

    23a. Layout section - Blog feed: panels

********************************************************************* */
.blog-feed__group--panels {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.blog-feed__group--panels .blog-feed__group__item__thumbnail {
  position: relative;
  flex-basis: 10em;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.blog-feed__group--panels .blog-feed__group__item {
  flex-direction: column;
  padding: 0;
  margin: 0 1rem 1rem 1rem;
  flex-basis: 100%;
  border: 2px solid #ddd;
}
.blog-feed__group--panels .blog-feed__group__item__content {
  flex-basis: auto;
  padding: 1em;
}
@media (min-width: 600px) {
  .blog-feed__group--panels .blog-feed__group__item {
    max-width: 20em;
    flex-basis: 20em;
  }
  .blog-feed__group--panels .blog-feed__group__item__thumbnail {
    flex-basis: 12em;
  }
}

/* *********************************************************************

    24. Layout section - Gallery

********************************************************************* */
.gallery-content__images {
  display: flex;
  flex-wrap: wrap;
}

.gallery-content__images__image-container {
  height: 25%;
  width: 48%;
  margin: 1%;
  padding: 0;
}

.gallery-content__images__image-container__image {
  display: block;
}

@media screen and (min-width: 600px) {
  .gallery-content__images__image-container {
    width: 31.33%;
  }
}
@media screen and (min-width: 768px) {
  .gallery-content__images__image-container {
    width: 23%;
  }
}
@media screen and (min-width: 1024px) {
  .gallery-content__images__image-container {
    width: 18%;
  }
}
/* *********************************************************************

    25. Layout section - Divider

********************************************************************* */
.divider {
  background-size: cover;
  background-position: center;
}

/* *********************************************************************

    26. Layout section - Single

********************************************************************* */
.post-thumb {
  margin-bottom: 1.5em;
}

.post-thumb__image {
  display: block;
  width: 100%;
  margin-bottom: 0.5em;
}

@media (min-width: 768px) {
  .post-thumb.alignleft {
    float: left;
    width: 50%;
    margin-right: 1.5em;
  }

  .post-thumb.alignright {
    float: right;
    width: 50%;
    margin-left: 1.5em;
  }

  .post-thumb.central {
    max-width: 66.66%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1024px) {
  .post-thumb.alignleft {
    float: left;
    width: 33.33%;
    margin-right: 1.5em;
  }

  .post-thumb.alignright {
    float: right;
    width: 33.33%;
    margin-left: 1.5em;
  }

  .post-thumb.central {
    max-width: 50%;
    margin-left: auto;
    margin-right: auto;
  }
}
/* *********************************************************************

    27. Layout section - Footer

********************************************************************* */
.footer {
  text-align: center;
  background-position: center;
  background-size: cover;
}

.footer__logo {
  margin-bottom: 1.5rem;
}

.footer__links {
  margin-bottom: 1.5rem;
}

/* *********************************************************************

28. Layout section - Take Payment Online

********************************************************************* */
.take-payment__form-container__amount {
  position: relative;
}
.take-payment__form-container__amount input {
  padding-left: 1.8rem;
}

.take-payment__form-container__amount__currency {
  position: absolute;
  bottom: 0.5rem;
  left: 0.6rem;
  font-size: 1.2em;
  font-weight: bold;
}

.btn-buynow {
  padding-left: 2.5em;
  position: relative;
  margin-left: 0;
}

.btn-buynow__padlock {
  position: absolute;
  left: 0.9em;
  top: 0.45em;
  width: 1.25em;
  height: 1.7em;
  font-size: 0.8em;
  fill: #fff;
}

.take-payment__form-container__form {
  margin-bottom: 1.5em;
}

.take-payment__form-container__buy {
  position: relative;
  margin-bottom: 1.5em;
}

.take-payment__form-container__buy__btn-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3em;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.take-payment__form-container__cards {
  margin-bottom: 1.5em;
}

.take-payment__form-container__cards__image {
  display: inline-block;
  width: 60px;
  border: 2px solid #f7f7f7;
  border-radius: 0.2em;
}

/* *********************************************************************

28b. Take Payment Online - success page

********************************************************************* */
.pay-success {
  display: flex;
  align-items: center;
  min-height: 100vh;
  padding: 2em;
}

.pay-success__inner {
  text-align: center;
  position: relative;
  width: 100%;
  max-width: 30em;
  margin: 0 auto;
  border: 4px solid #f7f7f7;
  padding: 2em;
}

.pay-success__inner__tick {
  width: 3em;
  height: 3em;
  display: block;
  margin: 0 auto;
  fill: #1271db;
  margin-bottom: 0.5em;
}

/* *********************************************************************

29. Layout section - Product

********************************************************************* */
.product__description--cropped__foot {
  display: none;
}

.product__description--cropped {
  height: 400px;
  overflow: hidden;
  border-bottom: 1px solid #aaa;
  margin-bottom: 2em;
  position: relative;
}
.product__description--cropped .product__description--cropped__foot {
  display: block;
}

.product__description--cropped__foot {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8em;
  text-align: center;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0+0,1+100 */
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00ffffff", endColorstr="#ffffff",GradientType=0 );
  /* IE6-9 */
}

.product__description--cropped__foot__btn {
  position: absolute;
  top: 60%;
  left: 50%;
  width: 10em;
  margin: 0 0 0 -5em;
  background-color: #1271db;
  padding: 0.3em;
  border-radius: 2em;
  color: #fff;
  border: 0;
}
.product__description--cropped__foot__btn:hover, .product__description--cropped__foot__btn:focus, .product__description--cropped__foot__btn:active {
  background-color: #1065c3;
}

.product__form-container__postage {
  margin-bottom: 1.5em;
}

.product__form-container__postage__label {
  display: inline-block;
  margin-right: 1em;
}

.product-images {
  position: relative;
  background: #f7f7f7;
  padding: 2.5em;
}
.product-images .slick-track {
  display: flex;
  align-items: center;
}
.product-images .carousel__module__item {
  padding: 0;
  background: #f7f7f7;
}
.product-images .chevron::before {
  width: 15px;
  height: 15px;
}

.size-animate {
  transition: 1s;
}

.changing .enlarge-animate {
  animation-duration: 4s;
  animation-name: opacity;
}

.slick-prev {
  left: -2em;
}

.slick-next {
  right: -2em;
}

.carousel__module__enlarger {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -25px;
  z-index: 1;
}

button.carousel__module__enlarger__button {
  background: rgba(0, 0, 0, 0.3);
  width: 25px;
  height: 25px;
  padding: 0;
  color: #fff;
  font-weight: bold;
  font-family: Arial;
  display: inline-block;
  vertical-align: top;
}
button.carousel__module__enlarger__button:hover, button.carousel__module__enlarger__button:focus, button.carousel__module__enlarger__button:active {
  background: rgba(0, 0, 0, 0.5);
}

button.carousel__module__enlarger__button--shrink {
  border-bottom-left-radius: 0.3em;
  margin-right: 1px;
}

button.carousel__module__enlarger__button--grow {
  border-bottom-right-radius: 0.3em;
  padding-top: 2px;
}

.small button.carousel__module__enlarger__button--shrink {
  pointer-events: none;
}

.large button.carousel__module__enlarger__button--grow {
  pointer-events: none;
}

@keyframes opacity {
  0% {
    opacity: 0;
  }
  75% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media (min-width: 768px) {
  .product-images.large {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
}
/* *********************************************************************

30. Layout section - Text with image

********************************************************************* */
.text-with-image__content__text-container p:last-child, .text-with-image__content__text-container h1:last-child, .text-with-image__content__text-container h2:last-child, .text-with-image__content__text-container h3:last-child, .text-with-image__content__text-container h4:last-child, .text-with-image__content__text-container h5:last-child, .text-with-image__content__text-container h6:last-child {
  margin-bottom: 0;
}

.text-with-image__content__image-container__image {
  display: block;
}

@media (min-width: 768px) {
  .text-with-image .group, .text-with-image .blog-feed__group {
    align-items: center;
  }
  .text-with-image .span6 {
    margin-bottom: 0;
  }

  .text-with-image__content.right .span6:last-of-type {
    order: -1;
  }
}
/* *********************************************************************

40. Loading spinner

********************************************************************* */
.loading-spinner-centerscreen {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 11;
}

.loading-spinner-centerscreen {
  position: absolute;
}

.sk-circle {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -20px 0 0 -20px;
}

.sk-circle .sk-child {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.sk-circle .sk-child:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #fff;
  border-radius: 100%;
  -webkit-animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
  animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
}

.loading-spinner-center--dark .sk-circle .sk-child:before {
  background-color: #aaa;
}

.sk-circle .sk-circle2 {
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
}

.sk-circle .sk-circle3 {
  -webkit-transform: rotate(60deg);
  -ms-transform: rotate(60deg);
  transform: rotate(60deg);
}

.sk-circle .sk-circle4 {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.sk-circle .sk-circle5 {
  -webkit-transform: rotate(120deg);
  -ms-transform: rotate(120deg);
  transform: rotate(120deg);
}

.sk-circle .sk-circle6 {
  -webkit-transform: rotate(150deg);
  -ms-transform: rotate(150deg);
  transform: rotate(150deg);
}

.sk-circle .sk-circle7 {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.sk-circle .sk-circle8 {
  -webkit-transform: rotate(210deg);
  -ms-transform: rotate(210deg);
  transform: rotate(210deg);
}

.sk-circle .sk-circle9 {
  -webkit-transform: rotate(240deg);
  -ms-transform: rotate(240deg);
  transform: rotate(240deg);
}

.sk-circle .sk-circle10 {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.sk-circle .sk-circle11 {
  -webkit-transform: rotate(300deg);
  -ms-transform: rotate(300deg);
  transform: rotate(300deg);
}

.sk-circle .sk-circle12 {
  -webkit-transform: rotate(330deg);
  -ms-transform: rotate(330deg);
  transform: rotate(330deg);
}

.sk-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

.sk-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}

.sk-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

.sk-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

.sk-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
  animation-delay: -0.7s;
}

.sk-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
}

.sk-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
}

.sk-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
  animation-delay: -0.4s;
}

.sk-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
  animation-delay: -0.3s;
}

.sk-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
  animation-delay: -0.2s;
}

.sk-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
  animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
/* *********************************************************************

    End - Print

********************************************************************* */
@media print {
  header,
nav,
footer {
    display: none;
  }

  img {
    max-width: 500px;
  }

  body {
    font: 14pt Georgia, "Times New Roman", Times, serif;
    line-height: 1.3;
  }
}
body {
  font-family: "Cabin", sans-serif;
}

.content-max-width {
  max-width: 1280px;
}

.btn, input[type=submit] {
  padding: 0.5em 1.5em;
  border-radius: 2em;
  text-transform: none;
}

.btn-primary, input[type=submit] {
  background-color: #1ab19a;
  border: 0;
  color: #fff;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, input[type=submit]:hover, input[type=submit]:focus, input[type=submit]:active {
  background-color: #15927f;
}

.no-margin-bottom {
  margin-bottom: 0;
}
.no-margin-bottom .span12 {
  margin-bottom: 0;
}

p.no-margin-bottom,
h1.no-margin-bottom,
h2.no-margin-bottom,
h3.no-margin-bottom,
h4.no-margin-bottom,
h5.no-margin-bottom,
h6.no-margin-bottom,
.no-margin-bottom {
  margin-bottom: 0;
}

p.margin-bottom1,
h1.margin-bottom1,
h2.margin-bottom1,
h3.margin-bottom1,
h4.margin-bottom1,
h5.margin-bottom1,
h6.margin-bottom1,
.margin-bottom1 {
  margin-bottom: 1rem;
}

p.margin-bottom05,
h1.margin-bottom05,
h2.margin-bottom05,
h3.margin-bottom05,
h4.margin-bottom05,
h5.margin-bottom05,
h6.margin-bottom05,
.margin-bottom05 {
  margin-bottom: 0.5rem;
}

hr {
  border: 0;
  width: 5em;
  height: 0.3em;
  background: #1ab19a;
  margin-left: 0;
}

img.small-logo {
  max-width: 6em;
  height: auto;
}

.border-radius {
  border-radius: 1.5em;
}

.fullwidth {
  width: 100%;
}

.pad.no-padding-top,
.no-padding-top {
  padding-top: 0;
}

.pad.no-padding-bottom,
.no-padding-bottom {
  padding-bottom: 0;
}

body {
  color: gray;
}

a:not(.btn), a:not(.btn):visited {
  color: gray;
}

a.accent-colour:not(.btn), a.accent-colour:not(.btn):visited {
  color: #1ab19a;
}
a.accent-colour:not(.btn):hover, a.accent-colour:not(.btn):focus, a.accent-colour:not(.btn):active, a.accent-colour:not(.btn):visited:hover, a.accent-colour:not(.btn):visited:focus, a.accent-colour:not(.btn):visited:active {
  color: #138573;
}

a.no-undernline {
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.3;
}

h1 {
  font-size: 2.5rem;
  font-weight: 700;
}

h2 {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.1;
}

h3 {
  font-size: 1.5rem;
  font-weight: 700;
}

h4 {
  font-size: 1.3rem;
  font-weight: 700;
}

h5 {
  font-size: 1.1rem;
  font-weight: 700;
}

h6 {
  font-size: 1.1rem;
  font-weight: 700;
}

blockquote {
  border: 0;
  padding-left: 0;
}

blockquote.tiktok-embed {
  margin-left: 0 !important;
  width: 325px !important;
}

.nav--standard {
  position: relative;
}

.nav__logo-container {
  width: 9em;
}

a.nav__nav__link {
  text-decoration: none;
}
a.nav__nav__link:hover, a.nav__nav__link:focus, a.nav__nav__link:active {
  color: #1ab19a;
}

a.nav__nav__link:nth-child(4) {
  color: #1ab19a;
}

.main-section,
.main-section:nth-child(odd) {
  background-color: #fff;
}

body {
  font-size: 16px;
}

@media (min-width: 768px) {
  body {
    font-size: 18px;
  }
}
.panels .panels__item {
  border: 0;
}
.panels .panels__item h1, .panels .panels__item h2, .panels .panels__item h3, .panels .panels__item h4.h5.h6, .panels .panels__item p {
  margin-bottom: 1rem;
}

.blog-ctas .panels .panels__item {
  padding: 2em;
}

.btn.blog-feed__group__item__content__readmore__btn {
  background-color: #1ab19a;
  color: #fff;
  border: 0;
}

.blog-feed__group__item {
  padding-top: 0;
  border-bottom: 0;
}

.blog-feed__group__item {
  flex-direction: column;
}

.blog-feed__group__item__thumbnail {
  margin-bottom: 0.5em;
}

.blog-feed__group__item__content__date {
  display: none;
}

a.blog-feed__group__item__content__title_h2__link {
  text-decoration: none;
  font-size: 1.5rem;
  line-height: 1.3;
  display: block;
}
a.blog-feed__group__item__content__title_h2__link:hover, a.blog-feed__group__item__content__title_h2__link:focus, a.blog-feed__group__item__content__title_h2__link:active {
  color: #1ab19a;
}

@media (min-width: 768px) {
  .main-section--post-content .span12 {
    position: relative;
  }
  .main-section--post-content .text-content {
    width: 45%;
    margin-left: 55%;
  }
  .main-section--post-content .post-thumb {
    position: absolute;
    margin-left: -50%;
    width: 45%;
  }
}
.nav__logo-container__logoimage__image {
  max-width: 12em;
}

.back_to_blog {
  margin-bottom: 1.5em;
}
@media (min-width: 768px) {
  .back_to_blog {
    margin-left: 5%;
  }
}

/*# sourceMappingURL=style.css.map */
