/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/.pnpm/css-loader@6.11.0_webpack@5.107.2/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/.pnpm/postcss-loader@8.2.1_postcss@8.5.15_webpack@5.107.2/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/.pnpm/sass-loader@14.2.1_sass@1.101.0_webpack@5.107.2/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/main.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
:root {
  --plyr-color-main: #555;
  --plyr-video-control-background-hover: #555;
}

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

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

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

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

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

/**
 * 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;
  font-size: 1em;
}

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

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

/**
 * 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;
  font-size: 1em;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

/**
 * 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;
  outline-offset: -2px;
}

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

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

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

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

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

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

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

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
body,
input,
select,
optgroup,
textarea {
  color: #222;
  font-family: "Roboto", sans-serif;
  font-size: 0.9em;
  line-height: 1.3;
  font-weight: 300;
}

:root {
  --plyr-color-main: #555;
  --plyr-video-control-background-hover: #555;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  margin-top: 1em;
  margin-bottom: 0.8em;
  line-height: 1.1em;
  font-weight: 300;
  font-family: "Roboto", sans-serif;
  color: #555;
}

h1 {
  font-size: clamp(2.25em, 5vw, 3.5em);
}

h2 {
  font-size: clamp(1.5em, 3vw, 2.25em);
}

h3 {
  font-size: 1.25em;
}

h4 {
  font-size: 1.13em;
}

h5 {
  font-size: 1.05em;
}

h6 {
  font-size: 1.05em;
}

:root {
  --plyr-color-main: #555;
  --plyr-video-control-background-hover: #555;
}

p {
  margin: 1em 0;
}

b, strong {
  font-weight: 700;
}

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

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  border: 1px solid #555;
  background: #ffffff;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.5;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

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

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

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

big {
  font-size: 1.25em;
}

/* Elements
--------------------------------------------- */
body {
  background: #ffffff;
}

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

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

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

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

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

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

img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

figure {
  margin: 1em 0;
}

table {
  margin: 0;
  border-collapse: collapse;
  border: 1px solid #ffffff;
}
table th {
  background-color: #eee;
  color: #ffffff;
  font-weight: 700;
  text-align: left;
}
table td, table th {
  padding: 0.5em 1em;
  border: 1px solid #ffffff;
}
table tbody tr td:nth-child(1) {
  background-color: #222;
  font-weight: 700;
}
table tbody tr td:nth-child(n+2) {
  background-color: #faf6f6;
}

/* Links
--------------------------------------------- */
a {
  color: currentColor;
  -webkit-transition: 0.2s color ease;
  transition: 0.2s color ease;
}
a:visited {
  color: currentColor;
}
a:hover, a:focus, a:active {
  color: currentColor;
}
a:focus {
  outline: 2px solid currentColor;
}
a:hover, a:active {
  outline: 0;
}

/* Forms
--------------------------------------------- */
button {
  color: currentColor;
}

.button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 1px solid;
  border-color: #555;
  border-radius: 0;
  background: transparent;
  color: #555;
  line-height: 1em;
  padding: 0.9em 2.2em 1em 2.2em;
  text-decoration: none;
  -webkit-transition: 0.1s color ease, 0.1s background-color ease-out, 0.1s border-color ease-out;
  transition: 0.1s color ease, 0.1s background-color ease-out, 0.1s border-color ease-out;
  display: inline-block;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 300;
  gap: 0.5em;
  text-align: center;
}
.button svg,
input[type=button] svg,
input[type=reset] svg,
input[type=submit] svg {
  height: 0.7em;
  width: auto;
  vertical-align: middle;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-transition: 0.1s -webkit-transform ease-out;
  transition: 0.1s -webkit-transform ease-out;
  transition: 0.1s transform ease-out;
  transition: 0.1s transform ease-out, 0.1s -webkit-transform ease-out;
}
.button svg path,
input[type=button] svg path,
input[type=reset] svg path,
input[type=submit] svg path {
  -webkit-transition: 0.1s stroke ease-out;
  transition: 0.1s stroke ease-out;
  stroke: currentColor;
}
.button:visited,
input[type=button]:visited,
input[type=reset]:visited,
input[type=submit]:visited {
  color: currentColor;
}
.button:hover, .button:focus, .button:active,
input[type=button]:hover,
input[type=button]:focus,
input[type=button]:active,
input[type=reset]:hover,
input[type=reset]:focus,
input[type=reset]:active,
input[type=submit]:hover,
input[type=submit]:focus,
input[type=submit]:active {
  background-color: #555;
  color: #ffffff;
  border-color: #555;
}
.button:hover svg, .button:focus svg, .button:active svg,
input[type=button]:hover svg,
input[type=button]:focus svg,
input[type=button]:active svg,
input[type=reset]:hover svg,
input[type=reset]:focus svg,
input[type=reset]:active svg,
input[type=submit]:hover svg,
input[type=submit]:focus svg,
input[type=submit]:active svg {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.button:hover svg path, .button:focus svg path, .button:active svg path,
input[type=button]:hover svg path,
input[type=button]:focus svg path,
input[type=button]:active svg path,
input[type=reset]:hover svg path,
input[type=reset]:focus svg path,
input[type=reset]:active svg path,
input[type=submit]:hover svg path,
input[type=submit]:focus svg path,
input[type=submit]:active svg path {
  stroke: currentColor;
}
.button.button-alt,
input[type=button].button-alt,
input[type=reset].button-alt,
input[type=submit].button-alt {
  color: #eee;
  background-color: transparent;
  border-color: #eee;
}
.button.button-alt:hover, .button.button-alt:focus, .button.button-alt:active,
input[type=button].button-alt:hover,
input[type=button].button-alt:focus,
input[type=button].button-alt:active,
input[type=reset].button-alt:hover,
input[type=reset].button-alt:focus,
input[type=reset].button-alt:active,
input[type=submit].button-alt:hover,
input[type=submit].button-alt:focus,
input[type=submit].button-alt:active {
  color: #ffffff;
  border-color: #222;
  background-color: #222;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
select,
textarea {
  border-radius: 0;
  background-color: transparent;
  padding: 0.35em 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  line-height: 1em;
  border-width: 0 0 1px 0;
  border-color: #222;
  border-style: solid;
  outline: 1px solid transparent;
  -webkit-transition: 0.1s outline ease, 0.1s border-color ease;
  transition: 0.1s outline ease, 0.1s border-color ease;
  width: 100%;
}
input[type=text]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=url]::-webkit-input-placeholder, input[type=password]::-webkit-input-placeholder, input[type=search]::-webkit-input-placeholder, input[type=number]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, input[type=range]::-webkit-input-placeholder, input[type=date]::-webkit-input-placeholder, input[type=month]::-webkit-input-placeholder, input[type=week]::-webkit-input-placeholder, input[type=time]::-webkit-input-placeholder, input[type=datetime]::-webkit-input-placeholder, input[type=datetime-local]::-webkit-input-placeholder, input[type=color]::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  font-weight: 300;
  color: #000000;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=url]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=range]::-moz-placeholder, input[type=date]::-moz-placeholder, input[type=month]::-moz-placeholder, input[type=week]::-moz-placeholder, input[type=time]::-moz-placeholder, input[type=datetime]::-moz-placeholder, input[type=datetime-local]::-moz-placeholder, input[type=color]::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  font-weight: 300;
  color: #000000;
}
input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=url]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=search]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=range]:-ms-input-placeholder, input[type=date]:-ms-input-placeholder, input[type=month]:-ms-input-placeholder, input[type=week]:-ms-input-placeholder, input[type=time]:-ms-input-placeholder, input[type=datetime]:-ms-input-placeholder, input[type=datetime-local]:-ms-input-placeholder, input[type=color]:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder {
  font-weight: 300;
  color: #000000;
}
input[type=text]::-ms-input-placeholder, input[type=email]::-ms-input-placeholder, input[type=url]::-ms-input-placeholder, input[type=password]::-ms-input-placeholder, input[type=search]::-ms-input-placeholder, input[type=number]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder, input[type=range]::-ms-input-placeholder, input[type=date]::-ms-input-placeholder, input[type=month]::-ms-input-placeholder, input[type=week]::-ms-input-placeholder, input[type=time]::-ms-input-placeholder, input[type=datetime]::-ms-input-placeholder, input[type=datetime-local]::-ms-input-placeholder, input[type=color]::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder {
  font-weight: 300;
  color: #000000;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=url]::placeholder,
input[type=password]::placeholder,
input[type=search]::placeholder,
input[type=number]::placeholder,
input[type=tel]::placeholder,
input[type=range]::placeholder,
input[type=date]::placeholder,
input[type=month]::placeholder,
input[type=week]::placeholder,
input[type=time]::placeholder,
input[type=datetime]::placeholder,
input[type=datetime-local]::placeholder,
input[type=color]::placeholder,
select::placeholder,
textarea::placeholder {
  font-weight: 300;
  color: #000000;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
select:focus,
textarea:focus {
  border-color: #555;
}

textarea {
  padding-top: 0.35em;
  padding-bottom: 0.35em;
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  accent-color: #eee;
}

label {
  margin: 0 0 0.3em 0;
  display: inline-block;
  line-height: 1.1em;
  font-size: 0.9em;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
.wrapper {
  max-width: 1680px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 3rem;
  padding-right: 3rem;
}
.wrapper.wrapper--l {
  max-width: 1280px;
}
.wrapper.wrapper--m {
  max-width: 920px;
}
.wrapper.wrapper--s {
  max-width: 640px;
}
.wrapper .wrapper {
  padding-left: 0;
  padding-right: 0;
}
@media screen and (max-width: 920px) {
  .wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width: 500px) {
  .wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media screen and (max-width: 920px) {
  section[class*=block-]:not([class*=hero]):not([class*=header]):not([class*=dark-banner]) {
    padding: 2.5em 1.5rem;
  }
}
.site-main {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
}
.site-main .wrapper {
  height: 100%;
  position: relative;
}
.site-main > article, .site-main > .wp-block-group, .site-main > section,
.site-main .wrapper > section {
  position: relative;
  z-index: 1;
}

.has-page-padding .site-main {
  padding-top: calc(4rem + 2em);
  padding-bottom: 4em;
}

.site-footer {
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 920px) {
  .desktop-only {
    display: none;
  }
}

.mobile-only {
  display: none;
}
@media screen and (max-width: 920px) {
  .mobile-only {
    display: block;
  }
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Global
--------------------------------------------- */
.site-header {
  height: 4rem;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  -webkit-transition: 0.1s background-color ease-out, 0.1s -webkit-box-shadow ease-out;
  transition: 0.1s background-color ease-out, 0.1s -webkit-box-shadow ease-out;
  transition: 0.1s box-shadow ease-out, 0.1s background-color ease-out;
  transition: 0.1s box-shadow ease-out, 0.1s background-color ease-out, 0.1s -webkit-box-shadow ease-out;
  color: #334155;
  background-color: #fff;
}
@media screen and (max-width: 920px) {
  .site-header {
    height: 4rem;
  }
}
.site-header .wrapper {
  height: 100%;
}
@media screen and (max-width: 920px) {
  .site-header .wrapper {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.site-header .header-container {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
  position: relative;
}
@media screen and (max-width: 920px) {
  .site-header .header-container {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 0.5rem;
  }
}
.site-header .header-container .site-branding {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-item-align: center;
      align-self: center;
  height: 100%;
  position: relative;
  z-index: 1;
}
.site-header .header-container .site-branding .desktop-logo,
.site-header .header-container .site-branding .mobile-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-height: 60%;
  max-width: 200px;
}
@media screen and (max-width: 1280px) {
  .site-header .header-container .site-branding .desktop-logo {
    display: none;
  }
}
.site-header .header-container .site-branding .mobile-logo {
  display: none;
}
@media screen and (max-width: 1280px) {
  .site-header .header-container .site-branding .mobile-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.site-header .header-container .site-branding a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  width: 100%;
}
.site-header .header-container .site-branding a svg,
.site-header .header-container .site-branding a img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.site-header .header-container .site-branding a:focus {
  outline: 1px solid #334155;
}
.site-header .header-container .navigation-container {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 920px) {
  .site-header .header-container .navigation-container {
    -webkit-box-flex: 0;
        -ms-flex: 0;
            flex: 0;
    min-width: 0;
    width: 0;
  }
}
.site-header .header-container .header-utility {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  z-index: 1;
  line-height: 0;
}
@media screen and (max-width: 920px) {
  .site-header .header-container .header-utility {
    margin-left: auto;
    gap: 0;
  }
}
@media screen and (max-width: 920px) {
  .site-header .header-container .header-utility__language {
    display: none;
  }
}
.site-header .header-container .header-utility .utility-link {
  width: 2.5rem;
  height: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  color: #334155;
  text-decoration: none;
  -webkit-transition: color 0.1s;
  transition: color 0.1s;
}
.site-header .header-container .header-utility .utility-link svg {
  width: 1.25rem;
  height: 1.25rem;
}
.site-header .header-container .header-utility .utility-link:hover {
  color: rgb(12.75, 16.25, 21.25);
}
.site-header .header-container .header-utility .utility-link.utility-link--cart svg {
  position: absolute;
  top: calc(50% - 0.625rem);
  left: calc(50% - 0.625rem);
}
.site-header .header-container .header-utility .cart-count {
  position: absolute;
  top: -0.25rem;
  left: 1.5rem;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 9999px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  color: #fff;
  font-size: 0.75em;
  font-weight: 600;
  line-height: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  pointer-events: none;
}
.site-header .header-container #hamburger {
  pointer-events: auto;
  height: 2.5rem;
  width: 2.5rem;
  padding: 0;
  border: 0;
  background-color: transparent;
  display: none;
  cursor: pointer;
  color: #334155;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  z-index: 1;
}
@media screen and (max-width: 920px) {
  .site-header .header-container #hamburger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.site-header .header-container #hamburger svg {
  width: 1.5rem;
  height: 1.5rem;
}
.site-header .header-container .main-navigation {
  -webkit-transition: 0.1s opacity ease-out;
  transition: 0.1s opacity ease-out;
  width: 100%;
  pointer-events: none;
}
.site-header .header-container .main-navigation .mobile-nav-close {
  display: none;
  position: fixed;
  top: 0.85em;
  bottom: auto;
  left: auto;
  right: 1.5em;
  padding: 0.25em;
  height: 3em;
  width: 3em;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  color: #334155;
}
@media screen and (max-width: 500px) {
  .site-header .header-container .main-navigation .mobile-nav-close {
    right: 0.5em;
  }
}
.site-header .header-container .main-navigation .mobile-nav-close svg {
  width: 100%;
  height: 100%;
}
.site-header .header-container .main-navigation ul {
  width: 100%;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  padding: 0;
  -webkit-column-gap: 2em;
     -moz-column-gap: 2em;
          column-gap: 2em;
  pointer-events: none;
}
.site-header .header-container .main-navigation ul * {
  pointer-events: auto;
}
.site-header .header-container .main-navigation ul li {
  position: relative;
}
.site-header .header-container .main-navigation ul li a {
  display: block;
  padding: 0.35em 0;
  text-decoration: none;
  -webkit-transition: color 0.1s;
  transition: color 0.1s;
  color: #334155;
  line-height: 1.25rem;
  text-align: center;
  height: 100%;
  font-weight: 500;
  font-size: 1.05em;
}
.site-header .header-container .main-navigation ul li a .item-title {
  position: relative;
}
.site-header .header-container .main-navigation ul li a .item-title::before {
  content: "";
  position: absolute;
  top: calc(100% - 0.1em);
  left: 0;
  width: 100%;
  height: 1px;
  background-color: transparent;
  pointer-events: none;
  -webkit-transform: translateY(-0.2em);
          transform: translateY(-0.2em);
  -webkit-transition: 0.1s background-color ease-out, 0.1s -webkit-transform ease-out;
  transition: 0.1s background-color ease-out, 0.1s -webkit-transform ease-out;
  transition: 0.1s background-color ease-out, 0.1s transform ease-out;
  transition: 0.1s background-color ease-out, 0.1s transform ease-out, 0.1s -webkit-transform ease-out;
}
.site-header .header-container .main-navigation ul li a:focus {
  outline: 1px solid #334155;
}
.site-header .header-container .main-navigation ul li a:hover .item-title::before {
  background-color: #334155;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.site-header .header-container .main-navigation ul li.current-menu-item > a {
  color: #334155;
}
.site-header .header-container .main-navigation ul li.menu-item-has-children > a {
  padding-right: 1.5rem;
}
.site-header .header-container .main-navigation ul li .menu-item-with-children {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-header .header-container .main-navigation ul li .menu-item-with-children > a {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.site-header .header-container .main-navigation ul li.menu-item-has-children.open > .menu-item-with-children .dropdown-arrow {
  -webkit-transform: scaleY(-1);
          transform: scaleY(-1);
}
.site-header .header-container .main-navigation ul li .dropdown-toggle {
  position: relative;
  width: 1.4em;
  height: 1.4em;
  padding: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.site-header .header-container .main-navigation ul li .dropdown-toggle .dropdown-arrow {
  width: 60%;
  height: auto;
  stroke: currentColor;
  -webkit-transition: -webkit-transform 0.1s ease;
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
}
.site-header .header-container .main-navigation ul li .dropdown-toggle:hover .dropdown-arrow {
  stroke: #334155;
}
.site-header .header-container .main-navigation ul ul {
  display: none;
  height: auto;
  width: auto;
}
@media screen and (min-width: 920px) {
  .site-header .header-container .main-navigation ul ul {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    background-color: #fff;
    -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    padding: 0.5em 0;
    min-width: 200px;
  }
  .site-header .header-container .main-navigation ul ul li a {
    padding: 0.6em 1.5em;
    width: 100%;
    white-space: nowrap;
    text-align: left;
    height: auto;
    -webkit-transition: background-color 0.15s ease, color 0.15s ease;
    transition: background-color 0.15s ease, color 0.15s ease;
  }
  .site-header .header-container .main-navigation ul ul li a:hover {
    background-color: rgba(51, 65, 85, 0.06);
    color: #0f172a;
  }
  .site-header .header-container .main-navigation ul ul li.current-menu-item > a {
    background-color: rgba(51, 65, 85, 0.08);
    color: #0f172a;
    font-weight: 600;
  }
  .site-header .header-container .main-navigation ul ul ul {
    z-index: 2;
    background-color: rgba(255, 255, 255, 0.95);
    grid-template-columns: 1fr;
    top: -1em;
    left: calc(100% + 1.5em);
  }
  .site-header .header-container .main-navigation ul ul li .menu-item-with-children .dropdown-toggle .dropdown-arrow {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  .site-header .header-container .main-navigation ul ul li.menu-item-has-children.open > .menu-item-with-children .dropdown-arrow {
    -webkit-transform: rotate(-90deg) scaleY(-1);
            transform: rotate(-90deg) scaleY(-1);
  }
}
.site-header .header-container .main-navigation ul li.menu-item-has-children.open > ul {
  display: block;
}
@media screen and (max-width: 920px) {
  .site-header .header-container .main-navigation {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000;
    background-color: #fff;
    display: block;
    height: 100%;
    padding: calc(4rem + 4em) 2em 1em 2em;
    overflow-y: auto;
    -webkit-transition: 0.1s opacity ease-out, 0.1s -webkit-transform ease-out;
    transition: 0.1s opacity ease-out, 0.1s -webkit-transform ease-out;
    transition: 0.1s transform ease-out, 0.1s opacity ease-out;
    transition: 0.1s transform ease-out, 0.1s opacity ease-out, 0.1s -webkit-transform ease-out;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@media screen and (max-width: 920px) and (max-width: 500px) {
  .site-header .header-container .main-navigation {
    padding: calc(4rem + 4em) 1em 1em 1em;
  }
}
@media screen and (max-width: 920px) {
  .site-header .header-container .main-navigation::after {
    content: "";
    display: block;
    width: 100%;
    height: 2em;
  }
  .site-header .header-container .main-navigation ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    height: auto;
    max-height: 100%;
    width: 100%;
  }
  .site-header .header-container .main-navigation ul li {
    width: 100%;
    font-size: 1.25em;
    margin-bottom: 0.5rem;
  }
  .site-header .header-container .main-navigation ul li .dropdown-toggle {
    background-color: rgba(51, 65, 85, 0.08);
    -webkit-transition: 0.1s background-color ease-out;
    transition: 0.1s background-color ease-out;
  }
  .site-header .header-container .main-navigation ul li .dropdown-toggle .dropdown-arrow {
    width: 40%;
    -webkit-transition: 0.1s color ease-out, 0.1s -webkit-transform ease-out;
    transition: 0.1s color ease-out, 0.1s -webkit-transform ease-out;
    transition: 0.1s color ease-out, 0.1s transform ease-out;
    transition: 0.1s color ease-out, 0.1s transform ease-out, 0.1s -webkit-transform ease-out;
  }
  .site-header .header-container .main-navigation ul li .dropdown-toggle:hover {
    background-color: #334155;
  }
  .site-header .header-container .main-navigation ul li .dropdown-toggle:hover .dropdown-arrow {
    color: #fff;
  }
  .site-header .header-container .main-navigation ul li a {
    padding: 0.7em 1em;
    background-color: rgba(51, 65, 85, 0.05);
    text-align: left;
    -webkit-transition: 0.1s color ease-out, 0.1s background-color ease-out;
    transition: 0.1s color ease-out, 0.1s background-color ease-out;
    color: #334155;
  }
  .site-header .header-container .main-navigation ul li a:hover {
    color: #fff;
    background-color: #334155;
  }
  .site-header .header-container .main-navigation ul li a::before {
    display: none;
  }
  .site-header .header-container .main-navigation ul li.current-menu-item > a,
  .site-header .header-container .main-navigation ul li.current-menu-item > .menu-item-with-children > a, .site-header .header-container .main-navigation ul li.current-menu-parent > a,
  .site-header .header-container .main-navigation ul li.current-menu-parent > .menu-item-with-children > a, .site-header .header-container .main-navigation ul li.current-menu-ancestor > a,
  .site-header .header-container .main-navigation ul li.current-menu-ancestor > .menu-item-with-children > a {
    background-color: rgba(51, 65, 85, 0.12);
    color: #0f172a;
    font-weight: 600;
  }
  .site-header .header-container .main-navigation ul li.current-menu-item > a:hover,
  .site-header .header-container .main-navigation ul li.current-menu-item > .menu-item-with-children > a:hover, .site-header .header-container .main-navigation ul li.current-menu-parent > a:hover,
  .site-header .header-container .main-navigation ul li.current-menu-parent > .menu-item-with-children > a:hover, .site-header .header-container .main-navigation ul li.current-menu-ancestor > a:hover,
  .site-header .header-container .main-navigation ul li.current-menu-ancestor > .menu-item-with-children > a:hover {
    background-color: #334155;
    color: #fff;
  }
  .site-header .header-container .main-navigation ul li.menu-item-has-children .menu-item-with-children {
    position: relative;
  }
  .site-header .header-container .main-navigation ul li.menu-item-has-children .menu-item-with-children .dropdown-toggle {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 2.8rem;
  }
  .site-header .header-container .main-navigation ul li.menu-item-has-children .dropdown-toggle {
    width: 3.5em;
    height: 3em;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 920px) and (max-width: 640px) {
  .site-header .header-container .main-navigation ul li.menu-item-has-children .dropdown-toggle {
    width: 2em;
    height: 2em;
  }
}
@media screen and (max-width: 920px) {
  .site-header .header-container .main-navigation ul li ul {
    position: static;
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    padding: 0.5rem 0 0 0.5rem;
    display: none;
    margin-top: 0;
  }
  .site-header .header-container .main-navigation ul li ul li {
    font-size: 1.05em;
    width: 100%;
  }
  .site-header .header-container .main-navigation ul li ul li .dropdown-toggle {
    background-color: rgba(51, 65, 85, 0.03);
  }
  .site-header .header-container .main-navigation ul li ul li a {
    padding: 0.9em 1.1em;
    white-space: wrap;
    font-weight: 300;
    text-align: left;
    background-color: rgba(51, 65, 85, 0.03);
  }
  .site-header .header-container .main-navigation ul li ul li.current-menu-item > a,
  .site-header .header-container .main-navigation ul li ul li.current-menu-item > .menu-item-with-children > a, .site-header .header-container .main-navigation ul li ul li.current-menu-parent > a,
  .site-header .header-container .main-navigation ul li ul li.current-menu-parent > .menu-item-with-children > a, .site-header .header-container .main-navigation ul li ul li.current-menu-ancestor > a,
  .site-header .header-container .main-navigation ul li ul li.current-menu-ancestor > .menu-item-with-children > a {
    background-color: rgba(51, 65, 85, 0.12);
    color: #0f172a;
    font-weight: 600;
  }
  .site-header .header-container .main-navigation ul li ul li.current-menu-item > a:hover,
  .site-header .header-container .main-navigation ul li ul li.current-menu-item > .menu-item-with-children > a:hover, .site-header .header-container .main-navigation ul li ul li.current-menu-parent > a:hover,
  .site-header .header-container .main-navigation ul li ul li.current-menu-parent > .menu-item-with-children > a:hover, .site-header .header-container .main-navigation ul li ul li.current-menu-ancestor > a:hover,
  .site-header .header-container .main-navigation ul li ul li.current-menu-ancestor > .menu-item-with-children > a:hover {
    background-color: #334155;
    color: #fff;
  }
  .site-header .header-container .main-navigation ul li ul li ul {
    padding-bottom: 0;
  }
  .site-header .header-container .main-navigation ul li ul li.menu-item-has-children .menu-item-with-children .dropdown-arrow {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  .site-header .header-container .main-navigation ul li ul li.menu-item-has-children.open > .menu-item-with-children .dropdown-arrow {
    -webkit-transform: rotate(0deg) scaleY(-1);
            transform: rotate(0deg) scaleY(-1);
  }
}
@media screen and (max-width: 920px) {
  .site-header.navigation-expanded .header-container .main-navigation {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@media screen and (max-width: 920px) {
  .site-header.navigation-expanded .header-container .main-navigation .mobile-nav-close {
    display: block;
  }
}

.scrolled .site-header {
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

.has-transparent-navigation .site-header {
  background-color: rgba(255, 255, 255, 0);
}
.has-transparent-navigation.scrolled .site-header {
  background-color: rgb(255, 255, 255);
}

.site-footer {
  background-color: #0f172a;
  color: #fff;
}
.site-footer a {
  color: inherit;
  text-decoration: none;
}
.site-footer a:hover {
  color: #fff;
}
.site-footer .wrapper {
  padding: 4rem 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .site-footer .wrapper {
    padding: 3rem 1.5rem;
  }
}
.site-footer .footer-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.site-footer .footer-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 920px) {
  .site-footer .footer-main {
    gap: 2rem;
    padding-bottom: 2rem;
  }
}
.site-footer .footer-brand {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  min-width: 14rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.site-footer .footer-brand .footer-logo-link {
  display: inline-block;
  margin-bottom: 1.5rem;
}
.site-footer .footer-brand .footer-logo-link img,
.site-footer .footer-brand .footer-logo-link svg {
  height: 3.125rem;
  width: auto;
}
.site-footer .footer-description {
  font-size: 1.05em;
  color: #cbd5e1;
  line-height: 1.422;
  margin: 0 0 1.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.site-footer .footer-socials .socials {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
}
.site-footer .footer-socials .social-link {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background-color: #1e293b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: background-color 0.15s;
  transition: background-color 0.15s;
}
.site-footer .footer-socials .social-link:hover {
  background-color: #334155;
}
.site-footer .footer-socials .social-link svg {
  width: 1.125rem;
  height: 1.125rem;
}
.site-footer .footer-nav {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 10rem;
}
@media screen and (max-width: 640px) {
  .site-footer .footer-nav {
    min-width: calc(50% - 1rem);
  }
}
.site-footer .footer-nav .footer-nav-heading {
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.25;
  color: #fff;
  margin: 0 0 1rem;
}
.site-footer .footer-nav .footer-nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer .footer-nav .footer-nav-list .footer-nav-item {
  margin-bottom: 0;
}
.site-footer .footer-nav .footer-nav-list .footer-nav-item a {
  font-size: 1.05em;
  display: block;
  padding: 0.375rem 0;
  color: #cbd5e1;
  line-height: 1.25;
  -webkit-transition: color 0.1s;
  transition: color 0.1s;
}
.site-footer .footer-nav .footer-nav-list .footer-nav-item a:hover {
  color: #fff;
}
.site-footer .footer-newsletter {
  border-top: 1px solid #1e293b;
  padding: 2rem 0;
}
.site-footer .footer-newsletter .footer-newsletter-content {
  margin-bottom: 1rem;
}
.site-footer .footer-newsletter .footer-newsletter-heading {
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.25;
  color: #fff;
  margin: 0 0 0.75rem;
}
.site-footer .footer-newsletter .footer-newsletter-description {
  color: #cbd5e1;
  line-height: 1.25;
  margin: 0;
}
.site-footer .footer-newsletter .footer-newsletter-form {
  max-width: 28rem;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform_wrapper {
  margin: 0;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform_heading,
.site-footer .footer-newsletter .footer-newsletter-form .gfield_label {
  display: none;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform_fields {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  gap: 0.5rem;
  grid-template-columns: none !important;
  row-gap: 0.5rem !important;
}
.site-footer .footer-newsletter .footer-newsletter-form .gfield {
  grid-column: auto !important;
}
.site-footer .footer-newsletter .footer-newsletter-form .gfield--type-email {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.site-footer .footer-newsletter .footer-newsletter-form .ginput_container_email input {
  height: 2.625rem;
  padding: 0.688rem 1.063rem;
  background-color: #1e293b;
  border: 1px solid #334155;
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  line-height: 1.25;
  width: 100% !important;
  max-width: 100% !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.site-footer .footer-newsletter .footer-newsletter-form .ginput_container_email input::-webkit-input-placeholder {
  color: #94a3b8;
}
.site-footer .footer-newsletter .footer-newsletter-form .ginput_container_email input::-moz-placeholder {
  color: #94a3b8;
}
.site-footer .footer-newsletter .footer-newsletter-form .ginput_container_email input:-ms-input-placeholder {
  color: #94a3b8;
}
.site-footer .footer-newsletter .footer-newsletter-form .ginput_container_email input::-ms-input-placeholder {
  color: #94a3b8;
}
.site-footer .footer-newsletter .footer-newsletter-form .ginput_container_email input::placeholder {
  color: #94a3b8;
}
.site-footer .footer-newsletter .footer-newsletter-form .ginput_container_email input:focus {
  outline: none;
  border-color: #0284c7;
}
.site-footer .footer-newsletter .footer-newsletter-form .gfield--type-submit {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform-button {
  height: 2.625rem !important;
  padding: 0.625rem 1.5rem !important;
  background-color: #0284c7 !important;
  border: none !important;
  border-radius: 8px !important;
  color: #fff !important;
  font-size: 1.05em !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  cursor: pointer;
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto !important;
  min-width: auto !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.15s;
  transition: background-color 0.15s;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform-button:hover {
  background-color: #0369a1 !important;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform_footer {
  display: none;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform_validation_errors {
  margin: 0 0 1rem;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform_validation_errors .gform_submission_error {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  margin: 0;
  padding: 0.75rem 1rem;
  font-size: 1.05em;
  line-height: 1.4;
  font-weight: 500;
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.25);
  color: #f87171;
  border-radius: 8px;
  font-family: inherit;
  clip: auto;
  clip-path: none;
  height: auto;
  overflow: visible;
  position: static;
  white-space: normal;
  width: auto;
}
.site-footer .footer-newsletter .footer-newsletter-form .gform_validation_errors .gform_submission_error .gform-icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0.125rem;
}
.site-footer .footer-newsletter .footer-newsletter-form .validation_message,
.site-footer .footer-newsletter .footer-newsletter-form .gfield_validation_message {
  font-size: 1.05em;
  color: #f87171;
  padding: 0.25em 0 0;
}
.site-footer .footer-newsletter .footer-newsletter-form .gfield_error input {
  border-color: rgba(239, 68, 68, 0.5);
}
.site-footer .footer-newsletter .footer-newsletter-form .gfield_error input:focus {
  border-color: #f87171;
}
@media screen and (max-width: 640px) {
  .site-footer .footer-newsletter .footer-newsletter-form .gform_fields {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }
  .site-footer .footer-newsletter .footer-newsletter-form .gform-button {
    width: 100% !important;
  }
}
.site-footer .footer-bottom {
  border-top: 1px solid #1e293b;
  padding-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.25rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 920px) {
  .site-footer .footer-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
  }
}
.site-footer .footer-copyright {
  font-size: 1.05em;
  color: #94a3b8;
  line-height: 1.6;
}
.site-footer .footer-copyright a {
  color: inherit;
  text-decoration: none;
}
.site-footer .footer-copyright a:hover {
  color: #cbd5e1;
}
.site-footer .footer-policies .footer-policies-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0 1.5rem;
  font-size: 1.05em;
  color: #94a3b8;
  line-height: 1.333;
}
@media screen and (max-width: 920px) {
  .site-footer .footer-policies .footer-policies-list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.site-footer .footer-policies .footer-policies-list .footer-policies-item {
  margin-bottom: 0;
}
.site-footer .footer-policies .footer-policies-list .footer-policies-item:not(:last-child)::after {
  content: "|";
  padding-left: 1.5rem;
  color: #334155;
}
.site-footer .footer-policies .footer-policies-list .footer-policies-item a {
  color: #94a3b8;
  -webkit-transition: color 0.1s;
  transition: color 0.1s;
}
.site-footer .footer-policies .footer-policies-list .footer-policies-item a:hover {
  color: #cbd5e1;
}

.glightbox-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999 !important;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  outline: none;
}

.glightbox-container.inactive {
  display: none;
}

.glightbox-container .gcontainer {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: hidden;
}

.glightbox-container .gslider {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  position: relative;
  overflow: hidden;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.glightbox-container .gslide {
  width: 100%;
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0;
}

.glightbox-container .gslide.current {
  opacity: 1;
  z-index: 99999;
  position: relative;
}

.glightbox-container .gslide.prev {
  opacity: 1;
  z-index: 9999;
}

.glightbox-container .gslide-inner-content {
  width: 100%;
}

.glightbox-container .ginner-container {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: 100%;
  margin: auto;
  height: 100vh;
}

.glightbox-container .ginner-container.gvideo-container {
  width: 100%;
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
  max-width: 100% !important;
}

.gslide iframe,
.gslide video {
  outline: none !important;
  border: none;
  min-height: 165px;
  -webkit-overflow-scrolling: touch;
  -ms-touch-action: auto;
  touch-action: auto;
}

.gslide:not(.current) {
  pointer-events: none;
}

.gslide-image {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.gslide-image img {
  max-height: 100vh;
  display: block;
  padding: 0;
  float: none;
  outline: none;
  border: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  max-width: 100vw;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  -ms-touch-action: none;
  touch-action: none;
  margin: auto;
  min-width: 200px;
}

.desc-top .gslide-image img,
.desc-bottom .gslide-image img {
  width: auto;
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
  width: auto;
  max-width: 100%;
}

.gslide-image img.zoomable {
  position: relative;
}

.gslide-image img.dragging {
  cursor: -webkit-grabbing !important;
  cursor: grabbing !important;
  -webkit-transition: none;
  transition: none;
}

.gslide-video {
  position: relative;
  max-width: 100vh;
  width: 100% !important;
}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
  display: none;
}

.gslide-video .gvideo-wrapper {
  width: 100%;
  /* max-width: 160vmin; */
  margin: auto;
}

.gslide-video::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 0, 0, 0.34);
  display: none;
}

.gslide-video.playing::before {
  display: none;
}

.gslide-video.fullscreen {
  max-width: 100% !important;
  min-width: 100%;
  height: 75vh;
}

.gslide-video.fullscreen video {
  max-width: 100% !important;
  width: 100% !important;
}

.gslide-inline {
  background: #fff;
  text-align: left;
  max-height: calc(100vh - 40px);
  overflow: auto;
  max-width: 100%;
  margin: auto;
}

.gslide-inline .ginlined-content {
  padding: 20px;
  width: 100%;
}

.gslide-inline .dragging {
  cursor: -webkit-grabbing !important;
  cursor: grabbing !important;
  -webkit-transition: none;
  transition: none;
}

.ginlined-content {
  overflow: auto;
  display: block !important;
  opacity: 1;
}

.gslide-external {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  min-width: 100%;
  background: #fff;
  padding: 0;
  overflow: auto;
  max-height: 75vh;
  height: 100%;
}

.gslide-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: auto;
}

.zoomed .gslide-media {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

.desc-top .gslide-media,
.desc-bottom .gslide-media {
  margin: 0 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.gslide-description {
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
}

.gslide-description.description-left,
.gslide-description.description-right {
  max-width: 100%;
}

.gslide-description.description-bottom,
.gslide-description.description-top {
  margin: 0 auto;
  width: 100%;
}

.gslide-description p {
  margin-bottom: 12px;
}

.gslide-description p:last-child {
  margin-bottom: 0;
}

.zoomed .gslide-description {
  display: none;
}

.glightbox-button-hidden {
  display: none;
}

/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/
.glightbox-mobile .glightbox-container .gslide-description {
  height: auto !important;
  width: 100%;
  position: absolute;
  bottom: 0;
  padding: 19px 11px;
  max-width: 100vw !important;
  -webkit-box-ordinal-group: 3 !important;
  -ms-flex-order: 2 !important;
  order: 2 !important;
  max-height: 78vh;
  overflow: auto !important;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.75)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
  padding-bottom: 50px;
}

.glightbox-mobile .glightbox-container .gslide-title {
  color: #fff;
  font-size: 1em;
}

.glightbox-mobile .glightbox-container .gslide-desc {
  color: #a1a1a1;
}

.glightbox-mobile .glightbox-container .gslide-desc a {
  color: #fff;
  font-weight: bold;
}

.glightbox-mobile .glightbox-container .gslide-desc * {
  color: inherit;
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
  color: #fff;
  opacity: 0.4;
}

.gdesc-open .gslide-media {
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 0.4;
}

.gdesc-open .gdesc-inner {
  padding-bottom: 30px;
}

.gdesc-closed .gslide-media {
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 1;
}

.greset {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.gabsolute {
  position: absolute;
}

.grelative {
  position: relative;
}

.glightbox-desc {
  display: none !important;
}

.glightbox-open {
  overflow: hidden;
}

.gloader {
  height: 25px;
  width: 25px;
  -webkit-animation: lightboxLoader 0.8s infinite linear;
  animation: lightboxLoader 0.8s infinite linear;
  border: 2px solid #fff;
  border-right-color: transparent;
  border-radius: 50%;
  position: absolute;
  display: block;
  z-index: 9999;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 47%;
}

.goverlay {
  width: 100%;
  height: calc(100vh + 1px);
  position: fixed;
  top: -1px;
  left: 0;
  background: #000;
  will-change: opacity;
}

.glightbox-mobile .goverlay {
  background: #000;
}

.gprev,
.gnext,
.gclose {
  z-index: 99999;
  cursor: pointer;
  width: 26px;
  height: 44px;
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.gprev svg,
.gnext svg,
.gclose svg {
  display: block;
  width: 25px;
  height: auto;
  margin: 0;
  padding: 0;
}

.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
  opacity: 0.1;
}

.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
  stroke: #fff;
}

.gbtn.focused {
  outline: 2px solid #0f3d81;
}

iframe.wait-autoplay {
  opacity: 0;
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
  opacity: 0 !important;
}

/*Skin */
.glightbox-clean .gslide-description {
  background: #fff;
}

.glightbox-clean .gdesc-inner {
  padding: 22px 20px;
}

.glightbox-clean .gslide-title {
  font-size: 1em;
  font-weight: normal;
  font-family: arial;
  color: #000;
  margin-bottom: 19px;
  line-height: 1.4em;
}

.glightbox-clean .gslide-desc {
  font-size: 0.86em;
  margin-bottom: 0;
  font-family: arial;
  line-height: 1.4em;
}

.glightbox-clean .gslide-video {
  background: #000;
}

.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
  background-color: rgba(0, 0, 0, 0.75);
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path,
.glightbox-clean .gclose path {
  fill: #fff;
}

.glightbox-clean .gprev {
  position: absolute;
  top: -100%;
  left: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gnext {
  position: absolute;
  top: -100%;
  right: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gclose {
  width: 35px;
  height: 35px;
  top: 15px;
  right: 10px;
  position: absolute;
}

.glightbox-clean .gclose svg {
  width: 18px;
  height: auto;
}

.glightbox-clean .gclose:hover {
  opacity: 1;
}

/*CSS Animations*/
.gfadeIn {
  -webkit-animation: gfadeIn 0.5s ease;
  animation: gfadeIn 0.5s ease;
}

.gfadeOut {
  -webkit-animation: gfadeOut 0.5s ease;
  animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
  -webkit-animation: gslideOutLeft 0.3s ease;
  animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
  -webkit-animation: gslideInLeft 0.3s ease;
  animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
  -webkit-animation: gslideOutRight 0.3s ease;
  animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
  -webkit-animation: gslideInRight 0.3s ease;
  animation: gslideInRight 0.3s ease;
}

.gzoomIn {
  -webkit-animation: gzoomIn 0.5s ease;
  animation: gzoomIn 0.5s ease;
}

.gzoomOut {
  -webkit-animation: gzoomOut 0.5s ease;
  animation: gzoomOut 0.5s ease;
}

@-webkit-keyframes lightboxLoader {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes lightboxLoader {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes gslideInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@-webkit-keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@-webkit-keyframes gzoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@keyframes gzoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@media (min-width: 769px) {
  .glightbox-container .ginner-container {
    width: auto;
    height: auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .glightbox-container .ginner-container.desc-top .gslide-description {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
  }
  .glightbox-container .ginner-container.desc-top .gslide-image,
  .glightbox-container .ginner-container.desc-top .gslide-image img {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .glightbox-container .ginner-container.desc-left .gslide-description {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
  }
  .glightbox-container .ginner-container.desc-left .gslide-image {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .gslide-image img {
    max-height: 97vh;
    max-width: 100%;
  }
  .gslide-image img.zoomable {
    cursor: -webkit-zoom-in;
    cursor: zoom-in;
  }
  .zoomed .gslide-image img.zoomable {
    cursor: -webkit-grab;
    cursor: grab;
  }
  .gslide-inline {
    max-height: 95vh;
  }
  .gslide-external {
    max-height: 100vh;
  }
  .gslide-description.description-left,
  .gslide-description.description-right {
    max-width: 275px;
  }
  .glightbox-open {
    height: auto;
  }
  .goverlay {
    background: rgba(0, 0, 0, 0.92);
  }
  .glightbox-clean .gslide-media {
    -webkit-box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65);
    box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65);
  }
  .glightbox-clean .description-left .gdesc-inner,
  .glightbox-clean .description-right .gdesc-inner {
    position: absolute;
    height: 100%;
    overflow-y: auto;
  }
  .glightbox-clean .gprev,
  .glightbox-clean .gnext,
  .glightbox-clean .gclose {
    background-color: rgba(0, 0, 0, 0.32);
  }
  .glightbox-clean .gprev:hover,
  .glightbox-clean .gnext:hover,
  .glightbox-clean .gclose:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
  .glightbox-clean .gprev {
    top: 45%;
  }
  .glightbox-clean .gnext {
    top: 45%;
  }
}
@media (min-width: 992px) {
  .glightbox-clean .gclose {
    opacity: 0.7;
    right: 20px;
  }
}
@media screen and (max-height: 420px) {
  .goverlay {
    background: #000;
  }
}
/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}

.post,
.page {
  margin: 0;
}

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

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

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

@media screen and (max-width: 920px) {
  .no-m-br br {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .no-s-br br {
    display: none;
  }
}

@media screen and (max-width: 500px) {
  .no-xs-br br {
    display: none;
  }
}

.error-message {
  text-align: center;
  margin-top: 2em;
}

.error-message p {
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 1.5em;
  font-weight: 700;
  color: #eee;
  text-align: center;
}

.loading-indicator {
  margin-top: 2em;
  font-size: 1.05em;
  font-weight: 400;
  color: #eee;
  text-align: center;
}

.no-posts {
  text-align: center;
  margin-top: 2em;
}
.no-posts p {
  margin: 1em 0;
}
.no-posts .no-posts-title {
  margin-top: 0;
  font-size: 1.5em;
  font-weight: 700;
  color: #eee;
}

.has-white-background-color {
  background-color: #ffffff;
}

.archive-title {
  margin-top: 0;
}

.related-posts {
  padding-top: 3em;
  padding-bottom: 3em;
}
.related-posts .related-posts-title {
  margin-top: 0;
  font-size: clamp(1.5em, 3vw, 2.25em);
  line-height: 1.2;
}
.related-posts .related-posts-button-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 3em;
}

.related-posts-container {
  margin-top: 2em;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2em 1em;
}
@media screen and (max-width: 1280px) {
  .related-posts-container {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .related-posts-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 500px) {
  .related-posts-container {
    grid-template-columns: 1fr;
  }
}

.blog-container {
  padding-top: 4em;
  padding-bottom: 4em;
  background-color: #ffffff;
}
@media screen and (max-width: 920px) {
  .blog-container {
    padding-top: 3em;
    padding-bottom: 3em;
  }
}
.blog-container .posts-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1em 1em;
}
@media screen and (max-width: 1280px) {
  .blog-container .posts-container {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .blog-container .posts-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 500px) {
  .blog-container .posts-container {
    grid-template-columns: 1fr;
  }
}
.blog-container .posts-container .loading-indicator,
.blog-container .posts-container .error-message,
.blog-container .posts-container .no-posts {
  grid-column: 1/5;
}
@media screen and (max-width: 1280px) {
  .blog-container .posts-container .loading-indicator,
  .blog-container .posts-container .error-message,
  .blog-container .posts-container .no-posts {
    grid-column: 1/4;
  }
}
@media screen and (max-width: 640px) {
  .blog-container .posts-container .loading-indicator,
  .blog-container .posts-container .error-message,
  .blog-container .posts-container .no-posts {
    grid-column: 1/3;
  }
}
@media screen and (max-width: 500px) {
  .blog-container .posts-container .loading-indicator,
  .blog-container .posts-container .error-message,
  .blog-container .posts-container .no-posts {
    grid-column: 1/2;
  }
}
.blog-container .dynamic-posts .dynamic-posts-filters {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 640px) {
  .blog-container .dynamic-posts .dynamic-posts-filters {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.post-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1em;
  margin-bottom: 3em;
}
@media screen and (max-width: 920px) {
  .post-gallery {
    gap: 0.5em;
  }
}
@media screen and (max-width: 640px) {
  .post-gallery {
    gap: 0.5em;
    grid-template-columns: repeat(3, 1fr);
  }
}
.post-gallery .post-gallery-item {
  aspect-ratio: 1;
}
.post-gallery .post-gallery-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.back-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5em;
     -moz-column-gap: 0.5em;
          column-gap: 0.5em;
  text-decoration: none;
  line-height: 1em;
  border-bottom: 1px solid #000000;
}
.back-button svg {
  height: 1em;
  width: auto;
}
.back-button svg [stroke] {
  -webkit-transition: 0.1s stroke ease-out;
  transition: 0.1s stroke ease-out;
  stroke: #000000;
}
.back-button:hover {
  color: #eee;
}
.back-button:hover svg [stroke] {
  stroke: #eee;
}

.single-content-wrapper .single-content-container {
  position: relative;
  z-index: 2;
}

.single-content-container {
  display: grid;
  padding-top: 10em;
  padding-bottom: 3em;
  grid-template-columns: 1fr 20em;
  row-gap: 3em;
}
@media screen and (max-width: 920px) {
  .single-content-container {
    grid-template-columns: 1fr;
  }
}
.single-content-container .single-content {
  padding-right: 10%;
}
.single-content-container .single-content .single-title {
  margin-top: 0.3em;
  margin-bottom: 0.2em;
}
@media screen and (max-width: 920px) {
  .single-content-container .single-content {
    padding-right: 0;
  }
}
.single-content-container .single-content > .single-content-container .single-content:first-child {
  margin-top: 0;
}
.single-content-container .single-footer {
  margin-top: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
  row-gap: 1em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.single-content-container .single-footer .post-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5em;
}
.single-content-container .single-footer .post-tags .post-tag {
  text-decoration: none;
  background-color: #555;
  color: #ffffff;
  white-space: nowrap;
  height: 1.8rem;
  line-height: 1em;
  padding: 0.3em 0.5em;
}

.share {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 0em;
     -moz-column-gap: 0em;
          column-gap: 0em;
}
.share button {
  background-color: #555;
  border: 0;
  padding: 0.1em;
  color: #ffffff;
  cursor: pointer;
  border-radius: 0;
  width: 1.8em;
  height: 1.8em;
  line-height: 1em;
  display: grid;
  place-items: center;
  text-align: center;
  -webkit-transition: 0.1s color ease-out, 0.1s background-color ease-out;
  transition: 0.1s color ease-out, 0.1s background-color ease-out;
}
.share button svg {
  height: 60%;
  width: auto;
}
.share button:hover .fillable {
  fill: #eee;
}

body.error404 .site-main {
  padding: 0;
}

.error404-section {
  min-height: 100vh;
  background: linear-gradient(135deg, #020617, #0f172a 50%, #020617);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 6rem 1.5rem 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  color: #fff;
  font-family: "Roboto", sans-serif;
}

.error404-container {
  width: 100%;
  max-width: 42rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.error404-code {
  font-size: 15rem;
  font-weight: 700;
  line-height: 15rem;
  margin-bottom: 0.5rem;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), color-stop(50%, #2dd4bf), to(#22d3ee));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf 50%, #22d3ee);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.error404-icon-circle {
  width: 8rem;
  height: 8rem;
  position: relative;
  margin-bottom: 2rem;
}
.error404-icon-circle__outer {
  position: absolute;
  inset: 0;
  border-radius: 9999px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  opacity: 0.2;
}
.error404-icon-circle__inner {
  position: absolute;
  inset: 0;
  border-radius: 9999px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
}

.error404-title {
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 1.5rem;
  color: #fff;
}
.error404-title__accent {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.error404-subtitle {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #cbd5e1;
  margin: 0 0 1rem;
  max-width: 42rem;
}

.error404-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #94a3b8;
  margin: 0 0 3rem;
  max-width: 42rem;
}

.error404-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 3rem;
}

.error404-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.75rem;
  text-decoration: none;
  border-radius: 12px;
  -webkit-transition: opacity 0.2s, background-color 0.2s, border-color 0.2s;
  transition: opacity 0.2s, background-color 0.2s, border-color 0.2s;
}
.error404-btn:hover {
  opacity: 0.9;
}
.error404-btn--primary {
  padding: calc(1rem + 1px) calc(2rem + 1px);
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6)), -webkit-gradient(linear, left top, left bottom, from(#0284c7), to(#0284c7));
  background: linear-gradient(90deg, #06b6d4, #14b8a6), linear-gradient(#0284c7, #0284c7);
  color: #fff;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.error404-btn--primary:hover {
  padding: 1rem 2rem;
  background: #1e293b;
  border: 1px solid #334155;
  color: #fff;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.error404-btn--secondary {
  padding: 1rem 2rem;
  background-color: #1e293b;
  border: 1px solid #334155;
  color: #fff;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.error404-btn--secondary:hover {
  padding: calc(1rem + 1px) calc(2rem + 1px);
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6)), -webkit-gradient(linear, left top, left bottom, from(#0284c7), to(#0284c7));
  background: linear-gradient(90deg, #06b6d4, #14b8a6), linear-gradient(#0284c7, #0284c7);
  color: #fff;
  border: none;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.error404-btn__icon {
  width: 1.125rem;
  height: 1.125rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.error404-popular {
  width: 100%;
  backdrop-filter: blur(4px);
  border-radius: 16px;
  background-color: rgba(30, 41, 59, 0.5);
  border: 1px solid rgba(51, 65, 85, 0.5);
  padding: 2.062rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.error404-popular__title {
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.4;
  color: #fff;
  margin: 0 0 1.5rem;
}
.error404-popular__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
}
.error404-popular__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  width: calc((100% - 1rem) / 2);
  font-size: 1.05em;
  line-height: 1.5rem;
  color: #cbd5e1;
  text-decoration: none;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.error404-popular__link:hover {
  color: #fff;
}
.error404-popular__icon {
  width: 1.25rem;
  height: 1.25rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@media screen and (max-width: 920px) {
  .error404-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
    max-width: 24rem;
  }
  .error404-btn {
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .error404-popular__link {
    width: 100%;
  }
  .error404-code {
    font-size: clamp(6rem, 20vw, 15rem);
    line-height: 1;
  }
}
.single-post-page {
  background: #0f172a;
  color: #cbd5e1;
}

.single-post-hero {
  position: relative;
  height: 25rem;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.single-post-hero__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
}
.single-post-hero__overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(#0f172a), color-stop(50%, rgba(15, 23, 42, 0.6)), to(transparent));
  background: linear-gradient(0deg, #0f172a, rgba(15, 23, 42, 0.6) 50%, transparent);
  z-index: 1;
}
.single-post-hero__inner {
  position: relative;
  z-index: 2;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}
.single-post-hero__breadcrumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.375rem;
  margin-bottom: 1rem;
  font-size: 1.05em;
  color: #94a3b8;
}
.single-post-hero__breadcrumbs a {
  color: #cbd5e1;
  text-decoration: none;
}
.single-post-hero__breadcrumbs a:hover {
  color: #fff;
}
.single-post-hero__breadcrumbs span:last-child {
  color: #fff;
  font-weight: 500;
}
.single-post-hero__breadcrumbs svg {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.single-post-hero__badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  background: #e0f2fe;
  color: #0369a1;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  border-radius: 9999px;
  text-decoration: none;
  margin-bottom: 1rem;
}
.single-post-hero__badge:hover {
  background: #bae6fd;
}
.single-post-hero__title {
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  color: #fff;
  margin: 0;
  max-width: 56rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media screen and (max-width: 920px) {
  .single-post-hero {
    height: 20rem;
  }
}
@media screen and (max-width: 640px) {
  .single-post-hero {
    height: 16rem;
  }
}

.single-post-body {
  padding: 3rem 0;
}

.single-post-layout {
  display: grid;
  grid-template-columns: 1fr 20rem;
  gap: 3rem;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 1280px) {
  .single-post-layout {
    grid-template-columns: 1fr;
  }
}

.single-post-main {
  min-width: 0;
}

.single-post-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding-bottom: 0.75rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid rgba(51, 65, 85, 0.5);
  font-size: 1.05em;
  color: #94a3b8;
}

.single-post-content {
  font-size: 1.05em;
  line-height: 1.625;
}
.single-post-content h2 {
  font-size: 1.5em;
  font-weight: 700;
  color: #fff;
  margin: 1.5rem 0 0.75rem;
}
.single-post-content h3, .single-post-content h4 {
  color: #fff;
  margin: 1.25rem 0 0.5rem;
}
.single-post-content p {
  margin: 0 0 1rem;
}
.single-post-content i, .single-post-content em {
  color: #67e8f9;
}
.single-post-content ul, .single-post-content ol {
  padding-left: 1.5rem;
  margin: 0 0 1rem;
}
.single-post-content li {
  margin-bottom: 0.5rem;
}
.single-post-content img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}
.single-post-content blockquote {
  border-left: 4px solid rgba(6, 182, 212, 0.5);
  padding: 0.75rem 1.25rem;
  margin: 1.5rem 0;
  font-size: 1.25em;
  font-weight: 300;
  color: rgba(103, 232, 249, 0.8);
  font-style: italic;
}
.single-post-content a {
  color: #22d3ee;
  text-decoration: none;
}
.single-post-content a:hover {
  text-decoration: underline;
}
.single-post-content .spacer {
  display: block;
  height: 0.5rem;
}

.single-post-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 2rem;
}

.single-post-tag {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  background: rgba(34, 211, 238, 0.1);
  color: #22d3ee;
  font-size: 1.05em;
  font-weight: 500;
  border-radius: 9999px;
  text-decoration: none;
  border: 1px solid rgba(34, 211, 238, 0.2);
  -webkit-transition: background 0.15s, border-color 0.15s;
  transition: background 0.15s, border-color 0.15s;
}
.single-post-tag:hover {
  background: rgba(34, 211, 238, 0.2);
  border-color: rgba(34, 211, 238, 0.4);
}

.single-post-share {
  margin-top: 2rem;
  padding-top: 2.062rem;
  border-top: 1px solid rgba(51, 65, 85, 0.5);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.single-post-share__label {
  font-size: 1.05em;
  font-weight: 500;
  color: #94a3b8;
}
.single-post-share__buttons .share {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
}
.single-post-share__buttons .share button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background: #1e293b;
  border: 1px solid #334155;
  color: #94a3b8;
  cursor: pointer;
  padding: 0;
  -webkit-transition: background 0.15s, border-color 0.15s, color 0.15s;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.single-post-share__buttons .share button:hover {
  background: #334155;
  color: #22d3ee;
}
.single-post-share__buttons .share button svg {
  width: 1.125rem;
  height: 1.125rem;
}

.single-post-sidebar {
  position: sticky;
  top: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media screen and (max-width: 1280px) {
  .single-post-sidebar {
    position: static;
  }
}
.single-post-sidebar__back {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  color: #22d3ee;
  font-size: 1.05em;
  font-weight: 500;
  text-decoration: none;
}
.single-post-sidebar__back:hover {
  text-decoration: underline;
}
.single-post-sidebar__related-title {
  font-size: 1.25em;
  font-weight: 700;
  color: #fff;
  margin: 0 0 1rem;
}
.single-post-sidebar__related-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
  text-decoration: none;
}
.single-post-sidebar__related-item:not(:last-child) {
  margin-bottom: 1.25rem;
}
.single-post-sidebar__related-item:hover .single-post-sidebar__related-name {
  color: #fff;
}
.single-post-sidebar__related-image {
  width: 5rem;
  height: 4rem;
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.single-post-sidebar__related-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}
.single-post-sidebar__related-category {
  font-size: 0.75em;
  font-weight: 500;
  color: #22d3ee;
}
.single-post-sidebar__related-name {
  font-size: 1.05em;
  font-weight: 500;
  color: #cbd5e1;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.single-post-sidebar__cta {
  background: linear-gradient(135deg, rgba(6, 182, 212, 0.1), rgba(20, 184, 166, 0.1));
  border: 1px solid rgba(6, 182, 212, 0.2);
  border-radius: 16px;
  padding: 1.562rem;
}
.single-post-sidebar__cta-title {
  font-size: 1.05em;
  font-weight: 700;
  color: #fff;
  margin: 0 0 0.5rem;
}
.single-post-sidebar__cta-desc {
  font-size: 1.05em;
  line-height: 1.45;
  color: #94a3b8;
  margin: 0 0 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.single-post-sidebar__cta-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.625rem 1.25rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.single-post-sidebar__cta-btn:hover {
  opacity: 0.9;
}

.single-post-more {
  border-top: 1px solid #1e293b;
  padding: 4rem 0;
}
.single-post-more__inner {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.single-post-more__title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  line-height: 1.2;
  font-weight: 700;
  color: #fff;
  margin: 0 0 2rem;
}
.single-post-more__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media screen and (max-width: 920px) {
  .single-post-more__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .single-post-more__grid {
    grid-template-columns: 1fr;
  }
}
.single-post-more__card {
  background: rgba(30, 41, 59, 0.5);
  border: 1px solid rgba(51, 65, 85, 0.5);
  border-radius: 16px;
  overflow: hidden;
  text-decoration: none;
  -webkit-transition: border-color 0.25s, -webkit-transform 0.25s;
  transition: border-color 0.25s, -webkit-transform 0.25s;
  transition: border-color 0.25s, transform 0.25s;
  transition: border-color 0.25s, transform 0.25s, -webkit-transform 0.25s;
}
.single-post-more__card:hover {
  border-color: rgba(34, 211, 238, 0.3);
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
.single-post-more__card-image {
  overflow: hidden;
  height: 11rem;
}
.single-post-more__card-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}
.single-post-more__card:hover .single-post-more__card-image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.single-post-more__card-body {
  padding: 1.25rem;
}
.single-post-more__card-badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  background: #e0f2fe;
  color: #0369a1;
  font-size: 0.75em;
  font-weight: 500;
  line-height: 1.25rem;
  border-radius: 9999px;
  margin-bottom: 0.75rem;
}
.single-post-more__card-title {
  font-size: 1.25em;
  font-weight: 600;
  color: #fff;
  margin: 0 0 0.5rem;
}
.single-post-more__card-excerpt {
  font-size: 0.75em;
  line-height: 1rem;
  color: #94a3b8;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.blog-body {
  background: #f8fafc;
  padding: 3rem 0 5rem;
}

.blog-page .blog-filter-bar {
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  margin-bottom: 2rem;
}
.blog-page .blog-filter-bar__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.5rem;
  max-width: 1680px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .blog-page .blog-filter-bar__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 0.75rem;
    padding: 1rem 1.5rem;
  }
}
.blog-page .blog-filter-pills {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5rem;
}
.blog-page .blog-filter-pill {
  padding: 0.5rem 1.25rem;
  border-radius: 9999px;
  border: 1px solid #e2e8f0;
  background: #fff;
  color: #475569;
  font-size: 1.05em;
  font-weight: 500;
  cursor: pointer;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
.blog-page .blog-filter-pill:hover {
  border-color: #06b6d4;
  color: #0891b2;
}
.blog-page .blog-filter-pill.is-active {
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  border-color: transparent;
  color: #fff;
  -webkit-box-shadow: 0 2px 8px rgba(6, 182, 212, 0.3);
          box-shadow: 0 2px 8px rgba(6, 182, 212, 0.3);
}
@media screen and (max-width: 920px) {
  .blog-page .blog-filter-sort {
    width: 100%;
  }
}
.blog-page .blog-filter-sort__select {
  padding: 0.5rem 2rem 0.5rem 0.75rem;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  background: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  color: #475569;
  font-size: 1.05em;
  font-weight: 500;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.blog-page .blog-filter-sort__select:focus {
  border-color: #06b6d4;
}
@media screen and (max-width: 920px) {
  .blog-page .blog-filter-sort__select {
    width: 100%;
  }
}
.blog-page .blog-layout {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.blog-page .dynamic-posts-count {
  color: #64748b;
  font-size: 1.05em;
  margin-bottom: 1.5rem;
}
.blog-page .blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1280px) {
  .blog-page .blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .blog-page .blog-grid {
    grid-template-columns: 1fr;
  }
}
.blog-page .blog-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background: #fff;
  border: 1px solid #f1f5f9;
  border-radius: 16px;
  overflow: hidden;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  -webkit-transition: border-color 0.25s, -webkit-transform 0.25s, -webkit-box-shadow 0.25s;
  transition: border-color 0.25s, -webkit-transform 0.25s, -webkit-box-shadow 0.25s;
  transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s;
  transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s, -webkit-transform 0.25s, -webkit-box-shadow 0.25s;
}
.blog-page .blog-card:hover {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  border-color: #06b6d4;
  -webkit-box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(6, 182, 212, 0.15);
          box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(6, 182, 212, 0.15);
}
.blog-page .blog-card__image {
  display: block;
  position: relative;
  height: 14rem;
  overflow: hidden;
  background: #f1f5f9;
}
.blog-page .blog-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}
.blog-card:hover .blog-page .blog-card__image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.blog-page .blog-card__image-placeholder {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  color: #94a3b8;
}
.blog-page .blog-card__badge {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  background: #e0f2fe;
  color: #0369a1;
  font-size: 0.75em;
  font-weight: 600;
  line-height: 1.25rem;
  z-index: 1;
}
.blog-page .blog-card__body {
  padding: 1.25rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.blog-page .blog-card__meta {
  margin-bottom: 0.5rem;
}
.blog-page .blog-card__date {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
  color: #64748b;
  font-size: 1.05em;
  font-weight: 400;
}
.blog-page .blog-card__title {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.35;
  margin: 0 0 0.5rem;
}
.blog-page .blog-card__title a {
  color: #0f172a;
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.blog-page .blog-card__title a:hover {
  color: #0891b2;
}
.blog-page .blog-card__excerpt {
  color: #475569;
  font-size: 1.05em;
  line-height: 1.55;
  margin: 0 0 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.blog-page .blog-card__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border-top: 1px solid #f1f5f9;
  color: #0891b2;
  font-size: 1.05em;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: color 0.15s, background 0.15s;
  transition: color 0.15s, background 0.15s;
}
.blog-page .blog-card__cta:hover {
  color: #06b6d4;
  background: rgba(6, 182, 212, 0.05);
}
.blog-page .blog-pagination {
  margin-top: 3rem;
  text-align: center;
}
.blog-page .blog-pagination .page-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 0.75rem;
  margin: 0 0.25rem;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  color: #475569;
  font-size: 1.05em;
  font-weight: 500;
  cursor: pointer;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
.blog-page .blog-pagination .page-button:hover {
  border-color: #06b6d4;
  color: #0891b2;
}
.blog-page .blog-pagination .page-button.active {
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  border-color: transparent;
  color: #fff;
}
.blog-page .blog-pagination .pagination-ellipsis {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  color: #94a3b8;
  font-size: 1.05em;
}
.blog-page .loading-indicator {
  grid-column: 1/-1;
  text-align: center;
  padding: 3rem 0;
  color: #64748b;
  font-size: 1.05em;
}

.password-form-container {
  padding-top: calc(4rem + 4em);
  padding-bottom: 4em;
}
@media screen and (max-width: 920px) {
  .password-form-container {
    padding-top: calc(4rem + 3em);
    padding-bottom: 3em;
  }
}
.password-form-container .password-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
  row-gap: 1em;
  padding: 3em 2em;
  background-color: #222;
  max-width: 30em;
  margin: 0 auto;
  font-size: 1.05em;
}
@media screen and (max-width: 640px) {
  .password-form-container .password-form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.password-form-container .password-form input {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
@media screen and (max-width: 640px) {
  .password-form-container .password-form input {
    width: 100%;
  }
}
.password-form-container .password-form .button {
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 8em;
}
@media screen and (max-width: 640px) {
  .password-form-container .password-form .button {
    width: 100%;
  }
}

body.search .site-main {
  padding: 0;
}

.search-hero.auth-hero {
  background: linear-gradient(135deg, #020617, #0f172a 50%, #020617);
}

.search-results-section {
  background: -webkit-gradient(linear, left top, left bottom, from(#0f172a), to(#020617));
  background: linear-gradient(180deg, #0f172a, #020617);
  padding: 2rem 1.5rem 6rem;
  min-height: 60vh;
}
.search-results-section .pagination-block .pagination .page-button {
  border-color: #334155;
  color: #cbd5e1;
  background-color: #1e293b;
}
.search-results-section .pagination-block .pagination .page-button:hover:not(.disabled):not(.active) {
  border-color: #06b6d4;
  color: #06b6d4;
}
.search-results-section .pagination-block .pagination .page-button.active {
  border-color: transparent;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  color: #fff;
}
.search-results-section .pagination-block .pagination .page-button.disabled {
  opacity: 0.3;
  background-color: #0f172a;
}

.search-results-container {
  max-width: 56rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}

.search-result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 2rem;
  padding: 2rem;
  backdrop-filter: blur(4px);
  border-radius: 16px;
  background-color: rgba(30, 41, 59, 0.5);
  border: 1px solid rgba(51, 65, 85, 0.5);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.search-result a {
  text-decoration: none;
}
.search-result-image {
  width: 12rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.search-result-thumbnail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 12px;
  background-color: #1e293b;
}
.search-result-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.search-result-thumbnail svg {
  width: 50%;
  height: auto;
  color: #334155;
}
.search-result-content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
}
.search-result-top {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.search-result-type {
  display: inline-block;
  padding: 0.35rem 0.75rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  line-height: 1.2;
  font-size: 1.05em;
  font-weight: 600;
  border-radius: 6px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.search-result-title {
  font-size: 1.25em;
  margin: 0.7em 0 0.4em;
  line-height: 1.4;
  color: #fff;
}
.search-result-title a {
  color: inherit;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.search-result-title a:hover {
  color: #2dd4bf;
}
.search-result-excerpt {
  font-size: 1.05em;
  color: #94a3b8;
  line-height: 1.6;
  margin: 0;
}
.search-result .button {
  font-size: 1.05em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  padding: 0.6rem 1.4rem;
  border-radius: 8px;
  background-color: #1e293b;
  border: 1px solid #334155;
  color: #cbd5e1;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: background-color 0.2s, border-color 0.2s;
  transition: background-color 0.2s, border-color 0.2s;
}
.search-result .button:hover {
  background-color: #334155;
  border-color: #475569;
}
.search-result .button svg {
  width: 1em;
  height: 1em;
}

/* ---- No results (404-inspired) ---- */
.search-no-results-section {
  min-height: 100vh;
  background: linear-gradient(135deg, #020617, #0f172a 50%, #020617);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 6rem 1.5rem 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  color: #fff;
  font-family: "Roboto", sans-serif;
}

.search-no-results-container {
  width: 100%;
  max-width: 42rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.search-no-results-icon-circle {
  width: 8rem;
  height: 8rem;
  position: relative;
  margin-bottom: 2rem;
}
.search-no-results-icon-circle__outer {
  position: absolute;
  inset: 0;
  border-radius: 9999px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  opacity: 0.2;
}
.search-no-results-icon-circle__inner {
  position: absolute;
  inset: 0;
  border-radius: 9999px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.search-no-results-icon-circle__inner svg {
  width: 2.5rem;
  height: 2.5rem;
  color: #fff;
}

.search-no-results-title {
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 1.5rem;
  color: #fff;
}
.search-no-results-title__accent {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.search-no-results-subtitle {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #94a3b8;
  margin: 0 0 3rem;
  max-width: 42rem;
}

.search-no-results-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  width: 100%;
  max-width: 36rem;
  backdrop-filter: blur(4px);
  border-radius: 16px;
  background-color: rgba(30, 41, 59, 0.5);
  border: 1px solid rgba(51, 65, 85, 0.5);
  padding: 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.search-no-results-form input[type=search] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0.75rem 1rem;
  border-radius: 8px;
  border: 1px solid #334155;
  background-color: #0f172a;
  color: #fff;
  font-size: 1.05em;
  outline: none;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.search-no-results-form input[type=search]:focus {
  border-color: #06b6d4;
}
.search-no-results-form input[type=search]::-webkit-input-placeholder {
  color: #64748b;
}
.search-no-results-form input[type=search]::-moz-placeholder {
  color: #64748b;
}
.search-no-results-form input[type=search]:-ms-input-placeholder {
  color: #64748b;
}
.search-no-results-form input[type=search]::-ms-input-placeholder {
  color: #64748b;
}
.search-no-results-form input[type=search]::placeholder {
  color: #64748b;
}
@media screen and (max-width: 640px) {
  .search-no-results-form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .search-no-results-form input {
    width: 100%;
  }
  .search-no-results-form button {
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.search-no-results-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  border-radius: 12px;
  padding: 0.75rem 1.5rem;
  border: none;
  cursor: pointer;
  -webkit-transition: opacity 0.2s, background-color 0.2s;
  transition: opacity 0.2s, background-color 0.2s;
}
.search-no-results-btn:hover {
  opacity: 0.9;
}
.search-no-results-btn--primary {
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.search-no-results-btn svg {
  width: 1.25rem;
  height: 1.25rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@media screen and (max-width: 920px) {
  .search-result {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
  .search-result-image {
    width: 100%;
    max-width: 16rem;
  }
}
@media screen and (max-width: 640px) {
  .search-result {
    padding: 1.25rem;
  }
}
.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
  margin-top: 3em;
}
.pagination .page-button {
  border: 2px solid #e2e8f0;
  padding: 0;
  min-width: 2.5rem;
  height: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #334155;
  background-color: #fff;
  font-weight: 500;
  font-size: 1.05em;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  border-radius: 8px;
  -webkit-transition: background-color 0.15s, color 0.15s, border-color 0.15s;
  transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}
.pagination .page-button.first-button, .pagination .page-button.last-button, .pagination .page-button.prev-button, .pagination .page-button.next-button {
  min-width: auto;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.pagination .page-button.disabled {
  opacity: 0.4;
  pointer-events: none;
  background-color: #f8fafc;
}
.pagination .page-button:hover:not(.disabled):not(.active) {
  border-color: #06b6d4;
  color: #06b6d4;
}
.pagination .page-button.active {
  border-color: transparent;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  color: #fff;
}

.events-hero {
  position: relative;
  isolation: isolate;
  background: linear-gradient(135deg, #0f172a, #1e293b 50%, #0f172a);
  padding: 8rem 0 5rem;
  color: #fff;
}
.events-hero__overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(15, 23, 42, 0.5)), to(#0f172a));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(15, 23, 42, 0.5) 50%, #0f172a);
  z-index: 0;
}
.events-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
.events-hero--single {
  padding: 6rem 0 4rem;
}
.events-hero--single .events-hero__inner--single {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
.events-hero__breadcrumbs {
  margin-bottom: 2rem;
}
.events-hero__breadcrumbs ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 300;
  line-height: 1.25rem;
}
.events-hero__breadcrumbs li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
.events-hero__breadcrumbs li:not(:last-child)::after {
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 0.875rem;
  height: 0.875rem;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 3L9 7L5 11' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.events-hero__breadcrumbs li a {
  color: inherit;
  text-decoration: none;
}
.events-hero__breadcrumbs li a:hover {
  text-decoration: underline;
}
.events-hero__breadcrumbs li span {
  font-weight: 700;
}
.events-hero__title {
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 1.5rem;
  color: #fff;
}
.events-hero__title--single {
  font-size: clamp(1.5em, 3vw, 2.25em);
  line-height: 1.2;
  margin: 0;
}
.events-hero__title-accent {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.events-hero__desc {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #cbd5e1;
  max-width: 48rem;
  margin: 0;
}
.events-hero__badge {
  border-radius: 9999px;
  padding: 0.375rem 1rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  letter-spacing: 0.35px;
  color: #fff;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.events-hero__badge--webinar {
  background-color: #06b6d4;
}
.events-hero__badge--workshop {
  background-color: #14b8a6;
}
.events-hero__badge--conference {
  background-color: #a855f7;
}

.events-section-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  margin-bottom: 3rem;
}
.events-section-header__icon {
  width: 3rem;
  height: 3rem;
  border-radius: 12px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.events-section-header__icon img {
  width: 1.5rem;
  height: 1.5rem;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.events-section-header--past .events-section-header__icon {
  background: linear-gradient(135deg, #475569, #334155);
}
.events-section-header__title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0;
}

.events-upcoming {
  background-color: #fff;
  padding: 5rem 0;
}
.events-upcoming__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem;
}

.events-past {
  background-color: #f8fafc;
  padding: 5rem 0;
}
.events-past__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.5rem;
}

.events-card--upcoming {
  width: calc((100% - 2rem) / 2);
  border-radius: 16px;
  background-color: #fff;
  border: 1px solid #f1f5f9;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.events-card--past {
  width: calc((100% - 3rem) / 3);
  border-radius: 12px;
  background-color: #fff;
  border: 1px solid #f1f5f9;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.events-card__image-wrap {
  position: relative;
  isolation: isolate;
  height: 16rem;
  overflow: hidden;
}
.events-card--past .events-card__image-wrap {
  height: 12rem;
}
.events-card__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.events-card__image-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(15, 23, 42, 0.4);
  z-index: 1;
}
.events-card__badge {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
  border-radius: 9999px;
  padding: 0.375rem 1rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  letter-spacing: 0.35px;
  color: #fff;
}
.events-card__badge--webinar {
  background-color: #06b6d4;
}
.events-card__badge--workshop {
  background-color: #14b8a6;
}
.events-card__badge--conference {
  background-color: #a855f7;
}
.events-card__past-badge {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
  border-radius: 9999px;
  background-color: #f1f5f9;
  padding: 0.25rem 0.75rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  color: #334155;
}
.events-card__body {
  padding: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.events-card--past .events-card__body {
  padding: 1.5rem;
}
.events-card__title {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0 0 1rem;
}
.events-card__title--small {
  font-size: 1.13em;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 0.5rem;
}
.events-card__title__title-link {
  color: inherit;
  text-decoration: none;
}
.events-card__title__title-link:hover {
  color: #0284c7;
  text-decoration: underline;
}
.events-card__title__image-link {
  display: block;
  height: 100%;
  text-decoration: none;
  color: inherit;
}
.events-card__desc {
  font-size: 1.05em;
  line-height: 1.625rem;
  color: #475569;
  margin: 0 0 1.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.events-card__desc--expanded {
  -webkit-line-clamp: unset;
  display: block;
}
.events-card__read-more {
  background: none;
  border: none;
  padding: 0;
  margin: 0 0 1.5rem;
  font-size: 1.05em;
  font-weight: 500;
  color: #0284c7;
  cursor: pointer;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.events-card__read-more:hover {
  color: #0369a1;
  text-decoration: underline;
}
.events-card__date {
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #475569;
  margin: 0 0 1rem;
}
.events-card__meta {
  margin-bottom: 1.5rem;
}
.events-card__meta-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  font-size: 1.05em;
  line-height: 1.5rem;
  color: #334155;
}
.events-card__meta-row + .events-card__meta-row {
  margin-top: 0.75rem;
}
.events-card__meta-icon {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.events-card__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  height: 3rem;
  border-radius: 8px;
  background-color: #0284c7;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5rem;
  cursor: pointer;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  -webkit-transition: background-color 0.15s;
  transition: background-color 0.15s;
  margin-top: auto;
}
.events-card__cta:hover {
  background-color: #0369a1;
}
.events-card__cta--single {
  margin-top: 1.5rem;
}
.events-card__cta-arrow {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.events-card__recording-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  color: #0891b2;
  text-decoration: none;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.events-card__recording-link:hover {
  color: #06b6d4;
}
.events-card__recording-link--single {
  font-size: 1.05em;
  line-height: 1.5rem;
  margin-top: 1.5rem;
}
.events-card__recording-arrow {
  width: 0.875rem;
  height: 0.875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.event-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
}
.event-modal.is-open {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.event-modal__overlay {
  position: fixed;
  inset: 0;
  background-color: rgba(15, 23, 42, 0.6);
  backdrop-filter: blur(4px);
}
.event-modal__content {
  position: relative;
  z-index: 1;
  max-width: 36rem;
  max-height: 90vh;
  overflow-y: auto;
  margin: auto auto 0vh;
  background-color: #fff;
  border-radius: 16px;
  padding: 3rem 2rem 2rem;
  -webkit-box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
          box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
.event-modal__close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  background: none;
  cursor: pointer;
  color: #64748b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 8px;
  -webkit-transition: background-color 0.15s;
  transition: background-color 0.15s;
}
.event-modal__close:hover {
  background-color: #f1f5f9;
}

.event-modal .gform_validation_errors {
  margin: 0 0 1.5rem 0;
}
.event-modal .gform_validation_errors ol {
  margin: 0.75rem 0 0 0;
  padding: 0 0 0 1.25rem;
}
.event-modal .gform_submission_error {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  margin: 0 0 1rem 0;
  padding: 1rem 1.25rem;
  font-size: 1.05em;
  line-height: 1.3;
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.25);
  color: #b91c1c;
  border-radius: 8px;
}
.event-modal .gform_submission_error .gform-icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.event-modal .gform_validation_error_link {
  font-size: 1.05em;
  color: #b91c1c;
  text-decoration: underline;
}
.event-modal .gform_validation_error_link:hover {
  color: #dc2626;
}

.events-single-content {
  padding: 5rem 0;
  background-color: #fff;
}

.events-single__layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.events-single__image-wrap {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%;
}
.events-single__image {
  width: 100%;
  height: auto;
  border-radius: 16px;
  -o-object-fit: cover;
     object-fit: cover;
}
.events-single__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.events-single__description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  margin-bottom: 2rem;
}
.events-single__description p {
  margin: 0 0 1rem;
}

.events-pagination {
  margin-top: 3rem;
}
.events-pagination .pagination {
  margin-top: 0;
}

@media screen and (max-width: 920px) {
  .events-hero {
    padding: 8rem 0 3rem;
  }
  .events-upcoming,
  .events-past,
  .events-single-content {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .events-card--upcoming,
  .events-card--past {
    width: 100%;
  }
  .events-single__layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .events-single__image-wrap {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
    max-width: 100%;
  }
}
.research-hero {
  position: relative;
  isolation: isolate;
  background: linear-gradient(135deg, #0f172a, #1e293b 50%, #0f172a);
  padding: 8rem 0 5rem;
  color: #fff;
}
.research-hero__overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(15, 23, 42, 0.5)), to(#0f172a));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(15, 23, 42, 0.5) 50%, #0f172a);
  z-index: 0;
}
.research-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
.research-hero__breadcrumbs {
  margin-bottom: 2rem;
}
.research-hero__breadcrumbs ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 300;
  line-height: 1.25rem;
  color: #fff;
}
.research-hero__breadcrumbs li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
.research-hero__breadcrumbs li:not(:last-child)::after {
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 0.875rem;
  height: 0.875rem;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 3L9 7L5 11' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.research-hero__breadcrumbs li a {
  color: inherit;
  text-decoration: none;
}
.research-hero__breadcrumbs li a:hover {
  text-decoration: underline;
}
.research-hero__breadcrumbs li span {
  font-weight: 700;
}
.research-hero__title {
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 1.5rem;
  color: #fff;
}
.research-hero__title-accent {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.research-hero__desc {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #cbd5e1;
  max-width: 48rem;
  margin: 0;
}

.research-filters {
  background-color: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  padding: 3rem 0;
}
.research-filters__inner {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
.research-filters__topics {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.research-filters__label {
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  color: #334155;
  display: block;
  margin-bottom: 0.5rem;
}
.research-filters__pills {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5rem;
}
.research-filters__pill {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  color: #475569;
  background-color: #fff;
  border: 1px solid #e2e8f0;
  text-decoration: none;
  -webkit-box-shadow: 0 4px 6px -4px rgba(0, 0, 0, 0.1), 0 10px 15px -3px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 6px -4px rgba(0, 0, 0, 0.1), 0 10px 15px -3px rgba(0, 0, 0, 0.1);
  -webkit-transition: background-color 0.15s, color 0.15s, border-color 0.15s;
  transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}
.research-filters__pill:hover {
  border-color: #cbd5e1;
}
.research-filters__pill--active {
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  border-color: transparent;
  color: #fff;
}
.research-filters__pill--active:hover {
  opacity: 0.9;
}
.research-filters__years {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 12rem;
          flex: 0 0 12rem;
}
.research-filters__select {
  width: 100%;
  padding: 0.562rem 1.062rem;
  border-radius: 8px;
  border: 1px solid #cbd5e1;
  background-color: #efefef;
  font-size: 1.05em;
  line-height: 1rem;
  color: #000;
  cursor: pointer;
}

.research-list {
  padding: 3.125rem 0 5rem;
}
.research-list__inner {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
.research-list__count {
  font-size: 1.05em;
  line-height: 1.5rem;
  color: #475569;
  margin-bottom: 2rem;
}
.research-list__count b {
  color: #0f172a;
}
.research-list__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
.research-list__pagination {
  padding-top: 3rem;
}

.research-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 16px;
  background-color: #fff;
  border: 1px solid #f1f5f9;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  overflow: hidden;
}
.research-card__image-wrap {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20rem;
          flex: 0 0 20rem;
  overflow: hidden;
}
.research-card__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.research-card__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.research-card__topic {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-item-align: start;
      align-self: flex-start;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  background-color: #e0f2fe;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  color: #0369a1;
  margin-bottom: 1rem;
}
.research-card__title {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0 0 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.research-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.research-card__meta-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #475569;
}
.research-card__meta-icon {
  width: 0.875rem;
  height: 0.875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.research-card__abstract {
  font-size: 1.05em;
  line-height: 1.625rem;
  color: #475569;
  margin: 0 0 1.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.research-card__footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  padding-top: 1.5rem;
  border-top: 1px solid #f1f5f9;
  margin-top: auto;
}
.research-card__doi {
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #64748b;
}
.research-card__doi-value {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  color: #0891b2;
}
.research-card__cta {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1.5rem;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5rem;
  text-decoration: none;
  margin-left: auto;
  -webkit-transition: opacity 0.15s;
  transition: opacity 0.15s;
}
.research-card__cta:hover {
  opacity: 0.9;
}
.research-card__cta-arrow {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@media screen and (max-width: 920px) {
  .research-hero {
    padding: 8rem 0 3rem;
  }
  .research-filters__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .research-filters__years {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
    width: 100%;
  }
  .research-card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .research-card__image-wrap {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    height: 14rem;
  }
  .research-card__cta {
    margin-left: 0;
  }
}
/* Blocks
--------------------------------------------- */
.has-text-align-center {
  text-align: center;
}

.block-cwi {
  padding: 4em 0;
}
.block-cwi a:not(.button) {
  color: #eee;
}
.block-cwi .cwi-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 3em;
}
@media screen and (max-width: 920px) {
  .block-cwi .cwi-container {
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.block-cwi .cwi-container .cwi-image {
  width: 40%;
}
@media screen and (max-width: 920px) {
  .block-cwi .cwi-container .cwi-image {
    width: 100%;
  }
}
.block-cwi .cwi-container .cwi-content {
  width: 60%;
  padding: 2em 10% 2em 0;
}
.block-cwi .cwi-container .cwi-content .cwi-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 3em;
     -moz-column-gap: 3em;
          column-gap: 3em;
  row-gap: 1em;
  margin-top: 2em;
}
.block-cwi .cwi-container .cwi-content .cwi-buttons .button {
  border-color: #222;
  color: #222;
}
.block-cwi .cwi-container .cwi-content .cwi-buttons .button:hover, .block-cwi .cwi-container .cwi-content .cwi-buttons .button:focus, .block-cwi .cwi-container .cwi-content .cwi-buttons .button:active {
  border-color: #555;
  background-color: #555;
  color: #ffffff;
}
@media screen and (max-width: 920px) {
  .block-cwi .cwi-container .cwi-content {
    padding: 0;
    width: 100%;
  }
}
.block-cwi .cwi-container .cwi-content > *:first-child {
  margin-top: 0;
}
.block-cwi .cwi-container .cwi-content > *:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 920px) {
  .block-cwi.content-position-left .cwi-content {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .block-cwi.content-position-left .cwi-content h2 {
    text-align: left !important;
  }
  .block-cwi.content-position-left .cwi-image {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.block-cwi.content-position-right .cwi-content {
  padding-right: 0;
  padding-left: 10%;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (max-width: 920px) {
  .block-cwi.content-position-right .cwi-content {
    padding-left: 0;
  }
}
.block-cwi.content-position-right .cwi-image {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.block-cwi.image-ratio-square .cwi-container {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.block-cwi.image-ratio-square .cwi-container .cwi-content {
  padding-top: 0;
  padding-bottom: 0;
}
.block-cwi.image-ratio-square .cwi-image-container {
  aspect-ratio: 1;
}
.block-cwi.image-ratio-square .cwi-image-container img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
@media screen and (max-width: 920px) {
  .block-cwi.image-ratio-square .cwi-image-container {
    aspect-ratio: 1.5;
  }
}
@media screen and (max-width: 640px) {
  .block-cwi.image-ratio-square .cwi-image-container {
    aspect-ratio: 1;
  }
}
.block-cwi.image-ratio-match .cwi-container {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.block-cwi.image-ratio-match .cwi-image {
  height: auto;
}
.block-cwi.image-ratio-match .cwi-image-container {
  width: 100%;
  height: 100%;
  aspect-ratio: unset;
  position: relative;
}
.block-cwi.image-ratio-match .cwi-image-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
@media screen and (max-width: 920px) {
  .block-cwi.image-ratio-match .cwi-container {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .block-cwi.image-ratio-match .cwi-image {
    width: 100%;
  }
  .block-cwi.image-ratio-match .cwi-image-container {
    aspect-ratio: 1.5;
  }
}
@media screen and (max-width: 500px) {
  .block-cwi.image-ratio-match .cwi-image-container {
    aspect-ratio: 1;
  }
}

.block-contact {
  background-color: #eee;
  padding: 4em 0;
}
.block-contact .wrapper {
  padding-left: 0;
  padding-right: 0;
}
.block-contact .section-title {
  margin-top: 0;
  color: #555;
}
.block-contact .contact-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 920px) {
  .block-contact .contact-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.block-contact .contact-content {
  width: 50%;
}
@media screen and (max-width: 920px) {
  .block-contact .contact-content {
    width: 100%;
    aspect-ratio: 1.5;
  }
}
@media screen and (max-width: 640px) {
  .block-contact .contact-content {
    width: 100%;
    aspect-ratio: 1;
  }
}
.block-contact .contact-content .map-container {
  height: 100%;
}
.block-contact .contact-content .map-container .acf-map {
  width: 100%;
  height: 100%;
}
.block-contact .contact-forms {
  width: 50%;
  padding: 3em 8%;
}
@media screen and (max-width: 920px) {
  .block-contact .contact-forms {
    width: 100%;
  }
}
.block-contact .contact-forms .contact-description > *:first-child {
  margin-top: 0;
}
.block-contact .contact-forms .contact-description > *:last-child {
  margin-bottom: 0;
}
.block-contact .contact-forms .contact-form {
  margin-top: 2em;
}
.block-contact .contact-forms .contact-form .button {
  border-color: #222;
  color: #222;
}
.block-contact .contact-forms .contact-form .button:hover, .block-contact .contact-forms .contact-form .button:focus, .block-contact .contact-forms .contact-form .button:active {
  border-color: #555;
  background-color: #555;
  color: #ffffff;
}

.block-contact-content {
  padding: 4em 0;
  background-color: #0f172a;
  color: #fff;
  font-family: "Roboto", sans-serif;
}
@media screen and (max-width: 920px) {
  .block-contact-content {
    padding: 3.5rem 0;
  }
}
.block-contact-content .contact-content-inner {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 3rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-content-inner {
    padding: 0;
  }
}
.block-contact-content .contact-content-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  gap: 3rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-content-grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
.block-contact-content .contact-info-column {
  width: 23.669rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-info-column {
    width: 100%;
  }
}
.block-contact-content .contact-info-card,
.block-contact-content .contact-social-card {
  backdrop-filter: blur(24px);
  border-radius: 16px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 2.062rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-info-card,
  .block-contact-content .contact-social-card {
    padding: 1.5rem;
  }
}
.block-contact-content .contact-info-card-icon {
  padding-bottom: 1.5rem;
}
.block-contact-content .contact-info-card-icon .contact-info-card-icon-box {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 12px;
  background: linear-gradient(135deg, #22d3ee, #14b8a6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.block-contact-content .contact-info-card-icon .contact-info-card-icon-box img {
  width: 1.5rem;
  height: 1.5rem;
}
.block-contact-content .contact-info-card:nth-child(2) .contact-info-card-icon-box {
  background: linear-gradient(135deg, #2dd4bf, #10b981);
}
.block-contact-content .contact-info-card:nth-child(3) .contact-info-card-icon-box {
  background: linear-gradient(135deg, #34d399, #06b6d4);
}
.block-contact-content .contact-info-card-title {
  margin: 0 0 0.75rem;
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.4;
  color: #fff;
}
.block-contact-content .contact-info-card-lines {
  font-size: 1.05em;
  line-height: 1.625rem;
  color: rgba(255, 255, 255, 0.7);
}
.block-contact-content .contact-social-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
.block-contact-content .contact-social-links .contact-social-link {
  width: 3rem;
  height: 3rem;
  border-radius: 12px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-decoration: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.block-contact-content .contact-social-links .contact-social-link:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
.block-contact-content .contact-social-links .contact-social-link img {
  width: 1.25rem;
  height: 1.25rem;
}
.block-contact-content .contact-form-column {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-form-column {
    width: 100%;
  }
}
.block-contact-content .contact-form-card {
  backdrop-filter: blur(24px);
  border-radius: 16px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 2.562rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-form-card {
    padding: 1.5rem;
  }
}
.block-contact-content .contact-form-title {
  margin: 0 0 0.5rem;
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.block-contact-content .contact-form-subtitle {
  margin: 0 0 2rem;
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.6);
}
.block-contact-content .contact-form-content .gform_wrapper {
  --gf-color-primary: #22d3ee;
  --gf-color-primary-rgb: 34, 211, 238;
  --gf-color-primary-contrast: #fff;
  --gf-ctrl-label-color-primary: #fff;
  --gf-ctrl-label-color-secondary: rgba(255, 255, 255, 0.7);
  --gf-color-in-ctrl-contrast: #fff;
  --gf-color-out-ctrl-dark: rgba(255, 255, 255, 0.5);
  --gf-color-out-ctrl-light: rgba(255, 255, 255, 0.1);
  --gf-color-secondary: transparent;
  --gf-ctrl-border-color: rgba(255, 255, 255, 0.2);
  --gf-ctrl-size: 3.125rem;
  --gf-ctrl-btn-size: 3.5rem;
  --gf-ctrl-btn-font-size: 1.05em;
  --gf-ctrl-btn-padding-x: 1.5rem;
  --gf-radius: 12px;
  --gf-ctrl-bg-color: rgba(255, 255, 255, 0.05);
  --gf-ctrl-bg-color-hover: rgba(255, 255, 255, 0.08);
  --gf-ctrl-bg-color-focus: rgba(255, 255, 255, 0.05);
  --gf-ctrl-border-color-focus: rgba(255, 255, 255, 0.4);
  --gf-ctrl-desc-color: rgba(255, 255, 255, 0.5);
  --gf-ctrl-placeholder-color: rgba(255, 255, 255, 0.4);
  margin: 0;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield,
.block-contact-content .contact-form-content .gform_wrapper .gfield {
  margin-bottom: 1.5rem;
  border: none;
  padding: 0;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .gfield_label,
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield legend.gfield_label,
.block-contact-content .contact-form-content .gform_wrapper .gfield .gfield_label,
.block-contact-content .contact-form-content .gform_wrapper .gfield legend.gfield_label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  margin-bottom: 0.5rem;
  color: #fff;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .gfield_label .gfield_required,
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield legend.gfield_label .gfield_required,
.block-contact-content .contact-form-content .gform_wrapper .gfield .gfield_label .gfield_required,
.block-contact-content .contact-form-content .gform_wrapper .gfield legend.gfield_label .gfield_required {
  color: #f87171;
  margin-left: 0.125rem;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .gfield_description,
.block-contact-content .contact-form-content .gform_wrapper .gfield .gfield_description {
  font-size: 1.05em;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 0.5rem;
  padding: 0;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container select,
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container select,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea {
  width: 100%;
  border-radius: 12px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 0.812rem 1.062rem;
  font-size: 1.05em;
  font-family: "Roboto", sans-serif;
  color: #fff;
  outline: none;
  -webkit-transition: border-color 0.2s;
  transition: border-color 0.2s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-height: 3.125rem;
  line-height: 1.5;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::-webkit-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container select::-webkit-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea::-webkit-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::-webkit-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container select::-webkit-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::-moz-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container select::-moz-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea::-moz-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::-moz-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container select::-moz-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio]):-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container select:-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea:-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio]):-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container select:-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container select::-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea::-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container select::-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::placeholder,
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container select::placeholder,
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea::placeholder,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio])::placeholder,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container select::placeholder,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea::placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio]):focus,
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container select:focus,
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea:focus,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container input:not([type=submit]):not([type=checkbox]):not([type=radio]):focus,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container select:focus,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea:focus {
  border-color: rgba(255, 255, 255, 0.4);
  background-color: rgba(255, 255, 255, 0.05);
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_container textarea,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_container textarea {
  min-height: 10.625rem;
  resize: vertical;
}
.block-contact-content .contact-form-content .gform_wrapper fieldset.gfield .ginput_counter,
.block-contact-content .contact-form-content .gform_wrapper .gfield .ginput_counter {
  font-size: 1.05em;
  color: rgba(255, 255, 255, 0.5);
  margin-top: 0.5rem;
}
.block-contact-content .contact-form-content .gform_wrapper .gfield--width-half {
  width: calc(50% - 0.75rem);
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 0;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name,
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name label,
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email label {
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  margin-bottom: 0.5rem;
  color: #fff;
  display: block;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name input,
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email input {
  width: 100%;
  border-radius: 12px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 0.812rem 1.062rem;
  font-size: 1.05em;
  font-family: "Roboto", sans-serif;
  color: #fff;
  outline: none;
  -webkit-transition: border-color 0.2s;
  transition: border-color 0.2s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-height: 3.125rem;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name input::-webkit-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name input::-moz-placeholder, .block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name input:-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name input::-ms-input-placeholder, .block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email input::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name input::placeholder,
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email input::placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_name input:focus,
.block-contact-content .contact-form-content .gform_wrapper .ginput_complex .ginput_container_email input:focus {
  border-color: rgba(255, 255, 255, 0.4);
}
.block-contact-content .contact-form-content .gform_wrapper .gform_footer {
  padding: 1.5rem 0 0;
  margin: 0;
}
.block-contact-content .contact-form-content .gform_wrapper .gform_footer .gform_button {
  width: 100%;
  height: 3.5rem;
  border-radius: 12px;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), color-stop(50%, #2dd4bf), to(#34d399));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf 50%, #34d399);
  border: none;
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  font-family: "Roboto", sans-serif;
  line-height: 1.5;
  cursor: pointer;
  -webkit-box-shadow: 0 1px 2px rgba(6, 182, 212, 0.2);
          box-shadow: 0 1px 2px rgba(6, 182, 212, 0.2);
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1rem 1.5rem;
}
.block-contact-content .contact-form-content .gform_wrapper .gform_footer .gform_button:hover {
  opacity: 0.9;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), color-stop(50%, #2dd4bf), to(#34d399));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf 50%, #34d399);
}
.block-contact-content .contact-form-content .gform_wrapper br {
  display: none;
}
.block-contact-content .contact-form-content .wpcf7-form label {
  display: block;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  margin-bottom: 0.5rem;
  color: #fff;
}
.block-contact-content .contact-form-content .wpcf7-form label .required {
  color: #f87171;
}
.block-contact-content .contact-form-content .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.block-contact-content .contact-form-content .wpcf7-form select,
.block-contact-content .contact-form-content .wpcf7-form textarea {
  width: 100%;
  border-radius: 12px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 0.812rem 1.062rem;
  font-size: 1.05em;
  font-family: "Roboto", sans-serif;
  color: #fff;
  outline: none;
  -webkit-transition: border-color 0.2s;
  transition: border-color 0.2s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-height: 3.125rem;
}
.block-contact-content .contact-form-content .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio])::-webkit-input-placeholder, .block-contact-content .contact-form-content .wpcf7-form select::-webkit-input-placeholder, .block-contact-content .contact-form-content .wpcf7-form textarea::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio])::-moz-placeholder, .block-contact-content .contact-form-content .wpcf7-form select::-moz-placeholder, .block-contact-content .contact-form-content .wpcf7-form textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):-ms-input-placeholder, .block-contact-content .contact-form-content .wpcf7-form select:-ms-input-placeholder, .block-contact-content .contact-form-content .wpcf7-form textarea:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio])::-ms-input-placeholder, .block-contact-content .contact-form-content .wpcf7-form select::-ms-input-placeholder, .block-contact-content .contact-form-content .wpcf7-form textarea::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio])::placeholder,
.block-contact-content .contact-form-content .wpcf7-form select::placeholder,
.block-contact-content .contact-form-content .wpcf7-form textarea::placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}
.block-contact-content .contact-form-content .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):focus,
.block-contact-content .contact-form-content .wpcf7-form select:focus,
.block-contact-content .contact-form-content .wpcf7-form textarea:focus {
  border-color: rgba(255, 255, 255, 0.4);
}
.block-contact-content .contact-form-content .wpcf7-form textarea {
  min-height: 10.625rem;
  resize: vertical;
}
.block-contact-content .contact-form-content .wpcf7-form .wpcf7-submit {
  width: 100%;
  height: 3.5rem;
  border-radius: 12px;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), color-stop(50%, #2dd4bf), to(#34d399));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf 50%, #34d399);
  border: none;
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  font-family: "Roboto", sans-serif;
  line-height: 1.5;
  cursor: pointer;
  -webkit-box-shadow: 0 1px 2px rgba(6, 182, 212, 0.2);
          box-shadow: 0 1px 2px rgba(6, 182, 212, 0.2);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, -webkit-transform 0.2s;
  padding: 1rem 1.5rem;
}
.block-contact-content .contact-form-content .wpcf7-form .wpcf7-submit:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.block-contact-content .contact-form-content .wpcf7-form .wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 1.5rem;
}
.block-contact-content .contact-form-content .wpcf7-form .wpcf7-not-valid-tip {
  font-size: 0.75em;
  color: #f87171;
  margin-top: 0.25rem;
}
.block-contact-content .contact-form-content .wpcf7-form .wpcf7-response-output {
  font-size: 1.05em;
  border-radius: 8px;
  padding: 0.75rem 1rem;
  margin: 1rem 0 0;
}
.block-contact-content .contact-form-content .wpcf7-form br {
  display: none;
}
.block-contact-content .contact-map-section {
  padding-top: 5rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-map-section {
    padding-top: 3.5rem;
  }
}
.block-contact-content .contact-map-card {
  backdrop-filter: blur(24px);
  border-radius: 16px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  overflow: hidden;
  min-height: 33rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-map-card {
    min-height: 20rem;
  }
}
.block-contact-content .contact-map-card .acf-map {
  width: 100%;
  height: 33rem;
}
@media screen and (max-width: 920px) {
  .block-contact-content .contact-map-card .acf-map {
    height: 20rem;
  }
}
.block-contact-content .contact-map-card .info-window {
  padding: 0.75rem;
  min-width: 12rem;
}
.block-contact-content .contact-map-card .info-window .info-window-content {
  font-size: 1.05em;
  line-height: 1.5;
  color: #222;
  margin-bottom: 0.75rem;
}
.block-contact-content .contact-map-card .info-window .info-window-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.5rem 1rem;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  border-radius: 8px;
  background-color: #222;
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.block-contact-content .contact-map-card .info-window .info-window-button:hover {
  opacity: 0.85;
}
.block-contact-content .gform_validation_errors {
  margin: 0 0 1.5rem;
}
.block-contact-content .gform_validation_errors ol {
  margin: 0.75rem 0 0;
  padding: 0 0 0 1.25rem;
}
.block-contact-content .gform_submission_error {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  margin: 0 0 1rem;
  padding: 1rem 1.25rem;
  font-size: 1.05em;
  line-height: 1.3;
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.25);
  color: #b91c1c;
  border-radius: 8px;
}
.block-contact-content .gform_submission_error .gform-icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-contact-content .gform_validation_error_link {
  font-size: 1.05em;
  color: #b91c1c;
  text-decoration: underline;
}
.block-contact-content .gform_validation_error_link:hover {
  color: #dc2626;
}
.block-contact-content .gfield_validation_message,
.block-contact-content .validation_message {
  font-size: 1.05em;
  color: #f87171;
  padding: 0.25em 0 0;
}
.block-contact-content .gfield_error input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.block-contact-content .gfield_error select,
.block-contact-content .gfield_error textarea {
  border-color: rgba(239, 68, 68, 0.5);
}
.block-contact-content .gfield_error input:not([type=submit]):not([type=checkbox]):not([type=radio]):focus,
.block-contact-content .gfield_error select:focus,
.block-contact-content .gfield_error textarea:focus {
  border-color: #f87171;
}

.block-dark-banner {
  padding: 8em 0 4em;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-color: #0f172a;
  text-align: center;
  color: #fff;
  font-family: "Roboto", sans-serif;
}
@media screen and (max-width: 920px) {
  .block-dark-banner {
    padding: 8rem 0 3.5rem;
  }
}
.block-dark-banner .dark-banner-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
.block-dark-banner .dark-banner-bg .dark-banner-blur {
  position: absolute;
  width: 31.25rem;
  height: 31.25rem;
  border-radius: 9999px;
  -webkit-filter: blur(120px);
          filter: blur(120px);
}
.block-dark-banner .dark-banner-bg .dark-banner-blur--cyan {
  top: 0;
  left: 36.25rem;
  background-color: rgba(6, 182, 212, 0.2);
}
.block-dark-banner .dark-banner-bg .dark-banner-blur--teal {
  top: -8.937rem;
  left: 22.5rem;
  background-color: rgba(20, 184, 166, 0.2);
}
.block-dark-banner .wrapper {
  position: relative;
  z-index: 1;
}
.block-dark-banner .dark-banner-inner {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 3rem;
}
@media screen and (max-width: 920px) {
  .block-dark-banner .dark-banner-inner {
    padding: 0;
  }
}
.block-dark-banner .dark-banner-content {
  max-width: 48rem;
  margin: 0 auto;
  padding: 0;
}
.block-dark-banner .dark-banner-heading {
  margin: 0 0 1.5rem;
  font-size: clamp(2em, 4vw, 3em);
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.block-dark-banner .dark-banner-heading .dark-banner-heading--gradient {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), color-stop(50%, #2dd4bf), to(#34d399));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf 50%, #34d399);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.block-dark-banner .dark-banner-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.8);
  max-width: 48rem;
  margin: 0 auto;
}

.block-gallery {
  padding: 4em 0;
}
.block-gallery .wrapper {
  padding-left: 0;
  padding-right: 0;
}
@media screen and (max-width: 920px) {
  .block-gallery .wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}
.block-gallery .gallery-items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1em;
}
@media screen and (max-width: 920px) {
  .block-gallery .gallery-items {
    gap: 0.5em;
  }
}
@media screen and (max-width: 640px) {
  .block-gallery .gallery-items {
    gap: 0.5em;
    grid-template-columns: repeat(3, 1fr);
  }
}
.block-gallery .gallery-items .gallery-item {
  aspect-ratio: 1;
}
.block-gallery .gallery-items .gallery-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.block-hero-banner {
  padding: 4em 0;
  position: relative;
  isolation: isolate;
  height: 100vh;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  color: #fff;
  font-family: "Roboto", sans-serif;
}
.block-hero-banner .hero-banner-background {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.block-hero-banner .hero-banner-gradient-base {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #0f172a, #0891b2 50%, #06b6d4);
  z-index: 0;
}
.block-hero-banner .hero-banner-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.2;
  z-index: 1;
}
.block-hero-banner .hero-banner-overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(15, 23, 42, 0.5)), to(#0f172a));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(15, 23, 42, 0.5) 50%, #0f172a);
  z-index: 2;
}
.block-hero-banner .hero-banner-content {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  max-width: 1680px;
  margin: 0 auto;
  padding: 4rem 0 4rem 0rem;
}
.block-hero-banner .hero-banner-title {
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  margin: 0;
  background: -webkit-gradient(linear, left top, right top, from(#60a5fa), color-stop(50%, #c084fc), to(#22d3ee));
  background: linear-gradient(90deg, #60a5fa, #c084fc 50%, #22d3ee);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}
.block-hero-banner .hero-banner-subtitle {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}
.block-hero-banner .hero-banner-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #d1d5db;
  max-width: 48rem;
  margin: 0;
}
.block-hero-banner .hero-banner-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 1rem;
}
.block-hero-banner .hero-banner-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  border-radius: 8px;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, -webkit-transform 0.2s;
}
.block-hero-banner .hero-banner-button:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.block-hero-banner .hero-banner-button--primary {
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  color: #fff;
  padding: calc(1rem + 2px) calc(2.5rem + 2px);
}
.block-hero-banner .hero-banner-button--primary:hover {
  padding: 1rem 2.5rem;
  background: rgba(255, 255, 255, 0.1);
  border: 2px solid rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(4px);
  color: #fff;
}
.block-hero-banner .hero-banner-button--secondary {
  background-color: rgba(255, 255, 255, 0.1);
  border: 2px solid rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(4px);
  color: #fff;
  padding: 1rem 2.5rem;
}
.block-hero-banner .hero-banner-button--secondary:hover {
  padding: calc(1rem + 2px) calc(2.5rem + 2px);
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  color: #fff;
  border: none;
  backdrop-filter: none;
}
@media screen and (max-width: 920px) {
  .block-hero-banner .hero-banner-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.how-it-works {
  padding: 4em 0;
  text-align: center;
}
.how-it-works__header {
  margin-bottom: 4rem;
}
.how-it-works__title {
  margin: 0 0 1rem;
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
}
.how-it-works__subtitle {
  margin: 0 auto;
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  max-width: 48rem;
}
.how-it-works__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
  text-align: left;
  max-width: 1680px;
  margin: 0 auto;
}
.how-it-works__card {
  position: relative;
  width: 24rem;
  background: #fff;
  border-radius: 1rem;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  padding: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.how-it-works__card-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}
.how-it-works__step-number {
  font-size: 3em;
  font-weight: 700;
  line-height: 1;
  color: #e0f2fe;
}
.how-it-works__icon-circle {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.75rem;
  background: linear-gradient(135deg, #0284c7, #c026d3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.how-it-works__icon-circle img {
  width: 1.5rem;
  height: 1.5rem;
}
.how-it-works__step-title {
  margin: 0 0 0.75rem;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
}
.how-it-works__step-desc {
  margin: 0;
  font-size: 1.05em;
  line-height: 1.625rem;
  color: #475569;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.how-it-works__arrow {
  position: absolute;
  top: 50%;
  right: -1.2375rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.how-it-works--four-col .how-it-works__grid {
  gap: 1.5rem;
}
.how-it-works--four-col .how-it-works__card {
  width: 17.875rem;
}
.how-it-works--four-col .how-it-works__arrow {
  right: -1.75rem;
}
@media (max-width: 920px) {
  .how-it-works--four-col .how-it-works__card {
    width: 100%;
    max-width: 24rem;
  }
}
.how-it-works--stacked .how-it-works__card-top {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.how-it-works--stacked .how-it-works__card {
  text-align: center;
}
.how-it-works--four-col.how-it-works--stacked .how-it-works__card-top {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
.how-it-works--four-col.how-it-works--stacked .how-it-works__step-number {
  font-size: 3em;
  line-height: 1;
}
.how-it-works--four-col.how-it-works--stacked .how-it-works__icon-circle {
  width: 4rem;
  height: 4rem;
}
.how-it-works--four-col.how-it-works--stacked .how-it-works__step-title {
  font-size: 1.25em;
}
.how-it-works--four-col.how-it-works--stacked .how-it-works__step-desc {
  font-size: 1.05em;
  line-height: 1.422rem;
}
@media (max-width: 920px) {
  .how-it-works__grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .how-it-works__card {
    width: 100%;
    max-width: 24rem;
  }
  .how-it-works__arrow {
    display: none;
  }
}

.block-why-choose {
  padding: 4em 0;
}
.block-why-choose .wrapper {
  margin: 0 auto;
  padding: 0 3rem;
}
@media screen and (max-width: 920px) {
  .block-why-choose .wrapper {
    padding: 0;
  }
}
.block-why-choose .why-choose__header {
  text-align: center;
  margin-bottom: 4rem;
}
.block-why-choose .why-choose__title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 1rem;
  line-height: 1.2;
}
.block-why-choose .why-choose__subtitle {
  font-size: clamp(1.05em, 2vw, 1.25em);
  color: #475569;
  max-width: 48rem;
  margin: 0 auto;
  line-height: 1.6;
}
.block-why-choose .why-choose__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5rem;
}
@media (max-width: 920px) {
  .block-why-choose .why-choose__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 500px) {
  .block-why-choose .why-choose__grid {
    grid-template-columns: 1fr;
  }
}
.block-why-choose .why-choose__card {
  background: linear-gradient(135deg, #f0f9ff, #fdf4ff);
  border-radius: 16px;
  padding: 2rem;
  text-align: center;
}
.block-why-choose .why-choose__card-icon {
  width: 4rem;
  height: 4rem;
  border-radius: 12px;
  background: linear-gradient(135deg, #0284c7, #c026d3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto 1rem;
}
.block-why-choose .why-choose__card-icon img {
  width: 1.875rem;
  height: 1.875rem;
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.block-why-choose .why-choose__card-title {
  font-size: 1.25em;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 0px;
  line-height: 1.4;
}
.block-why-choose .why-choose__card-desc {
  font-size: 1.05em;
  color: #475569;
  line-height: 1.6;
  margin: 0;
}

.block-icon-box-grid {
  background-color: #fff;
  padding: 4em 0;
  text-align: center;
}
.block-icon-box-grid .icon-box-grid-header {
  margin-bottom: 4rem;
}
.block-icon-box-grid .icon-box-grid-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-icon-box-grid .icon-box-grid-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #4b5563;
  max-width: 48rem;
  margin: 0 auto;
}
.block-icon-box-grid .icon-box-grid-items {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(var(--icon-box-columns, 4), 1fr);
  gap: 2rem;
}
@media screen and (max-width: 1280px) {
  .block-icon-box-grid .icon-box-grid-items {
    grid-template-columns: repeat(min(var(--icon-box-columns, 4), 3), 1fr);
  }
}
@media screen and (max-width: 920px) {
  .block-icon-box-grid .icon-box-grid-items {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .block-icon-box-grid .icon-box-grid-items {
    grid-template-columns: 1fr;
  }
}
.block-icon-box-grid .icon-box-grid-card {
  border-radius: 12px;
  background-color: #fff;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  overflow: hidden;
  text-align: left;
}
.block-icon-box-grid .icon-box-grid-card-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 2rem;
  height: 100%;
}
.block-icon-box-grid .icon-box-grid-card-icon {
  width: 4rem;
  height: 4rem;
  border-radius: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-bottom: 1rem;
}
.block-icon-box-grid .icon-box-grid-card-icon img {
  width: 1.875rem;
  height: 1.875rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.block-icon-box-grid .icon-box-grid-card-title {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: inherit;
  margin: 0 0 1rem;
}
.block-icon-box-grid .icon-box-grid-card-description {
  font-size: 1.05em;
  line-height: 1.422;
  color: #4b5563;
  margin: 0 0 1rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-icon-box-grid .icon-box-grid-card-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25;
  color: #2563eb;
  text-decoration: none;
  margin-top: auto;
}
.block-icon-box-grid .icon-box-grid-card-link:hover {
  text-decoration: underline;
}
.block-icon-box-grid .icon-box-grid-card-link-arrow {
  width: 0.875rem;
  height: 0.875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-icon-box-grid .icon-box-grid-card--blue-cyan .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #3b82f6, #06b6d4);
}
.block-icon-box-grid .icon-box-grid-card--purple-pink .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #a855f7, #ec4899);
}
.block-icon-box-grid .icon-box-grid-card--cyan-blue .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #06b6d4, #3b82f6);
}
.block-icon-box-grid .icon-box-grid-card--indigo-purple .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #6366f1, #a855f7);
}
.block-icon-box-grid .icon-box-grid-card--blue-indigo .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #dbeafe, #e0e7ff);
}
.block-icon-box-grid .icon-box-grid-card--green .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #dcfce7, #d1fae5);
}
.block-icon-box-grid .icon-box-grid-card--purple .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #f3e8ff, #ede9fe);
}
.block-icon-box-grid .icon-box-grid-card--orange-rose .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #ffedd5, #fee2e2);
}
.block-icon-box-grid .icon-box-grid-card--pink .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #fce7f3, #ffe4e6);
}
.block-icon-box-grid .icon-box-grid-card--teal-cyan .icon-box-grid-card-icon {
  background: linear-gradient(135deg, #ccfbf1, #cffafe);
}

.block-stats-counter {
  position: relative;
  isolation: isolate;
  background: linear-gradient(135deg, #0f172a, #1e3a8a 50%, #581c87);
  overflow: hidden;
  padding: 4em 0;
  text-align: center;
  color: #fff;
}
.block-stats-counter .stats-counter-overlay {
  position: absolute;
  inset: 0;
  background-color: #fff;
  opacity: 0.1;
  z-index: 0;
  pointer-events: none;
}
.block-stats-counter .wrapper {
  position: relative;
  z-index: 1;
}
.block-stats-counter .stats-counter-header {
  margin-bottom: 4rem;
}
.block-stats-counter .stats-counter-title {
  color: white;
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 1rem;
}
.block-stats-counter .stats-counter-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #d1d5db;
  max-width: 48rem;
  margin: 0 auto;
}
.block-stats-counter .stats-counter-grid {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
}
.block-stats-counter .stats-counter-item {
  width: calc((100% - (var(--stats-columns, 3) - 1) * 2rem) / var(--stats-columns, 3));
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 920px) {
  .block-stats-counter .stats-counter-item {
    width: calc((100% - 2rem) / 2);
  }
}
@media screen and (max-width: 640px) {
  .block-stats-counter .stats-counter-item {
    width: 100%;
  }
}
.block-stats-counter .stats-counter-item-image {
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(4px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-bottom: 1rem;
}
.block-stats-counter .stats-counter-item-image img {
  width: 2.25rem;
  height: 2.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.block-stats-counter .stats-counter-item-counter {
  font-size: 3em;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 0.5rem;
}
.block-stats-counter .stats-counter-item-subtitle {
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.4;
  color: #22d3ee;
  margin-bottom: 0.5rem;
}
.block-stats-counter .stats-counter-item-description {
  font-size: 1.05em;
  line-height: 1.25;
  color: #d1d5db;
}

.block-blog-posts {
  background-color: #fff;
  padding: 4em 0;
  text-align: center;
}
.block-blog-posts .blog-posts-header {
  margin-bottom: 4rem;
}
.block-blog-posts .blog-posts-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-blog-posts .blog-posts-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #4b5563;
  max-width: 48rem;
  margin: 0 auto;
}
.block-blog-posts .blog-posts-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.block-blog-posts .blog-posts-card {
  width: calc((100% - (var(--blog-columns, 3) - 1) * 2rem) / var(--blog-columns, 3));
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  background-color: #fff;
  border-radius: 12px;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  overflow: hidden;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 920px) {
  .block-blog-posts .blog-posts-card {
    width: calc((100% - 2rem) / 2);
  }
}
@media screen and (max-width: 640px) {
  .block-blog-posts .blog-posts-card {
    width: 100%;
  }
}
.block-blog-posts .blog-posts-card-image {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  height: 14rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-blog-posts .blog-posts-card-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block-blog-posts .blog-posts-card-badge {
  position: absolute;
  top: 1rem;
  left: 1rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 9999px;
  padding: 0.25rem 0.75rem;
  font-size: 0.75em;
  font-weight: 600;
  line-height: 1;
  color: #fff;
  z-index: 1;
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#06b6d4));
  background: linear-gradient(90deg, #3b82f6, #06b6d4);
}
.block-blog-posts .blog-posts-card-badge--news {
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#06b6d4));
  background: linear-gradient(90deg, #3b82f6, #06b6d4);
}
.block-blog-posts .blog-posts-card-badge--event,
.block-blog-posts .blog-posts-card-badge--events {
  background: -webkit-gradient(linear, left top, right top, from(#a855f7), to(#ec4899));
  background: linear-gradient(90deg, #a855f7, #ec4899);
}
.block-blog-posts .blog-posts-card-badge--research {
  background: -webkit-gradient(linear, left top, right top, from(#6366f1), to(#a855f7));
  background: linear-gradient(90deg, #6366f1, #a855f7);
}
.block-blog-posts .blog-posts-card-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1.5rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.block-blog-posts .blog-posts-card-date {
  font-size: 1.05em;
  line-height: 1.25;
  color: #6b7280;
  margin: 0 0 1rem;
}
.block-blog-posts .blog-posts-card-title {
  font-size: 1.25em;
  line-height: 1.4;
  margin: 0 0 1rem;
}
.block-blog-posts .blog-posts-card-title a {
  color: #0f172a;
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-weight: 700;
}
.block-blog-posts .blog-posts-card-title a:hover {
  color: #1e40af;
}
.block-blog-posts .blog-posts-card-excerpt {
  font-size: 1.05em;
  line-height: 1.422;
  color: #4b5563;
  margin: 0 0 1rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-blog-posts .blog-posts-card-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25;
  color: #2563eb;
  text-decoration: none;
  margin-top: auto;
}
.block-blog-posts .blog-posts-card-link:hover {
  text-decoration: underline;
}
.block-blog-posts .blog-posts-card-link-arrow {
  width: 0.875rem;
  height: 0.875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-blog-posts .blog-posts-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 3rem;
}
.block-blog-posts .blog-posts-view-all {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 1.125rem 2.125rem;
  border: 2px solid #e2e8f0;
  border-radius: 8px;
  background-color: #fff;
  color: #0f172a;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  -webkit-transition: background-color 0.2s, border-color 0.2s;
  transition: background-color 0.2s, border-color 0.2s;
}
.block-blog-posts .blog-posts-view-all:hover {
  background-color: #f8fafc;
  border-color: #cbd5e1;
}
.block-blog-posts .blog-posts-view-all-arrow {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.block-timeline {
  background-color: #fff;
  padding: 4em 0;
  text-align: center;
}
.block-timeline .timeline-header {
  max-width: 1680px;
  margin: 0 auto 4rem;
  padding: 0 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.block-timeline .timeline-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-timeline .timeline-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  max-width: 48rem;
  margin: 0 auto;
}
.block-timeline .timeline-container {
  position: relative;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .block-timeline .timeline-container {
    padding: 0;
  }
}
.block-timeline .timeline-container::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: -webkit-gradient(linear, left top, left bottom, from(#0284c7), to(#c026d3));
  background: linear-gradient(180deg, #0284c7, #c026d3);
  z-index: 0;
}
.block-timeline .timeline-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 1;
}
.block-timeline .timeline-row + .timeline-row {
  margin-top: 2rem;
}
.block-timeline .timeline-card {
  background-color: #fff;
  border-radius: 12px;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  padding: 2rem;
}
.block-timeline .timeline-row--left .timeline-card {
  grid-column: 1;
  text-align: right;
  margin-right: 2rem;
}
.block-timeline .timeline-row--right .timeline-card {
  grid-column: 3;
  text-align: left;
  margin-left: 2rem;
}
.block-timeline .timeline-card-year {
  font-size: 3em;
  font-weight: 700;
  line-height: 1;
  color: #0284c7;
  margin-bottom: 0.5rem;
}
.block-timeline .timeline-card-title {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0 0 0.75rem;
}
.block-timeline .timeline-card-description {
  font-size: 1.05em;
  line-height: 1.625;
  color: #475569;
  margin: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-timeline .timeline-dot {
  grid-column: 2;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-timeline .timeline-dot img {
  width: 2rem;
  height: 2rem;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.block-timeline .timeline-dot--blue-cyan {
  background: linear-gradient(135deg, #3b82f6, #06b6d4);
}
.block-timeline .timeline-dot--purple-pink {
  background: linear-gradient(135deg, #a855f7, #ec4899);
}
.block-timeline .timeline-dot--cyan-blue {
  background: linear-gradient(135deg, #06b6d4, #3b82f6);
}
.block-timeline .timeline-dot--indigo-purple {
  background: linear-gradient(135deg, #6366f1, #a855f7);
}
.block-timeline .timeline-spacer {
  grid-column: auto;
}
@media screen and (max-width: 920px) {
  .block-timeline .timeline-container::before {
    display: none;
  }
  .block-timeline .timeline-row {
    grid-template-columns: auto 1fr;
  }
  .block-timeline .timeline-row--left .timeline-card,
  .block-timeline .timeline-row--right .timeline-card {
    text-align: left;
    grid-column: 2;
    margin: 0rem;
  }
  .block-timeline .timeline-dot {
    grid-column: 1;
    display: none;
  }
  .block-timeline .timeline-spacer {
    display: none;
  }
  .block-timeline .timeline-row--left .timeline-card {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

.block-faq-accordion {
  background-color: #fff;
  padding: 4em 0;
  text-align: center;
}
.block-faq-accordion .faq-accordion-inner {
  max-width: 48rem;
  margin: 0 auto;
  padding: 0;
}
.block-faq-accordion .faq-accordion-header {
  margin-bottom: 3rem;
}
.block-faq-accordion .faq-accordion-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-faq-accordion .faq-accordion-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  margin: 0 auto;
  max-width: 36rem;
}
.block-faq-accordion .faq-accordion-items {
  text-align: left;
}
.block-faq-accordion .faq-accordion-item {
  border-bottom: 1px solid #e2e8f0;
}
.block-faq-accordion .faq-accordion-item:first-child {
  border-top: 1px solid #e2e8f0;
}
.block-faq-accordion .faq-accordion-item[open] .faq-accordion-question {
  color: #2563eb;
}
.block-faq-accordion .faq-accordion-item[open] .faq-accordion-chevron {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.block-faq-accordion .faq-accordion-question {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
  width: 100%;
  padding: 1.25rem 0;
  font-size: 1.13em;
  font-weight: 500;
  line-height: 1.5;
  color: #0f172a;
  cursor: pointer;
  list-style: none;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.block-faq-accordion .faq-accordion-question::-webkit-details-marker {
  display: none;
}
.block-faq-accordion .faq-accordion-chevron {
  width: 1.25rem;
  height: 1.25rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #94a3b8;
  -webkit-transition: -webkit-transform 0.15s;
  transition: -webkit-transform 0.15s;
  transition: transform 0.15s;
  transition: transform 0.15s, -webkit-transform 0.15s;
}
.block-faq-accordion .faq-accordion-answer {
  padding: 0 0 1.5rem;
  font-size: 1.05em;
  line-height: 1.75;
  color: #475569;
}

.block-split-content-with-image {
  position: relative;
  isolation: isolate;
  background: linear-gradient(135deg, #f9fafb, #fff);
  overflow: hidden;
  padding: 4em 0;
  text-align: left;
}
.block-split-content-with-image .split-content-with-image-decorative {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.05;
  z-index: 0;
  pointer-events: none;
}
.block-split-content-with-image .split-content-with-image-row {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3rem;
  max-width: 1680px;
  margin: 0 auto;
}
@media screen and (max-width: 920px) {
  .block-split-content-with-image .split-content-with-image-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.block-split-content-with-image .split-content-with-image-content {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 34.5rem;
          flex: 0 0 34.5rem;
  max-width: 34.5rem;
}
@media screen and (max-width: 1280px) {
  .block-split-content-with-image .split-content-with-image-content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 50%;
            flex: 1 1 50%;
    max-width: 50%;
  }
}
@media screen and (max-width: 920px) {
  .block-split-content-with-image .split-content-with-image-content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
    max-width: 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.block-split-content-with-image .split-content-with-image-image-column {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 920px) {
  .block-split-content-with-image .split-content-with-image-image-column {
    width: 100%;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.block-split-content-with-image .split-content-with-image-image-frame {
  width: 100%;
}
.block-split-content-with-image .split-content-with-image-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 16px;
  -webkit-box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.12), 0 10px 40px -10px rgba(0, 0, 0, 0.15);
          box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.12), 0 10px 40px -10px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 920px) {
  .block-split-content-with-image .split-content-with-image-image {
    height: 60vw;
    width: 100%;
  }
}
.block-split-content-with-image .split-content-with-image-stat-card {
  position: absolute;
  bottom: -2rem;
  left: -2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  padding: 1.5rem;
  border-radius: 12px;
  background-color: #fff;
  -webkit-box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.12), 0 10px 40px -10px rgba(0, 0, 0, 0.15);
          box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.12), 0 10px 40px -10px rgba(0, 0, 0, 0.15);
  z-index: 1;
  max-width: 20rem;
}
@media screen and (max-width: 920px) {
  .block-split-content-with-image .split-content-with-image-stat-card {
    position: static;
    margin-top: -2rem;
    -ms-flex-item-align: start;
        align-self: flex-start;
    max-width: 100%;
  }
}
.block-split-content-with-image .split-content-with-image-stat-icon {
  width: 4rem;
  height: 4rem;
  border-radius: 9999px;
  background: linear-gradient(135deg, #3b82f6, #9333ea);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-split-content-with-image .split-content-with-image-stat-icon img {
  width: 1.5rem;
  height: 1.5rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.block-split-content-with-image .split-content-with-image-stat-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.block-split-content-with-image .split-content-with-image-stat-number {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
}
.block-split-content-with-image .split-content-with-image-stat-label {
  font-size: 1.05em;
  line-height: 1.25;
  color: #4b5563;
}
.block-split-content-with-image .split-content-with-image-badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 9999px;
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  padding: 0.5rem 1rem;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.25;
  color: #fff;
  margin-bottom: 1.5rem;
}
.block-split-content-with-image .split-content-with-image-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1.5rem;
}
.block-split-content-with-image .split-content-with-image-divider {
  width: 5rem;
  height: 0.25rem;
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  margin-bottom: 1.5rem;
}
.block-split-content-with-image .split-content-with-image-description {
  font-size: 1.05em;
  line-height: 1.6;
  color: #374151;
  margin-bottom: 1.5rem;
}
.block-split-content-with-image .split-content-with-image-features {
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
.block-split-content-with-image .split-content-with-image-feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
.block-split-content-with-image .split-content-with-image-feature-icon {
  width: 3rem;
  height: 3rem;
  border-radius: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-split-content-with-image .split-content-with-image-feature-icon img {
  width: 1.5rem;
  height: 1.5rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.block-split-content-with-image .split-content-with-image-feature:nth-child(3n+1) .split-content-with-image-feature-icon {
  background-color: #dbeafe;
}
.block-split-content-with-image .split-content-with-image-feature:nth-child(3n+2) .split-content-with-image-feature-icon {
  background-color: #f3e8ff;
}
.block-split-content-with-image .split-content-with-image-feature:nth-child(3n+3) .split-content-with-image-feature-icon {
  background-color: #cffafe;
}
.block-split-content-with-image .split-content-with-image-feature-body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
}
.block-split-content-with-image .split-content-with-image-feature-title {
  font-size: 1.05em;
  font-weight: 700;
  line-height: 1.5;
  color: #0f172a;
}
.block-split-content-with-image .split-content-with-image-feature-desc {
  font-size: 1.05em;
  line-height: 1.25;
  color: #4b5563;
}
.block-split-content-with-image .split-content-with-image-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  padding-top: 1rem;
}
.block-split-content-with-image .split-content-with-image-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  border-radius: 8px;
  -webkit-transition: opacity 0.2s, background-color 0.2s, border-color 0.2s;
  transition: opacity 0.2s, background-color 0.2s, border-color 0.2s;
}
.block-split-content-with-image .split-content-with-image-btn:hover {
  opacity: 0.9;
}
.block-split-content-with-image .split-content-with-image-btn--primary {
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  color: #fff;
  padding: calc(0.875rem + 2px) calc(2rem + 2px);
  gap: 0.5rem;
}
.block-split-content-with-image .split-content-with-image-btn--primary:hover {
  padding: 0.875rem 2rem;
  background: #fff;
  color: #0f172a;
  border: 2px solid #e2e8f0;
  gap: 0;
}
.block-split-content-with-image .split-content-with-image-btn--secondary {
  background-color: #fff;
  color: #0f172a;
  border: 2px solid #e2e8f0;
  padding: 0.875rem 2rem;
}
.block-split-content-with-image .split-content-with-image-btn--secondary:hover {
  padding: calc(0.875rem + 2px) calc(2rem + 2px);
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  color: #fff;
  border: none;
  opacity: 0.9;
}
.block-split-content-with-image .split-content-with-image-btn-arrow {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-split-content-with-image.split-content-with-image--image-left .split-content-with-image-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 920px) {
  .block-split-content-with-image.split-content-with-image--image-left .split-content-with-image-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.block-split-content-with-image.split-content-with-image--image-left .split-content-with-image-image-column {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.block-split-content-with-image.split-content-with-image--image-left .split-content-with-image-stat-card {
  left: auto;
  right: -2rem;
}

.block-newsletter {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: linear-gradient(135deg, #0f172a, #1e3a8a 50%, #581c87);
  padding: 4em 0;
  text-align: center;
}
.block-newsletter .newsletter-decorative {
  position: absolute;
  inset: 0;
  background-color: #fff;
  opacity: 0.1;
  z-index: 0;
  pointer-events: none;
}
.block-newsletter .wrapper {
  position: relative;
  z-index: 1;
}
.block-newsletter .newsletter-inner {
  max-width: 56rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
}
.block-newsletter .newsletter-icon {
  width: 5rem;
  height: 5rem;
  border-radius: 9999px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(4px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 2rem;
}
.block-newsletter .newsletter-icon img {
  width: 2.25rem;
  height: 2.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.block-newsletter .newsletter-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  margin: 0 0 2rem;
}
.block-newsletter .newsletter-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #d1d5db;
  max-width: 42rem;
  margin: 0 0 2rem;
}
.block-newsletter .newsletter-form {
  width: 100%;
  max-width: 36rem;
  margin: 0 0 2rem;
}
.block-newsletter .newsletter-form .gform_wrapper {
  margin: 0;
}
.block-newsletter .newsletter-form .gform_heading,
.block-newsletter .newsletter-form .gform_required_legend,
.block-newsletter .newsletter-form .validation_message,
.block-newsletter .newsletter-form .gfield_validation_message {
  display: none;
}
.block-newsletter .newsletter-form .gform_validation_errors {
  margin: 1rem 0;
  max-width: 100%;
}
.block-newsletter .newsletter-form .gform_validation_errors .gform_submission_error {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  margin: 0;
  padding: 0.75rem 1rem;
  font-size: 1.05em;
  line-height: 1.4;
  font-weight: 500;
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.25);
  color: #f87171;
  border-radius: 8px;
  font-family: inherit;
  clip: auto;
  clip-path: none;
  height: auto;
  overflow: visible;
  position: static;
  white-space: normal;
  width: auto;
}
.block-newsletter .newsletter-form .gform_validation_errors .gform_submission_error .gform-icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0.125rem;
}
.block-newsletter .newsletter-form .gform_fields {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  gap: 1rem;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  row-gap: 0 !important;
  -webkit-column-gap: 1rem !important;
     -moz-column-gap: 1rem !important;
          column-gap: 1rem !important;
}
.block-newsletter .newsletter-form .gfield {
  margin: 0;
}
.block-newsletter .newsletter-form .gfield--width-three-quarter {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: auto !important;
}
.block-newsletter .newsletter-form .gfield--width-quarter {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: auto !important;
}
.block-newsletter .newsletter-form .gfield_label,
.block-newsletter .newsletter-form .gfield_description {
  display: none;
}
.block-newsletter .newsletter-form .ginput_container_email input[type=email] {
  width: 100% !important;
  max-width: 100% !important;
  text-align: left;
  height: 3rem;
  padding: 1rem 1.5rem;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25;
  outline: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.block-newsletter .newsletter-form .ginput_container_email input[type=email]::-webkit-input-placeholder {
  color: #9ca3af;
}
.block-newsletter .newsletter-form .ginput_container_email input[type=email]::-moz-placeholder {
  color: #9ca3af;
}
.block-newsletter .newsletter-form .ginput_container_email input[type=email]:-ms-input-placeholder {
  color: #9ca3af;
}
.block-newsletter .newsletter-form .ginput_container_email input[type=email]::-ms-input-placeholder {
  color: #9ca3af;
}
.block-newsletter .newsletter-form .ginput_container_email input[type=email]::placeholder {
  color: #9ca3af;
}
.block-newsletter .newsletter-form .ginput_container_email input[type=email]:focus {
  border-color: rgba(255, 255, 255, 0.4);
  background-color: rgba(255, 255, 255, 0.15);
  -webkit-box-shadow: none;
          box-shadow: none;
}
.block-newsletter .newsletter-form .gform-button {
  height: 3rem !important;
  padding: 1rem 2rem !important;
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  border: none !important;
  border-radius: 8px !important;
  color: #fff;
  font-size: 1.05em !important;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  white-space: nowrap;
  text-transform: none;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, -webkit-transform 0.2s;
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto !important;
  min-width: auto !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.block-newsletter .newsletter-form .gform-button:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.block-newsletter .newsletter-form .gform-button span {
  position: static;
  opacity: 1;
}
.block-newsletter .newsletter-form .gform_footer {
  display: none;
}
.block-newsletter .newsletter-privacy {
  font-size: 1.05em;
  line-height: 1.25;
  color: #9ca3af;
  margin: 0 0 2rem;
}
.block-newsletter .newsletter-trust {
  list-style: none;
  margin: 0;
  padding: 2rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem;
}
.block-newsletter .newsletter-trust-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
}
.block-newsletter .newsletter-trust-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #9ca3af;
}
.block-newsletter .newsletter-trust-icon svg {
  width: 100%;
  height: 100%;
}
.block-newsletter .newsletter-trust-text {
  font-size: 1.05em;
  line-height: 1.25;
  color: #9ca3af;
}

.block-page-header {
  background: linear-gradient(165deg, #0284c7, #0369a1 50%, #c026d3);
  padding: 8em 0 4em;
  text-align: left;
  color: #fff;
}
@media screen and (max-width: 920px) {
  .block-page-header {
    padding: 8em 1.5em 3em;
  }
}
.block-page-header .page-header-inner {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 3rem;
}
@media screen and (max-width: 920px) {
  .block-page-header .page-header-inner {
    padding: 0;
  }
}
.block-page-header .page-header-breadcrumbs {
  margin-bottom: 1.5rem;
}
.block-page-header .page-header-breadcrumbs ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 300;
  line-height: 1.25;
}
.block-page-header .page-header-breadcrumbs li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
.block-page-header .page-header-breadcrumbs li:not(:last-child)::after {
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 0.875rem;
  height: 0.875rem;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 3L9 7L5 11' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-page-header .page-header-breadcrumbs li a {
  color: inherit;
  text-decoration: none;
}
.block-page-header .page-header-breadcrumbs li a:hover {
  text-decoration: underline;
}
.block-page-header .page-header-breadcrumbs li span {
  font-weight: 700;
}
.block-page-header .page-header-title {
  color: white;
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 1.5rem;
  word-wrap: break-word;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-page-header .page-header-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
  max-width: 48rem;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.block-featured-products {
  background: -webkit-gradient(linear, left bottom, left top, from(#f9fafb), to(#fff));
  background: linear-gradient(0deg, #f9fafb, #fff);
  padding: 4em 0;
  text-align: center;
}
.block-featured-products .featured-products-header {
  margin-bottom: 4rem;
}
.block-featured-products .featured-products-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-featured-products .featured-products-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #4b5563;
  max-width: 48rem;
  margin: 0 auto;
}
.block-featured-products .featured-products-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.block-featured-products .featured-products-card {
  width: calc((100% - (var(--products-columns, 3) - 1) * 2rem) / var(--products-columns, 3));
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  background-color: #fff;
  border-radius: 12px;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  overflow: hidden;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 920px) {
  .block-featured-products .featured-products-card {
    width: calc((100% - 2rem) / 2);
  }
}
@media screen and (max-width: 640px) {
  .block-featured-products .featured-products-card {
    width: 100%;
  }
}
.block-featured-products .featured-products-card-image {
  position: relative;
  isolation: isolate;
  width: 100%;
  overflow: hidden;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-featured-products .featured-products-card-image img {
  width: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 4/3;
}
.block-featured-products .featured-products-card-badge {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 1;
  border-radius: 9999px;
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  color: #fff;
  font-size: 0.75em;
  font-weight: 600;
  line-height: 1rem;
  padding: 0.25rem 0.75rem;
}
.block-featured-products .featured-products-card-body {
  padding: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.block-featured-products .featured-products-card-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1rem;
}
.block-featured-products .featured-products-card-category {
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25;
  color: #2563eb;
}
.block-featured-products .featured-products-card-price {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1;
  color: #0f172a;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-featured-products .featured-products-card-price del {
  font-size: 1.05em;
  font-weight: 500;
  color: #9ca3af;
  margin-right: 0.25rem;
}
.block-featured-products .featured-products-card-price ins {
  background-color: white;
  text-decoration: none;
}
.block-featured-products .featured-products-card-title {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-featured-products .featured-products-card-description {
  font-size: 1.05em;
  line-height: 1.422;
  color: #4b5563;
  margin: 0 0 1rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-featured-products .featured-products-card-cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
  text-decoration: none;
  background: -webkit-gradient(linear, left top, right top, from(#3b82f6), to(#9333ea));
  background: linear-gradient(90deg, #3b82f6, #9333ea);
  border: none;
  border-radius: 8px;
  padding: calc(0.75rem + 2px) calc(1.5rem + 2px);
  -webkit-transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s, -webkit-transform 0.2s;
}
.block-featured-products .featured-products-card-cta:hover {
  padding: 0.75rem 1.5rem;
  background: #fff;
  border: 2px solid #e2e8f0;
  color: #0f172a;
  opacity: 1;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.block-featured-products .featured-products-card-cta-arrow {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-featured-products .featured-products-footer {
  margin-top: 3rem;
}
.block-featured-products .featured-products-view-all {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  color: #0f172a;
  text-decoration: none;
  background-color: #fff;
  border: 2px solid #e2e8f0;
  border-radius: 8px;
  padding: 1.125rem 2.125rem;
  -webkit-transition: border-color 0.2s, background-color 0.2s;
  transition: border-color 0.2s, background-color 0.2s;
}
.block-featured-products .featured-products-view-all:hover {
  border-color: #cbd5e1;
  background-color: #f8fafc;
}
.block-featured-products .featured-products-view-all-arrow {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.block-team-members {
  padding: 4em 0;
  text-align: center;
}
.block-team-members .team-members-header {
  margin-bottom: 4rem;
}
.block-team-members .team-members-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-team-members .team-members-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  margin: 0 auto;
  max-width: 48rem;
}
.block-team-members .team-members-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
}
@media screen and (max-width: 920px) {
  .block-team-members .team-members-grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.block-team-members .team-member-card {
  width: 17.5rem;
  -webkit-box-shadow: 0px 10px 20px -2px rgba(0, 0, 0, 0.04), 0px 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0px 10px 20px -2px rgba(0, 0, 0, 0.04), 0px 2px 15px -3px rgba(0, 0, 0, 0.07);
  border-radius: 16px;
  background-color: #fff;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
}
@media screen and (max-width: 920px) {
  .block-team-members .team-member-card {
    width: 100%;
    max-width: 100%;
  }
}
.block-team-members .team-member-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 4/5;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.block-team-members .team-member-info {
  padding: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.block-team-members .team-member-name {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0 0 0.25rem;
}
.block-team-members .team-member-role {
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  color: #0284c7;
  margin: 0 0 0.75rem;
}
.block-team-members .team-member-bio {
  font-size: 1.05em;
  line-height: 1.422rem;
  color: #475569;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.block-certifications {
  padding: 4em 0;
  text-align: center;
}
.block-certifications .certifications-header {
  margin-bottom: 4rem;
}
.block-certifications .certifications-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-certifications .certifications-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  margin: 0 auto;
  max-width: 48rem;
}
.block-certifications .certifications-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5rem;
}
@media screen and (max-width: 920px) {
  .block-certifications .certifications-grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.block-certifications .certification-card {
  width: 17.875rem;
  -webkit-box-shadow: 0px 10px 20px -2px rgba(0, 0, 0, 0.04), 0px 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0px 10px 20px -2px rgba(0, 0, 0, 0.04), 0px 2px 15px -3px rgba(0, 0, 0, 0.07);
  border-radius: 12px;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
}
@media screen and (max-width: 920px) {
  .block-certifications .certification-card {
    width: 100%;
    max-width: 100%;
  }
}
.block-certifications .certification-icon-box {
  width: 4rem;
  height: 4rem;
  border-radius: 12px;
  background: linear-gradient(135deg, #e0f2fe, #fae8ff);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1rem;
}
.block-certifications .certification-icon {
  width: 1.875rem;
  height: 1.875rem;
  display: block;
}
.block-certifications .certification-name {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0 0 0.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-certifications .certification-subtitle {
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #475569;
  margin: 0;
}

.block-stats-numbers {
  padding: 4em 0;
  text-align: center;
}
.block-stats-numbers .stats-numbers-header {
  margin-bottom: 4rem;
}
.block-stats-numbers .stats-numbers-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-stats-numbers .stats-numbers-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  margin: 0 auto;
  max-width: 48rem;
}
.block-stats-numbers .stats-numbers-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5rem;
}
.block-stats-numbers .stat-card {
  width: 19.875rem;
  border-radius: 16px;
  background: linear-gradient(135deg, #f0f9ff, #fdf4ff);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.block-stats-numbers .stat-icon-box {
  width: 4rem;
  height: 4rem;
  border-radius: 12px;
  background: linear-gradient(135deg, #0284c7, #c026d3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1rem;
}
.block-stats-numbers .stat-icon {
  width: 2.25rem;
  height: 2.25rem;
  display: block;
}
.block-stats-numbers .stat-number {
  font-size: 2.5em;
  font-weight: 700;
  line-height: 1;
  color: #0f172a;
  margin: 0 0 0.5rem;
}
.block-stats-numbers .stat-label {
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5rem;
  color: #334155;
  margin: 0;
}

.block-microbiota-members {
  padding: 4em 0;
  text-align: center;
}
.block-microbiota-members .microbiota-members-inner {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .block-microbiota-members .microbiota-members-inner {
    padding: 0;
  }
}
.block-microbiota-members .microbiota-members-header {
  margin-bottom: 4rem;
}
.block-microbiota-members .microbiota-members-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.block-microbiota-members .microbiota-members-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  margin: 0 auto;
  max-width: 48rem;
}
.block-microbiota-members .microbiota-members-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.5rem;
}
@media screen and (max-width: 1280px) {
  .block-microbiota-members .microbiota-members-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 920px) {
  .block-microbiota-members .microbiota-members-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .block-microbiota-members .microbiota-members-grid {
    grid-template-columns: 1fr;
  }
}
.block-microbiota-members .microbiota-card {
  -webkit-box-shadow: 0px 10px 20px -2px rgba(0, 0, 0, 0.04), 0px 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0px 10px 20px -2px rgba(0, 0, 0, 0.04), 0px 2px 15px -3px rgba(0, 0, 0, 0.07);
  border-radius: 16px;
  background-color: #fff;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
}
.block-microbiota-members .microbiota-card-header {
  padding: 1.5rem;
}
.block-microbiota-members .gradient-green {
  background: linear-gradient(135deg, #22c55e, #059669);
}
.block-microbiota-members .gradient-blue {
  background: linear-gradient(135deg, #3b82f6, #4f46e5);
}
.block-microbiota-members .gradient-purple {
  background: linear-gradient(135deg, #a855f7, #7c3aed);
}
.block-microbiota-members .gradient-teal {
  background: linear-gradient(135deg, #14b8a6, #0891b2);
}
.block-microbiota-members .gradient-orange {
  background: linear-gradient(135deg, #f97316, #dc2626);
}
.block-microbiota-members .gradient-pink {
  background: linear-gradient(135deg, #ec4899, #e11d48);
}
.block-microbiota-members .gradient-lime {
  background: linear-gradient(135deg, #84cc16, #16a34a);
}
.block-microbiota-members .gradient-amber {
  background: linear-gradient(135deg, #f59e0b, #ea580c);
}
.block-microbiota-members .microbiota-card-icon-box {
  width: 4rem;
  height: 4rem;
  border-radius: 12px;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(4px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1rem;
}
.block-microbiota-members .microbiota-card-icon {
  width: 2.25rem;
  height: 2.25rem;
  display: block;
}
.block-microbiota-members .microbiota-card-name {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #fff;
  margin: 0 0 0.25rem;
}
.block-microbiota-members .microbiota-card-scientific {
  font-size: 1.05em;
  font-style: italic;
  line-height: 1.25rem;
  color: rgba(255, 255, 255, 0.8);
  margin: 0;
}
.block-microbiota-members .microbiota-card-body {
  padding: 1.5rem;
}
.block-microbiota-members .microbiota-card-role {
  font-size: 1.05em;
  font-weight: 700;
  line-height: 1.25rem;
  color: #0284c7;
  margin: 0 0 0.75rem;
}
.block-microbiota-members .microbiota-card-description {
  font-size: 1.05em;
  line-height: 1.422rem;
  color: #475569;
  margin: 0 0 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-microbiota-members .microbiota-card-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  font-size: 0.75em;
  font-weight: 500;
  line-height: 1rem;
  color: #0284c7;
  text-decoration: none;
}
.block-microbiota-members .microbiota-card-link-arrow {
  width: 0.75rem;
  height: 0.75rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.block-cta-banner {
  padding: 4em 0;
}
.block-cta-banner .cta-banner-container {
  background: linear-gradient(135deg, #0284c7, #0369a1 50%, #c026d3);
  border-radius: 24px;
  padding: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  color: #fff;
}
.block-cta-banner .cta-banner-title {
  color: #fff;
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 1rem;
}
.block-cta-banner .cta-banner-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
  max-width: 48rem;
  margin: 0 0 2rem;
}
.block-cta-banner .cta-banner-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.block-cta-banner .cta-banner-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  border-radius: 9999px;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, -webkit-transform 0.2s;
}
.block-cta-banner .cta-banner-button:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.block-cta-banner .cta-banner-button--primary {
  background-color: #fff;
  color: #0284c7;
  padding: calc(1rem + 1px) calc(2rem + 1px);
}
.block-cta-banner .cta-banner-button--primary:hover {
  padding: 1rem 2rem;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
}
.block-cta-banner .cta-banner-button--secondary {
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  padding: 1rem 2rem;
}
.block-cta-banner .cta-banner-button--secondary:hover {
  padding: calc(1rem + 1px) calc(2rem + 1px);
  background: #fff;
  color: #0284c7;
  border: none;
  backdrop-filter: none;
}
@media screen and (max-width: 920px) {
  .block-cta-banner .cta-banner-container {
    padding: 2rem 1.5rem;
  }
}

.block-microbiome-product-tease {
  padding: 4em 0;
}

.mpt-header {
  text-align: center;
  max-width: 1680px;
  margin: 0 auto 3rem;
  padding: 0 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .mpt-header {
    padding: 0;
    margin-bottom: 2rem;
  }
}

.mpt-header-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}

.mpt-header-subtitle {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  margin: 0 auto;
  max-width: 48rem;
}

.mpt-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3rem;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .mpt-cards {
    padding: 0;
    gap: 2rem;
  }
}

.mpt-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  border-radius: 24px;
  background-color: #fff;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  overflow: hidden;
}
@media screen and (max-width: 920px) {
  .mpt-card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.mpt-card--image-right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 920px) {
  .mpt-card--image-right {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.mpt-card-image-column {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-height: 0;
}
@media screen and (max-width: 920px) {
  .mpt-card-image-column {
    aspect-ratio: 16/10;
    width: 100%;
  }
}

.mpt-card-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.mpt-card-content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 3rem;
}
@media screen and (max-width: 920px) {
  .mpt-card-content {
    padding: 2rem 1.5rem;
  }
}

.mpt-card-badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 9999px;
  padding: 0.25rem 0.75rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  margin-bottom: 1rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.mpt-card-badge--blue {
  background-color: #e0f2fe;
  color: #0369a1;
}
.mpt-card-badge--green {
  background-color: #dcfce7;
  color: #15803d;
}
.mpt-card-badge--purple {
  background-color: #fae8ff;
  color: #a21caf;
}

.mpt-card-icon {
  width: 4rem;
  height: 4rem;
  border-radius: 12px;
  background: linear-gradient(135deg, #e0f2fe, #fae8ff);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-bottom: 1.5rem;
}
.mpt-card-icon img {
  width: 1.875rem;
  height: 1.875rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.mpt-card-title {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0 0 0.5rem;
}

.mpt-card-technology {
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  color: #0284c7;
  margin: 0 0 1rem;
}

.mpt-card-price {
  font-size: 2.5em;
  font-weight: 700;
  line-height: 1;
  color: #0f172a;
  margin-bottom: 1.5rem;
}
.mpt-card-price del {
  font-size: 0.75em;
  color: #94a3b8;
  margin-right: 0.5rem;
}
.mpt-card-price ins {
  text-decoration: none;
}

.mpt-card-description {
  font-size: 1.05em;
  line-height: 1.625;
  color: #475569;
  margin: 0 0 1.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.mpt-card-features {
  list-style: none;
  margin: 0 0 2rem;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}

.mpt-card-feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  font-size: 1.05em;
  line-height: 1.5;
  color: #334155;
}

.mpt-card-feature-icon {
  width: 1rem;
  height: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mpt-card-feature-icon img {
  width: 1rem;
  height: 1rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.mpt-card-feature-text {
  line-height: 1.5;
}

.mpt-card-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.mpt-card-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  border-radius: 9999px;
  padding: 1rem 2rem;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, -webkit-transform 0.2s;
}
.mpt-card-btn:link, .mpt-card-btn:visited, .mpt-card-btn:hover, .mpt-card-btn:focus, .mpt-card-btn:active {
  text-decoration: none;
}
.mpt-card-btn:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.mpt-card-btn--primary {
  background: -webkit-gradient(linear, left top, right top, from(#0284c7), to(#c026d3));
  background: linear-gradient(90deg, #0284c7, #c026d3);
}
.mpt-card-btn--primary, .mpt-card-btn--primary:link, .mpt-card-btn--primary:visited, .mpt-card-btn--primary:focus, .mpt-card-btn--primary:active {
  color: #fff;
}
.mpt-card-btn--primary:hover {
  background: #f1f5f9;
  color: #0f172a;
}
.mpt-card-btn--secondary {
  background-color: #f1f5f9;
}
.mpt-card-btn--secondary, .mpt-card-btn--secondary:link, .mpt-card-btn--secondary:visited, .mpt-card-btn--secondary:focus, .mpt-card-btn--secondary:active {
  color: #0f172a;
}
.mpt-card-btn--secondary:hover {
  background: -webkit-gradient(linear, left top, right top, from(#0284c7), to(#c026d3));
  background: linear-gradient(90deg, #0284c7, #c026d3);
  color: #fff;
}

.mpt-notices {
  max-width: 1680px;
  margin: 0 auto 1.5rem;
  padding: 0 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 640px) {
  .mpt-notices {
    padding: 0;
  }
}
@-webkit-keyframes mptNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes mptNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.mpt-notices .woocommerce-message,
.mpt-notices .woocommerce-error,
.mpt-notices .woocommerce-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  border-radius: 10px;
  font-size: 1.05em;
  line-height: 1.5;
  position: relative;
  overflow: hidden;
  -webkit-animation: mptNoticeIn 0.35s ease-out;
          animation: mptNoticeIn 0.35s ease-out;
}
.mpt-notices .woocommerce-message::before,
.mpt-notices .woocommerce-error::before,
.mpt-notices .woocommerce-info::before {
  display: none;
}
.mpt-notices .woocommerce-message a,
.mpt-notices .woocommerce-error a,
.mpt-notices .woocommerce-info a {
  font-weight: 500;
  text-decoration: none;
}
.mpt-notices .woocommerce-message a:hover,
.mpt-notices .woocommerce-error a:hover,
.mpt-notices .woocommerce-info a:hover {
  text-decoration: underline;
}
.mpt-notices .woocommerce-message:last-child,
.mpt-notices .woocommerce-error:last-child,
.mpt-notices .woocommerce-info:last-child {
  margin-bottom: 0;
}
.mpt-notices .woocommerce-message {
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-left: 3px solid #22c55e;
  color: #15803d;
}
.mpt-notices .woocommerce-message a {
  color: #16a34a;
}
.mpt-notices .woocommerce-error {
  background: rgba(239, 68, 68, 0.08);
  border: 1px solid rgba(239, 68, 68, 0.2);
  border-left: 3px solid #ef4444;
  color: #b91c1c;
}
.mpt-notices .woocommerce-error a {
  color: #dc2626;
}
.mpt-notices .woocommerce-info {
  background: rgba(2, 132, 199, 0.08);
  border: 1px solid rgba(2, 132, 199, 0.2);
  border-left: 3px solid #0284c7;
  color: #0369a1;
}
.mpt-notices .woocommerce-info a {
  color: #0284c7;
}
.mpt-notices .button.wc-forward {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 0.375rem 1rem;
  background: -webkit-gradient(linear, left top, right top, from(#0284c7), to(#c026d3));
  background: linear-gradient(90deg, #0284c7, #c026d3);
  border: none;
  border-radius: 9999px;
  color: #fff !important;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
}
.mpt-notices .button.wc-forward:hover {
  color: #fff !important;
  opacity: 0.9;
  text-decoration: none;
}

.block-personalized-product-tease {
  padding: 4em 0;
  text-align: center;
}
.block-personalized-product-tease .ppt-header {
  margin-bottom: 4rem;
}
.block-personalized-product-tease .ppt-header__title {
  margin: 0 0 1rem;
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
}
.block-personalized-product-tease .ppt-header__subtitle {
  margin: 0 auto;
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  max-width: 48rem;
}
.block-personalized-product-tease .ppt-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
  max-width: 1680px;
  margin: 0 auto;
}
.block-personalized-product-tease .ppt-card {
  width: 24rem;
  background: #fff;
  border-radius: 16px;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
}
.block-personalized-product-tease .ppt-card__image {
  width: 100%;
  height: 16rem;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.block-personalized-product-tease .ppt-card__body {
  padding: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.block-personalized-product-tease .ppt-card__badge {
  display: inline-block;
  -ms-flex-item-align: start;
      align-self: flex-start;
  border-radius: 9999px;
  padding: 0.25rem 0.75rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  margin-bottom: 0.75rem;
}
.block-personalized-product-tease .ppt-card__badge--blue {
  background: #e0f2fe;
  color: #0369a1;
}
.block-personalized-product-tease .ppt-card__badge--green {
  background: #dcfce7;
  color: #15803d;
}
.block-personalized-product-tease .ppt-card__badge--purple {
  background: #fae8ff;
  color: #a21caf;
}
.block-personalized-product-tease .ppt-card__title {
  margin: 0 0 0.5rem;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
}
.block-personalized-product-tease .ppt-card__price-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.5rem;
  margin-bottom: 0.25rem;
}
.block-personalized-product-tease .ppt-card__price {
  font-size: 2em;
  font-weight: 700;
  line-height: 2.25rem;
  color: #0f172a;
}
.block-personalized-product-tease .ppt-card__price del {
  font-size: 1.05em;
  font-weight: 400;
  color: #94a3b8;
}
.block-personalized-product-tease .ppt-card__price-sub {
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #64748b;
}
.block-personalized-product-tease .ppt-card__desc {
  margin: 0 0 1rem;
  font-size: 1.05em;
  line-height: 1.422rem;
  color: #475569;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-personalized-product-tease .ppt-card__features {
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
}
.block-personalized-product-tease .ppt-card__feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  padding-top: 0.5rem;
}
.block-personalized-product-tease .ppt-card__feature:first-child {
  padding-top: 0;
}
.block-personalized-product-tease .ppt-card__feature-check {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0.875rem;
  height: 0.875rem;
  margin-top: 0.188rem;
}
.block-personalized-product-tease .ppt-card__feature-text {
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #334155;
}
.block-personalized-product-tease .ppt-card__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  min-height: 3rem;
  border: none;
  border-radius: 9999px;
  background: -webkit-gradient(linear, left top, right top, from(#0284c7), to(#c026d3));
  background: linear-gradient(90deg, #0284c7, #c026d3);
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5rem;
  color: #fff;
  text-decoration: none;
  margin-top: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.625rem 1.5rem;
  -webkit-transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s, -webkit-transform 0.2s;
}
.block-personalized-product-tease .ppt-card__cta:hover {
  padding: calc(0.625rem - 2px) calc(1.5rem - 2px);
  background: #fff;
  border: 2px solid #e2e8f0;
  color: #0f172a;
  opacity: 1;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
@media (max-width: 920px) {
  .block-personalized-product-tease .ppt-grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .block-personalized-product-tease .ppt-card {
    width: 100%;
    max-width: 24rem;
  }
}

.block-dual-product-system {
  padding: 4em 0;
  text-align: center;
}
.block-dual-product-system .dps-header {
  margin-bottom: 4rem;
}
.block-dual-product-system .dps-title {
  margin: 0 0 1rem;
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
}
.block-dual-product-system .dps-subtitle {
  margin: 0 auto;
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  max-width: 48rem;
}
.block-dual-product-system .dps-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4rem;
  max-width: 1680px;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 920px) {
  .block-dual-product-system .dps-cards {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.block-dual-product-system .dps-card {
  width: 34rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 16px;
  background-color: #fff;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
  overflow: hidden;
}
@media screen and (max-width: 920px) {
  .block-dual-product-system .dps-card {
    width: 100%;
    max-width: 34rem;
  }
}
.block-dual-product-system .dps-card-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 2rem;
  color: #fff;
}
.block-dual-product-system .dps-card:nth-child(odd) .dps-card-header {
  background: linear-gradient(135deg, #ec4899, #e11d48);
}
.block-dual-product-system .dps-card:nth-child(even) .dps-card-header {
  background: linear-gradient(135deg, #14b8a6, #0891b2);
}
.block-dual-product-system .dps-card-icon-box {
  width: 4rem;
  height: 4rem;
  border-radius: 12px;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(4px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1rem;
}
.block-dual-product-system .dps-card-icon {
  width: 2.25rem;
  height: 2.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.block-dual-product-system .dps-card-title {
  margin: 0 0 0.5rem;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #fff;
}
.block-dual-product-system .dps-card-subtitle {
  margin: 0;
  font-size: 1.05em;
  line-height: 1.25rem;
  color: rgba(255, 255, 255, 0.8);
}
.block-dual-product-system .dps-card-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 2rem;
}
.block-dual-product-system .dps-card-desc {
  margin: 0 0 1.5rem;
  font-size: 1.05em;
  line-height: 1.625rem;
  color: #475569;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-dual-product-system .dps-card-ingredients {
  margin-bottom: 1.5rem;
}
.block-dual-product-system .dps-card-ingredients-label {
  margin: 0 0 0.75rem;
  font-size: 1.05em;
  font-weight: 700;
  line-height: 1.25rem;
}
.block-dual-product-system .dps-card-ingredients-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.block-dual-product-system .dps-card-ingredient {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  padding-top: 0.5rem;
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #334155;
}
.block-dual-product-system .dps-card-ingredient:first-child {
  padding-top: 0;
}
.block-dual-product-system .dps-card-check {
  width: 0.875rem;
  height: 0.875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0.188rem;
}
.block-dual-product-system .dps-card-usage {
  border-radius: 12px;
  background-color: #f8fafc;
  padding: 1rem;
}
.block-dual-product-system .dps-card-usage-label {
  margin: 0 0 0.25rem;
  font-size: 0.75em;
  font-weight: 700;
  line-height: 1rem;
}
.block-dual-product-system .dps-card-usage-text {
  margin: 0;
  font-size: 1.05em;
  line-height: 1.25rem;
  color: #334155;
}

.block-skinduo-product-tease {
  padding: 4em 0;
  text-align: left;
}
.block-skinduo-product-tease .spt-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4rem;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .block-skinduo-product-tease .spt-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3rem;
    padding: 0;
  }
}
.block-skinduo-product-tease .spt-gallery {
  width: 36rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 920px) {
  .block-skinduo-product-tease .spt-gallery {
    width: 100%;
  }
}
.block-skinduo-product-tease .spt-gallery__hero {
  display: block;
  cursor: pointer;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  width: 100%;
  height: 37.5rem;
  border-radius: 16px;
  -webkit-box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.12), 0 10px 40px -10px rgba(0, 0, 0, 0.15);
          box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.12), 0 10px 40px -10px rgba(0, 0, 0, 0.15);
  margin-bottom: 1.5rem;
}
.block-skinduo-product-tease .spt-gallery__hero img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media screen and (max-width: 640px) {
  .block-skinduo-product-tease .spt-gallery__hero {
    height: 60vw;
  }
}
.block-skinduo-product-tease .spt-gallery__thumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
.block-skinduo-product-tease .spt-gallery__thumb {
  display: block;
  cursor: pointer;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  width: 17.5rem;
  height: 12rem;
  border-radius: 12px;
  -webkit-box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
          box-shadow: 0 10px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 15px -3px rgba(0, 0, 0, 0.07);
}
.block-skinduo-product-tease .spt-gallery__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media screen and (max-width: 640px) {
  .block-skinduo-product-tease .spt-gallery__thumb {
    width: 50%;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.block-skinduo-product-tease .spt-content {
  width: 36rem;
}
@media screen and (max-width: 920px) {
  .block-skinduo-product-tease .spt-content {
    width: 100%;
  }
}
.block-skinduo-product-tease .spt-badge {
  display: inline-block;
  border-radius: 9999px;
  padding: 0.25rem 0.75rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  margin-bottom: 1rem;
}
.block-skinduo-product-tease .spt-badge--blue {
  background: #e0f2fe;
  color: #0369a1;
}
.block-skinduo-product-tease .spt-badge--green {
  background: #dcfce7;
  color: #15803d;
}
.block-skinduo-product-tease .spt-badge--purple {
  background: #fae8ff;
  color: #a21caf;
}
.block-skinduo-product-tease .spt-title {
  margin: 0 0 1rem;
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
}
.block-skinduo-product-tease .spt-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}
.block-skinduo-product-tease .spt-price__amount {
  font-size: 3em;
  font-weight: 700;
  line-height: 3rem;
  color: #0f172a;
}
.block-skinduo-product-tease .spt-price__amount del {
  font-size: 1.13em;
  font-weight: 400;
  color: #94a3b8;
}
.block-skinduo-product-tease .spt-price__sub {
  font-size: 1.13em;
  line-height: 1.75rem;
  color: #64748b;
}
.block-skinduo-product-tease .spt-desc {
  margin: 0 0 2rem;
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-skinduo-product-tease .spt-benefits {
  margin-bottom: 2rem;
  border-radius: 16px;
  background: linear-gradient(135deg, #f0f9ff, #fdf4ff);
  padding: 2rem;
}
.block-skinduo-product-tease .spt-benefits__title {
  margin: 0 0 1rem;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
}
.block-skinduo-product-tease .spt-benefits__grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.75rem;
}
.block-skinduo-product-tease .spt-benefits__item {
  width: calc(50% - 0.375rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  font-size: 1.05em;
  line-height: 1.5rem;
  color: #334155;
}
@media screen and (max-width: 640px) {
  .block-skinduo-product-tease .spt-benefits__item {
    width: 100%;
  }
}
.block-skinduo-product-tease .spt-benefits__check {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0.25rem;
}
.block-skinduo-product-tease .spt-trust {
  margin-bottom: 2rem;
  color: #334155;
}
.block-skinduo-product-tease .spt-trust__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  padding-top: 1rem;
}
.block-skinduo-product-tease .spt-trust__item:first-child {
  padding-top: 0;
}
.block-skinduo-product-tease .spt-trust__icon {
  width: 1.5rem;
  height: 1.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.block-skinduo-product-tease .spt-trust__text {
  font-size: 1.05em;
  line-height: 1.5rem;
}
.block-skinduo-product-tease .spt-cta {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: none;
  border-radius: 9999px;
  background: -webkit-gradient(linear, left top, right top, from(#0284c7), to(#c026d3));
  background: linear-gradient(90deg, #0284c7, #c026d3);
  padding: calc(1rem + 2px) calc(8rem + 2px);
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5rem;
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s, -webkit-transform 0.2s;
}
.block-skinduo-product-tease .spt-cta:hover {
  padding: 1rem 8rem;
  background: #fff;
  border: 2px solid #e2e8f0;
  color: #0f172a;
  opacity: 1;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
@media screen and (max-width: 920px) {
  .block-skinduo-product-tease .spt-cta {
    padding: calc(1rem + 2px) calc(2rem + 2px);
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .block-skinduo-product-tease .spt-cta:hover {
    padding: 1rem 2rem;
  }
}

.block-course-grid {
  text-align: center;
  font-family: "Roboto", sans-serif;
  padding: 4em 0;
}

.course-grid-header {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0em 0 4em;
}
.course-grid-header .course-grid-title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
  margin: 0 0 1rem;
}
.course-grid-header .course-grid-description {
  font-size: clamp(1.05em, 2vw, 1.25em);
  line-height: 1.6;
  color: #475569;
  max-width: 48rem;
  margin: 0 auto;
}

.course-grid-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
  max-width: 1680px;
  margin: 0 auto;
}

.block-course-grid .course-card {
  width: 24rem;
  background: #fff;
  border-radius: 16px;
  border: 1px solid #C7CCD2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
}
.block-course-grid .course-card__image {
  width: 100%;
  height: 16rem;
  overflow: hidden;
}
.block-course-grid .course-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block-course-grid .course-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1.5rem;
  gap: 0.625rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.block-course-grid .course-card__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.25rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-bottom: 0.75rem;
}
.block-course-grid .course-card__tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  background-color: #e0f2fe;
  color: #0369a1;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25rem;
  white-space: nowrap;
}
.block-course-grid .course-card__title {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
  margin: 0;
  padding-bottom: 0.5rem;
}
.block-course-grid .course-card__price {
  font-size: 2em;
  font-weight: 700;
  line-height: 2.25rem;
  color: #0f172a;
  padding-bottom: 0.25rem;
}
.block-course-grid .course-card__excerpt {
  color: #475569;
  font-size: 1.05em;
  line-height: 1.422rem;
  padding-bottom: 1rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-height: 0;
}
.block-course-grid .course-card__excerpt p {
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 16;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-course-grid .course-card__details {
  list-style: none;
  margin: 0;
  padding: 0;
  color: #334155;
  font-size: 1.05em;
}
.block-course-grid .course-card__details li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  line-height: 1.25rem;
}
.block-course-grid .course-card__details li + li {
  padding-top: 0.5rem;
}
.block-course-grid .course-card__details li svg {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0.875rem;
  height: 0.875rem;
  color: #0369a1;
  margin-top: 0.125rem;
}
.block-course-grid .course-card__details li span {
  line-height: 1.25rem;
}
.block-course-grid .course-card__form button.course-card__button {
  width: 100%;
  cursor: pointer;
}
.block-course-grid .course-card__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 3rem;
  border-radius: 9999px;
  background: -webkit-gradient(linear, left top, right top, from(#0284c7), to(#c026d3));
  background: linear-gradient(90deg, #0284c7, #c026d3);
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5rem;
  text-decoration: none;
  text-align: center;
  border: none;
  padding: calc(0.75rem + 2px) calc(1.5rem + 2px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, background-color 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s;
  transition: opacity 0.2s, transform 0.2s, background-color 0.2s, -webkit-transform 0.2s;
}
.block-course-grid .course-card__button:hover {
  padding: 0.75rem 1.5rem;
  background: #fff;
  border: 2px solid #e2e8f0;
  color: #0f172a;
  opacity: 1;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.block-course-grid .course-card__button + .course-card__button, .block-course-grid .course-card__button + .course-card__form {
  margin-top: 0.5rem;
}
.block-course-grid .course-card__button--curriculum {
  background: #fff;
  border: 2px solid #e2e8f0;
  color: #0f172a;
  padding: 0.75rem 1.5rem;
}
.block-course-grid .course-card__button--curriculum:hover {
  padding: calc(0.75rem + 2px) calc(1.5rem + 2px);
  background: -webkit-gradient(linear, left top, right top, from(#0284c7), to(#c026d3));
  background: linear-gradient(90deg, #0284c7, #c026d3);
  border: none;
  color: #fff;
}

@media (max-width: 768px) {
  .block-course-grid {
    padding: 0 0 3rem;
  }
  .block-course-grid .course-card {
    width: 100%;
    max-width: 24rem;
  }
}
/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

.comment-form {
  color: red;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}
.widget select {
  max-width: 100%;
}

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

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

/* WooCommerce
--------------------------------------------- */
.woocommerce-notices-wrapper {
  margin-bottom: 1.5rem;
}

.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
  padding: 1rem 1.25rem;
  margin-bottom: 0.75rem;
  border-radius: 8px;
  font-size: 1.05em;
  line-height: 1.5;
  color: #e2e8f0;
}
.woocommerce-message a,
.woocommerce-error a,
.woocommerce-info a {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
}
.woocommerce-message:last-child,
.woocommerce-error:last-child,
.woocommerce-info:last-child {
  margin-bottom: 0;
}

.woocommerce-message {
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.25);
}

.woocommerce-error {
  background: rgba(239, 68, 68, 0.12);
  border: 1px solid rgba(239, 68, 68, 0.25);
}

.woocommerce-info {
  background: rgba(59, 130, 246, 0.12);
  border: 1px solid rgba(59, 130, 246, 0.25);
}

.shop-page .woocommerce-notices-wrapper {
  max-width: 1680px;
  margin: 0 auto 2rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-animation: shopNoticeIn 0.35s ease-out;
          animation: shopNoticeIn 0.35s ease-out;
}
@-webkit-keyframes shopNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes shopNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.shop-page .woocommerce-message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  backdrop-filter: blur(24px);
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-left: 3px solid #22c55e;
  border-radius: 10px;
  color: #e2e8f0;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
          box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
  position: relative;
  overflow: hidden;
}
.shop-page .woocommerce-message::before {
  content: "";
  width: 2rem;
  height: 2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: static;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8.5L6.5 12L13 5' stroke='%2322c55e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}
.shop-page .woocommerce-message::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 6rem;
  background: -webkit-gradient(linear, left top, right top, from(transparent), to(rgba(34, 197, 94, 0.03)));
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.03));
  pointer-events: none;
}
.shop-page .woocommerce-message a {
  color: #4ade80;
  font-weight: 500;
  text-decoration: none;
}
.shop-page .woocommerce-message a:hover {
  text-decoration: underline;
}
.shop-page .woocommerce-message .button {
  padding: 0;
  background: none;
  color: #4ade80;
  font-weight: 500;
  text-decoration: none;
  line-height: inherit;
}
.shop-page .woocommerce-message .button:hover {
  text-decoration: underline;
}
.shop-page form.shop-toolbar {
  margin: 0 0 2rem;
}
.shop-page .shop-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
  max-width: 1680px;
  margin: 0 auto 2rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.shop-page .shop-toolbar__count {
  color: #94a3b8;
  font-size: 1.05em;
  font-weight: 400;
  margin: 0;
}
.shop-page .shop-toolbar__sorting select.shop-orderby {
  height: 2.75rem;
  padding: 0 2.25rem 0 1rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 10px;
  color: #fff;
  font-size: 1.05em;
  font-weight: 400;
  outline: none;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.shop-page .shop-toolbar__sorting select.shop-orderby:focus {
  border-color: #06b6d4;
}
.shop-page .shop-toolbar__sorting select.shop-orderby option {
  background: #1e293b;
  color: #fff;
}
.shop-page .product-grid {
  list-style: none;
  margin: 0;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
  max-width: 1680px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 1280px) {
  .shop-page .product-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 920px) {
  .shop-page .product-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .shop-page .product-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}
.shop-page .product-card {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(24px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: border-color 0.2s, -webkit-transform 0.2s, -webkit-box-shadow 0.2s;
  transition: border-color 0.2s, -webkit-transform 0.2s, -webkit-box-shadow 0.2s;
  transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s;
  transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s, -webkit-transform 0.2s, -webkit-box-shadow 0.2s;
}
.shop-page .product-card:hover {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  border-color: rgba(6, 182, 212, 0.4);
  -webkit-box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(6, 182, 212, 0.1);
          box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(6, 182, 212, 0.1);
}
.shop-page .product-card__image {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: rgba(15, 23, 42, 0.5);
}
.shop-page .product-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.shop-page .product-card:hover .product-card__image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.shop-page .product-card__badge {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 1;
  padding: 0.25rem 0.75rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  border-radius: 9999px;
  color: #fff;
  font-size: 0.75em;
  font-weight: 600;
  line-height: 1rem;
}
.shop-page .product-card__body {
  padding: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.shop-page .product-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 0.75rem;
}
.shop-page .product-card__category {
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25;
  color: #22d3ee;
}
.shop-page .product-card__price {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.shop-page .product-card__price del {
  font-size: 1.05em;
  font-weight: 500;
  color: #64748b;
  margin-right: 0.25rem;
}
.shop-page .product-card__price ins {
  text-decoration: none;
}
.shop-page .product-card__price .woocommerce-Price-amount {
  color: #fff;
}
.shop-page .product-card__price del .woocommerce-Price-amount {
  color: #64748b;
}
.shop-page .product-card__price .screen-reader-text {
  display: none;
}
.shop-page .product-card__title {
  margin: 0 0 0.5rem;
}
.shop-page .product-card__title a {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.4;
  color: #fff;
  text-decoration: none;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.shop-page .product-card__title a:hover {
  color: #22d3ee;
}
.shop-page .product-card__description {
  font-size: 1.05em;
  line-height: 1.5;
  color: #94a3b8;
  margin: 0 0 1rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.shop-page .product-card__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
  text-decoration: none;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  border-radius: 10px;
  padding: 0.75rem 1.5rem;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.shop-page .product-card__cta:hover {
  opacity: 0.9;
}
.shop-page .product-card__cta--ghost {
  background: rgba(255, 255, 255, 0.06);
  color: #64748b;
  border: 1px solid rgba(255, 255, 255, 0.1);
  cursor: not-allowed;
}
.shop-page .product-card__cta--ghost:hover {
  opacity: 1;
}
.shop-page .product-card__cta-arrow {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.shop-page .shop-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  margin-top: 3rem;
  padding: 0 1.5rem;
}
.shop-page .shop-pagination__page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 8px;
  border: 1px solid rgba(71, 85, 105, 0.5);
  color: #94a3b8;
  font-size: 1.05em;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: border-color 0.15s, color 0.15s, background 0.15s;
  transition: border-color 0.15s, color 0.15s, background 0.15s;
}
.shop-page .shop-pagination__page:hover {
  border-color: #22d3ee;
  color: #22d3ee;
}
.shop-page .shop-pagination__page.is-active {
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  border-color: transparent;
  color: #fff;
  font-weight: 600;
}
.shop-page .shop-empty {
  max-width: 28rem;
  margin: 0 auto;
  text-align: center;
  padding: 3rem 1.5rem;
}
.shop-page .shop-empty__icon {
  color: #475569;
  margin-bottom: 1rem;
}
.shop-page .shop-empty__message {
  color: #94a3b8;
  font-size: 1.05em;
  margin: 0;
}

.is-single-product {
  background-color: #0f172a;
  color: #cbd5e1;
}
.is-single-product .site-main {
  background-color: #0f172a;
}
.is-single-product .product-hero-banner {
  position: relative;
  height: 18rem;
  overflow: hidden;
}
.is-single-product .product-hero-banner__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
}
.is-single-product .product-hero-banner__overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(15, 23, 42, 0.2)), color-stop(30%, rgba(15, 23, 42, 0.4)), color-stop(60%, rgba(15, 23, 42, 0.7)), color-stop(80%, rgba(15, 23, 42, 0.9)), to(#0f172a));
  background: linear-gradient(to bottom, rgba(15, 23, 42, 0.2) 0%, rgba(15, 23, 42, 0.4) 30%, rgba(15, 23, 42, 0.7) 60%, rgba(15, 23, 42, 0.9) 80%, #0f172a 100%);
  z-index: 1;
}
.is-single-product .product-hero-banner .wrapper {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  max-width: none;
  margin: 0;
  padding: 0 2rem 2.5rem;
  height: auto;
  min-height: 0;
}
.is-single-product .product-hero-banner__breadcrumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 300;
  color: #fff;
}
.is-single-product .product-hero-banner__breadcrumbs a {
  color: #fff;
  text-decoration: none;
  font-weight: 300;
  line-height: 1.25rem;
  -webkit-transition: color 0.15s ease;
  transition: color 0.15s ease;
}
.is-single-product .product-hero-banner__breadcrumbs a:hover {
  color: #22d3ee;
}
.is-single-product .product-hero-banner__breadcrumbs span {
  line-height: 1.25rem;
}
.is-single-product .product-hero-banner__breadcrumb-sep {
  width: 0.875rem;
  height: 0.875rem;
  color: #fff;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.is-single-product .product-main {
  padding: 4rem 0 5rem;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-main .wrapper {
    padding: 0 1.5em;
  }
}
.is-single-product .product-main__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-main__grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.is-single-product .product-main .mpt-notices {
  grid-column: 1/-1;
  max-width: none;
  margin-bottom: 0;
}
.is-single-product .product-main .mpt-notices .woocommerce-message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  backdrop-filter: blur(24px);
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-left: 3px solid #22c55e;
  border-radius: 10px;
  color: #e2e8f0;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
          box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
  position: relative;
  overflow: hidden;
  -webkit-animation: checkoutNoticeIn 0.35s ease-out;
          animation: checkoutNoticeIn 0.35s ease-out;
}
.is-single-product .product-main .mpt-notices .woocommerce-message::before {
  content: "";
  display: inline-block;
  position: static;
  width: 2rem;
  height: 2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8.5L6.5 12L13 5' stroke='%2322c55e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}
.is-single-product .product-main .mpt-notices .woocommerce-message::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 6rem;
  background: -webkit-gradient(linear, left top, right top, from(transparent), to(rgba(34, 197, 94, 0.03)));
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.03));
  pointer-events: none;
}
.is-single-product .product-main .mpt-notices .woocommerce-message a {
  color: #4ade80;
  font-weight: 500;
  text-decoration: none;
}
.is-single-product .product-main .mpt-notices .woocommerce-message a:hover {
  text-decoration: underline;
}
.is-single-product .product-main__gallery {
  position: sticky;
  top: 6rem;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-main__gallery {
    position: static;
  }
}
.is-single-product .product-main__gallery-main {
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 1rem;
}
.is-single-product .product-main__gallery-main img {
  display: block;
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-main__gallery-main img {
    width: 100%;
  }
}
.is-single-product .product-main__gallery-thumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
}
.is-single-product .product-main__gallery-thumb {
  cursor: pointer;
  border-radius: 8px;
  overflow: hidden;
  border: 2px solid transparent;
  background: none;
  padding: 0;
  -webkit-transition: border-color 0.15s ease;
  transition: border-color 0.15s ease;
}
.is-single-product .product-main__gallery-thumb.is-active, .is-single-product .product-main__gallery-thumb:hover {
  border-color: #22d3ee;
}
.is-single-product .product-main__gallery-thumb img {
  width: 5rem;
  height: 4rem;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media screen and (max-width: 640px) {
  .is-single-product .product-main__gallery-thumb img {
    width: 4rem;
    height: 3rem;
  }
}
.is-single-product .product-main__icon-badge {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(6, 182, 212, 0.2), rgba(20, 184, 166, 0.2));
  border: 1px solid rgba(6, 182, 212, 0.3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1.25rem;
}
.is-single-product .product-main__icon-badge img {
  width: 1.5rem;
  height: 1.5rem;
}
.is-single-product .product-main__title {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 0.5rem;
  line-height: 1.2;
}
.is-single-product .product-main__tech-label {
  font-size: 1.05em;
  color: #22d3ee;
  font-weight: 500;
  margin: 0 0 1rem;
  line-height: 1.5rem;
}
.is-single-product .product-main__short-desc {
  font-size: 1.05em;
  color: #cbd5e1;
  line-height: 1.625rem;
  margin: 0 0 1.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-main__short-desc {
    -webkit-line-clamp: unset;
    overflow: visible;
  }
}
.is-single-product .product-main__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-main__stats {
    grid-template-columns: 1fr;
  }
}
.is-single-product .product-main__stat-card {
  background: rgba(30, 41, 59, 0.6);
  border: 1px solid rgba(51, 65, 85, 0.5);
  border-radius: 12px;
  padding: 1.062rem;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
}
@media screen and (max-width: 640px) {
  .is-single-product .product-main__stat-card {
    padding: 0.75rem;
  }
}
.is-single-product .product-main__stat-icon {
  width: 1.25rem;
  height: 1.3rem;
  margin-bottom: 0.25rem;
}
.is-single-product .product-main__stat-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.is-single-product .product-main__stat-label {
  font-size: 1.05em;
  color: #94a3b8;
  line-height: 1rem;
  margin-bottom: 0.25rem;
}
.is-single-product .product-main__stat-value {
  font-size: 1.05em;
  color: #ffffff;
  font-weight: 600;
  line-height: 0.938rem;
}
.is-single-product .product-main__price-card {
  background: rgba(30, 41, 59, 0.6);
  border: 1px solid rgba(51, 65, 85, 0.5);
  border-radius: 16px;
  padding: 1.562rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 640px) {
  .is-single-product .product-main__price-card {
    padding: 1.25rem;
  }
}
.is-single-product .product-main__price-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.25rem;
}
.is-single-product .product-main__price {
  font-size: 3em;
  font-weight: 700;
  color: #ffffff;
  line-height: 3rem;
}
.is-single-product .product-main__price del {
  font-size: 1.25em;
  color: #64748b;
  font-weight: 400;
  margin-right: 0.75rem;
}
.is-single-product .product-main__price ins {
  text-decoration: none;
}
.is-single-product .product-main__price-label {
  font-size: 1.05em;
  color: #94a3b8;
  line-height: 1.25rem;
}
.is-single-product .product-main__cart-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem;
}
.is-single-product .product-main__quantity-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
}
.is-single-product .product-main__quantity-label {
  font-size: 1.05em;
  color: #94a3b8;
  line-height: 1.25rem;
}
.is-single-product .product-main__quantity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 7.5rem;
  height: 2.5rem;
  background: rgba(51, 65, 85, 0.5);
  border-radius: 8px;
  padding: 0.25rem;
  gap: 0.5rem;
}
.is-single-product .product-main__qty-btn {
  width: 2rem;
  height: 2rem;
  background: none;
  border: none;
  color: #ffffff;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
}
.is-single-product .product-main__qty-btn svg {
  width: 1rem;
  height: 1rem;
}
.is-single-product .product-main__qty-input {
  width: 2rem;
  height: 1.5rem;
  background: none;
  border: none;
  color: #ffffff;
  font-size: 1.05em;
  font-weight: 600;
  text-align: center;
  padding: 0;
  -moz-appearance: textfield;
}
.is-single-product .product-main__qty-input::-webkit-outer-spin-button, .is-single-product .product-main__qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.is-single-product .product-main__qty-input:focus {
  outline: none;
}
.is-single-product .product-main__add-to-cart {
  width: 16rem;
  height: 3.125rem;
  border: none;
  border-radius: 12px;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #ffffff;
  font-size: 1.05em;
  font-weight: 600;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  -webkit-transition: opacity 0.15s ease, -webkit-transform 0.15s ease;
  transition: opacity 0.15s ease, -webkit-transform 0.15s ease;
  transition: opacity 0.15s ease, transform 0.15s ease;
  transition: opacity 0.15s ease, transform 0.15s ease, -webkit-transform 0.15s ease;
}
.is-single-product .product-main__add-to-cart svg {
  width: 0.875rem;
  height: 0.875rem;
}
.is-single-product .product-main__add-to-cart:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
@media screen and (max-width: 640px) {
  .is-single-product .product-main__add-to-cart {
    width: 100%;
  }
}
.is-single-product .product-main__trust-badges {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
}
.is-single-product .product-main__trust-badge {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
  font-size: 0.75em;
  color: #94a3b8;
  line-height: 1rem;
}
.is-single-product .product-main__trust-check {
  width: 0.75rem;
  height: 0.75rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.is-single-product .product-details {
  padding: 0 0 5rem;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-details {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.is-single-product .product-details__grid {
  display: grid;
  grid-template-columns: 1fr 23.669rem;
  gap: 2.5rem;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-details__grid {
    grid-template-columns: 1fr;
  }
}
.is-single-product .product-details__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
}
.is-single-product .product-details__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.is-single-product .product-details__heading {
  font-size: 1.5em;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 1.5rem;
  line-height: 2rem;
}
.is-single-product .product-details__included-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
}
.is-single-product .product-details__included-card {
  background: rgba(30, 41, 59, 0.5);
  border: 1px solid rgba(51, 65, 85, 0.5);
  border-radius: 12px;
  padding: 1.062rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
}
.is-single-product .product-details__included-icon {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 8px;
  background: rgba(6, 182, 212, 0.1);
  border: 1px solid rgba(6, 182, 212, 0.2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.is-single-product .product-details__included-icon img {
  width: 1rem;
  height: 1rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.is-single-product .product-details__included-text {
  font-size: 1.05em;
  color: #cbd5e1;
  line-height: 1.25rem;
}
.is-single-product .product-details__body {
  font-size: 1.05em;
  line-height: 1.625rem;
  color: #cbd5e1;
}
.is-single-product .product-details__body p + p {
  margin-top: 1rem;
}
.is-single-product .product-details__feature-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}
.is-single-product .product-details__feature-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.75rem;
  font-size: 1.05em;
  color: #cbd5e1;
  line-height: 1.422rem;
}
.is-single-product .product-details__feature-icon {
  width: 1rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0.125rem;
}
.is-single-product .product-faq {
  padding: 0 0 5rem;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-faq {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.is-single-product .product-faq__heading {
  font-size: 1.5em;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 2rem;
  line-height: 2rem;
}
.is-single-product .product-faq__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
  max-width: 48rem;
}
.is-single-product .product-faq__item {
  background: rgba(30, 41, 59, 0.5);
  border: 1px solid rgba(51, 65, 85, 0.5);
  border-radius: 12px;
  overflow: hidden;
}
.is-single-product .product-faq__item[open] .product-faq__chevron {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.is-single-product .product-faq__question {
  padding: 1rem 1.5rem;
  font-size: 1.05em;
  font-weight: 500;
  color: #ffffff;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.25rem;
  list-style: none;
}
.is-single-product .product-faq__question::-webkit-details-marker {
  display: none;
}
.is-single-product .product-faq__question span {
  line-height: 1.25rem;
}
.is-single-product .product-faq__chevron {
  width: 1.25rem;
  height: 1.25rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #64748b;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.is-single-product .product-faq__answer {
  padding: 0 1.5rem 1rem;
  font-size: 1.05em;
  line-height: 1.625rem;
  color: #94a3b8;
}
.is-single-product .product-related {
  padding: 0 0 5rem;
}
@media screen and (max-width: 920px) {
  .is-single-product .product-related {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.is-single-product .product-related__heading {
  font-size: 1.5em;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 2rem;
  line-height: 2rem;
}
.is-single-product .product-related__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}
@media screen and (max-width: 640px) {
  .is-single-product .product-related__grid {
    grid-template-columns: 1fr;
  }
}
.is-single-product .product-related__card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: rgba(30, 41, 59, 0.5);
  border: 1px solid rgba(51, 65, 85, 0.5);
  border-radius: 16px;
  overflow: hidden;
  -webkit-transition: border-color 0.15s ease;
  transition: border-color 0.15s ease;
}
.is-single-product .product-related__card:hover {
  border-color: #22d3ee;
}
@media screen and (max-width: 640px) {
  .is-single-product .product-related__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.is-single-product .product-related__image {
  width: 10rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .is-single-product .product-related__image {
    width: 100%;
    height: 10.5rem;
  }
}
.is-single-product .product-related__image img {
  width: 100%;
  height: 10.5rem;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.is-single-product .product-related__content {
  padding: 1.25rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.is-single-product .product-related__title {
  font-size: 1.05em;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 0.25rem;
  line-height: 1.5rem;
}
.is-single-product .product-related__desc {
  font-size: 0.75em;
  line-height: 1rem;
  color: #94a3b8;
  margin: 0 0 0.75rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.is-single-product .product-related__price {
  font-size: 1.13em;
  font-weight: 700;
  color: #22d3ee;
  margin: 0;
  line-height: 1.75rem;
}
.is-single-product .product-related__link {
  position: absolute;
  inset: 0;
}

.cart-page .woocommerce-notices-wrapper {
  max-width: 1680px;
  margin: 0 auto 2rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-animation: cartNoticeIn 0.35s ease-out;
          animation: cartNoticeIn 0.35s ease-out;
}
@-webkit-keyframes cartNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes cartNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.cart-page .woocommerce-message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  backdrop-filter: blur(24px);
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-left: 3px solid #22c55e;
  border-radius: 10px;
  color: #e2e8f0;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
          box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
  position: relative;
  overflow: hidden;
}
.cart-page .woocommerce-message::before {
  content: "";
  display: inline-block;
  position: static;
  width: 2rem;
  height: 2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8.5L6.5 12L13 5' stroke='%2322c55e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}
.cart-page .woocommerce-message li {
  color: #fca5a5;
}
.cart-page .woocommerce-message li:not(:last-child) {
  margin-bottom: 0.25rem;
}
.cart-page .woocommerce-message a {
  color: #fca5a5;
  font-weight: 500;
  text-decoration: none;
}
.cart-page .woocommerce-message a:hover {
  text-decoration: underline;
}
.cart-page .cart-layout {
  display: grid;
  grid-template-columns: 1fr 24.375rem;
  gap: 2rem;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 1280px) {
  .cart-page .cart-layout {
    grid-template-columns: 1fr;
  }
}
.cart-page .cart-layout__main {
  min-width: 0;
}
.cart-page .cart-layout__sidebar {
  position: sticky;
  top: 6rem;
}
@media screen and (max-width: 1280px) {
  .cart-page .cart-layout__sidebar {
    position: static;
  }
}
.cart-page .cart-item-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
  backdrop-filter: blur(24px);
  border-radius: 16px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 1.562rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 1rem;
}
@media screen and (max-width: 640px) {
  .cart-page .cart-item-card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}
.cart-page .cart-item-card__image {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.cart-page .cart-item-card__image img {
  width: 8rem;
  height: 8rem;
  border-radius: 12px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media screen and (max-width: 640px) {
  .cart-page .cart-item-card__image img {
    width: 100%;
    height: auto;
    max-height: 12rem;
  }
}
.cart-page .cart-item-card__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.cart-page .cart-item-card__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
}
.cart-page .cart-item-card__info {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.cart-page .cart-item-card__badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  background-color: rgba(6, 182, 212, 0.1);
  color: #22d3ee;
  font-size: 0.75em;
  font-weight: 500;
  line-height: 1rem;
  margin-bottom: 0.5rem;
}
.cart-page .cart-item-card__name {
  display: block;
  color: #fff;
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.75rem;
  text-decoration: none;
  margin-bottom: 0.25rem;
}
.cart-page .cart-item-card__name:hover {
  color: #22d3ee;
}
.cart-page .cart-item-card__remove {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.25rem;
  height: 2.75rem;
  padding: 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: rgba(255, 255, 255, 0.3);
  text-decoration: none;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.cart-page .cart-item-card__remove svg {
  width: 1.25rem;
  height: 1.25rem;
}
.cart-page .cart-item-card__remove:hover {
  color: #ef4444;
}
.cart-page .cart-item-card__footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
  margin-top: 1rem;
}
@media screen and (max-width: 640px) {
  .cart-page .cart-item-card__footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.cart-page .cart-item-card__quantity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  border-radius: 8px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 0.0625rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.cart-page .cart-item-card__quantity--locked {
  opacity: 0.5;
  padding: 0.5rem 1.25rem;
  cursor: not-allowed;
}
.cart-page .cart-item-card__quantity--locked .cart-item-card__qty-value {
  width: auto;
}
.cart-page .qty-btn {
  width: 2.5rem;
  height: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: none;
  background: none;
  color: #fff;
  cursor: pointer;
  border-radius: 6px;
  -webkit-transition: background 0.15s;
  transition: background 0.15s;
}
.cart-page .qty-btn svg {
  width: 1rem;
  height: 1rem;
}
.cart-page .qty-btn:hover {
  background: rgba(255, 255, 255, 0.08);
}
.cart-page .qty-btn--minus {
  border-radius: 8px 0 0 8px;
}
.cart-page .qty-btn--plus {
  border-radius: 0 8px 8px 0;
}
.cart-page .cart-item-card__qty-value {
  width: 3rem;
  text-align: center;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5rem;
  color: #fff;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.cart-page .cart-item-card__pricing {
  text-align: right;
}
@media screen and (max-width: 640px) {
  .cart-page .cart-item-card__pricing {
    text-align: left;
  }
}
.cart-page .cart-item-card__total {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 2rem;
  color: #fff;
}
.cart-page .cart-item-card__each {
  font-size: 1.05em;
  line-height: 1.25rem;
  color: rgba(255, 255, 255, 0.4);
}
.cart-page .cart-continue {
  margin-top: 1.5rem;
  text-align: center;
}
.cart-page .cart-continue__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  color: #22d3ee;
  font-size: 1.05em;
  line-height: 1.5rem;
  text-decoration: none;
}
.cart-page .cart-continue__link svg {
  width: 1rem;
  height: 1rem;
}
.cart-page .cart-continue__link:hover {
  text-decoration: underline;
}
.cart-page .cart-mini-actions {
  margin-top: 1.5rem;
}
.cart-page .cart-coupon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  max-width: 24rem;
}
.cart-page .cart-coupon__input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 3rem;
  padding: 0.75rem 1rem;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid #475569;
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  outline: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.cart-page .cart-coupon__input::-webkit-input-placeholder {
  color: #64748b;
}
.cart-page .cart-coupon__input::-moz-placeholder {
  color: #64748b;
}
.cart-page .cart-coupon__input:-ms-input-placeholder {
  color: #64748b;
}
.cart-page .cart-coupon__input::-ms-input-placeholder {
  color: #64748b;
}
.cart-page .cart-coupon__input::placeholder {
  color: #64748b;
}
.cart-page .cart-coupon__input:focus {
  border-color: #06b6d4;
}
.cart-page .cart-coupon__apply {
  padding: 0.75rem 1.25rem;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  -webkit-transition: background 0.15s;
  transition: background 0.15s;
}
.cart-page .cart-coupon__apply:hover {
  background: rgba(255, 255, 255, 0.08);
}
.cart-page .order-summary {
  backdrop-filter: blur(24px);
  border-radius: 16px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 2.062rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.cart-page .order-summary__title {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 2rem;
  color: #fff;
  margin: 0 0 1.5rem;
}
.cart-page .order-summary__rows {
  margin-bottom: 1.5rem;
}
.cart-page .order-summary__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.25rem;
  margin-bottom: 1rem;
}
.cart-page .order-summary__row:last-child {
  margin-bottom: 0;
}
.cart-page .order-summary__label {
  color: rgba(255, 255, 255, 0.7);
  font-size: 1.05em;
  line-height: 1.5rem;
}
.cart-page .order-summary__value {
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5rem;
}
.cart-page .order-summary__value--shipping {
  color: #34d399;
}
.cart-page .order-summary__free {
  color: #34d399;
  font-weight: 500;
}
.cart-page .order-summary__total {
  padding-top: 1.062rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1.5rem;
}
.cart-page .order-summary__total-label {
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.75rem;
  color: #fff;
}
.cart-page .order-summary__total-value {
  font-size: 2em;
  font-weight: 700;
  line-height: 2.25rem;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.cart-page .order-summary__checkout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 3.5rem;
  border-radius: 12px;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6)), -webkit-gradient(linear, left top, left bottom, from(#0284c7), to(#0284c7));
  background: linear-gradient(90deg, #06b6d4, #14b8a6), linear-gradient(#0284c7, #0284c7);
  -webkit-box-shadow: 0px 1px 2px rgba(6, 182, 212, 0.2);
          box-shadow: 0px 1px 2px rgba(6, 182, 212, 0.2);
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5rem;
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.cart-page .order-summary__checkout svg {
  width: 1rem;
  height: 1rem;
}
.cart-page .order-summary__checkout:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.cart-page .order-summary__trust {
  padding-top: 1.5rem;
  color: rgba(255, 255, 255, 0.5);
}
.cart-page .order-trust__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
  color: rgba(255, 255, 255, 0.5);
  font-size: 1.05em;
  line-height: 1.25rem;
}
.cart-page .order-trust__item:last-child {
  margin-bottom: 0;
}
.cart-page .order-trust__item svg {
  width: 1.125rem;
  height: 1.125rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.cart-page .cart-empty {
  max-width: 28rem;
  margin: 0 auto;
  padding: 4rem 1.5rem;
  text-align: center;
}
.cart-page .cart-empty__icon {
  color: rgba(255, 255, 255, 0.2);
  margin-bottom: 1.5rem;
}
.cart-page .cart-empty__icon svg {
  width: 3rem;
  height: 3rem;
}
.cart-page .cart-empty__message {
  font-size: 1.25em;
  color: rgba(255, 255, 255, 0.7);
  margin: 0 0 1.5rem;
  line-height: 1.5;
}
.cart-page .cart-empty__cta {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.75rem 2rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
}
.cart-page .cart-empty__cta:hover {
  opacity: 0.9;
}

.checkout-page .checkout-layout {
  display: grid;
  grid-template-columns: 1fr 24.375rem;
  gap: 2rem;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 1280px) {
  .checkout-page .checkout-layout {
    grid-template-columns: 1fr;
  }
}
.checkout-page .checkout-layout__main {
  min-width: 0;
}
.checkout-page .checkout-layout__sidebar {
  position: sticky;
  top: 6rem;
}
@media screen and (max-width: 1280px) {
  .checkout-page .checkout-layout__sidebar {
    position: static;
  }
}
.checkout-page .checkout-progress {
  margin-top: 2rem;
}
.checkout-page .checkout-progress ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 14rem;
}
@media screen and (max-width: 920px) {
  .checkout-page .checkout-progress ol {
    gap: 2rem;
  }
}
.checkout-page .checkout-progress .checkout-progress__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  position: relative;
}
.checkout-page .checkout-progress .checkout-progress__item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 1.5rem;
  left: 100%;
  width: 14rem;
  height: 2px;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.1);
  z-index: 0;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}
@media screen and (max-width: 920px) {
  .checkout-page .checkout-progress .checkout-progress__item:not(:last-child)::after {
    width: 2rem;
  }
}
.checkout-page .checkout-progress .checkout-progress__item.is-complete::after {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
}
.checkout-page .checkout-progress .checkout-progress__item.is-active .checkout-progress__circle {
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  border-color: transparent;
  color: #fff;
  -webkit-box-shadow: 0 0 0 4px rgba(6, 182, 212, 0.2);
          box-shadow: 0 0 0 4px rgba(6, 182, 212, 0.2);
}
.checkout-page .checkout-progress .checkout-progress__item.is-active .checkout-progress__label {
  color: #fff;
  font-weight: 700;
}
.checkout-page .checkout-progress .checkout-progress__item.is-complete .checkout-progress__circle {
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  border-color: transparent;
  color: transparent;
  position: relative;
}
.checkout-page .checkout-progress .checkout-progress__item.is-complete .checkout-progress__circle::after {
  content: "";
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8.5L6.5 12L13 5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}
.checkout-page .checkout-progress .checkout-progress__item.is-complete .checkout-progress__label {
  color: #94a3b8;
}
.checkout-page .checkout-progress .checkout-progress__circle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  border: 2px solid #475569;
  color: #64748b;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  z-index: 1;
  font-size: 1.25em;
  font-weight: 700;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.checkout-page .checkout-progress .checkout-progress__label {
  font-size: 1.05em;
  font-weight: 500;
  color: #64748b;
  text-align: center;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.checkout-page .checkout-form-card {
  backdrop-filter: blur(24px);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  padding: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 920px) {
  .checkout-page .checkout-form-card {
    padding: 1.5rem;
  }
}
.checkout-page .checkout-step:not(.is-active) {
  display: none;
}
.checkout-page .checkout-step__title {
  color: #fff;
  font-size: 1.5em;
  font-weight: 700;
  margin: 0 0 1.5rem;
}
.checkout-page .checkout-step__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 1rem;
  margin-top: 1.5rem;
}
.checkout-page .checkout-step__actions--between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.checkout-page .checkout-step__prev {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.75rem 1.5rem;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
  cursor: pointer;
  -webkit-transition: background 0.15s, border-color 0.15s;
  transition: background 0.15s, border-color 0.15s;
}
.checkout-page .checkout-step__prev:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.25);
}
.checkout-page .checkout-step__next {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 2rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 12px;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
  cursor: pointer;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
}
.checkout-page .checkout-step__next svg {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.checkout-page .checkout-step__next:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.checkout-page .checkout-step__place-order {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 2rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 12px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
}
.checkout-page .checkout-step__place-order:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.checkout-page .checkout-step .checkout-fields .form-row {
  margin-bottom: 1.25rem;
}
.checkout-page .checkout-step .checkout-fields .form-row.form-row-first {
  width: calc(50% - 0.75rem);
  float: left;
}
.checkout-page .checkout-step .checkout-fields .form-row.form-row-last {
  width: calc(50% - 0.75rem);
  float: right;
}
.checkout-page .checkout-step .checkout-fields .form-row::after {
  content: "";
  display: table;
  clear: both;
}
.checkout-page .checkout-step .checkout-fields label {
  display: block;
  margin-bottom: 0.5rem;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
}
.checkout-page .checkout-step .checkout-fields label .required {
  color: #f87171;
}
.checkout-page .checkout-step .checkout-fields .checkout-input,
.checkout-page .checkout-step .checkout-fields .checkout-select {
  width: 100%;
  height: 2.875rem;
  padding: 0.812rem 1.062rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  color: #fff;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none;
  -webkit-transition: border-color 0.15s, background 0.15s;
  transition: border-color 0.15s, background 0.15s;
}
.checkout-page .checkout-step .checkout-fields .checkout-input::-webkit-input-placeholder, .checkout-page .checkout-step .checkout-fields .checkout-select::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .checkout-fields .checkout-input::-moz-placeholder, .checkout-page .checkout-step .checkout-fields .checkout-select::-moz-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .checkout-fields .checkout-input:-ms-input-placeholder, .checkout-page .checkout-step .checkout-fields .checkout-select:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .checkout-fields .checkout-input::-ms-input-placeholder, .checkout-page .checkout-step .checkout-fields .checkout-select::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .checkout-fields .checkout-input::placeholder,
.checkout-page .checkout-step .checkout-fields .checkout-select::placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .checkout-fields .checkout-input:focus,
.checkout-page .checkout-step .checkout-fields .checkout-select:focus {
  border-color: #06b6d4;
  background: rgba(255, 255, 255, 0.08);
}
.checkout-page .checkout-step .checkout-fields .checkout-select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-color: rgba(255, 255, 255, 0.05);
  padding-right: 2.5rem;
  cursor: pointer;
}
.checkout-page .checkout-step .checkout-fields .checkout-checkbox-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 500;
  color: #cbd5e1;
  cursor: pointer;
}
.checkout-page .checkout-step .checkout-fields .checkout-checkbox-label input[type=checkbox] {
  width: 1rem;
  height: 1rem;
  accent-color: #22d3ee;
  cursor: pointer;
}
.checkout-page .checkout-step .checkout-fields .checkout-fields--hidden {
  display: none;
}
.checkout-page .checkout-step .checkout-fields .checkout-fields--hidden.is-visible {
  display: block;
}
.checkout-page .checkout-step .select2-container {
  width: 100% !important;
}
.checkout-page .checkout-step .select2-container .select2-selection--single {
  height: 2.875rem;
  padding: 0.812rem 1.062rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.checkout-page .checkout-step .select2-container .select2-selection--single:focus {
  border-color: #06b6d4;
}
.checkout-page .checkout-step .select2-container .select2-selection__rendered {
  color: #fff;
  font-size: 1.05em;
  line-height: 1.5;
  padding-left: 0;
}
.checkout-page .checkout-step .select2-container .select2-selection__placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .select2-container .select2-selection__arrow {
  height: 2.875rem;
  right: 1rem;
}
.checkout-page .checkout-step .select2-container .select2-selection__arrow b {
  border-color: #94a3b8 transparent transparent;
  border-width: 5px 4px 0;
}
.checkout-page .checkout-step .select2-dropdown {
  background: #1e293b;
  border: 1px solid #475569;
  border-radius: 12px;
  overflow: hidden;
}
.checkout-page .checkout-step .select2-results__option {
  color: #fff;
  padding: 0.625rem 1rem;
  font-size: 1.05em;
  line-height: 1.5;
}
.checkout-page .checkout-step .select2-results__option--highlighted[aria-selected],
.checkout-page .checkout-step .select2-results__option--highlighted[data-selected] {
  background: rgba(34, 211, 238, 0.15);
  color: #fff;
}
.checkout-page .checkout-step .select2-search--dropdown {
  padding: 0.5rem;
}
.checkout-page .checkout-step .select2-search--dropdown .select2-search__field {
  width: 100%;
  padding: 0.5rem 0.75rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 6px;
  color: #fff;
  font-size: 1.05em;
  outline: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.checkout-page .checkout-step .select2-search--dropdown .select2-search__field:focus {
  border-color: #06b6d4;
}
.checkout-page .checkout-step .select2-search--dropdown .select2-search__field::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .select2-search--dropdown .select2-search__field::-moz-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .select2-search--dropdown .select2-search__field:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .select2-search--dropdown .select2-search__field::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-step .select2-search--dropdown .select2-search__field::placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.checkout-page .checkout-payment-methods {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}
.checkout-page .payment-method {
  cursor: pointer;
}
.checkout-page .payment-method__radio {
  display: none;
}
.checkout-page .payment-method__tile {
  display: block;
  backdrop-filter: blur(12px);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  padding: 1.25rem;
  -webkit-transition: border-color 0.15s, background 0.15s, -webkit-box-shadow 0.15s;
  transition: border-color 0.15s, background 0.15s, -webkit-box-shadow 0.15s;
  transition: border-color 0.15s, background 0.15s, box-shadow 0.15s;
  transition: border-color 0.15s, background 0.15s, box-shadow 0.15s, -webkit-box-shadow 0.15s;
}
.checkout-page .payment-method.is-selected .checkout-page .payment-method__tile {
  border-color: rgba(6, 182, 212, 0.5);
  background: rgba(6, 182, 212, 0.08);
  -webkit-box-shadow: 0 0 0 1px rgba(6, 182, 212, 0.15);
          box-shadow: 0 0 0 1px rgba(6, 182, 212, 0.15);
}
.checkout-page .payment-method:hover .checkout-page .payment-method__tile {
  border-color: rgba(6, 182, 212, 0.3);
}
.checkout-page .payment-method__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
.checkout-page .payment-method__indicator {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  border: 2px solid #475569;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.checkout-page .payment-method.is-selected .checkout-page .payment-method__indicator {
  border-color: #22d3ee;
}
.checkout-page .payment-method.is-selected .checkout-page .payment-method__indicator::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #22d3ee, #2dd4bf);
}
.checkout-page .payment-method__title-wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.checkout-page .payment-method__title {
  display: block;
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
}
.checkout-page .payment-method__description {
  display: block;
  color: #94a3b8;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 0.125rem;
}
.checkout-page .payment-method__icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.checkout-page .payment-method__icon img {
  height: 1.5rem;
  width: auto;
}
.checkout-page .payment-method__form {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(71, 85, 105, 0.4);
}
.checkout-page .payment-method__form .form-row {
  margin-bottom: 1rem;
}
.checkout-page .payment-method__form .form-row.form-row-first {
  width: calc(50% - 0.5rem);
  float: left;
}
.checkout-page .payment-method__form .form-row.form-row-last {
  width: calc(50% - 0.5rem);
  float: right;
}
.checkout-page .payment-method__form .form-row::after {
  content: "";
  display: table;
  clear: both;
}
.checkout-page .payment-method__form .form-row label {
  display: block;
  margin-bottom: 0.375rem;
  color: #94a3b8;
  font-size: 1.05em;
  font-weight: 500;
}
.checkout-page .payment-method__form .checkout-input {
  width: 100%;
  height: 2.75rem;
  padding: 0.625rem 0.875rem;
  background: rgba(15, 23, 42, 0.5);
  border: 1px solid #475569;
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none;
}
.checkout-page .payment-method__form .checkout-input::-webkit-input-placeholder {
  color: #64748b;
}
.checkout-page .payment-method__form .checkout-input::-moz-placeholder {
  color: #64748b;
}
.checkout-page .payment-method__form .checkout-input:-ms-input-placeholder {
  color: #64748b;
}
.checkout-page .payment-method__form .checkout-input::-ms-input-placeholder {
  color: #64748b;
}
.checkout-page .payment-method__form .checkout-input::placeholder {
  color: #64748b;
}
.checkout-page .payment-method__form .checkout-input:focus {
  border-color: #06b6d4;
}
.checkout-page .order-summary {
  backdrop-filter: blur(24px);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  padding: 2.062rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 1.5rem;
}
.checkout-page .order-summary__title {
  font-size: 1.5em;
  font-weight: 700;
  color: #fff;
  margin: 0 0 1.5rem;
  line-height: 1;
}
.checkout-page .order-summary__items {
  margin-bottom: 1.5rem;
}
.checkout-page .order-summary__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.checkout-page .order-summary__item:not(:last-child) {
  padding-bottom: 1rem;
}
.checkout-page .order-summary__item-image {
  width: 4rem;
  height: 4rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-radius: 8px;
  overflow: hidden;
  background: rgba(15, 23, 42, 0.5);
}
.checkout-page .order-summary__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.checkout-page .order-summary__item-info {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.checkout-page .order-summary__item-name {
  display: block;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.checkout-page .order-summary__item-qty-text {
  display: block;
  color: rgba(255, 255, 255, 0.4);
  font-size: 1.05em;
  line-height: 1.25;
}
.checkout-page .order-summary__item-price {
  display: block;
  color: #22d3ee;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.25;
}
.checkout-page .order-summary__rows {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 1.062rem;
  font-size: 1.05em;
}
.checkout-page .order-summary__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.checkout-page .order-summary__row:not(:last-child) {
  padding-bottom: 0.75rem;
}
.checkout-page .order-summary__label {
  color: rgba(255, 255, 255, 0.6);
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
}
.checkout-page .order-summary__value {
  color: #fff;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
}
.checkout-page .order-summary__value--shipping {
  text-align: right;
}
.checkout-page .order-summary__free {
  color: #34d399;
  font-weight: 500;
}
.checkout-page .order-summary__total {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 0.812rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.checkout-page .order-summary__total-label {
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.75;
}
.checkout-page .order-summary__total-value {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 2;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.checkout-page .order-summary__trust {
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.5);
}
.checkout-page .order-trust__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  font-size: 1.05em;
  font-weight: 400;
}
.checkout-page .order-trust__item:not(:last-child) {
  padding-bottom: 0.75rem;
}
.checkout-page .woocommerce-form-coupon-toggle {
  max-width: 1680px;
  margin: 0 auto 1.5rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.checkout-page .woocommerce-form-coupon-toggle .woocommerce-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 1rem 1.25rem;
  backdrop-filter: blur(24px);
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(59, 130, 246, 0.3);
  border-left: 3px solid #3b82f6;
  border-radius: 10px;
  color: #e2e8f0;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
}
.checkout-page .woocommerce-form-coupon-toggle .woocommerce-info::before {
  content: none;
}
.checkout-page .woocommerce-form-coupon-toggle .woocommerce-info a {
  color: #60a5fa;
  font-weight: 500;
  text-decoration: none;
}
.checkout-page .woocommerce-form-coupon-toggle .woocommerce-info a:hover {
  text-decoration: underline;
}
.checkout-page .woocommerce-form-login-toggle {
  max-width: 1680px;
  margin: 0 auto 1.5rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.checkout-page .woocommerce-form-login-toggle .woocommerce-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 1rem 1.25rem;
  backdrop-filter: blur(24px);
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(59, 130, 246, 0.3);
  border-left: 3px solid #3b82f6;
  border-radius: 10px;
  color: #e2e8f0;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
}
.checkout-page .woocommerce-form-login-toggle .woocommerce-info::before {
  content: none;
}
.checkout-page .woocommerce-form-login-toggle .woocommerce-info a {
  color: #60a5fa;
  font-weight: 500;
  text-decoration: none;
}
.checkout-page .woocommerce-form-login-toggle .woocommerce-info a:hover {
  text-decoration: underline;
}
.checkout-page .checkout_coupon {
  max-width: 1680px;
  margin: 0 auto 1.5rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.checkout-page .checkout_coupon .form-row-first {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.checkout-page .checkout_coupon .form-row-last {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.checkout-page .checkout_coupon .form-row {
  margin-bottom: 0;
}
.checkout-page .checkout_coupon label {
  display: block;
  margin-bottom: 0.5rem;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
}
.checkout-page .checkout_coupon label.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.checkout-page .checkout_coupon .input-text {
  width: 100%;
  height: 3rem;
  padding: 0.75rem 1rem;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid #475569;
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.checkout-page .checkout_coupon .input-text::-webkit-input-placeholder {
  color: #64748b;
}
.checkout-page .checkout_coupon .input-text::-moz-placeholder {
  color: #64748b;
}
.checkout-page .checkout_coupon .input-text:-ms-input-placeholder {
  color: #64748b;
}
.checkout-page .checkout_coupon .input-text::-ms-input-placeholder {
  color: #64748b;
}
.checkout-page .checkout_coupon .input-text::placeholder {
  color: #64748b;
}
.checkout-page .checkout_coupon .input-text:focus {
  border-color: #06b6d4;
}
.checkout-page .checkout_coupon .button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 3rem;
  padding: 0.75rem 1.5rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  white-space: nowrap;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.checkout-page .checkout_coupon .button:hover {
  opacity: 0.9;
}
.checkout-page .woocommerce-NoticeGroup-checkout {
  max-width: 1680px;
  margin: 0 auto 1.5rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-animation: checkoutNoticeIn 0.35s ease-out;
          animation: checkoutNoticeIn 0.35s ease-out;
}
@-webkit-keyframes checkoutNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes checkoutNoticeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-0.75rem);
            transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.checkout-page .woocommerce-NoticeGroup-checkout .woocommerce-error {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  backdrop-filter: blur(24px);
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(239, 68, 68, 0.3);
  border-left: 3px solid #ef4444;
  border-radius: 10px;
  color: #e2e8f0;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(239, 68, 68, 0.08);
          box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(239, 68, 68, 0.08);
  position: relative;
  overflow: hidden;
}
.checkout-page .woocommerce-NoticeGroup-checkout .woocommerce-error::before {
  content: "";
  display: inline-block;
  position: static;
  width: 2rem;
  height: 2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-radius: 50%;
  background: rgba(239, 68, 68, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='11.5' r='0.75' fill='%23ef4444'/%3E%3Cpath d='M8 5.5V8.5' stroke='%23ef4444' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}
.checkout-page .woocommerce-NoticeGroup-checkout .woocommerce-error::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 6rem;
  background: -webkit-gradient(linear, left top, right top, from(transparent), to(rgba(239, 68, 68, 0.03)));
  background: linear-gradient(90deg, transparent, rgba(239, 68, 68, 0.03));
  pointer-events: none;
}
.checkout-page .woocommerce-NoticeGroup-checkout .woocommerce-error li {
  color: #fca5a5;
  line-height: 1.5;
}
.checkout-page .woocommerce-NoticeGroup-checkout .woocommerce-error li:not(:last-child) {
  margin-bottom: 0.25rem;
}
.checkout-page .woocommerce-NoticeGroup-checkout .woocommerce-error a {
  color: #fca5a5;
  font-weight: 500;
  text-decoration: none;
}
.checkout-page .woocommerce-NoticeGroup-checkout .woocommerce-error a:hover {
  text-decoration: underline;
}
.checkout-page .woocommerce-message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  backdrop-filter: blur(24px);
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-left: 3px solid #22c55e;
  border-radius: 10px;
  color: #e2e8f0;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
          box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(34, 197, 94, 0.08);
  position: relative;
  overflow: hidden;
  -webkit-animation: checkoutNoticeIn 0.35s ease-out;
          animation: checkoutNoticeIn 0.35s ease-out;
}
.checkout-page .woocommerce-message::before {
  content: "";
  display: inline-block;
  position: static;
  width: 2rem;
  height: 2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8.5L6.5 12L13 5' stroke='%2322c55e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}
.checkout-page .woocommerce-message::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 6rem;
  background: -webkit-gradient(linear, left top, right top, from(transparent), to(rgba(34, 197, 94, 0.03)));
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.03));
  pointer-events: none;
}
.checkout-page .woocommerce-message a {
  color: #4ade80;
  font-weight: 500;
  text-decoration: none;
}
.checkout-page .woocommerce-message a:hover {
  text-decoration: underline;
}
.checkout-page .form-row.has-error .checkout-input,
.checkout-page .form-row.has-error .checkout-select {
  border-color: #ef4444;
  -webkit-box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.15);
          box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.15);
}
.checkout-page .form-row.has-error .select2-container .select2-selection--single {
  border-color: #ef4444;
  -webkit-box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.15);
          box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.15);
}
.checkout-page .field-error {
  display: block;
  color: #fca5a5;
  font-size: 0.75em;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 0.25rem;
}
.checkout-page .cart-empty {
  max-width: 28rem;
  margin: 0 auto;
  text-align: center;
  padding: 2rem;
}
.checkout-page .cart-empty__icon {
  color: #475569;
  margin-bottom: 1rem;
}
.checkout-page .cart-empty__message {
  color: #94a3b8;
  font-size: 1.05em;
  margin: 0 0 1.5rem;
}
.checkout-page .cart-empty__cta {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.75rem 2rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.checkout-page .cart-empty__cta:hover {
  opacity: 0.9;
}

.auth-hero {
  position: relative;
  isolation: isolate;
  background: linear-gradient(135deg, #0f172a, #1e293b 50%, #0f172a);
  padding: 8rem 0 5rem;
  color: #fff;
}
.auth-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(15, 23, 42, 0.5)), to(#0f172a));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(15, 23, 42, 0.5) 50%, #0f172a);
  z-index: 0;
  pointer-events: none;
}
@media screen and (max-width: 920px) {
  .auth-hero {
    padding: 8rem 0 3rem;
  }
}
.auth-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.auth-hero__breadcrumbs {
  margin-bottom: 2rem;
}
.auth-hero__breadcrumbs ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 300;
  line-height: 1.25;
}
.auth-hero__breadcrumbs li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
.auth-hero__breadcrumbs li:not(:last-child)::after {
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 0.875rem;
  height: 0.875rem;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 3L9 7L5 11' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.auth-hero__breadcrumbs li a {
  color: inherit;
  text-decoration: none;
}
.auth-hero__breadcrumbs li a:hover {
  text-decoration: underline;
}
.auth-hero__breadcrumbs li span {
  font-weight: 700;
}
.auth-hero__title {
  font-size: clamp(2.25em, 5vw, 3.5em);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 1.5rem;
}
.auth-hero__title-prefix {
  color: #fff;
}
.auth-hero__title-accent {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.auth-hero__description {
  font-size: 1.25em;
  line-height: 1.75rem;
  color: #cbd5e1;
  max-width: 48rem;
  margin: 0;
}

.auth-body {
  background: linear-gradient(135deg, #0f172a, #1e293b 50%, #0f172a);
  padding: 6rem 1rem 4rem;
}
@media screen and (max-width: 920px) {
  .auth-body {
    padding: 3rem 1rem 2rem;
  }
}

.auth-page .woocommerce-notices-wrapper {
  max-width: 1680px;
  margin: 0 auto 1.5rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.auth-page .auth-card-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.auth-page .auth-card-wrapper .woocommerce-notices-wrapper {
  width: 28rem;
  max-width: 100%;
  margin-bottom: 1.5rem;
}
.auth-page .auth-card {
  width: 28rem;
  max-width: 100%;
  background: rgba(30, 41, 59, 0.5);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(51, 65, 85, 0.5);
  border-radius: 16px;
  -webkit-box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
          box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  padding: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  color: #fff;
}
.auth-page .auth-card__header {
  text-align: center;
  margin-bottom: 2rem;
}
.auth-page .auth-card__icon-box {
  width: 4rem;
  height: 4rem;
  border-radius: 16px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto 1rem;
}
.auth-page .auth-card__icon-box img {
  width: 1.875rem;
  height: 1.875rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.auth-page .auth-card__heading {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 0.5rem;
  color: #fff;
}
.auth-page .auth-card__subtitle {
  font-size: 1.05em;
  line-height: 1.5;
  color: #94a3b8;
  margin: 0;
}
.auth-page .auth-card__form--register {
  display: none;
}
.auth-page .auth-card__field {
  margin-bottom: 1.5rem;
}
.auth-page .auth-card__label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.25;
  color: #fff;
}
.auth-page .auth-card__label .required {
  color: #22d3ee;
}
.auth-page .auth-card__input-wrapper {
  position: relative;
  isolation: isolate;
}
.auth-page .auth-card__input-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 2rem;
  height: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 1;
  pointer-events: none;
}
.auth-page .auth-card__input-icon img {
  width: 1rem;
  height: 1rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 640px) {
  .auth-page .auth-card__input-icon {
    height: 2.75rem;
  }
}
.auth-page .auth-card__input {
  display: block;
  width: 100%;
  height: 3rem;
  padding: 0.75rem 1rem 0.75rem 3rem;
  background: rgba(15, 23, 42, 0.5);
  border: 1px solid #475569;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.auth-page .auth-card__input::-webkit-input-placeholder {
  color: #64748b;
}
.auth-page .auth-card__input::-moz-placeholder {
  color: #64748b;
}
.auth-page .auth-card__input:-ms-input-placeholder {
  color: #64748b;
}
.auth-page .auth-card__input::-ms-input-placeholder {
  color: #64748b;
}
.auth-page .auth-card__input::placeholder {
  color: #64748b;
}
.auth-page .auth-card__input:focus {
  border-color: #06b6d4;
}
@media screen and (max-width: 640px) {
  .auth-page .auth-card__input {
    height: 2.75rem;
    padding: 0.625rem 0.75rem 0.625rem 2.75rem;
  }
}
.auth-page .auth-card__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1.5rem;
}
.auth-page .auth-card__remember {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.25;
  color: #cbd5e1;
  cursor: pointer;
}
.auth-page .auth-card__remember input[type=checkbox] {
  width: 1rem;
  height: 1rem;
  margin: 0;
  background: rgba(15, 23, 42, 0.5);
  border: 1px solid #475569;
  border-radius: 4px;
  cursor: pointer;
  accent-color: #22d3ee;
}
.auth-page .auth-card__forgot {
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.25;
  color: #22d3ee;
  text-decoration: none;
}
.auth-page .auth-card__forgot:hover {
  text-decoration: underline;
}
.auth-page .auth-card__submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 3rem;
  padding: 0.75rem 1.5rem;
  border-radius: 8px;
  border: none;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  margin-bottom: 1.5rem;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.auth-page .auth-card__submit:hover {
  opacity: 0.9;
}
.auth-page .auth-card__toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.25rem;
  font-size: 1.05em;
  line-height: 1.5;
  color: #94a3b8;
  margin-bottom: 1.5rem;
}
.auth-page .auth-card__toggle button {
  background: none;
  border: none;
  padding: 0;
  font-size: inherit;
  font-weight: 500;
  line-height: inherit;
  color: #22d3ee;
  cursor: pointer;
}
.auth-page .auth-card__toggle button:hover {
  text-decoration: underline;
}
.auth-page .auth-card__terms {
  text-align: center;
  font-size: 1.05em;
  line-height: 1.25;
  color: #64748b;
}
.auth-page .auth-card__terms a {
  color: #94a3b8;
  text-decoration: none;
}
.auth-page .auth-card__terms a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 640px) {
  .auth-page .auth-card {
    padding: 1.25rem;
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
  .auth-page .auth-card {
    padding: 1rem;
    border-radius: 12px;
  }
}
@media screen and (max-width: 640px) {
  .auth-page .auth-card__icon-box {
    width: 3rem;
    height: 3rem;
  }
  .auth-page .auth-card__icon-box img {
    width: 1.375rem;
    height: 1.375rem;
  }
}
.auth-page .auth-card .woocommerce-privacy-policy-text {
  font-size: 1.05em;
  line-height: 1.5;
  color: #94a3b8;
  margin-bottom: 1.5rem;
}
.auth-page .auth-card .woocommerce-privacy-policy-text a {
  color: #22d3ee;
  text-decoration: none;
}
.auth-page .auth-card .woocommerce-privacy-policy-text a:hover {
  text-decoration: underline;
}
.auth-page .auth-card wc-order-attribution-inputs {
  display: none;
}
.auth-page .woocommerce-error,
.auth-page .woocommerce-message,
.auth-page .woocommerce-info {
  padding: 1em 1.25em;
  margin-bottom: 1.5rem;
  border-radius: 8px;
  font-size: 1.05em;
  line-height: 1.25;
}
.auth-page .woocommerce-error a,
.auth-page .woocommerce-message a,
.auth-page .woocommerce-info a {
  color: inherit;
  font-weight: 600;
}
.auth-page .woocommerce-error {
  background: rgba(239, 68, 68, 0.15);
  border: 1px solid rgba(239, 68, 68, 0.3);
  color: #fca5a5;
}
.auth-page .woocommerce-message {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.3);
  color: #86efac;
}

.account-page > .woocommerce-notices-wrapper {
  max-width: 1680px;
  margin: 0 auto 1.5rem;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.account-page .woocommerce {
  width: 100%;
}
.account-page .account-layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 2rem;
  max-width: 1680px;
  margin: 0 auto;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 920px) {
  .account-page .account-layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.account-page .account-navigation {
  position: sticky;
  top: 6rem;
}
.account-page .account-nav-card {
  background: rgba(30, 41, 59, 0.6);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(51, 65, 85, 0.6);
  border-radius: 12px;
  overflow: hidden;
}
.account-page .account-nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.account-page .account-nav__item {
  margin: 0;
}
.account-page .account-nav__item:not(:last-child) {
  border-bottom: 1px solid rgba(71, 85, 105, 0.4);
}
.account-page .account-nav__item.is-active {
  background: rgba(34, 211, 238, 0.12);
}
.account-page .account-nav__item.is-active .account-nav__link {
  font-weight: 600;
  color: #fff;
  border-left-color: #22d3ee;
}
.account-page .account-nav__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  padding: 0.875rem 1.25rem;
  text-decoration: none;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
  border-left: 3px solid transparent;
  -webkit-transition: background 0.15s, border-color 0.15s;
  transition: background 0.15s, border-color 0.15s;
}
.account-page .account-nav__link:hover {
  border-left-color: #22d3ee;
  background: rgba(34, 211, 238, 0.08);
}
.account-page .account-content {
  min-height: 400px;
}
.account-page .account-content-card {
  background: rgba(30, 41, 59, 0.6);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(51, 65, 85, 0.6);
  border-radius: 12px;
  padding: 2rem;
  color: #fff;
  font-size: 1.05em;
}
.account-page .account-content-card p {
  color: #fff;
  font-size: 1.05em;
  line-height: 1.5;
  margin: 0 0 1rem;
}
.account-page .account-content-card p a {
  color: #22d3ee;
  text-decoration: none;
  font-weight: 500;
}
.account-page .account-content-card p a:hover {
  text-decoration: underline;
}
.account-page .account-content-card p strong {
  color: #fff;
}
.account-page .account-content-card > p:first-of-type {
  font-size: 1.25em;
  font-weight: 600;
  color: #fff;
  margin: 0 0 1.5rem;
}
.account-page .account-content-card .woocommerce-notices-wrapper:not(:empty) {
  margin-bottom: 1.5rem;
}
.account-page .account-content-card .woocommerce-message,
.account-page .account-content-card .woocommerce-error,
.account-page .account-content-card .woocommerce-info {
  padding: 1rem 1.25rem;
  margin-bottom: 1rem;
  border-radius: 8px;
  font-size: 1.05em;
  line-height: 1.25;
}
.account-page .account-content-card .woocommerce-message a,
.account-page .account-content-card .woocommerce-error a,
.account-page .account-content-card .woocommerce-info a {
  color: inherit;
  font-weight: 600;
}
.account-page .account-content-card .woocommerce-message::before,
.account-page .account-content-card .woocommerce-error::before,
.account-page .account-content-card .woocommerce-info::before {
  display: none;
}
.account-page .account-content-card .woocommerce-message {
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.25);
  color: #86efac;
}
.account-page .account-content-card .woocommerce-error {
  background: rgba(239, 68, 68, 0.12);
  border: 1px solid rgba(239, 68, 68, 0.25);
  color: #fca5a5;
}
.account-page .account-content-card .woocommerce-info {
  background: rgba(59, 130, 246, 0.12);
  border: 1px solid rgba(59, 130, 246, 0.25);
  color: #93c5fd;
}
.account-page .account-content-card .woocommerce-EditAccountForm .form-row-first,
.account-page .account-content-card .woocommerce-EditAccountForm .form-row-last {
  width: calc(50% - 0.75rem);
  float: left;
}
@media screen and (max-width: 640px) {
  .account-page .account-content-card .woocommerce-EditAccountForm .form-row-first,
  .account-page .account-content-card .woocommerce-EditAccountForm .form-row-last {
    width: 100%;
    float: none;
  }
}
.account-page .account-content-card .woocommerce-EditAccountForm .form-row-first {
  margin-right: 1.5rem;
}
@media screen and (max-width: 640px) {
  .account-page .account-content-card .woocommerce-EditAccountForm .form-row-first {
    margin-right: 0;
  }
}
.account-page .account-content-card .woocommerce-EditAccountForm .clear {
  display: none;
}
.account-page .account-content-card .woocommerce-EditAccountForm #account_display_name_description {
  display: block;
  margin-top: 0.375rem;
  color: #94a3b8;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.25;
}
.account-page .account-content-card .woocommerce-EditAccountForm #account_display_name_description em {
  font-style: normal;
}
.account-page .account-content-card .woocommerce-EditAccountForm fieldset {
  border: 1px solid rgba(71, 85, 105, 0.5);
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}
.account-page .account-content-card .woocommerce-EditAccountForm fieldset legend {
  color: #fff;
  font-weight: 600;
  font-size: 1.05em;
  padding: 0 0.75rem;
}
.account-page .account-content-card .woocommerce-EditAccountForm button[type=submit] {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.75rem 2rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
}
.account-page .account-content-card .woocommerce-EditAccountForm button[type=submit]:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.account-page .account-content-card .form-row {
  margin-bottom: 1.25rem;
}
.account-page .account-content-card .form-row label {
  display: block;
  margin-bottom: 0.5rem;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
}
.account-page .account-content-card .form-row label .required {
  color: #22d3ee;
}
.account-page .account-content-card .form-row input[type=text],
.account-page .account-content-card .form-row input[type=email],
.account-page .account-content-card .form-row input[type=password],
.account-page .account-content-card .form-row input[type=tel],
.account-page .account-content-card .form-row input[type=number],
.account-page .account-content-card .form-row select,
.account-page .account-content-card .form-row textarea {
  width: 100%;
  height: 3rem;
  padding: 0.75rem 1rem;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid #475569;
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none;
  -webkit-transition: border-color 0.15s, background 0.15s;
  transition: border-color 0.15s, background 0.15s;
}
.account-page .account-content-card .form-row input[type=text]::-webkit-input-placeholder, .account-page .account-content-card .form-row input[type=email]::-webkit-input-placeholder, .account-page .account-content-card .form-row input[type=password]::-webkit-input-placeholder, .account-page .account-content-card .form-row input[type=tel]::-webkit-input-placeholder, .account-page .account-content-card .form-row input[type=number]::-webkit-input-placeholder, .account-page .account-content-card .form-row select::-webkit-input-placeholder, .account-page .account-content-card .form-row textarea::-webkit-input-placeholder {
  color: #64748b;
}
.account-page .account-content-card .form-row input[type=text]::-moz-placeholder, .account-page .account-content-card .form-row input[type=email]::-moz-placeholder, .account-page .account-content-card .form-row input[type=password]::-moz-placeholder, .account-page .account-content-card .form-row input[type=tel]::-moz-placeholder, .account-page .account-content-card .form-row input[type=number]::-moz-placeholder, .account-page .account-content-card .form-row select::-moz-placeholder, .account-page .account-content-card .form-row textarea::-moz-placeholder {
  color: #64748b;
}
.account-page .account-content-card .form-row input[type=text]:-ms-input-placeholder, .account-page .account-content-card .form-row input[type=email]:-ms-input-placeholder, .account-page .account-content-card .form-row input[type=password]:-ms-input-placeholder, .account-page .account-content-card .form-row input[type=tel]:-ms-input-placeholder, .account-page .account-content-card .form-row input[type=number]:-ms-input-placeholder, .account-page .account-content-card .form-row select:-ms-input-placeholder, .account-page .account-content-card .form-row textarea:-ms-input-placeholder {
  color: #64748b;
}
.account-page .account-content-card .form-row input[type=text]::-ms-input-placeholder, .account-page .account-content-card .form-row input[type=email]::-ms-input-placeholder, .account-page .account-content-card .form-row input[type=password]::-ms-input-placeholder, .account-page .account-content-card .form-row input[type=tel]::-ms-input-placeholder, .account-page .account-content-card .form-row input[type=number]::-ms-input-placeholder, .account-page .account-content-card .form-row select::-ms-input-placeholder, .account-page .account-content-card .form-row textarea::-ms-input-placeholder {
  color: #64748b;
}
.account-page .account-content-card .form-row input[type=text]::placeholder,
.account-page .account-content-card .form-row input[type=email]::placeholder,
.account-page .account-content-card .form-row input[type=password]::placeholder,
.account-page .account-content-card .form-row input[type=tel]::placeholder,
.account-page .account-content-card .form-row input[type=number]::placeholder,
.account-page .account-content-card .form-row select::placeholder,
.account-page .account-content-card .form-row textarea::placeholder {
  color: #64748b;
}
.account-page .account-content-card .form-row input[type=text]:focus,
.account-page .account-content-card .form-row input[type=email]:focus,
.account-page .account-content-card .form-row input[type=password]:focus,
.account-page .account-content-card .form-row input[type=tel]:focus,
.account-page .account-content-card .form-row input[type=number]:focus,
.account-page .account-content-card .form-row select:focus,
.account-page .account-content-card .form-row textarea:focus {
  border-color: #06b6d4;
  background: rgba(15, 23, 42, 0.8);
}
.account-page .account-content-card .form-row input[type=text]:disabled,
.account-page .account-content-card .form-row input[type=email]:disabled,
.account-page .account-content-card .form-row input[type=password]:disabled,
.account-page .account-content-card .form-row input[type=tel]:disabled,
.account-page .account-content-card .form-row input[type=number]:disabled,
.account-page .account-content-card .form-row select:disabled,
.account-page .account-content-card .form-row textarea:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.account-page .account-content-card .form-row textarea {
  height: auto;
  min-height: 6rem;
}
.account-page .account-content-card .form-row .woocommerce-input-wrapper {
  width: 100%;
}
.account-page .account-content-card .form-row select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-color: rgba(15, 23, 42, 0.6);
  padding-right: 2.5rem;
}
.account-page .account-content-card .woocommerce-Address .woocommerce-Address-title h2,
.account-page .account-content-card .woocommerce-Address .woocommerce-Address-title h3 {
  color: #fff !important;
}
.account-page .account-content-card h2,
.account-page .account-content-card h3 {
  color: #fff;
}
.account-page .account-content-card .woocommerce-address-fields h2 {
  color: #fff;
  font-size: 1.5em;
  font-weight: 700;
  margin: 0 0 1.5rem;
}
.account-page .account-content-card .woocommerce-address-fields button[type=submit] {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.75rem 2rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
}
.account-page .account-content-card .woocommerce-address-fields button[type=submit]:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.account-page .account-content-card .select2-container {
  width: 100% !important;
}
.account-page .account-content-card .select2-container .select2-selection--single {
  height: 3rem;
  padding: 0.75rem 1rem;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid #475569;
  border-radius: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: border-color 0.15s;
  transition: border-color 0.15s;
}
.account-page .account-content-card .select2-container .select2-selection--single:focus {
  border-color: #06b6d4;
}
.account-page .account-content-card .select2-container .select2-selection__rendered {
  color: #fff;
  font-size: 1.05em;
  line-height: 1.5;
  padding-left: 0;
}
.account-page .account-content-card .select2-container .select2-selection__placeholder {
  color: #64748b;
}
.account-page .account-content-card .select2-container .select2-selection__arrow {
  height: 3rem;
  right: 1rem;
}
.account-page .account-content-card .select2-container .select2-selection__arrow b {
  border-color: #94a3b8 transparent transparent;
  border-width: 5px 4px 0;
}
.account-page .account-content-card .select2-dropdown {
  background: #1e293b;
  border: 1px solid #475569;
  border-radius: 8px;
  overflow: hidden;
}
.account-page .account-content-card .select2-results__option {
  color: #fff;
  padding: 0.625rem 1rem;
  font-size: 1.05em;
  line-height: 1.5;
}
.account-page .account-content-card .select2-results__option--highlighted[aria-selected],
.account-page .account-content-card .select2-results__option--highlighted[data-selected] {
  background: rgba(34, 211, 238, 0.15);
  color: #fff;
}
.account-page .account-content-card .select2-search--dropdown {
  padding: 0.5rem;
}
.account-page .account-content-card .select2-search--dropdown .select2-search__field {
  width: 100%;
  padding: 0.5rem 0.75rem;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid #475569;
  border-radius: 6px;
  color: #fff;
  font-size: 1.05em;
  outline: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.account-page .account-content-card .select2-search--dropdown .select2-search__field:focus {
  border-color: #06b6d4;
}
.account-page .account-content-card .select2-search--dropdown .select2-search__field::-webkit-input-placeholder {
  color: #64748b;
}
.account-page .account-content-card .select2-search--dropdown .select2-search__field::-moz-placeholder {
  color: #64748b;
}
.account-page .account-content-card .select2-search--dropdown .select2-search__field:-ms-input-placeholder {
  color: #64748b;
}
.account-page .account-content-card .select2-search--dropdown .select2-search__field::-ms-input-placeholder {
  color: #64748b;
}
.account-page .account-content-card .select2-search--dropdown .select2-search__field::placeholder {
  color: #64748b;
}
@media screen and (max-width: 920px) {
  .account-page .account-content-card {
    padding: 1.5rem;
  }
}
.account-page .woocommerce-MyAccount-content {
  color: #fff;
  font-size: 1.05em;
}
.account-page .woocommerce-MyAccount-content p {
  color: #fff;
  font-size: 1.05em;
  line-height: 1.5;
  margin: 0 0 1rem;
}
.account-page .woocommerce-MyAccount-content p a {
  color: #22d3ee;
  text-decoration: none;
  font-weight: 500;
}
.account-page .woocommerce-MyAccount-content p a:hover {
  text-decoration: underline;
}
.account-page .woocommerce-MyAccount-content p strong {
  color: #fff;
}
.account-page .woocommerce-MyAccount-content h2,
.account-page .woocommerce-MyAccount-content h3 {
  color: #fff;
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1;
  margin: 0 0 1rem;
}
.account-page .woocommerce-MyAccount-content > p:first-of-type {
  font-size: 1.25em;
  font-weight: 600;
  color: #fff;
  margin: 0 0 1.5rem;
}
.account-page .woocommerce-MyAccount-content table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.05em;
}
.account-page .woocommerce-MyAccount-content table thead th {
  font-size: 1.05em;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #94a3b8;
  padding: 0.75rem 0.75rem;
  border-bottom: 2px solid rgba(71, 85, 105, 0.5);
  text-align: left;
}
.account-page .woocommerce-MyAccount-content table tbody th,
.account-page .woocommerce-MyAccount-content table tbody td {
  padding: 0.875rem 0.75rem;
  border-bottom: 1px solid rgba(71, 85, 105, 0.3);
  text-align: left;
  color: #fff;
  font-size: 1.05em;
}
.account-page .woocommerce-MyAccount-content table tbody th {
  font-weight: 600;
}
.account-page .woocommerce-MyAccount-content table tbody tr {
  -webkit-transition: background 0.15s;
  transition: background 0.15s;
}
.account-page .woocommerce-MyAccount-content table tbody tr:hover {
  background: rgba(255, 255, 255, 0.03);
}
.account-page .woocommerce-MyAccount-content table a {
  color: #22d3ee;
  text-decoration: none;
  font-weight: 500;
}
.account-page .woocommerce-MyAccount-content table a:hover {
  text-decoration: underline;
}
.account-page .woocommerce-MyAccount-content table .order-number,
.account-page .woocommerce-MyAccount-content table .order-date,
.account-page .woocommerce-MyAccount-content table .order-status,
.account-page .woocommerce-MyAccount-content table .order-total {
  white-space: nowrap;
}
.account-page .woocommerce-MyAccount-content table .order-status {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.125rem 0.625rem;
  border-radius: 9999px;
  font-size: 0.75em;
  font-weight: 500;
}
.account-page .woocommerce-MyAccount-content table .order-status.processing {
  background: rgba(59, 130, 246, 0.15);
  color: #93c5fd;
}
.account-page .woocommerce-MyAccount-content table .order-status.completed {
  background: rgba(34, 197, 94, 0.15);
  color: #86efac;
}
.account-page .woocommerce-MyAccount-content table .order-status.on-hold {
  background: rgba(245, 158, 11, 0.15);
  color: #fcd34d;
}
.account-page .woocommerce-MyAccount-content table .order-status.cancelled, .account-page .woocommerce-MyAccount-content table .order-status.failed, .account-page .woocommerce-MyAccount-content table .order-status.refunded {
  background: rgba(239, 68, 68, 0.15);
  color: #fca5a5;
}
.account-page .woocommerce-MyAccount-content mark {
  background: none;
  color: #22d3ee;
  font-weight: 600;
}
.account-page .woocommerce-MyAccount-content .woocommerce-OrderUpdates {
  list-style: none;
  margin: 1.5rem 0;
  padding: 0;
}
.account-page .woocommerce-MyAccount-content .woocommerce-OrderUpdates .woocommerce-OrderUpdate {
  padding: 1.25rem;
  background: rgba(15, 23, 42, 0.3);
  border: 1px solid rgba(71, 85, 105, 0.3);
  border-radius: 8px;
  margin-bottom: 1rem;
}
.account-page .woocommerce-MyAccount-content .woocommerce-OrderUpdates .woocommerce-OrderUpdate:last-child {
  margin-bottom: 0;
}
.account-page .woocommerce-MyAccount-content .woocommerce-OrderUpdates .woocommerce-OrderUpdate-meta {
  font-size: 1.05em;
  color: #94a3b8;
  margin: 0 0 0.5rem;
}
.account-page .woocommerce-MyAccount-content .woocommerce-OrderUpdates .woocommerce-OrderUpdate-description {
  color: #fff;
  font-size: 1.05em;
  line-height: 1.5;
}
.account-page .woocommerce-MyAccount-content .woocommerce-OrderUpdates .woocommerce-OrderUpdate-description p {
  margin: 0 0 0.5rem;
}
.account-page .woocommerce-MyAccount-content .woocommerce-OrderUpdates .woocommerce-OrderUpdate-description p:last-child {
  margin-bottom: 0;
}
.account-page .woocommerce-MyAccount-content p.woocommerce-order-downloads {
  color: #fff;
  font-size: 1.05em;
}
.account-page .woocommerce-MyAccount-content p.woocommerce-order-downloads a {
  color: #22d3ee;
}
.account-page .woocommerce-MyAccount-content .woocommerce-address-fields h2 {
  color: #fff;
  font-size: 1.5em;
  font-weight: 700;
  margin: 0 0 1.5rem;
}
.account-page .woocommerce-MyAccount-content .woocommerce-address-fields button[type=submit] {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.75rem 2rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
}
.account-page .woocommerce-MyAccount-content .woocommerce-address-fields button[type=submit]:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.account-page .woocommerce-MyAccount-content .woocommerce-button,
.account-page .woocommerce-MyAccount-content .button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  padding: 0.625rem 1.25rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  text-decoration: none;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
}
.account-page .woocommerce-MyAccount-content .woocommerce-button:hover,
.account-page .woocommerce-MyAccount-content .button:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.account-page .woocommerce-MyAccount-content .woocommerce-button.alt, .account-page .woocommerce-MyAccount-content .woocommerce-button.view,
.account-page .woocommerce-MyAccount-content .button.alt,
.account-page .woocommerce-MyAccount-content .button.view {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #fff;
}
.account-page .woocommerce-MyAccount-content .woocommerce-button.alt:hover, .account-page .woocommerce-MyAccount-content .woocommerce-button.view:hover,
.account-page .woocommerce-MyAccount-content .button.alt:hover,
.account-page .woocommerce-MyAccount-content .button.view:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.25);
}
.account-page .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5rem;
}
.account-page .woocommerce-MyAccount-content fieldset {
  border: 1px solid rgba(71, 85, 105, 0.5);
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}
.account-page .woocommerce-MyAccount-content fieldset legend {
  color: #fff;
  font-weight: 600;
  font-size: 1.05em;
  padding: 0 0.75rem;
}
.account-page .woocommerce-MyAccount-content .woocommerce-password-strength {
  margin-top: 0.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 4px;
  font-size: 0.75em;
  font-weight: 500;
  line-height: 1;
}
.account-page .woocommerce-MyAccount-content .woocommerce-password-strength.bad, .account-page .woocommerce-MyAccount-content .woocommerce-password-strength.short {
  background: rgba(239, 68, 68, 0.15);
  color: #fca5a5;
}
.account-page .woocommerce-MyAccount-content .woocommerce-password-strength.good {
  background: rgba(245, 158, 11, 0.15);
  color: #fcd34d;
}
.account-page .woocommerce-MyAccount-content .woocommerce-password-strength.strong {
  background: rgba(34, 197, 94, 0.15);
  color: #86efac;
}
.account-page .woocommerce-MyAccount-content .woocommerce-Address {
  margin-bottom: 1.5rem;
  padding: 1.25rem;
  background: rgba(15, 23, 42, 0.3);
  border: 1px solid rgba(71, 85, 105, 0.3);
  border-radius: 8px;
}
.account-page .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 0.75rem;
}
.account-page .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title h2,
.account-page .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title h3 {
  margin: 0;
  font-size: 1.13em;
  font-weight: 700;
  color: #fff !important;
}
.account-page .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title .edit {
  font-size: 1.05em;
  color: #22d3ee;
  text-decoration: none;
  font-weight: 500;
}
.account-page .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title .edit:hover {
  text-decoration: underline;
}
.account-page .woocommerce-MyAccount-content .woocommerce-Address address {
  color: #fff;
  font-size: 1.05em;
  line-height: 1.6;
  font-style: normal;
  margin-bottom: 0;
}
.account-page .woocommerce-MyAccount-content .u-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 640px) {
  .account-page .woocommerce-MyAccount-content .u-columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.account-page .woocommerce-MyAccount-content .woocommerce-notices-wrapper {
  margin-bottom: 1.5rem;
}
.account-page .woocommerce-MyAccount-content .woocommerce-message,
.account-page .woocommerce-MyAccount-content .woocommerce-error,
.account-page .woocommerce-MyAccount-content .woocommerce-info {
  padding: 1rem 1.25rem;
  margin-bottom: 1rem;
  border-radius: 8px;
  font-size: 1.05em;
  line-height: 1.25;
}
.account-page .woocommerce-MyAccount-content .woocommerce-message a,
.account-page .woocommerce-MyAccount-content .woocommerce-error a,
.account-page .woocommerce-MyAccount-content .woocommerce-info a {
  color: inherit;
  font-weight: 600;
}
.account-page .woocommerce-MyAccount-content .woocommerce-message::before,
.account-page .woocommerce-MyAccount-content .woocommerce-error::before,
.account-page .woocommerce-MyAccount-content .woocommerce-info::before {
  display: none;
}
.account-page .woocommerce-MyAccount-content .woocommerce-message {
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.25);
  color: #86efac;
}
.account-page .woocommerce-MyAccount-content .woocommerce-error {
  background: rgba(239, 68, 68, 0.12);
  border: 1px solid rgba(239, 68, 68, 0.25);
  color: #fca5a5;
}
.account-page .woocommerce-MyAccount-content .woocommerce-info {
  background: rgba(59, 130, 246, 0.12);
  border: 1px solid rgba(59, 130, 246, 0.25);
  color: #93c5fd;
}
.account-page .woocommerce-MyAccount-content .woocommerce-pagination {
  margin-top: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.account-page .woocommerce-MyAccount-content .woocommerce-pagination .page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.25rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.account-page .woocommerce-MyAccount-content .woocommerce-pagination .page-numbers li {
  margin: 0;
}
.account-page .woocommerce-MyAccount-content .woocommerce-pagination .page-numbers a,
.account-page .woocommerce-MyAccount-content .woocommerce-pagination .page-numbers span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 2.25rem;
  height: 2.25rem;
  padding: 0 0.375rem;
  border-radius: 6px;
  font-size: 1.05em;
  font-weight: 500;
  text-decoration: none;
  color: #fff;
  border: 1px solid rgba(71, 85, 105, 0.4);
  background: transparent;
  -webkit-transition: background 0.15s, border-color 0.15s;
  transition: background 0.15s, border-color 0.15s;
}
.account-page .woocommerce-MyAccount-content .woocommerce-pagination .page-numbers a:hover {
  background: rgba(34, 211, 238, 0.1);
  border-color: rgba(34, 211, 238, 0.4);
}
.account-page .woocommerce-MyAccount-content .woocommerce-pagination .page-numbers span.current {
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  border-color: transparent;
  color: #fff;
  font-weight: 600;
}
.account-page .woocommerce {
  color: #fff;
  font-size: 1.05em;
}
.account-page .woocommerce label {
  display: block;
  margin-bottom: 0.5rem;
  color: #fff;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.5;
}
.account-page .woocommerce label .required {
  color: #22d3ee;
}
.account-page .woocommerce input[type=text],
.account-page .woocommerce input[type=email],
.account-page .woocommerce input[type=password],
.account-page .woocommerce input[type=tel],
.account-page .woocommerce input[type=number] {
  width: 100%;
  height: 3rem;
  padding: 0.75rem 1rem;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid #475569;
  border-radius: 8px;
  color: #fff;
  font-size: 1.05em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none;
}
.account-page .woocommerce input[type=text]::-webkit-input-placeholder, .account-page .woocommerce input[type=email]::-webkit-input-placeholder, .account-page .woocommerce input[type=password]::-webkit-input-placeholder, .account-page .woocommerce input[type=tel]::-webkit-input-placeholder, .account-page .woocommerce input[type=number]::-webkit-input-placeholder {
  color: #64748b;
}
.account-page .woocommerce input[type=text]::-moz-placeholder, .account-page .woocommerce input[type=email]::-moz-placeholder, .account-page .woocommerce input[type=password]::-moz-placeholder, .account-page .woocommerce input[type=tel]::-moz-placeholder, .account-page .woocommerce input[type=number]::-moz-placeholder {
  color: #64748b;
}
.account-page .woocommerce input[type=text]:-ms-input-placeholder, .account-page .woocommerce input[type=email]:-ms-input-placeholder, .account-page .woocommerce input[type=password]:-ms-input-placeholder, .account-page .woocommerce input[type=tel]:-ms-input-placeholder, .account-page .woocommerce input[type=number]:-ms-input-placeholder {
  color: #64748b;
}
.account-page .woocommerce input[type=text]::-ms-input-placeholder, .account-page .woocommerce input[type=email]::-ms-input-placeholder, .account-page .woocommerce input[type=password]::-ms-input-placeholder, .account-page .woocommerce input[type=tel]::-ms-input-placeholder, .account-page .woocommerce input[type=number]::-ms-input-placeholder {
  color: #64748b;
}
.account-page .woocommerce input[type=text]::placeholder,
.account-page .woocommerce input[type=email]::placeholder,
.account-page .woocommerce input[type=password]::placeholder,
.account-page .woocommerce input[type=tel]::placeholder,
.account-page .woocommerce input[type=number]::placeholder {
  color: #64748b;
}
.account-page .woocommerce input[type=text]:focus,
.account-page .woocommerce input[type=email]:focus,
.account-page .woocommerce input[type=password]:focus,
.account-page .woocommerce input[type=tel]:focus,
.account-page .woocommerce input[type=number]:focus {
  border-color: #06b6d4;
}
.account-page .woocommerce .form-row {
  margin-bottom: 1rem;
}
.account-page .woocommerce button[type=submit],
.account-page .woocommerce .button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.625rem 1.5rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  text-decoration: none;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
}
.account-page .woocommerce button[type=submit]:hover,
.account-page .woocommerce .button:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.account-page .account-dashboard__welcome {
  font-size: 1.25em;
  color: #fff;
  margin: 0 0 1.5rem;
}
.account-page .account-dashboard__welcome a {
  color: #22d3ee;
  text-decoration: none;
  font-weight: 500;
}
.account-page .account-dashboard__welcome a:hover {
  text-decoration: underline;
}
.account-page .account-dashboard__subtitle {
  font-size: 1.25em;
  font-weight: 700;
  color: #fff;
  margin: 0 0 1rem;
}
.account-page .account-dashboard__order-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.account-page .account-dashboard__order-item {
  border-bottom: 1px solid rgba(71, 85, 105, 0.3);
}
.account-page .account-dashboard__order-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.875rem 0;
  text-decoration: none;
  color: #fff;
  font-size: 1.05em;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.account-page .account-dashboard__order-item a:hover {
  color: #22d3ee;
}
.account-page .account-dashboard__order-number {
  font-weight: 600;
  color: #22d3ee;
}

.thankyou-section {
  min-height: 100vh;
  background: linear-gradient(135deg, #020617, #0f172a 50%, #020617);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 6rem 1.5rem 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  color: #fff;
  font-family: "Roboto", sans-serif;
}
@media screen and (max-width: 640px) {
  .thankyou-section {
    padding: 4rem 1rem 1.5rem;
  }
}

.thankyou-container {
  width: 100%;
  max-width: 42rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.thankyou-check-circle {
  width: 8rem;
  height: 8rem;
  border-radius: 9999px;
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 2rem;
  -webkit-box-shadow: 0 0 0 8px rgba(6, 182, 212, 0.15), 0 0 0 20px rgba(6, 182, 212, 0.06);
          box-shadow: 0 0 0 8px rgba(6, 182, 212, 0.15), 0 0 0 20px rgba(6, 182, 212, 0.06);
}
@media screen and (max-width: 640px) {
  .thankyou-check-circle {
    width: 6rem;
    height: 6rem;
    -webkit-box-shadow: 0 0 0 6px rgba(6, 182, 212, 0.15), 0 0 0 16px rgba(6, 182, 212, 0.06);
            box-shadow: 0 0 0 6px rgba(6, 182, 212, 0.15), 0 0 0 16px rgba(6, 182, 212, 0.06);
  }
  .thankyou-check-circle__icon svg {
    width: 3rem;
    height: 3rem;
  }
}
.thankyou-check-circle__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.thankyou-heading {
  font-size: clamp(1.5em, 3vw, 2.25em);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
}
.thankyou-heading__main {
  color: #fff;
}
.thankyou-heading__accent {
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.thankyou-content {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}

.thankyou-section .woocommerce-order {
  width: 100%;
  max-width: 32rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}

.thankyou-section .woocommerce-thankyou-order-received {
  font-size: 1.25em;
  color: #94a3b8;
  margin: 0;
  line-height: 1.75;
}

.thankyou-section .woocommerce-order-overview {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 24rem;
  backdrop-filter: blur(24px);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  padding: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}
.thankyou-section .woocommerce-order-overview li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  border: none;
}
.thankyou-section .woocommerce-order-overview li strong {
  font-size: 1.05em;
  font-weight: 400;
  color: #94a3b8;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 6rem;
  text-align: left;
}
.thankyou-section .woocommerce-order-overview .woocommerce-order-overview__total strong {
  color: #22d3ee;
  font-weight: 600;
}
.thankyou-section .woocommerce-order-overview .woocommerce-order-overview__total span {
  font-size: 1.25em;
  font-weight: 700;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.thankyou-section .woocommerce-order-details {
  width: 100%;
  max-width: 32rem;
}
.thankyou-section .woocommerce-order-details__title {
  font-size: 1.25em;
  font-weight: 700;
  color: #fff;
  margin: 0 0 1rem;
  text-align: left;
}
.thankyou-section .woocommerce-order-details table {
  width: 100%;
  border-collapse: collapse;
  margin: 0;
}
.thankyou-section .woocommerce-order-details table th, .thankyou-section .woocommerce-order-details table td {
  padding: 0.75rem 0;
  border-bottom: 1px solid rgba(71, 85, 105, 0.3);
  color: #cbd5e1;
  font-size: 1.05em;
  font-weight: 400;
  text-align: left;
}
.thankyou-section .woocommerce-order-details table td:last-child {
  text-align: right;
  color: #fff;
  font-weight: 500;
}
.thankyou-section .woocommerce-order-details table tfoot td, .thankyou-section .woocommerce-order-details table tfoot th {
  color: #fff;
  font-weight: 600;
  border-bottom: none;
}
.thankyou-section .woocommerce-order-details table tfoot td:last-child {
  font-size: 1.25em;
  font-weight: 700;
  background: -webkit-gradient(linear, left top, right top, from(#22d3ee), to(#2dd4bf));
  background: linear-gradient(90deg, #22d3ee, #2dd4bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.thankyou-section .woocommerce-customer-details {
  width: 100%;
  max-width: 32rem;
  text-align: left;
}
.thankyou-section .woocommerce-customer-details h2 {
  font-size: 1.25em;
  font-weight: 700;
  color: #fff;
  margin: 0 0 1rem;
}
.thankyou-section .woocommerce-customer-details address {
  backdrop-filter: blur(24px);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  padding: 1.25rem;
  color: #cbd5e1;
  font-size: 1.05em;
  line-height: 1.75;
  font-style: normal;
}

/* LearnPress
--------------------------------------------- */
.course-page .course-layout {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.course-page .course-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
@media screen and (max-width: 1280px) {
  .course-page .course-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 920px) {
  .course-page .course-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .course-page .course-grid {
    grid-template-columns: 1fr;
  }
}
.course-page .course-empty {
  text-align: center;
  padding: 3rem 0;
  color: #94a3b8;
  font-size: 1.05em;
}
.course-page .course-empty__icon {
  color: #475569;
  margin-bottom: 1rem;
}
.course-page .course-empty__message {
  color: #94a3b8;
  font-size: 1.05em;
  margin: 0 0 1.5rem;
}
.course-page .course-pagination {
  margin-top: 3rem;
  text-align: center;
}
.course-page .course-pagination .page-numbers {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 0.5rem;
}
.course-page .course-pagination .page-numbers li {
  margin: 0;
}
.course-page .course-pagination .page-numbers a,
.course-page .course-pagination .page-numbers span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 0.5rem;
  border: 1px solid rgba(71, 85, 105, 0.5);
  border-radius: 8px;
  text-decoration: none;
  color: #cbd5e1;
  font-size: 1.05em;
  font-weight: 500;
  -webkit-transition: background 0.15s, border-color 0.15s, color 0.15s;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.course-page .course-pagination .page-numbers a:hover,
.course-page .course-pagination .page-numbers span:hover {
  background: rgba(34, 211, 238, 0.1);
  border-color: rgba(34, 211, 238, 0.3);
  color: #fff;
}
.course-page .course-pagination .page-numbers .current {
  background: linear-gradient(135deg, #06b6d4, #14b8a6);
  color: #fff;
  border-color: transparent;
}
.course-page .course-pagination .page-numbers .dots {
  border-color: transparent;
  cursor: default;
}
.course-page .course-pagination .page-numbers .dots:hover {
  background: transparent;
}

.course-page {
  --lp-primary-color: #06b6d4;
}
.course-page .course-meta-primary {
  display: none;
}
.course-page .auth-body {
  background: #f8fafc;
  padding-top: 2rem;
}
.course-page .lp-content-area {
  max-width: 1680px;
  margin-left: auto;
  margin-right: auto;
}
.course-page .lp-entry-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.course-page .lp-entry-content .entry-content-left {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.course-page .lp-entry-content .course-summary-sidebar {
  width: 340px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.course-page .course-summary-sidebar__inner {
  top: 6rem;
}
.course-page .course-sidebar-preview {
  padding: 20px;
}
.course-page .media-preview {
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 1rem;
}
.course-page .media-preview img {
  display: block;
  width: 100%;
  height: auto;
}
.course-page .course-graduation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 0.875rem;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  margin-bottom: 1rem;
}
.course-page .course-graduation.passed {
  background: #f0fdf4;
  color: #16a34a;
  border: 1px solid #bbf7d0;
}
.course-page .course-graduation.failed, .course-page .course-graduation.error {
  background: #fef2f2;
  color: #dc2626;
  border: 1px solid #fecaca;
}
.course-page .lp-course-buttons {
  margin-bottom: 1rem;
}
.course-page .lp-course-buttons button,
.course-page .lp-course-buttons .btn {
  width: 100%;
  padding: 0.75rem 1rem;
  border-radius: 8px;
  font-size: 1.05em;
  font-weight: 600;
  cursor: pointer;
  border: none;
  -webkit-transition: opacity 0.15s, -webkit-transform 0.1s;
  transition: opacity 0.15s, -webkit-transform 0.1s;
  transition: opacity 0.15s, transform 0.1s;
  transition: opacity 0.15s, transform 0.1s, -webkit-transform 0.1s;
}
.course-page .lp-course-buttons button:hover,
.course-page .lp-course-buttons .btn:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.course-page .lp-course-buttons .btn-enroll-course,
.course-page .lp-course-buttons .btn-purchase-course {
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
}
.course-page .lp-course-buttons .btn-start-course,
.course-page .lp-course-buttons .btn-continue-course {
  background: #1e293b;
  color: #fff;
}
.course-page .lp-course-buttons .btn-finish-course {
  background: -webkit-gradient(linear, left top, right top, from(#16a34a), to(#22c55e));
  background: linear-gradient(90deg, #16a34a, #22c55e);
  color: #fff;
}
.course-page .lp-course-buttons .btn-retake-course {
  background: transparent;
  color: #64748b;
  border: 1px solid #cbd5e1;
}
.course-page .lp-course-buttons .btn-retake-course:hover {
  background: #f1f5f9;
  color: #334155;
}
.course-page .lp-course-buttons > div:empty {
  display: none;
}
.course-page .info-learning {
  padding: 1rem 0 0;
  border-top: 1px solid #e2e8f0;
  margin-top: 1rem;
}
.course-page .info-learning .learn-press-message {
  padding: 0.5rem 0.75rem;
  border-radius: 6px;
  font-size: 1.05em;
  font-weight: 500;
  margin-bottom: 0.75rem;
}
.course-page .info-learning .learn-press-message.warning {
  background: #fffbeb;
  color: #92400e;
  border: 1px solid #fde68a;
}
.course-page .info-learning .lp-user-item.graduation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
  padding: 0.5rem 0.75rem;
  border-radius: 6px;
  font-size: 1.05em;
  font-weight: 600;
  margin-bottom: 0.75rem;
}
.course-page .info-learning .lp-user-item.graduation.passed {
  background: #f0fdf4;
  color: #16a34a;
}
.course-page .info-learning .lp-user-item.graduation.failed {
  background: #fef2f2;
  color: #dc2626;
}
.course-page .info-learning .course-progress {
  margin-bottom: 1.25rem;
}
.course-page .info-learning .course-progress__label {
  font-size: 1.05em;
  font-weight: 500;
  color: #64748b;
  margin-bottom: 0.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
}
.course-page .info-learning .course-progress__label:last-of-type {
  margin-top: 0.75rem;
}
.course-page .info-learning .course-progress__number {
  color: #334155;
  font-weight: 600;
}
.course-page .info-learning .course-progress__number .percentage {
  font-size: 0.75em;
}
.course-page .info-learning .course-progress .course-items-completed-progress-bar {
  margin-bottom: 0;
}
.course-page .info-learning .course-progress__line {
  height: 6px;
  background: #e2e8f0;
  border-radius: 3px;
  overflow: hidden;
}
.course-page .info-learning .course-progress__line__active {
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  border-radius: 3px;
  -webkit-transition: width 0.3s ease;
  transition: width 0.3s ease;
}
.course-page .info-learning .course-progress .lp-icon-question-circle {
  font-size: 1.05em;
  color: #94a3b8;
  cursor: help;
}
.course-page .info-learning .start-date,
.course-page .info-learning .end-date,
.course-page .info-learning .will-end-date {
  font-size: 1.05em;
  color: #64748b;
  margin-bottom: 0.375rem;
}
.course-page .info-learning .start-date span,
.course-page .info-learning .end-date span,
.course-page .info-learning .will-end-date span {
  color: #334155;
  font-weight: 500;
}
@media screen and (max-width: 920px) {
  .course-page .lp-entry-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .course-page .lp-entry-content .course-summary-sidebar {
    width: 100%;
  }
  .course-page .course-summary-sidebar__inner {
    position: static;
  }
}
@media screen and (max-width: 640px) {
  .course-page .lp-content-area {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .course-page .course-sidebar-preview {
    padding: 12px;
  }
  .course-page .lp-course-buttons button,
  .course-page .lp-course-buttons .btn {
    padding: 0.625rem 0.875rem;
  }
}

.course-card {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(24px);
  border: 1px solid #C7CCD2;
  border-radius: 16px;
  overflow: hidden;
  -webkit-transition: border-color 0.25s, -webkit-transform 0.25s, -webkit-box-shadow 0.25s;
  transition: border-color 0.25s, -webkit-transform 0.25s, -webkit-box-shadow 0.25s;
  transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s;
  transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s, -webkit-transform 0.25s, -webkit-box-shadow 0.25s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.course-card__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-decoration: none;
  color: inherit;
}
.course-card__image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/10;
  background: rgba(15, 23, 42, 0.5);
}
.course-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}
.course-card:hover .course-card__image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.course-card__badge {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  font-size: 0.75em;
  font-weight: 600;
  line-height: 1.25rem;
  z-index: 1;
}
.course-card__badge--free {
  background: -webkit-gradient(linear, left top, right top, from(#22c55e), to(#16a34a));
  background: linear-gradient(90deg, #22c55e, #16a34a);
  color: #fff;
}
.course-card__badge--sale {
  background: -webkit-gradient(linear, left top, right top, from(#ef4444), to(#dc2626));
  background: linear-gradient(90deg, #ef4444, #dc2626);
  color: #fff;
}
.course-card__body {
  padding: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.course-card__title {
  font-size: 1.13em;
  font-weight: 700;
  line-height: 1.35;
  color: #0f172a;
  margin: 0 0 0.75rem;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
}
.course-card:hover .course-card__title {
  color: #22d3ee;
}
.course-card__excerpt {
  font-size: 1.05em;
  line-height: 1.45;
  color: #94a3b8;
  margin: 0 0 0.75rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.course-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  font-size: 1.05em;
  color: #64748b;
  margin: 0 0 0.75rem;
}
.course-card__meta span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
}
.course-card__meta span svg {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.course-card__footer {
  margin-top: auto;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(71, 85, 105, 0.3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.75rem;
}
.course-card__instructor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  min-width: 0;
}
.course-card__instructor img {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.course-card__instructor span {
  font-size: 1.05em;
  font-weight: 500;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.course-card__price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
  font-weight: 700;
  font-size: 1.25em;
  color: #22d3ee;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.course-card__price--free {
  color: #4ade80;
}
.course-card__price--current {
  color: #22d3ee;
}
.course-card__price--original {
  font-size: 1.05em;
  font-weight: 500;
  color: #64748b;
  text-decoration: line-through;
}

.lp-course-item-content {
  padding: calc(4rem + 2em) 0 4em;
  color: #cbd5e1;
  background: -webkit-gradient(linear, left top, left bottom, from(#0f172a), color-stop(50%, #1e293b), to(#0f172a));
  background: linear-gradient(180deg, #0f172a, #1e293b 50%, #0f172a);
  min-height: 100vh;
}
.lp-course-item-content .lp-course-item-body {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.lp-course-item-content .lp-course-item-body img {
  max-width: 100%;
  height: auto;
}
.lp-course-item-content .lp-course-item-body p {
  line-height: 1.625;
}
.lp-course-item-content .lp-course-item-body h1, .lp-course-item-content .lp-course-item-body h2, .lp-course-item-content .lp-course-item-body h3, .lp-course-item-content .lp-course-item-body h4 {
  color: #fff;
}
.lp-course-item-content .lp-course-item-body input, .lp-course-item-content .lp-course-item-body textarea {
  background: rgba(15, 23, 42, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  color: #fff;
  padding: 0.75rem 1rem;
  font-size: 1.05em;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.lp-course-item-content .lp-course-item-body input::-webkit-input-placeholder, .lp-course-item-content .lp-course-item-body textarea::-webkit-input-placeholder {
  color: #64748b;
}
.lp-course-item-content .lp-course-item-body input::-moz-placeholder, .lp-course-item-content .lp-course-item-body textarea::-moz-placeholder {
  color: #64748b;
}
.lp-course-item-content .lp-course-item-body input:-ms-input-placeholder, .lp-course-item-content .lp-course-item-body textarea:-ms-input-placeholder {
  color: #64748b;
}
.lp-course-item-content .lp-course-item-body input::-ms-input-placeholder, .lp-course-item-content .lp-course-item-body textarea::-ms-input-placeholder {
  color: #64748b;
}
.lp-course-item-content .lp-course-item-body input::placeholder, .lp-course-item-content .lp-course-item-body textarea::placeholder {
  color: #64748b;
}
.lp-course-item-content .lp-course-item-body input:focus, .lp-course-item-content .lp-course-item-body textarea:focus {
  border-color: #06b6d4;
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(6, 182, 212, 0.1);
          box-shadow: 0 0 0 3px rgba(6, 182, 212, 0.1);
}
.lp-course-item-content .lp-course-item-body button, .lp-course-item-content .lp-course-item-body .lp-button {
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 0.625rem 1.5rem;
  font-weight: 600;
  cursor: pointer;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s;
  transition: opacity 0.2s, transform 0.15s;
  transition: opacity 0.2s, transform 0.15s, -webkit-transform 0.15s;
  -webkit-box-shadow: 0 4px 16px rgba(6, 182, 212, 0.25);
          box-shadow: 0 4px 16px rgba(6, 182, 212, 0.25);
}
.lp-course-item-content .lp-course-item-body button:hover, .lp-course-item-content .lp-course-item-body .lp-button:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.course-page .lp-course-sidebar-glass .lp-course-buttons .lp-button {
  display: block;
  width: 100%;
  padding: 0.875rem 1.5rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  border: none;
  border-radius: 12px;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.15s, -webkit-box-shadow 0.15s;
  transition: opacity 0.2s, -webkit-transform 0.15s, -webkit-box-shadow 0.15s;
  transition: opacity 0.2s, transform 0.15s, box-shadow 0.15s;
  transition: opacity 0.2s, transform 0.15s, box-shadow 0.15s, -webkit-transform 0.15s, -webkit-box-shadow 0.15s;
  -webkit-box-shadow: 0 4px 20px rgba(6, 182, 212, 0.3);
          box-shadow: 0 4px 20px rgba(6, 182, 212, 0.3);
}
.course-page .lp-course-sidebar-glass .lp-course-buttons .lp-button:hover {
  opacity: 0.9;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: 0 6px 28px rgba(6, 182, 212, 0.4);
          box-shadow: 0 6px 28px rgba(6, 182, 212, 0.4);
}

.lp-enrolled-courses__title {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  margin: 0 0 1.5rem;
}
.lp-enrolled-courses__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.5rem;
}
@media screen and (max-width: 640px) {
  .lp-enrolled-courses__grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
}
.lp-enrolled-courses__empty {
  padding: 3rem 0;
  text-align: center;
  color: #94a3b8;
  font-size: 1.05em;
}

.lp-enrolled-course-card {
  background: rgba(15, 23, 42, 0.4);
  border: 1px solid rgba(71, 85, 105, 0.4);
  border-radius: 12px;
  overflow: hidden;
  -webkit-transition: border-color 0.2s, -webkit-transform 0.2s;
  transition: border-color 0.2s, -webkit-transform 0.2s;
  transition: border-color 0.2s, transform 0.2s;
  transition: border-color 0.2s, transform 0.2s, -webkit-transform 0.2s;
}
.lp-enrolled-course-card:hover {
  border-color: rgba(34, 211, 238, 0.3);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
.lp-enrolled-course-card__link {
  display: block;
  text-decoration: none;
  color: #fff;
}
.lp-enrolled-course-card__link:hover {
  color: #fff;
}
.lp-enrolled-course-card__image {
  overflow: hidden;
}
.lp-enrolled-course-card__image img {
  width: 100%;
  aspect-ratio: 16/10;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.lp-enrolled-course-card__body {
  padding: 1.25rem;
}
.lp-enrolled-course-card__title {
  font-size: 1.13em;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  margin: 0 0 0.75rem;
}
.lp-enrolled-course-card__progress {
  margin-bottom: 0.75rem;
}
.lp-enrolled-course-card__progress-bar {
  height: 6px;
  background: rgba(71, 85, 105, 0.4);
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 0.375rem;
}
.lp-enrolled-course-card__progress-fill {
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  border-radius: 3px;
  -webkit-transition: width 0.3s ease;
  transition: width 0.3s ease;
}
.lp-enrolled-course-card__progress-label {
  font-size: 1.05em;
  color: #94a3b8;
}
.lp-enrolled-course-card__continue {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.5rem 1.25rem;
  background: -webkit-gradient(linear, left top, right top, from(#06b6d4), to(#14b8a6));
  background: linear-gradient(90deg, #06b6d4, #14b8a6);
  color: #fff;
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.5;
  border-radius: 8px;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  margin-top: 0.5rem;
}
.lp-enrolled-course-card__link:hover .lp-enrolled-course-card__continue {
  opacity: 0.9;
}

.lp-enrolled-course-card__grade,
.lp-course-sidebar__grade {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 1.05em;
  border: 1px solid rgba(71, 85, 105, 0.4);
  border-radius: 8px;
  margin-bottom: 0.75rem;
  color: #fff;
  background: rgba(15, 23, 42, 0.3);
}
.lp-enrolled-course-card__grade.is-passing,
.lp-course-sidebar__grade.is-passing {
  border-color: rgba(34, 197, 94, 0.4);
  color: #86efac;
}
.lp-enrolled-course-card__grade.is-failing,
.lp-course-sidebar__grade.is-failing {
  border-color: rgba(239, 68, 68, 0.4);
  color: #fca5a5;
}

.lp-enrolled-course-card__grade-letter,
.lp-course-sidebar__grade-letter {
  font-size: 1.25em;
  font-weight: 700;
}

.lp-enrolled-course-card__grade-percentage,
.lp-course-sidebar__grade-percentage {
  font-size: 1.05em;
  font-weight: 400;
}

.lp-course-sidebar__grade {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}
.lp-course-sidebar__grade-label {
  display: block;
  width: 100%;
  font-size: 0.75em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #94a3b8;
  margin-bottom: 0.25rem;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
body .gform_required_legend {
  display: none;
}
body .gform_wrapper.gravity-theme .gform_fileupload_rules {
  font-size: 1.05em;
}
body .gform_wrapper.gravity-theme legend {
  margin-bottom: 0.5em;
}
body .gform_submission_error {
  font-size: 1.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  margin: 0 0 2rem 0;
  line-height: 1.2em;
  padding: 1rem 1rem;
  background-color: #555;
  border: 1px solid #555;
  color: #ffffff;
  border-radius: 0;
  font-family: "Roboto", sans-serif;
}
body .gform_submission_error .gform-icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
body .gfield_error input[type=text],
body .gfield_error input[type=email],
body .gfield_error input[type=url],
body .gfield_error input[type=password],
body .gfield_error input[type=search],
body .gfield_error input[type=number],
body .gfield_error input[type=tel],
body .gfield_error input[type=range],
body .gfield_error input[type=date],
body .gfield_error input[type=month],
body .gfield_error input[type=week],
body .gfield_error input[type=time],
body .gfield_error input[type=datetime],
body .gfield_error input[type=datetime-local],
body .gfield_error input[type=color],
body .gfield_error select,
body .gfield_error textarea {
  border-color: #555;
}
body .gfield_required_asterisk {
  color: #555;
}
body .validation_message {
  padding: 0.2em 0 0 0;
  color: #eee;
  font-size: 1.05em;
}
body .gform_fields {
  row-gap: 1em !important;
  -webkit-column-gap: 1em !important;
     -moz-column-gap: 1em !important;
          column-gap: 1em !important;
}
@media screen and (max-width: 639px) {
  body .gform_fields {
    -webkit-column-gap: 0 !important;
       -moz-column-gap: 0 !important;
            column-gap: 0 !important;
  }
}
body .gfield--type-consent {
  margin: 1em 0;
}
body .gform_wrapper.gravity-theme .gform_drop_area {
  background-color: #222;
  border: 1px dashed #555;
  border-radius: 0;
}
body .gravity-theme.ui-datepicker a.ui-state-default {
  border-radius: 0;
  -webkit-transition: 0.1s background-color ease, 0.1s color ease;
  transition: 0.1s background-color ease, 0.1s color ease;
}
body .gravity-theme.ui-datepicker a.ui-state-default.ui-state-hover {
  background-color: #eee;
  color: #ffffff;
}
body .gravity-theme.ui-datepicker .ui-state-disabled {
  opacity: 0.5;
  text-align: center;
}
body .gravity-theme.ui-datepicker .ui-datepicker-title select.ui-datepicker-month {
  margin-left: 1.5em;
}
body .gravity-theme.ui-datepicker .ui-datepicker-title select.ui-datepicker-year {
  margin-right: 1.5em;
}
body .gravity-theme.ui-datepicker .ui-datepicker-next,
body .gravity-theme.ui-datepicker .ui-datepicker-prev {
  top: 10px;
}
body .gravity-theme.ui-datepicker .ui-datepicker-prev {
  left: 15px;
}
body .gravity-theme.ui-datepicker .ui-datepicker-next {
  right: 15px;
}
body .gfield input[type=text],
body .gfield input[type=email],
body .gfield input[type=url],
body .gfield input[type=password],
body .gfield input[type=search],
body .gfield input[type=number],
body .gfield input[type=tel],
body .gfield input[type=range],
body .gfield input[type=date],
body .gfield input[type=month],
body .gfield input[type=week],
body .gfield input[type=time],
body .gfield input[type=datetime],
body .gfield input[type=datetime-local],
body .gfield input[type=color],
body .gfield select,
body .gfield textarea {
  width: 100%;
}
body .gform_footer {
  margin-top: 3em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
body .gform_footer br {
  display: none;
}
body .gform_footer .gform_button {
  padding: 0.9em 2.2em 1em 2.2em;
  text-transform: lowercase;
}
body .gform_wrapper.gravity-theme .gfield textarea.small {
  height: 4em;
}
body .gform_wrapper.gravity-theme .gfield textarea.medium {
  height: 7em;
}
body .gform_wrapper.gravity-theme .gfield textarea.large {
  height: 10em;
}
@media screen and (min-width: 641px) {
  body .gfmc-container {
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
  }
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #555;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #555;
  display: block;
  font-size: 1.05em;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

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

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  text-align: center;
  margin-bottom: 1.5em;
}

/*# sourceMappingURL=main.min.1417f019c5cf835e7aed.css.map*/