/*
! tailwindcss v3.3.3 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: currentColor;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
*/

html {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  font-family: Libre Franklin, sans-serif;
  /* 4 */
  font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", 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;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-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.
*/

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

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden] {
  display: none;
}

*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}

.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
  }
}

@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
  }
}

@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
  }
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.block {
  display: block;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.max-w-5xl {
  max-width: 64rem;
}

.font-title {
  font-family: Signika, sans-serif;
}

/* Unsorted */

/* Remove default Gutenberg margins from headings in the editor */

.editor-styles-wrapper h1,
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.editor-styles-wrapper h4,
.editor-styles-wrapper h5,
.editor-styles-wrapper h6 {
  margin-top: 0;
  margin-bottom: 0;
}

/* Additional specificity to override user agent stylesheet */

body .editor-styles-wrapper h1,
body .editor-styles-wrapper h2,
body .editor-styles-wrapper h3,
body .editor-styles-wrapper h4,
body .editor-styles-wrapper h5,
body .editor-styles-wrapper h6 {
  margin-top: 0;
  margin-bottom: 0;
}

/* Even more specificity */

body .editor-styles-wrapper .editor-post-title__block h1,
body .editor-styles-wrapper .editor-post-title__block h2,
body .editor-styles-wrapper .editor-post-title__block h3,
body .editor-styles-wrapper .editor-post-title__block h4,
body .editor-styles-wrapper .editor-post-title__block h5,
body .editor-styles-wrapper .editor-post-title__block h6 {
  margin-top: 0;
  margin-bottom: 0;
}

html :where(.wp-block) {
  margin-bottom: 28px;
  margin-top: 28px;
  max-width: 100%;
  font-size: 16px;
}

* {
  margin: 0;
  padding: 0;
}

/* Libre Franklin Font Family */

@font-face {
  font-family: 'Libre Franklin';

  src: url('../../../dist/fonts/LibreFranklin-Bold.woff2') format('woff2');

  font-weight: bold;

  font-style: normal;

  font-display: swap;
}

@font-face {
  font-family: 'Libre Franklin';

  src: url('../../../dist/fonts/LibreFranklin-SemiBold.woff2') format('woff2');

  font-weight: 600;

  font-style: normal;

  font-display: swap;
}

@font-face {
  font-family: 'Libre Franklin';

  src: url('../../../dist/fonts/LibreFranklin-Medium.woff2') format('woff2');

  font-weight: 500;

  font-style: normal;

  font-display: swap;
}

@font-face {
  font-family: 'Libre Franklin';

  src: url('../../../dist/fonts/LibreFranklin-Light.woff2') format('woff2');

  font-weight: 300;

  font-style: normal;

  font-display: swap;
}

@font-face {
  font-family: 'Libre Franklin';

  src: url('../../../dist/fonts/LibreFranklin-Regular.woff2') format('woff2');

  font-weight: normal;

  font-style: normal;

  font-display: swap;
}

/* Signika Font Family */

@font-face {
  font-family: 'Signika';

  src: url('../../../dist/fonts/Signika-Bold.woff2') format('woff2');

  font-weight: bold;

  font-style: normal;

  font-display: swap;
}

/* Basic Typography for Text Content */

body {
  font-family: Libre Franklin, sans-serif;
}

.font-title {
  font-weight: 700;
}

.section-title {
  margin-bottom: 3.5rem;
  text-align: center;
  font-family: Signika, sans-serif;
  font-size: 2.25rem;
  line-height: 2.5rem;
  font-weight: 700;
}

.text-content {
  margin-bottom: -1.25rem;
}

.text-content h2,
  .text-content h3,
  .text-content h4,
  .text-content h5,
  .text-content h6 {
  margin-bottom: 1.75rem;
}

.text-content h2 {
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.text-content h2 > strong {
  font-weight: 600;
}

.text-content h3 {
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-content h4 {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-content h5,
  .text-content h6 {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-content p {
  line-height: 1.5em;
}

.text-content p,
  .text-content ul,
  .text-content ol {
  margin-bottom: 1.25rem;
}

.text-content ul,
  .text-content ol {
  padding-left: 2.5rem;
}

.text-content ul {
  list-style-type: disc;
  padding-left: 1.5rem;
}

.text-content ul li {
  margin-bottom: 0.375rem;
  padding-left: 0.375rem;
}

.text-content ol {
  list-style-type: decimal;
}

.text-content a {
  text-decoration-line: underline;
  text-underline-offset: 4px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.text-content a:hover {
  text-decoration-line: underline;
}

.text-content strong,
  .text-content b {
  font-weight: 700;
}

@media (min-width: 1280px) {
  .container {
    max-width: 1440px
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 1240px
  }
}

html {
  scroll-behavior: smooth;
  --tw-text-opacity: 1;
  color: rgb(33 33 33 / var(--tw-text-opacity));
  font-size: 14px;
}

@media (min-width: 1024px) {
  html {
    font-size: 16px
  }
}

section {
  margin-bottom: 5rem;
}

/* Node Modules */

/**
 * Swiper 8.4.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 30, 2023
 */

@font-face{
  font-family:swiper-icons;

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

  font-weight:400;

  font-style:normal
}

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

.swiper{
  margin-left:auto;
  margin-right:auto;
  position:relative;
  overflow:hidden;
  list-style:none;
  padding:0;
  z-index:1
}

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

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

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

.swiper-pointer-events{
  touch-action:pan-y
}

.swiper-pointer-events.swiper-vertical{
  touch-action:pan-x
}

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

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

.swiper-autoheight,.swiper-autoheight .swiper-slide{
  height:auto
}

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

.swiper-backface-hidden .swiper-slide{
  transform:translateZ(0);
  backface-visibility:hidden
}

.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{
  perspective:1200px
}

.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{
  transform-style:preserve-3d
}

.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:10
}

.swiper-3d .swiper-slide-shadow{
  background:rgba(0,0,0,.15)
}

.swiper-3d .swiper-slide-shadow-left{
  background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-right{
  background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-top{
  background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-bottom{
  background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-css-mode>.swiper-wrapper{
  overflow:auto;
  scrollbar-width:none;
  -ms-overflow-style:none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{
  display:none
}

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

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

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

.swiper-centered>.swiper-wrapper::before{
  content:'';
  flex-shrink:0;
  order:9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{
  margin-inline-start:var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper::before{
  height:100%;
  min-height:1px;
  width:var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{
  margin-block-start:var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper::before{
  width:100%;
  min-width:1px;
  height:var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide{
  scroll-snap-align:center center;
  scroll-snap-stop:always
}

.swiper-virtual .swiper-slide{
  -webkit-backface-visibility:hidden;
  transform:translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after{
  content:'';
  position:absolute;
  left:0;
  top:0;
  pointer-events:none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{
  height:1px;
  width:var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{
  width:1px;
  height:var(--swiper-virtual-size)
}

:root{
  --swiper-navigation-size:44px
}

.swiper-button-next,.swiper-button-prev{
  position:absolute;
  top:50%;
  width:calc(var(--swiper-navigation-size)/ 44 * 27);
  height:var(--swiper-navigation-size);
  margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));
  z-index:10;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--swiper-navigation-color,var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{
  opacity:.35;
  cursor:auto;
  pointer-events:none
}

.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{
  opacity:0;
  cursor:auto;
  pointer-events:none
}

.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{
  display:none!important
}

.swiper-button-next:after,.swiper-button-prev:after{
  font-family:swiper-icons;
  font-size:var(--swiper-navigation-size);
  text-transform:none!important;
  letter-spacing:0;
  font-variant:initial;
  line-height:1
}

.swiper-button-prev,.swiper-rtl .swiper-button-next{
  left:10px;
  right:auto
}

.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{
  content:'prev'
}

.swiper-button-next,.swiper-rtl .swiper-button-prev{
  right:10px;
  left:auto
}

.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{
  content:'next'
}

.swiper-button-lock{
  display:none
}

.swiper-pagination{
  position:absolute;
  text-align:center;
  transition:.3s opacity;
  transform:translate3d(0,0,0);
  z-index:10
}

.swiper-pagination.swiper-pagination-hidden{
  opacity:0
}

.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{
  display:none!important
}

.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{
  bottom:10px;
  left:0;
  width:100%
}

.swiper-pagination-bullets-dynamic{
  overflow:hidden;
  font-size:0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
  transform:scale(.33);
  position:relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{
  transform:scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{
  transform:scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{
  transform:scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{
  transform:scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{
  transform:scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{
  transform:scale(.33)
}

.swiper-pagination-bullet{
  width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));
  height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));
  display:inline-block;
  border-radius:50%;
  background:var(--swiper-pagination-bullet-inactive-color,#000);
  opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet{
  border:none;
  margin:0;
  padding:0;
  box-shadow:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none
}

.swiper-pagination-clickable .swiper-pagination-bullet{
  cursor:pointer
}

.swiper-pagination-bullet:only-child{
  display:none!important
}

.swiper-pagination-bullet-active{
  opacity:var(--swiper-pagination-bullet-opacity, 1);
  background:var(--swiper-pagination-color,var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{
  right:10px;
  top:50%;
  transform:translate3d(0px,-50%,0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{
  margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;
  display:block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{
  top:50%;
  transform:translateY(-50%);
  width:8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
  display:inline-block;
  transition:.2s transform,.2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
  margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{
  left:50%;
  transform:translateX(-50%);
  white-space:nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
  transition:.2s transform,.2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
  transition:.2s transform,.2s right
}

.swiper-pagination-progressbar{
  background:rgba(0,0,0,.25);
  position:absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
  background:var(--swiper-pagination-color,var(--swiper-theme-color));
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  transform:scale(0);
  transform-origin:left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
  transform-origin:right top
}

.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{
  width:100%;
  height:4px;
  left:0;
  top:0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{
  width:4px;
  height:100%;
  left:0;
  top:0
}

.swiper-pagination-lock{
  display:none
}

.swiper-scrollbar{
  border-radius:10px;
  position:relative;
  -ms-touch-action:none;
  background:rgba(0,0,0,.1)
}

.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{
  display:none!important
}

.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{
  position:absolute;
  left:1%;
  bottom:3px;
  z-index:50;
  height:5px;
  width:98%
}

.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{
  position:absolute;
  right:3px;
  top:1%;
  z-index:50;
  width:5px;
  height:98%
}

.swiper-scrollbar-drag{
  height:100%;
  width:100%;
  position:relative;
  background:rgba(0,0,0,.5);
  border-radius:10px;
  left:0;
  top:0
}

.swiper-scrollbar-cursor-drag{
  cursor:move
}

.swiper-scrollbar-lock{
  display:none
}

.swiper-zoom-container{
  width:100%;
  height:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center
}

.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{
  max-width:100%;
  max-height:100%;
  -o-object-fit:contain;
  object-fit:contain
}

.swiper-slide-zoomed{
  cursor:move
}

.swiper-lazy-preloader{
  width:42px;
  height:42px;
  position:absolute;
  left:50%;
  top:50%;
  margin-left:-21px;
  margin-top:-21px;
  z-index:10;
  transform-origin:50%;
  box-sizing:border-box;
  border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));
  border-radius:50%;
  border-top-color:transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{
  animation:swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white{
  --swiper-preloader-color:#fff
}

.swiper-lazy-preloader-black{
  --swiper-preloader-color:#000
}

@keyframes swiper-preloader-spin{
  0%{
    transform:rotate(0deg)
  }

  100%{
    transform:rotate(360deg)
  }
}

.swiper .swiper-notification{
  position:absolute;
  left:0;
  top:0;
  pointer-events:none;
  opacity:0;
  z-index:-1000
}

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

.swiper-grid>.swiper-wrapper{
  flex-wrap:wrap
}

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

.swiper-fade.swiper-free-mode .swiper-slide{
  transition-timing-function:ease-out
}

.swiper-fade .swiper-slide{
  pointer-events:none;
  transition-property:opacity
}

.swiper-fade .swiper-slide .swiper-slide{
  pointer-events:none
}

.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{
  pointer-events:auto
}

.swiper-cube{
  overflow:visible
}

.swiper-cube .swiper-slide{
  pointer-events:none;
  backface-visibility:hidden;
  z-index:1;
  visibility:hidden;
  transform-origin:0 0;
  width:100%;
  height:100%
}

.swiper-cube .swiper-slide .swiper-slide{
  pointer-events:none
}

.swiper-cube.swiper-rtl .swiper-slide{
  transform-origin:100% 0
}

.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{
  pointer-events:auto
}

.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{
  pointer-events:auto;
  visibility:visible
}

.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{
  z-index:0;
  backface-visibility:hidden
}

.swiper-cube .swiper-cube-shadow{
  position:absolute;
  left:0;
  bottom:0px;
  width:100%;
  height:100%;
  opacity:.6;
  z-index:0
}

.swiper-cube .swiper-cube-shadow:before{
  content:'';
  background:#000;
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  right:0;
  filter:blur(50px)
}

.swiper-flip{
  overflow:visible
}

.swiper-flip .swiper-slide{
  pointer-events:none;
  backface-visibility:hidden;
  z-index:1
}

.swiper-flip .swiper-slide .swiper-slide{
  pointer-events:none
}

.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{
  pointer-events:auto
}

.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{
  z-index:0;
  backface-visibility:hidden
}

.swiper-creative .swiper-slide{
  backface-visibility:hidden;
  overflow:hidden;
  transition-property:transform,opacity,height
}

.swiper-cards{
  overflow:visible
}

.swiper-cards .swiper-slide{
  transform-origin:center bottom;
  backface-visibility:hidden;
  overflow:hidden
}

/* Blocks */

.hero {
  position: relative;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(246 252 255 / var(--tw-bg-opacity));
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.hero::before, .hero::after {
  z-index: 1;
}

.hero::before {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  background-size: contain;
  background-position: left top;
  background-repeat: no-repeat;
  width: 470px;
  background-image: url('../../../dist/img/hero-left.png');
}

.hero::after {
  content: '';
  position: absolute;
  bottom: 0px;
  right: 0px;
  display: none;
  height: 100%;
  background-size: contain;
  background-position: right bottom;
  background-repeat: no-repeat;
  width: 470px;
  background-image: url('../../../dist/img/hero-right.png');
}

@media (min-width: 1024px) {
  .hero::after {
    display: block;
  }
}

.hero__swiper {
  position: relative;
  z-index: 20;
  overflow: hidden;
}

.hero__slide {
  position: relative;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
}

@media (min-width: 1024px) {
  .hero__slide {
    flex-direction: row;
  }
}

.hero__title {
  margin-bottom: 2.5rem;
  font-family: Signika, sans-serif;
  font-size: 3rem;
  line-height: 1;
  font-weight: 700;
}

.hero__desc {
  margin-bottom: 4rem;
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.hero__buttons {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

@media (min-width: 768px) {
  .hero__buttons {
    flex-direction: row;
  }
}

.hero__img {
  width: 100%;
  max-width: 20rem;
  flex-shrink: 0;
}

@media (min-width: 640px) {
  .hero__img {
    max-width: 450px !important
  }
}

.offers__grid {
  margin-bottom: -2.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media (min-width: 768px) {
  .offers__grid {
    margin-left: -2.5rem;
    margin-right: -2.5rem;
  }
}

.offer-item {
  flex-basis: 100%;
  padding-bottom: 2.5rem;
  text-align: center;
}

@media (min-width: 768px) {
  .offer-item {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    flex-basis: 50%;
  }
}

@media (min-width: 1024px) {
  .offer-item {
    flex-basis: 33.333333%;
  }
}

.offer-item__img {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  max-width: 300px;
  height: 250px;
}

.offer-item__title {
  margin-bottom: 2rem;
  font-family: Signika, sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
}

.offer-item .btn {
  margin-top: 2rem;
}

.cta {
  --tw-bg-opacity: 1;
  background-color: rgb(246 252 255 / var(--tw-bg-opacity));
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  text-align: center;
}

.cta__title {
  margin-bottom: 1.5rem;
  font-family: Signika, sans-serif;
  font-size: 3rem;
  line-height: 1;
  font-weight: 700;
}

.cta__content {
  margin-left: auto;
  margin-right: auto;
  font-size: 1.25rem;
  line-height: 1.75rem;
  max-width: 740px;
}

.cta .btn {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.5rem;
}

.prices__filter {
  margin-bottom: 1.25rem;
}

.prices__label {
  margin-bottom: 1.25rem;
  font-family: Signika, sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 700;
}

.prices__options {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
}

.prices__options-item > input {
  display: none;
}

.offer-item .prices__options-item > input:not(:checked) + span {
  margin-top: 2rem;
}

.cta .prices__options-item > input:not(:checked) + span {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.5rem;
}

.price-card .prices__options-item > input:not(:checked) + span {
  width: 100%;
}

.text-image .prices__options-item > input:not(:checked) + span {
  margin-top: 2rem;
}

.prices__options-item > input:not(:checked) + span {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  border-radius: 9999px;
  border-width: 2px;
  background-color: rgb(12 153 215 / var(--tw-bg-opacity));
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 600;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
  --tw-border-opacity: 1;
  border-color: rgb(12 153 215 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(12 153 215 / var(--tw-text-opacity));
  box-shadow: 2px 2px 10px 4px rgba(0, 0, 0, 0.1);
}

.prices__options-item > input:not(:checked) + span:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-border-opacity: 1;
  border-color: rgb(0 124 178 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(0 124 178 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  box-shadow: 4px 4px 15px 4px rgba(0, 0, 0, 0.1);
}

.form--end .prices__options-item > input:not(:checked) + span {
  margin-top: 2.5rem;
  flex-shrink: 0;
}

@media (min-width: 1024px) {
  .form--end .prices__options-item > input:not(:checked) + span {
    margin-left: 2.5rem;
    margin-top: 0px;
  }
}

.header__mobile-menu > a:not(.prices__options-item > input:not(:checked) + span) {
  margin-bottom: 2rem;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  font-weight: 700;
}

.header__mobile-menu > .prices__options-item > input:not(:checked) + span {
  margin-bottom: 1.25rem;
  width: 100%;
}

.offer-item .prices__options-item > input:checked + span {
  margin-top: 2rem;
}

.cta .prices__options-item > input:checked + span {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.5rem;
}

.price-card .prices__options-item > input:checked + span {
  width: 100%;
}

.text-image .prices__options-item > input:checked + span {
  margin-top: 2rem;
}

.prices__options-item > input:checked + span {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  border-radius: 9999px;
  border-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(12 153 215 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(12 153 215 / var(--tw-bg-opacity));
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.prices__options-item > input:checked + span:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-border-opacity: 1;
  border-color: rgb(0 124 178 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(0 124 178 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  box-shadow: 4px 4px 15px 4px rgba(0, 0, 0, 0.1);
}

.form--end .prices__options-item > input:checked + span {
  margin-top: 2.5rem;
  flex-shrink: 0;
}

@media (min-width: 1024px) {
  .form--end .prices__options-item > input:checked + span {
    margin-left: 2.5rem;
    margin-top: 0px;
  }
}

.header__mobile-menu > a:not(.prices__options-item > input:checked + span) {
  margin-bottom: 2rem;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  font-weight: 700;
}

.header__mobile-menu > .prices__options-item > input:checked + span {
  margin-bottom: 1.25rem;
  width: 100%;
}

.prices__result {
  margin-bottom: -1.25rem;
  margin-top: 2.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (min-width: 768px) {
  .prices__result {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  }
}

.prices.disabled {
  pointer-events: none;
  opacity: 0.5;
}

.price-card-fix {
  flex-basis: 100%;
  padding-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .price-card-fix {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    flex-basis: 50%;
  }
}

@media (min-width: 1024px) {
  .price-card-fix {
    flex-basis: 33.333333%;
  }
}

.price-card {
  border-radius: 0.75rem;
  border-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(12 153 215 / var(--tw-border-opacity));
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.price-card .btn {
  width: 100%;
}

.price-card__title {
  margin-bottom: 0.75rem;
  text-align: center;
  font-family: Signika, sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
}

.price-card__price {
  margin-bottom: 0.75rem;
  text-align: center;
  font-family: Signika, sans-serif;
  font-size: 3rem;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(12 153 215 / var(--tw-text-opacity));
  font-weight: 700;
}

.price-card__desc-title {
  margin-bottom: 1.25rem;
  text-align: center;
  font-family: Signika, sans-serif;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 700;
}

.price-card__desc {
  margin-bottom: 2.5rem;
}

.price-card__link {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.25rem;
  display: block;
  text-align: center;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(12 153 215 / var(--tw-text-opacity));
  text-decoration-line: underline;
}

.text-image__grid {
  display: grid;
  row-gap: 5rem;
}

@media (min-width: 1024px) {
  .text-image__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8rem;
  }
}

.text-image__image > img {
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}

@media (min-width: 1024px) {
  .alt .text-image__image {
    grid-row: 1;
    grid-column: 1 / 2
  }

  .alt .text-image__text {
    grid-row: 1;
    grid-column: 2 / 3
  }
}

.text-image__title {
  text-align: left;
}

.text-image .btn {
  margin-top: 2rem;
}

.contact__grid {
  display: grid;
  row-gap: 2.5rem;
}

@media (min-width: 1024px) {
  .contact__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8rem;
  }
}

.gallery__gallery--grid {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(2, minmax(auto, 1fr));
  grid-auto-rows: 160px;
  grid-auto-flow: dense;
}

@media (min-width: 768px) {
  .gallery__gallery--grid {
    grid-template-columns: repeat(3, minmax(auto, 1fr))
  }
}

@media (min-width: 1024px) {
  .gallery__gallery--grid {
    grid-template-columns: repeat(4, minmax(auto, 1fr))
  }
}

.gallery__gallery--item {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 0.5rem;
}

.gallery__gallery--item:nth-of-type(2n) {
  grid-column: 2;
}

.gallery__gallery--item:nth-of-type(3n) {
  grid-row: span 2;
}

.gallery__gallery--item:nth-of-type(4n) {
  grid-column: span 2;
  grid-row: span 2;
}

.gallery__gallery--item > div {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: center;
}

.gallery__gallery--item > div::after {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background-color: rgb(12 153 215 / 0.3);
  opacity: 0;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.gallery__gallery--item:hover {
  animation: pulse-accent 2s infinite;
}

.gallery__gallery--item:hover > div::after {
  opacity: 1;
}

/* Components */

.btn {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  border-radius: 9999px;
  border-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(12 153 215 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(12 153 215 / var(--tw-bg-opacity));
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.btn--outline {
  --tw-border-opacity: 1;
  border-color: rgb(12 153 215 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(12 153 215 / var(--tw-text-opacity));
  box-shadow: 2px 2px 10px 4px rgba(0, 0, 0, 0.1);
}

.btn--broom::after {
  content: '';
  display: block;
  height: 1em;
  width: auto;
  aspect-ratio: 1 / 1;
  background: currentColor;
  flex-shrink: 0;
  -webkit-mask: url(../../../dist/img/icons/broom.svg) no-repeat center / cover;
  mask: url(../../../dist/img/icons/broom.svg) no-repeat center / cover;
}

.btn--arrow::after {
  content: '';
  display: block;
  height: 1em;
  width: auto;
  aspect-ratio: 1 / 1;
  background: currentColor;
  flex-shrink: 0;
  -webkit-mask: url(../../../dist/img/icons/arrow.svg) no-repeat center / cover;
  mask: url(../../../dist/img/icons/arrow.svg) no-repeat center / cover;
}

.btn:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-border-opacity: 1;
  border-color: rgb(0 124 178 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(0 124 178 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  box-shadow: 4px 4px 15px 4px rgba(0, 0, 0, 0.1);
}

.form--input {
  position: relative;
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(33 33 33 / var(--tw-border-opacity));
}

.form--input__label {
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 0px;
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  font-size: 1.125rem;
  line-height: 1.75rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.form--input__input,
    .form--input__textarea {
  width: 100%;
  border-radius: 0.5rem;
  --tw-border-opacity: 1;
  border-color: rgb(33 33 33 / var(--tw-border-opacity));
  padding-top: 2rem;
  padding-bottom: 1rem;
  font-size: 1.125rem;
  line-height: 1.75rem;
  outline: 2px solid transparent;
  outline-offset: 2px;
  outline-width: 0px;
}

.form--input__input:focus + label,
      .form--input__input.has-content + label,
      .form--input__textarea:focus + label,
      .form--input__textarea.has-content + label {
  top: 1rem;
  left: 0px;
  font-size: 0.875rem;
  line-height: 1.25rem;
  opacity: 0.6;
}

@media (min-width: 768px) {
  .form--input__textarea {
    padding-bottom: 0px;
  }
}

.form--checkbox {
  width: 100%;
}

.form--end {
  margin-top: 1.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 640px) {
  .form--end {
    flex-direction: row;
  }
}

@media (min-width: 1024px) {
  .form--end {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
  }
}

.form--end .wpcf7-spinner {
  display: none;
}

.form--end .wpcf7-list-item {
  margin: 0px;
}

.form--end .btn {
  margin-top: 2.5rem;
  flex-shrink: 0;
}

@media (min-width: 1024px) {
  .form--end .btn {
    margin-left: 2.5rem;
    margin-top: 0px;
  }
}

.wpcf7-form.submitting {
  background-color: rgb(33 33 33 / 0.1);
  opacity: 0.5;
}

.wpcf7-not-valid-tip {
  position: absolute;
  bottom: 0px;
  left: 0px;
}

.top {
  background-color: rgb(12 153 215 / 0.1);
}

.top__title {
  padding-top: 5rem;
  padding-bottom: 5rem;
  text-align: center;
  font-family: Signika, sans-serif;
  font-size: 2.25rem;
  line-height: 2.5rem;
  --tw-text-opacity: 1;
  color: rgb(12 153 215 / var(--tw-text-opacity));
  font-weight: 700;
}

.breadcrumbs {
  border-top-width: 1px;
  border-bottom-width: 1px;
  border-top-color: rgb(12 153 215 / 0.2);
  border-bottom-color: rgb(12 153 215 / 0.2);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.breadcrumbs a {
  --tw-text-opacity: 1;
  color: rgb(12 153 215 / var(--tw-text-opacity));
}

.breadcrumbs a:hover {
  --tw-text-opacity: 1;
  color: rgb(0 124 178 / var(--tw-text-opacity));
}

/* Template Parts */

.footer__inner {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  background: #f2f2f2;
}

.footer__inner > .container {
  display: grid;
  row-gap: 2.5rem;
}

@media (min-width: 1024px) {
  .footer__inner > .container {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10rem;
  }
}

.footer__title {
  margin-bottom: 1.25rem;
  display: block;
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.75rem;
}

@media (min-width: 1024px) {
  .footer__title {
    text-align: left;
  }
}

.footer__text {
  text-align: center;
}

@media (min-width: 1024px) {
  .footer__text {
    text-align: left;
  }
}

.footer__copy {
  --tw-bg-opacity: 1;
  background-color: rgb(12 153 215 / var(--tw-bg-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.footer__logo {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 135px;
}

@media (min-width: 1024px) {
  .footer__logo {
    margin-left: 0px;
    margin-right: 0px;
    max-width: 240px;
  }
}

.header {
  position: sticky;
  top: 0px;
  left: 0px;
  z-index: 50;
  width: 100%;
  background-color: transparent;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.header__nav {
  display: none;
  align-items: center;
  gap: 2rem;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 500;
}

@media (min-width: 1024px) {
  .header__nav {
    display: flex;
  }
}

.header.alt {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  background: #f2f2f2;
}

.offer-item .header .menu-item--button > a {
  margin-top: 2rem;
}

.cta .header .menu-item--button > a {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.5rem;
}

.price-card .header .menu-item--button > a {
  width: 100%;
}

.text-image .header .menu-item--button > a {
  margin-top: 2rem;
}

.header .menu-item--button > a {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  border-radius: 9999px;
  border-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(12 153 215 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(12 153 215 / var(--tw-bg-opacity));
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.header .menu-item--button > a::after {
  content: '';
  display: block;
  height: 1em;
  width: auto;
  aspect-ratio: 1 / 1;
  background: currentColor;
  flex-shrink: 0;
  -webkit-mask: url(../../../dist/img/icons/broom.svg) no-repeat center / cover;
  mask: url(../../../dist/img/icons/broom.svg) no-repeat center / cover;
}

.header .menu-item--button > a:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-border-opacity: 1;
  border-color: rgb(0 124 178 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(0 124 178 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  box-shadow: 4px 4px 15px 4px rgba(0, 0, 0, 0.1);
}

.form--end .header .menu-item--button > a {
  margin-top: 2.5rem;
  flex-shrink: 0;
}

@media (min-width: 1024px) {
  .form--end .header .menu-item--button > a {
    margin-left: 2.5rem;
    margin-top: 0px;
  }
}

.header__mobile-menu > a:not(.header .menu-item--button > a) {
  margin-bottom: 2rem;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  font-weight: 700;
}

.header__mobile-menu > .header .menu-item--button > a {
  margin-bottom: 1.25rem;
  width: 100%;
}

.header > .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header__mobile,
    .header__mobile-close {
  margin-left: 1.25rem;
  display: flex;
  height: 3rem;
  width: 3rem;
  flex-shrink: 0;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 0.25rem;
  --tw-bg-opacity: 1;
  background-color: rgb(12 153 215 / var(--tw-bg-opacity));
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.header__mobile::after, .header__mobile-close::after {
  content: '';
  pointer-events: none;
  display: block;
  height: 2.5rem;
  width: 2.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  -webkit-mask: url(../../../dist/img/icons/menu.svg) no-repeat center / contain;
  mask: url(../../../dist/img/icons/menu.svg) no-repeat center / contain;
}

.header__mobile:hover, .header__mobile-close:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 124 178 / var(--tw-bg-opacity));
}

@media (min-width: 1024px) {
  .header__mobile,
    .header__mobile-close {
    display: none;
  }
}

.header__mobile-close::after {
  -webkit-mask: url(../../../dist/img/icons/menu-close.svg) no-repeat center /
            contain;
  mask: url(../../../dist/img/icons/menu-close.svg) no-repeat center /
            contain;
}

@media (min-width: 1024px) {
  .header__mobile-close {
    display: flex;
  }
}

.header__mobile-nav {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 30;
  height: 100vh;
  width: 100%;
  max-width: 20rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

@media (min-width: 768px) {
  .header__mobile-nav {
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }
}

.header__mobile-nav:not(.active) {
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@media (min-width: 1024px) {
  .header__mobile-nav {
    display: none;
  }
}

.header__mobile-top {
  margin-bottom: 2.5rem;
  display: flex;
  justify-content: space-between;
  border-bottom-width: 1px;
  border-color: rgb(33 33 33 / 0.4);
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.header__logo > img {
  height: 4rem;
}

@media (min-width: 1280px) {
  .header__logo > img {
    height: 5rem;
  }
}

.header__mobile-menu {
  margin-left: auto;
  margin-right: auto;
  display: grid;
  max-width: 20rem;
  align-items: center;
  gap: 1.25rem;
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 600;
}

.header__mobile-menu > a:not(.btn) {
  margin-bottom: 2rem;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  font-weight: 700;
}

.header__mobile-menu > .btn {
  margin-bottom: 1.25rem;
  width: 100%;
}

.not-found {
  margin-bottom: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgb(12 153 215 / 0.1);
  padding-top: 8rem;
  padding-bottom: 8rem;
  --tw-text-opacity: 1;
  color: rgb(12 153 215 / var(--tw-text-opacity));
}

.not-found__title {
  text-align: center;
  font-family: Signika, sans-serif;
  font-size: 2.25rem;
  line-height: 2.5rem;
  font-weight: 700;
}

/* Other */

@media (min-width: 768px) {
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:gap-5 {
    gap: 1.25rem;
  }
}
