@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");
@import url("https://use.typekit.net/mya4nfq.css");
*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}
::before,
::after {
  --tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/
html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}
/*
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}
/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}
/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}
:root {
    --color-white: #ffffff;
    --color-black: #000000;

    --color-grey-50: #F6F6F6;
    --color-grey-200: #D1D1D1;
    --color-grey-300: #B0B0B0;
    --color-grey-400: #888888;
    --color-grey-600: #5D5D5D;
    --color-grey-800: #454545;
    --color-grey-900: #2C2C2C;
    --color-grey-950: #1A1A1A;

    --color-cream-25: #fdfbf8;
    --color-cream-50: #FCF6F0;
    --color-cream-75: #F9F0E7;
    --color-cream-100: #F7EADD;
    --color-cream-200: #EED2BA;
    --color-cream-700: #9F472F;
    --color-cream-800: #803B2C;

    --color-red-50: #FFF1F1;
    --color-red-100: #FFE1E2;
		--color-red-200: #FFC7C8;
    --color-red-400: #FF8487;
    --color-red-500: #FF2861;
    --color-red-700: #D40043;
    --color-red-800: #B60042;
    --color-red-900: #751C38;
    --color-red-950: #4C0B1F;

    --color-blue-50: #E3EEFB;
    --color-blue-200: #C0DDF7;
    --color-blue-700: #105394;
    --color-blue-950: #0E2743;

    --color-green-100: #DEEFEE;
    --color-green-200: #CCE6E5;
    --color-green-300: #95CBCA;
    --color-green-600: #038E9E;
    --color-green-700: #07707E;
    --color-green-900: #0C3D44;
    }
.container{
  margin: 0 auto;
  width: calc(100% - 32px);
}
@media (min-width: 782px){
  .container{
    width: 96%;
    max-width: 800px;
  }
}
.sr-only{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border-width: 0 !important;
}
.visible{
  visibility: visible !important;
}
.static{
  position: static !important;
}
.fixed{
  position: fixed !important;
}
.sticky{
  position: sticky !important;
}
.m-0{
  margin: 0px !important;
}
.m-4{
  margin: 1rem !important;
}
.-mx-1{
  margin-left: -0.25rem !important;
  margin-right: -0.25rem !important;
}
.-mx-1\.5{
  margin-left: -0.375rem !important;
  margin-right: -0.375rem !important;
}
.-mx-10{
  margin-left: -2.5rem !important;
  margin-right: -2.5rem !important;
}
.-mx-11{
  margin-left: -2.75rem !important;
  margin-right: -2.75rem !important;
}
.-mx-12{
  margin-left: -3rem !important;
  margin-right: -3rem !important;
}
.-mx-14{
  margin-left: -3.5rem !important;
  margin-right: -3.5rem !important;
}
.-mx-16{
  margin-left: -4rem !important;
  margin-right: -4rem !important;
}
.-mx-2{
  margin-left: -0.5rem !important;
  margin-right: -0.5rem !important;
}
.-mx-2\.5{
  margin-left: -0.625rem !important;
  margin-right: -0.625rem !important;
}
.-mx-20{
  margin-left: -5rem !important;
  margin-right: -5rem !important;
}
.-mx-24{
  margin-left: -6rem !important;
  margin-right: -6rem !important;
}
.-mx-28{
  margin-left: -7rem !important;
  margin-right: -7rem !important;
}
.-mx-3{
  margin-left: -0.75rem !important;
  margin-right: -0.75rem !important;
}
.-mx-3\.5{
  margin-left: -0.875rem !important;
  margin-right: -0.875rem !important;
}
.-mx-32{
  margin-left: -8rem !important;
  margin-right: -8rem !important;
}
.-mx-36{
  margin-left: -9rem !important;
  margin-right: -9rem !important;
}
.-mx-4{
  margin-left: -1rem !important;
  margin-right: -1rem !important;
}
.-mx-40{
  margin-left: -10rem !important;
  margin-right: -10rem !important;
}
.-mx-44{
  margin-left: -11rem !important;
  margin-right: -11rem !important;
}
.-mx-48{
  margin-left: -12rem !important;
  margin-right: -12rem !important;
}
.-mx-5{
  margin-left: -1.25rem !important;
  margin-right: -1.25rem !important;
}
.-mx-52{
  margin-left: -13rem !important;
  margin-right: -13rem !important;
}
.-mx-56{
  margin-left: -14rem !important;
  margin-right: -14rem !important;
}
.-mx-6{
  margin-left: -1.5rem !important;
  margin-right: -1.5rem !important;
}
.-mx-60{
  margin-left: -15rem !important;
  margin-right: -15rem !important;
}
.-mx-64{
  margin-left: -16rem !important;
  margin-right: -16rem !important;
}
.-mx-7{
  margin-left: -1.75rem !important;
  margin-right: -1.75rem !important;
}
.-mx-72{
  margin-left: -18rem !important;
  margin-right: -18rem !important;
}
.-mx-8{
  margin-left: -2rem !important;
  margin-right: -2rem !important;
}
.-mx-80{
  margin-left: -20rem !important;
  margin-right: -20rem !important;
}
.-my-1{
  margin-top: -0.25rem !important;
  margin-bottom: -0.25rem !important;
}
.-my-1\.5{
  margin-top: -0.375rem !important;
  margin-bottom: -0.375rem !important;
}
.-my-10{
  margin-top: -2.5rem !important;
  margin-bottom: -2.5rem !important;
}
.-my-11{
  margin-top: -2.75rem !important;
  margin-bottom: -2.75rem !important;
}
.-my-12{
  margin-top: -3rem !important;
  margin-bottom: -3rem !important;
}
.-my-14{
  margin-top: -3.5rem !important;
  margin-bottom: -3.5rem !important;
}
.-my-16{
  margin-top: -4rem !important;
  margin-bottom: -4rem !important;
}
.-my-2{
  margin-top: -0.5rem !important;
  margin-bottom: -0.5rem !important;
}
.-my-2\.5{
  margin-top: -0.625rem !important;
  margin-bottom: -0.625rem !important;
}
.-my-20{
  margin-top: -5rem !important;
  margin-bottom: -5rem !important;
}
.-my-24{
  margin-top: -6rem !important;
  margin-bottom: -6rem !important;
}
.-my-28{
  margin-top: -7rem !important;
  margin-bottom: -7rem !important;
}
.-my-3{
  margin-top: -0.75rem !important;
  margin-bottom: -0.75rem !important;
}
.-my-3\.5{
  margin-top: -0.875rem !important;
  margin-bottom: -0.875rem !important;
}
.-my-32{
  margin-top: -8rem !important;
  margin-bottom: -8rem !important;
}
.-my-36{
  margin-top: -9rem !important;
  margin-bottom: -9rem !important;
}
.-my-4{
  margin-top: -1rem !important;
  margin-bottom: -1rem !important;
}
.-my-40{
  margin-top: -10rem !important;
  margin-bottom: -10rem !important;
}
.-my-44{
  margin-top: -11rem !important;
  margin-bottom: -11rem !important;
}
.-my-48{
  margin-top: -12rem !important;
  margin-bottom: -12rem !important;
}
.-my-5{
  margin-top: -1.25rem !important;
  margin-bottom: -1.25rem !important;
}
.-my-52{
  margin-top: -13rem !important;
  margin-bottom: -13rem !important;
}
.-my-56{
  margin-top: -14rem !important;
  margin-bottom: -14rem !important;
}
.-my-6{
  margin-top: -1.5rem !important;
  margin-bottom: -1.5rem !important;
}
.-my-60{
  margin-top: -15rem !important;
  margin-bottom: -15rem !important;
}
.-my-64{
  margin-top: -16rem !important;
  margin-bottom: -16rem !important;
}
.-my-7{
  margin-top: -1.75rem !important;
  margin-bottom: -1.75rem !important;
}
.-my-72{
  margin-top: -18rem !important;
  margin-bottom: -18rem !important;
}
.-my-8{
  margin-top: -2rem !important;
  margin-bottom: -2rem !important;
}
.-my-80{
  margin-top: -20rem !important;
  margin-bottom: -20rem !important;
}
.mx-1{
  margin-left: 0.25rem !important;
  margin-right: 0.25rem !important;
}
.mx-1\.5{
  margin-left: 0.375rem !important;
  margin-right: 0.375rem !important;
}
.mx-10{
  margin-left: 2.5rem !important;
  margin-right: 2.5rem !important;
}
.mx-11{
  margin-left: 2.75rem !important;
  margin-right: 2.75rem !important;
}
.mx-12{
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}
.mx-14{
  margin-left: 3.5rem !important;
  margin-right: 3.5rem !important;
}
.mx-16{
  margin-left: 4rem !important;
  margin-right: 4rem !important;
}
.mx-2{
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}
.mx-2\.5{
  margin-left: 0.625rem !important;
  margin-right: 0.625rem !important;
}
.mx-20{
  margin-left: 5rem !important;
  margin-right: 5rem !important;
}
.mx-24{
  margin-left: 6rem !important;
  margin-right: 6rem !important;
}
.mx-28{
  margin-left: 7rem !important;
  margin-right: 7rem !important;
}
.mx-3{
  margin-left: 0.75rem !important;
  margin-right: 0.75rem !important;
}
.mx-3\.5{
  margin-left: 0.875rem !important;
  margin-right: 0.875rem !important;
}
.mx-32{
  margin-left: 8rem !important;
  margin-right: 8rem !important;
}
.mx-36{
  margin-left: 9rem !important;
  margin-right: 9rem !important;
}
.mx-4{
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}
.mx-40{
  margin-left: 10rem !important;
  margin-right: 10rem !important;
}
.mx-44{
  margin-left: 11rem !important;
  margin-right: 11rem !important;
}
.mx-48{
  margin-left: 12rem !important;
  margin-right: 12rem !important;
}
.mx-5{
  margin-left: 1.25rem !important;
  margin-right: 1.25rem !important;
}
.mx-52{
  margin-left: 13rem !important;
  margin-right: 13rem !important;
}
.mx-56{
  margin-left: 14rem !important;
  margin-right: 14rem !important;
}
.mx-6{
  margin-left: 1.5rem !important;
  margin-right: 1.5rem !important;
}
.mx-60{
  margin-left: 15rem !important;
  margin-right: 15rem !important;
}
.mx-64{
  margin-left: 16rem !important;
  margin-right: 16rem !important;
}
.mx-7{
  margin-left: 1.75rem !important;
  margin-right: 1.75rem !important;
}
.mx-72{
  margin-left: 18rem !important;
  margin-right: 18rem !important;
}
.mx-8{
  margin-left: 2rem !important;
  margin-right: 2rem !important;
}
.mx-80{
  margin-left: 20rem !important;
  margin-right: 20rem !important;
}
.mx-auto{
  margin-left: auto !important;
  margin-right: auto !important;
}
.my-1{
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}
.my-1\.5{
  margin-top: 0.375rem !important;
  margin-bottom: 0.375rem !important;
}
.my-10{
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}
.my-11{
  margin-top: 2.75rem !important;
  margin-bottom: 2.75rem !important;
}
.my-12{
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}
.my-14{
  margin-top: 3.5rem !important;
  margin-bottom: 3.5rem !important;
}
.my-16{
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}
.my-2{
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}
.my-2\.5{
  margin-top: 0.625rem !important;
  margin-bottom: 0.625rem !important;
}
.my-20{
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}
.my-24{
  margin-top: 6rem !important;
  margin-bottom: 6rem !important;
}
.my-28{
  margin-top: 7rem !important;
  margin-bottom: 7rem !important;
}
.my-3{
  margin-top: 0.75rem !important;
  margin-bottom: 0.75rem !important;
}
.my-3\.5{
  margin-top: 0.875rem !important;
  margin-bottom: 0.875rem !important;
}
.my-32{
  margin-top: 8rem !important;
  margin-bottom: 8rem !important;
}
.my-36{
  margin-top: 9rem !important;
  margin-bottom: 9rem !important;
}
.my-4{
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}
.my-40{
  margin-top: 10rem !important;
  margin-bottom: 10rem !important;
}
.my-44{
  margin-top: 11rem !important;
  margin-bottom: 11rem !important;
}
.my-48{
  margin-top: 12rem !important;
  margin-bottom: 12rem !important;
}
.my-5{
  margin-top: 1.25rem !important;
  margin-bottom: 1.25rem !important;
}
.my-52{
  margin-top: 13rem !important;
  margin-bottom: 13rem !important;
}
.my-56{
  margin-top: 14rem !important;
  margin-bottom: 14rem !important;
}
.my-6{
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}
.my-60{
  margin-top: 15rem !important;
  margin-bottom: 15rem !important;
}
.my-64{
  margin-top: 16rem !important;
  margin-bottom: 16rem !important;
}
.my-7{
  margin-top: 1.75rem !important;
  margin-bottom: 1.75rem !important;
}
.my-72{
  margin-top: 18rem !important;
  margin-bottom: 18rem !important;
}
.my-8{
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}
.my-80{
  margin-top: 20rem !important;
  margin-bottom: 20rem !important;
}
.-mb-1{
  margin-bottom: -0.25rem !important;
}
.-mb-1\.5{
  margin-bottom: -0.375rem !important;
}
.-mb-10{
  margin-bottom: -2.5rem !important;
}
.-mb-11{
  margin-bottom: -2.75rem !important;
}
.-mb-12{
  margin-bottom: -3rem !important;
}
.-mb-14{
  margin-bottom: -3.5rem !important;
}
.-mb-16{
  margin-bottom: -4rem !important;
}
.-mb-2{
  margin-bottom: -0.5rem !important;
}
.-mb-2\.5{
  margin-bottom: -0.625rem !important;
}
.-mb-20{
  margin-bottom: -5rem !important;
}
.-mb-24{
  margin-bottom: -6rem !important;
}
.-mb-28{
  margin-bottom: -7rem !important;
}
.-mb-3{
  margin-bottom: -0.75rem !important;
}
.-mb-3\.5{
  margin-bottom: -0.875rem !important;
}
.-mb-32{
  margin-bottom: -8rem !important;
}
.-mb-36{
  margin-bottom: -9rem !important;
}
.-mb-4{
  margin-bottom: -1rem !important;
}
.-mb-40{
  margin-bottom: -10rem !important;
}
.-mb-44{
  margin-bottom: -11rem !important;
}
.-mb-48{
  margin-bottom: -12rem !important;
}
.-mb-5{
  margin-bottom: -1.25rem !important;
}
.-mb-52{
  margin-bottom: -13rem !important;
}
.-mb-56{
  margin-bottom: -14rem !important;
}
.-mb-6{
  margin-bottom: -1.5rem !important;
}
.-mb-60{
  margin-bottom: -15rem !important;
}
.-mb-64{
  margin-bottom: -16rem !important;
}
.-mb-7{
  margin-bottom: -1.75rem !important;
}
.-mb-72{
  margin-bottom: -18rem !important;
}
.-mb-8{
  margin-bottom: -2rem !important;
}
.-mb-80{
  margin-bottom: -20rem !important;
}
.-ml-1{
  margin-left: -0.25rem !important;
}
.-ml-1\.5{
  margin-left: -0.375rem !important;
}
.-ml-10{
  margin-left: -2.5rem !important;
}
.-ml-11{
  margin-left: -2.75rem !important;
}
.-ml-12{
  margin-left: -3rem !important;
}
.-ml-14{
  margin-left: -3.5rem !important;
}
.-ml-16{
  margin-left: -4rem !important;
}
.-ml-2{
  margin-left: -0.5rem !important;
}
.-ml-2\.5{
  margin-left: -0.625rem !important;
}
.-ml-20{
  margin-left: -5rem !important;
}
.-ml-24{
  margin-left: -6rem !important;
}
.-ml-28{
  margin-left: -7rem !important;
}
.-ml-3{
  margin-left: -0.75rem !important;
}
.-ml-3\.5{
  margin-left: -0.875rem !important;
}
.-ml-32{
  margin-left: -8rem !important;
}
.-ml-36{
  margin-left: -9rem !important;
}
.-ml-4{
  margin-left: -1rem !important;
}
.-ml-40{
  margin-left: -10rem !important;
}
.-ml-44{
  margin-left: -11rem !important;
}
.-ml-48{
  margin-left: -12rem !important;
}
.-ml-5{
  margin-left: -1.25rem !important;
}
.-ml-52{
  margin-left: -13rem !important;
}
.-ml-56{
  margin-left: -14rem !important;
}
.-ml-6{
  margin-left: -1.5rem !important;
}
.-ml-60{
  margin-left: -15rem !important;
}
.-ml-64{
  margin-left: -16rem !important;
}
.-ml-7{
  margin-left: -1.75rem !important;
}
.-ml-72{
  margin-left: -18rem !important;
}
.-ml-8{
  margin-left: -2rem !important;
}
.-ml-80{
  margin-left: -20rem !important;
}
.-mr-1{
  margin-right: -0.25rem !important;
}
.-mr-1\.5{
  margin-right: -0.375rem !important;
}
.-mr-10{
  margin-right: -2.5rem !important;
}
.-mr-11{
  margin-right: -2.75rem !important;
}
.-mr-12{
  margin-right: -3rem !important;
}
.-mr-14{
  margin-right: -3.5rem !important;
}
.-mr-16{
  margin-right: -4rem !important;
}
.-mr-2{
  margin-right: -0.5rem !important;
}
.-mr-2\.5{
  margin-right: -0.625rem !important;
}
.-mr-20{
  margin-right: -5rem !important;
}
.-mr-24{
  margin-right: -6rem !important;
}
.-mr-28{
  margin-right: -7rem !important;
}
.-mr-3{
  margin-right: -0.75rem !important;
}
.-mr-3\.5{
  margin-right: -0.875rem !important;
}
.-mr-32{
  margin-right: -8rem !important;
}
.-mr-36{
  margin-right: -9rem !important;
}
.-mr-4{
  margin-right: -1rem !important;
}
.-mr-40{
  margin-right: -10rem !important;
}
.-mr-44{
  margin-right: -11rem !important;
}
.-mr-48{
  margin-right: -12rem !important;
}
.-mr-5{
  margin-right: -1.25rem !important;
}
.-mr-52{
  margin-right: -13rem !important;
}
.-mr-56{
  margin-right: -14rem !important;
}
.-mr-6{
  margin-right: -1.5rem !important;
}
.-mr-60{
  margin-right: -15rem !important;
}
.-mr-64{
  margin-right: -16rem !important;
}
.-mr-7{
  margin-right: -1.75rem !important;
}
.-mr-72{
  margin-right: -18rem !important;
}
.-mr-8{
  margin-right: -2rem !important;
}
.-mr-80{
  margin-right: -20rem !important;
}
.-mt-1{
  margin-top: -0.25rem !important;
}
.-mt-1\.5{
  margin-top: -0.375rem !important;
}
.-mt-10{
  margin-top: -2.5rem !important;
}
.-mt-11{
  margin-top: -2.75rem !important;
}
.-mt-12{
  margin-top: -3rem !important;
}
.-mt-14{
  margin-top: -3.5rem !important;
}
.-mt-16{
  margin-top: -4rem !important;
}
.-mt-2{
  margin-top: -0.5rem !important;
}
.-mt-2\.5{
  margin-top: -0.625rem !important;
}
.-mt-20{
  margin-top: -5rem !important;
}
.-mt-24{
  margin-top: -6rem !important;
}
.-mt-28{
  margin-top: -7rem !important;
}
.-mt-3{
  margin-top: -0.75rem !important;
}
.-mt-3\.5{
  margin-top: -0.875rem !important;
}
.-mt-32{
  margin-top: -8rem !important;
}
.-mt-36{
  margin-top: -9rem !important;
}
.-mt-4{
  margin-top: -1rem !important;
}
.-mt-40{
  margin-top: -10rem !important;
}
.-mt-44{
  margin-top: -11rem !important;
}
.-mt-48{
  margin-top: -12rem !important;
}
.-mt-5{
  margin-top: -1.25rem !important;
}
.-mt-52{
  margin-top: -13rem !important;
}
.-mt-56{
  margin-top: -14rem !important;
}
.-mt-6{
  margin-top: -1.5rem !important;
}
.-mt-60{
  margin-top: -15rem !important;
}
.-mt-64{
  margin-top: -16rem !important;
}
.-mt-7{
  margin-top: -1.75rem !important;
}
.-mt-72{
  margin-top: -18rem !important;
}
.-mt-8{
  margin-top: -2rem !important;
}
.-mt-80{
  margin-top: -20rem !important;
}
.mb-0{
  margin-bottom: 0px !important;
}
.mb-1{
  margin-bottom: 0.25rem !important;
}
.mb-1\.5{
  margin-bottom: 0.375rem !important;
}
.mb-10{
  margin-bottom: 2.5rem !important;
}
.mb-11{
  margin-bottom: 2.75rem !important;
}
.mb-12{
  margin-bottom: 3rem !important;
}
.mb-14{
  margin-bottom: 3.5rem !important;
}
.mb-16{
  margin-bottom: 4rem !important;
}
.mb-2{
  margin-bottom: 0.5rem !important;
}
.mb-2\.5{
  margin-bottom: 0.625rem !important;
}
.mb-20{
  margin-bottom: 5rem !important;
}
.mb-24{
  margin-bottom: 6rem !important;
}
.mb-28{
  margin-bottom: 7rem !important;
}
.mb-3{
  margin-bottom: 0.75rem !important;
}
.mb-3\.5{
  margin-bottom: 0.875rem !important;
}
.mb-32{
  margin-bottom: 8rem !important;
}
.mb-36{
  margin-bottom: 9rem !important;
}
.mb-4{
  margin-bottom: 1rem !important;
}
.mb-40{
  margin-bottom: 10rem !important;
}
.mb-44{
  margin-bottom: 11rem !important;
}
.mb-48{
  margin-bottom: 12rem !important;
}
.mb-5{
  margin-bottom: 1.25rem !important;
}
.mb-52{
  margin-bottom: 13rem !important;
}
.mb-56{
  margin-bottom: 14rem !important;
}
.mb-6{
  margin-bottom: 1.5rem !important;
}
.mb-60{
  margin-bottom: 15rem !important;
}
.mb-64{
  margin-bottom: 16rem !important;
}
.mb-7{
  margin-bottom: 1.75rem !important;
}
.mb-72{
  margin-bottom: 18rem !important;
}
.mb-8{
  margin-bottom: 2rem !important;
}
.mb-80{
  margin-bottom: 20rem !important;
}
.ml-1{
  margin-left: 0.25rem !important;
}
.ml-1\.5{
  margin-left: 0.375rem !important;
}
.ml-10{
  margin-left: 2.5rem !important;
}
.ml-11{
  margin-left: 2.75rem !important;
}
.ml-12{
  margin-left: 3rem !important;
}
.ml-14{
  margin-left: 3.5rem !important;
}
.ml-16{
  margin-left: 4rem !important;
}
.ml-2{
  margin-left: 0.5rem !important;
}
.ml-2\.5{
  margin-left: 0.625rem !important;
}
.ml-20{
  margin-left: 5rem !important;
}
.ml-24{
  margin-left: 6rem !important;
}
.ml-28{
  margin-left: 7rem !important;
}
.ml-3{
  margin-left: 0.75rem !important;
}
.ml-3\.5{
  margin-left: 0.875rem !important;
}
.ml-32{
  margin-left: 8rem !important;
}
.ml-36{
  margin-left: 9rem !important;
}
.ml-4{
  margin-left: 1rem !important;
}
.ml-40{
  margin-left: 10rem !important;
}
.ml-44{
  margin-left: 11rem !important;
}
.ml-48{
  margin-left: 12rem !important;
}
.ml-5{
  margin-left: 1.25rem !important;
}
.ml-52{
  margin-left: 13rem !important;
}
.ml-56{
  margin-left: 14rem !important;
}
.ml-6{
  margin-left: 1.5rem !important;
}
.ml-60{
  margin-left: 15rem !important;
}
.ml-64{
  margin-left: 16rem !important;
}
.ml-7{
  margin-left: 1.75rem !important;
}
.ml-72{
  margin-left: 18rem !important;
}
.ml-8{
  margin-left: 2rem !important;
}
.ml-80{
  margin-left: 20rem !important;
}
.mr-1{
  margin-right: 0.25rem !important;
}
.mr-1\.5{
  margin-right: 0.375rem !important;
}
.mr-10{
  margin-right: 2.5rem !important;
}
.mr-11{
  margin-right: 2.75rem !important;
}
.mr-12{
  margin-right: 3rem !important;
}
.mr-14{
  margin-right: 3.5rem !important;
}
.mr-16{
  margin-right: 4rem !important;
}
.mr-2{
  margin-right: 0.5rem !important;
}
.mr-2\.5{
  margin-right: 0.625rem !important;
}
.mr-20{
  margin-right: 5rem !important;
}
.mr-24{
  margin-right: 6rem !important;
}
.mr-28{
  margin-right: 7rem !important;
}
.mr-3{
  margin-right: 0.75rem !important;
}
.mr-3\.5{
  margin-right: 0.875rem !important;
}
.mr-32{
  margin-right: 8rem !important;
}
.mr-36{
  margin-right: 9rem !important;
}
.mr-4{
  margin-right: 1rem !important;
}
.mr-40{
  margin-right: 10rem !important;
}
.mr-44{
  margin-right: 11rem !important;
}
.mr-48{
  margin-right: 12rem !important;
}
.mr-5{
  margin-right: 1.25rem !important;
}
.mr-52{
  margin-right: 13rem !important;
}
.mr-56{
  margin-right: 14rem !important;
}
.mr-6{
  margin-right: 1.5rem !important;
}
.mr-60{
  margin-right: 15rem !important;
}
.mr-64{
  margin-right: 16rem !important;
}
.mr-7{
  margin-right: 1.75rem !important;
}
.mr-72{
  margin-right: 18rem !important;
}
.mr-8{
  margin-right: 2rem !important;
}
.mr-80{
  margin-right: 20rem !important;
}
.mt-0{
  margin-top: 0px !important;
}
.mt-1{
  margin-top: 0.25rem !important;
}
.mt-1\.5{
  margin-top: 0.375rem !important;
}
.mt-10{
  margin-top: 2.5rem !important;
}
.mt-11{
  margin-top: 2.75rem !important;
}
.mt-12{
  margin-top: 3rem !important;
}
.mt-14{
  margin-top: 3.5rem !important;
}
.mt-16{
  margin-top: 4rem !important;
}
.mt-2{
  margin-top: 0.5rem !important;
}
.mt-2\.5{
  margin-top: 0.625rem !important;
}
.mt-20{
  margin-top: 5rem !important;
}
.mt-24{
  margin-top: 6rem !important;
}
.mt-28{
  margin-top: 7rem !important;
}
.mt-3{
  margin-top: 0.75rem !important;
}
.mt-3\.5{
  margin-top: 0.875rem !important;
}
.mt-32{
  margin-top: 8rem !important;
}
.mt-36{
  margin-top: 9rem !important;
}
.mt-4{
  margin-top: 1rem !important;
}
.mt-40{
  margin-top: 10rem !important;
}
.mt-44{
  margin-top: 11rem !important;
}
.mt-48{
  margin-top: 12rem !important;
}
.mt-5{
  margin-top: 1.25rem !important;
}
.mt-52{
  margin-top: 13rem !important;
}
.mt-56{
  margin-top: 14rem !important;
}
.mt-6{
  margin-top: 1.5rem !important;
}
.mt-60{
  margin-top: 15rem !important;
}
.mt-64{
  margin-top: 16rem !important;
}
.mt-7{
  margin-top: 1.75rem !important;
}
.mt-72{
  margin-top: 18rem !important;
}
.mt-8{
  margin-top: 2rem !important;
}
.mt-80{
  margin-top: 20rem !important;
}
.block{
  display: block !important;
}
.inline-block{
  display: inline-block !important;
}
.inline{
  display: inline !important;
}
.flex{
  display: flex !important;
}
.table{
  display: table !important;
}
.grid{
  display: grid !important;
}
.hidden{
  display: none !important;
}
.h-4{
  height: 1rem !important;
}
.h-8{
  height: 2rem !important;
}
.w-8{
  width: 2rem !important;
}
.w-auto{
  width: auto !important;
}
.w-full{
  width: 100% !important;
}
.flex-1{
  flex: 1 1 0% !important;
}
.flex-initial{
  flex: 0 1 auto !important;
}
.shrink{
  flex-shrink: 1 !important;
}
.flex-grow{
  flex-grow: 1 !important;
}
.grow{
  flex-grow: 1 !important;
}
@keyframes spin{
  to{
    transform: rotate(360deg);
  }
}
.animate-spin{
  animation: spin 1s linear infinite !important;
}
.-scroll-mx-1{
  scroll-margin-left: -0.25rem !important;
  scroll-margin-right: -0.25rem !important;
}
.-scroll-mx-1\.5{
  scroll-margin-left: -0.375rem !important;
  scroll-margin-right: -0.375rem !important;
}
.-scroll-mx-10{
  scroll-margin-left: -2.5rem !important;
  scroll-margin-right: -2.5rem !important;
}
.-scroll-mx-11{
  scroll-margin-left: -2.75rem !important;
  scroll-margin-right: -2.75rem !important;
}
.-scroll-mx-12{
  scroll-margin-left: -3rem !important;
  scroll-margin-right: -3rem !important;
}
.-scroll-mx-14{
  scroll-margin-left: -3.5rem !important;
  scroll-margin-right: -3.5rem !important;
}
.-scroll-mx-16{
  scroll-margin-left: -4rem !important;
  scroll-margin-right: -4rem !important;
}
.-scroll-mx-2{
  scroll-margin-left: -0.5rem !important;
  scroll-margin-right: -0.5rem !important;
}
.-scroll-mx-2\.5{
  scroll-margin-left: -0.625rem !important;
  scroll-margin-right: -0.625rem !important;
}
.-scroll-mx-20{
  scroll-margin-left: -5rem !important;
  scroll-margin-right: -5rem !important;
}
.-scroll-mx-24{
  scroll-margin-left: -6rem !important;
  scroll-margin-right: -6rem !important;
}
.-scroll-mx-28{
  scroll-margin-left: -7rem !important;
  scroll-margin-right: -7rem !important;
}
.-scroll-mx-3{
  scroll-margin-left: -0.75rem !important;
  scroll-margin-right: -0.75rem !important;
}
.-scroll-mx-3\.5{
  scroll-margin-left: -0.875rem !important;
  scroll-margin-right: -0.875rem !important;
}
.-scroll-mx-32{
  scroll-margin-left: -8rem !important;
  scroll-margin-right: -8rem !important;
}
.-scroll-mx-36{
  scroll-margin-left: -9rem !important;
  scroll-margin-right: -9rem !important;
}
.-scroll-mx-4{
  scroll-margin-left: -1rem !important;
  scroll-margin-right: -1rem !important;
}
.-scroll-mx-40{
  scroll-margin-left: -10rem !important;
  scroll-margin-right: -10rem !important;
}
.-scroll-mx-44{
  scroll-margin-left: -11rem !important;
  scroll-margin-right: -11rem !important;
}
.-scroll-mx-48{
  scroll-margin-left: -12rem !important;
  scroll-margin-right: -12rem !important;
}
.-scroll-mx-5{
  scroll-margin-left: -1.25rem !important;
  scroll-margin-right: -1.25rem !important;
}
.-scroll-mx-52{
  scroll-margin-left: -13rem !important;
  scroll-margin-right: -13rem !important;
}
.-scroll-mx-56{
  scroll-margin-left: -14rem !important;
  scroll-margin-right: -14rem !important;
}
.-scroll-mx-6{
  scroll-margin-left: -1.5rem !important;
  scroll-margin-right: -1.5rem !important;
}
.-scroll-mx-60{
  scroll-margin-left: -15rem !important;
  scroll-margin-right: -15rem !important;
}
.-scroll-mx-64{
  scroll-margin-left: -16rem !important;
  scroll-margin-right: -16rem !important;
}
.-scroll-mx-7{
  scroll-margin-left: -1.75rem !important;
  scroll-margin-right: -1.75rem !important;
}
.-scroll-mx-72{
  scroll-margin-left: -18rem !important;
  scroll-margin-right: -18rem !important;
}
.-scroll-mx-8{
  scroll-margin-left: -2rem !important;
  scroll-margin-right: -2rem !important;
}
.-scroll-mx-80{
  scroll-margin-left: -20rem !important;
  scroll-margin-right: -20rem !important;
}
.-scroll-my-1{
  scroll-margin-top: -0.25rem !important;
  scroll-margin-bottom: -0.25rem !important;
}
.-scroll-my-1\.5{
  scroll-margin-top: -0.375rem !important;
  scroll-margin-bottom: -0.375rem !important;
}
.-scroll-my-10{
  scroll-margin-top: -2.5rem !important;
  scroll-margin-bottom: -2.5rem !important;
}
.-scroll-my-11{
  scroll-margin-top: -2.75rem !important;
  scroll-margin-bottom: -2.75rem !important;
}
.-scroll-my-12{
  scroll-margin-top: -3rem !important;
  scroll-margin-bottom: -3rem !important;
}
.-scroll-my-14{
  scroll-margin-top: -3.5rem !important;
  scroll-margin-bottom: -3.5rem !important;
}
.-scroll-my-16{
  scroll-margin-top: -4rem !important;
  scroll-margin-bottom: -4rem !important;
}
.-scroll-my-2{
  scroll-margin-top: -0.5rem !important;
  scroll-margin-bottom: -0.5rem !important;
}
.-scroll-my-2\.5{
  scroll-margin-top: -0.625rem !important;
  scroll-margin-bottom: -0.625rem !important;
}
.-scroll-my-20{
  scroll-margin-top: -5rem !important;
  scroll-margin-bottom: -5rem !important;
}
.-scroll-my-24{
  scroll-margin-top: -6rem !important;
  scroll-margin-bottom: -6rem !important;
}
.-scroll-my-28{
  scroll-margin-top: -7rem !important;
  scroll-margin-bottom: -7rem !important;
}
.-scroll-my-3{
  scroll-margin-top: -0.75rem !important;
  scroll-margin-bottom: -0.75rem !important;
}
.-scroll-my-3\.5{
  scroll-margin-top: -0.875rem !important;
  scroll-margin-bottom: -0.875rem !important;
}
.-scroll-my-32{
  scroll-margin-top: -8rem !important;
  scroll-margin-bottom: -8rem !important;
}
.-scroll-my-36{
  scroll-margin-top: -9rem !important;
  scroll-margin-bottom: -9rem !important;
}
.-scroll-my-4{
  scroll-margin-top: -1rem !important;
  scroll-margin-bottom: -1rem !important;
}
.-scroll-my-40{
  scroll-margin-top: -10rem !important;
  scroll-margin-bottom: -10rem !important;
}
.-scroll-my-44{
  scroll-margin-top: -11rem !important;
  scroll-margin-bottom: -11rem !important;
}
.-scroll-my-48{
  scroll-margin-top: -12rem !important;
  scroll-margin-bottom: -12rem !important;
}
.-scroll-my-5{
  scroll-margin-top: -1.25rem !important;
  scroll-margin-bottom: -1.25rem !important;
}
.-scroll-my-52{
  scroll-margin-top: -13rem !important;
  scroll-margin-bottom: -13rem !important;
}
.-scroll-my-56{
  scroll-margin-top: -14rem !important;
  scroll-margin-bottom: -14rem !important;
}
.-scroll-my-6{
  scroll-margin-top: -1.5rem !important;
  scroll-margin-bottom: -1.5rem !important;
}
.-scroll-my-60{
  scroll-margin-top: -15rem !important;
  scroll-margin-bottom: -15rem !important;
}
.-scroll-my-64{
  scroll-margin-top: -16rem !important;
  scroll-margin-bottom: -16rem !important;
}
.-scroll-my-7{
  scroll-margin-top: -1.75rem !important;
  scroll-margin-bottom: -1.75rem !important;
}
.-scroll-my-72{
  scroll-margin-top: -18rem !important;
  scroll-margin-bottom: -18rem !important;
}
.-scroll-my-8{
  scroll-margin-top: -2rem !important;
  scroll-margin-bottom: -2rem !important;
}
.-scroll-my-80{
  scroll-margin-top: -20rem !important;
  scroll-margin-bottom: -20rem !important;
}
.scroll-mx-1{
  scroll-margin-left: 0.25rem !important;
  scroll-margin-right: 0.25rem !important;
}
.scroll-mx-1\.5{
  scroll-margin-left: 0.375rem !important;
  scroll-margin-right: 0.375rem !important;
}
.scroll-mx-10{
  scroll-margin-left: 2.5rem !important;
  scroll-margin-right: 2.5rem !important;
}
.scroll-mx-11{
  scroll-margin-left: 2.75rem !important;
  scroll-margin-right: 2.75rem !important;
}
.scroll-mx-12{
  scroll-margin-left: 3rem !important;
  scroll-margin-right: 3rem !important;
}
.scroll-mx-14{
  scroll-margin-left: 3.5rem !important;
  scroll-margin-right: 3.5rem !important;
}
.scroll-mx-16{
  scroll-margin-left: 4rem !important;
  scroll-margin-right: 4rem !important;
}
.scroll-mx-2{
  scroll-margin-left: 0.5rem !important;
  scroll-margin-right: 0.5rem !important;
}
.scroll-mx-2\.5{
  scroll-margin-left: 0.625rem !important;
  scroll-margin-right: 0.625rem !important;
}
.scroll-mx-20{
  scroll-margin-left: 5rem !important;
  scroll-margin-right: 5rem !important;
}
.scroll-mx-24{
  scroll-margin-left: 6rem !important;
  scroll-margin-right: 6rem !important;
}
.scroll-mx-28{
  scroll-margin-left: 7rem !important;
  scroll-margin-right: 7rem !important;
}
.scroll-mx-3{
  scroll-margin-left: 0.75rem !important;
  scroll-margin-right: 0.75rem !important;
}
.scroll-mx-3\.5{
  scroll-margin-left: 0.875rem !important;
  scroll-margin-right: 0.875rem !important;
}
.scroll-mx-32{
  scroll-margin-left: 8rem !important;
  scroll-margin-right: 8rem !important;
}
.scroll-mx-36{
  scroll-margin-left: 9rem !important;
  scroll-margin-right: 9rem !important;
}
.scroll-mx-4{
  scroll-margin-left: 1rem !important;
  scroll-margin-right: 1rem !important;
}
.scroll-mx-40{
  scroll-margin-left: 10rem !important;
  scroll-margin-right: 10rem !important;
}
.scroll-mx-44{
  scroll-margin-left: 11rem !important;
  scroll-margin-right: 11rem !important;
}
.scroll-mx-48{
  scroll-margin-left: 12rem !important;
  scroll-margin-right: 12rem !important;
}
.scroll-mx-5{
  scroll-margin-left: 1.25rem !important;
  scroll-margin-right: 1.25rem !important;
}
.scroll-mx-52{
  scroll-margin-left: 13rem !important;
  scroll-margin-right: 13rem !important;
}
.scroll-mx-56{
  scroll-margin-left: 14rem !important;
  scroll-margin-right: 14rem !important;
}
.scroll-mx-6{
  scroll-margin-left: 1.5rem !important;
  scroll-margin-right: 1.5rem !important;
}
.scroll-mx-60{
  scroll-margin-left: 15rem !important;
  scroll-margin-right: 15rem !important;
}
.scroll-mx-64{
  scroll-margin-left: 16rem !important;
  scroll-margin-right: 16rem !important;
}
.scroll-mx-7{
  scroll-margin-left: 1.75rem !important;
  scroll-margin-right: 1.75rem !important;
}
.scroll-mx-72{
  scroll-margin-left: 18rem !important;
  scroll-margin-right: 18rem !important;
}
.scroll-mx-8{
  scroll-margin-left: 2rem !important;
  scroll-margin-right: 2rem !important;
}
.scroll-mx-80{
  scroll-margin-left: 20rem !important;
  scroll-margin-right: 20rem !important;
}
.scroll-my-1{
  scroll-margin-top: 0.25rem !important;
  scroll-margin-bottom: 0.25rem !important;
}
.scroll-my-1\.5{
  scroll-margin-top: 0.375rem !important;
  scroll-margin-bottom: 0.375rem !important;
}
.scroll-my-10{
  scroll-margin-top: 2.5rem !important;
  scroll-margin-bottom: 2.5rem !important;
}
.scroll-my-11{
  scroll-margin-top: 2.75rem !important;
  scroll-margin-bottom: 2.75rem !important;
}
.scroll-my-12{
  scroll-margin-top: 3rem !important;
  scroll-margin-bottom: 3rem !important;
}
.scroll-my-14{
  scroll-margin-top: 3.5rem !important;
  scroll-margin-bottom: 3.5rem !important;
}
.scroll-my-16{
  scroll-margin-top: 4rem !important;
  scroll-margin-bottom: 4rem !important;
}
.scroll-my-2{
  scroll-margin-top: 0.5rem !important;
  scroll-margin-bottom: 0.5rem !important;
}
.scroll-my-2\.5{
  scroll-margin-top: 0.625rem !important;
  scroll-margin-bottom: 0.625rem !important;
}
.scroll-my-20{
  scroll-margin-top: 5rem !important;
  scroll-margin-bottom: 5rem !important;
}
.scroll-my-24{
  scroll-margin-top: 6rem !important;
  scroll-margin-bottom: 6rem !important;
}
.scroll-my-28{
  scroll-margin-top: 7rem !important;
  scroll-margin-bottom: 7rem !important;
}
.scroll-my-3{
  scroll-margin-top: 0.75rem !important;
  scroll-margin-bottom: 0.75rem !important;
}
.scroll-my-3\.5{
  scroll-margin-top: 0.875rem !important;
  scroll-margin-bottom: 0.875rem !important;
}
.scroll-my-32{
  scroll-margin-top: 8rem !important;
  scroll-margin-bottom: 8rem !important;
}
.scroll-my-36{
  scroll-margin-top: 9rem !important;
  scroll-margin-bottom: 9rem !important;
}
.scroll-my-4{
  scroll-margin-top: 1rem !important;
  scroll-margin-bottom: 1rem !important;
}
.scroll-my-40{
  scroll-margin-top: 10rem !important;
  scroll-margin-bottom: 10rem !important;
}
.scroll-my-44{
  scroll-margin-top: 11rem !important;
  scroll-margin-bottom: 11rem !important;
}
.scroll-my-48{
  scroll-margin-top: 12rem !important;
  scroll-margin-bottom: 12rem !important;
}
.scroll-my-5{
  scroll-margin-top: 1.25rem !important;
  scroll-margin-bottom: 1.25rem !important;
}
.scroll-my-52{
  scroll-margin-top: 13rem !important;
  scroll-margin-bottom: 13rem !important;
}
.scroll-my-56{
  scroll-margin-top: 14rem !important;
  scroll-margin-bottom: 14rem !important;
}
.scroll-my-6{
  scroll-margin-top: 1.5rem !important;
  scroll-margin-bottom: 1.5rem !important;
}
.scroll-my-60{
  scroll-margin-top: 15rem !important;
  scroll-margin-bottom: 15rem !important;
}
.scroll-my-64{
  scroll-margin-top: 16rem !important;
  scroll-margin-bottom: 16rem !important;
}
.scroll-my-7{
  scroll-margin-top: 1.75rem !important;
  scroll-margin-bottom: 1.75rem !important;
}
.scroll-my-72{
  scroll-margin-top: 18rem !important;
  scroll-margin-bottom: 18rem !important;
}
.scroll-my-8{
  scroll-margin-top: 2rem !important;
  scroll-margin-bottom: 2rem !important;
}
.scroll-my-80{
  scroll-margin-top: 20rem !important;
  scroll-margin-bottom: 20rem !important;
}
.-scroll-mb-1{
  scroll-margin-bottom: -0.25rem !important;
}
.-scroll-mb-1\.5{
  scroll-margin-bottom: -0.375rem !important;
}
.-scroll-mb-10{
  scroll-margin-bottom: -2.5rem !important;
}
.-scroll-mb-11{
  scroll-margin-bottom: -2.75rem !important;
}
.-scroll-mb-12{
  scroll-margin-bottom: -3rem !important;
}
.-scroll-mb-14{
  scroll-margin-bottom: -3.5rem !important;
}
.-scroll-mb-16{
  scroll-margin-bottom: -4rem !important;
}
.-scroll-mb-2{
  scroll-margin-bottom: -0.5rem !important;
}
.-scroll-mb-2\.5{
  scroll-margin-bottom: -0.625rem !important;
}
.-scroll-mb-20{
  scroll-margin-bottom: -5rem !important;
}
.-scroll-mb-24{
  scroll-margin-bottom: -6rem !important;
}
.-scroll-mb-28{
  scroll-margin-bottom: -7rem !important;
}
.-scroll-mb-3{
  scroll-margin-bottom: -0.75rem !important;
}
.-scroll-mb-3\.5{
  scroll-margin-bottom: -0.875rem !important;
}
.-scroll-mb-32{
  scroll-margin-bottom: -8rem !important;
}
.-scroll-mb-36{
  scroll-margin-bottom: -9rem !important;
}
.-scroll-mb-4{
  scroll-margin-bottom: -1rem !important;
}
.-scroll-mb-40{
  scroll-margin-bottom: -10rem !important;
}
.-scroll-mb-44{
  scroll-margin-bottom: -11rem !important;
}
.-scroll-mb-48{
  scroll-margin-bottom: -12rem !important;
}
.-scroll-mb-5{
  scroll-margin-bottom: -1.25rem !important;
}
.-scroll-mb-52{
  scroll-margin-bottom: -13rem !important;
}
.-scroll-mb-56{
  scroll-margin-bottom: -14rem !important;
}
.-scroll-mb-6{
  scroll-margin-bottom: -1.5rem !important;
}
.-scroll-mb-60{
  scroll-margin-bottom: -15rem !important;
}
.-scroll-mb-64{
  scroll-margin-bottom: -16rem !important;
}
.-scroll-mb-7{
  scroll-margin-bottom: -1.75rem !important;
}
.-scroll-mb-72{
  scroll-margin-bottom: -18rem !important;
}
.-scroll-mb-8{
  scroll-margin-bottom: -2rem !important;
}
.-scroll-mb-80{
  scroll-margin-bottom: -20rem !important;
}
.-scroll-ml-1{
  scroll-margin-left: -0.25rem !important;
}
.-scroll-ml-1\.5{
  scroll-margin-left: -0.375rem !important;
}
.-scroll-ml-10{
  scroll-margin-left: -2.5rem !important;
}
.-scroll-ml-11{
  scroll-margin-left: -2.75rem !important;
}
.-scroll-ml-12{
  scroll-margin-left: -3rem !important;
}
.-scroll-ml-14{
  scroll-margin-left: -3.5rem !important;
}
.-scroll-ml-16{
  scroll-margin-left: -4rem !important;
}
.-scroll-ml-2{
  scroll-margin-left: -0.5rem !important;
}
.-scroll-ml-2\.5{
  scroll-margin-left: -0.625rem !important;
}
.-scroll-ml-20{
  scroll-margin-left: -5rem !important;
}
.-scroll-ml-24{
  scroll-margin-left: -6rem !important;
}
.-scroll-ml-28{
  scroll-margin-left: -7rem !important;
}
.-scroll-ml-3{
  scroll-margin-left: -0.75rem !important;
}
.-scroll-ml-3\.5{
  scroll-margin-left: -0.875rem !important;
}
.-scroll-ml-32{
  scroll-margin-left: -8rem !important;
}
.-scroll-ml-36{
  scroll-margin-left: -9rem !important;
}
.-scroll-ml-4{
  scroll-margin-left: -1rem !important;
}
.-scroll-ml-40{
  scroll-margin-left: -10rem !important;
}
.-scroll-ml-44{
  scroll-margin-left: -11rem !important;
}
.-scroll-ml-48{
  scroll-margin-left: -12rem !important;
}
.-scroll-ml-5{
  scroll-margin-left: -1.25rem !important;
}
.-scroll-ml-52{
  scroll-margin-left: -13rem !important;
}
.-scroll-ml-56{
  scroll-margin-left: -14rem !important;
}
.-scroll-ml-6{
  scroll-margin-left: -1.5rem !important;
}
.-scroll-ml-60{
  scroll-margin-left: -15rem !important;
}
.-scroll-ml-64{
  scroll-margin-left: -16rem !important;
}
.-scroll-ml-7{
  scroll-margin-left: -1.75rem !important;
}
.-scroll-ml-72{
  scroll-margin-left: -18rem !important;
}
.-scroll-ml-8{
  scroll-margin-left: -2rem !important;
}
.-scroll-ml-80{
  scroll-margin-left: -20rem !important;
}
.-scroll-mr-1{
  scroll-margin-right: -0.25rem !important;
}
.-scroll-mr-1\.5{
  scroll-margin-right: -0.375rem !important;
}
.-scroll-mr-10{
  scroll-margin-right: -2.5rem !important;
}
.-scroll-mr-11{
  scroll-margin-right: -2.75rem !important;
}
.-scroll-mr-12{
  scroll-margin-right: -3rem !important;
}
.-scroll-mr-14{
  scroll-margin-right: -3.5rem !important;
}
.-scroll-mr-16{
  scroll-margin-right: -4rem !important;
}
.-scroll-mr-2{
  scroll-margin-right: -0.5rem !important;
}
.-scroll-mr-2\.5{
  scroll-margin-right: -0.625rem !important;
}
.-scroll-mr-20{
  scroll-margin-right: -5rem !important;
}
.-scroll-mr-24{
  scroll-margin-right: -6rem !important;
}
.-scroll-mr-28{
  scroll-margin-right: -7rem !important;
}
.-scroll-mr-3{
  scroll-margin-right: -0.75rem !important;
}
.-scroll-mr-3\.5{
  scroll-margin-right: -0.875rem !important;
}
.-scroll-mr-32{
  scroll-margin-right: -8rem !important;
}
.-scroll-mr-36{
  scroll-margin-right: -9rem !important;
}
.-scroll-mr-4{
  scroll-margin-right: -1rem !important;
}
.-scroll-mr-40{
  scroll-margin-right: -10rem !important;
}
.-scroll-mr-44{
  scroll-margin-right: -11rem !important;
}
.-scroll-mr-48{
  scroll-margin-right: -12rem !important;
}
.-scroll-mr-5{
  scroll-margin-right: -1.25rem !important;
}
.-scroll-mr-52{
  scroll-margin-right: -13rem !important;
}
.-scroll-mr-56{
  scroll-margin-right: -14rem !important;
}
.-scroll-mr-6{
  scroll-margin-right: -1.5rem !important;
}
.-scroll-mr-60{
  scroll-margin-right: -15rem !important;
}
.-scroll-mr-64{
  scroll-margin-right: -16rem !important;
}
.-scroll-mr-7{
  scroll-margin-right: -1.75rem !important;
}
.-scroll-mr-72{
  scroll-margin-right: -18rem !important;
}
.-scroll-mr-8{
  scroll-margin-right: -2rem !important;
}
.-scroll-mr-80{
  scroll-margin-right: -20rem !important;
}
.-scroll-mt-1{
  scroll-margin-top: -0.25rem !important;
}
.-scroll-mt-1\.5{
  scroll-margin-top: -0.375rem !important;
}
.-scroll-mt-10{
  scroll-margin-top: -2.5rem !important;
}
.-scroll-mt-11{
  scroll-margin-top: -2.75rem !important;
}
.-scroll-mt-12{
  scroll-margin-top: -3rem !important;
}
.-scroll-mt-14{
  scroll-margin-top: -3.5rem !important;
}
.-scroll-mt-16{
  scroll-margin-top: -4rem !important;
}
.-scroll-mt-2{
  scroll-margin-top: -0.5rem !important;
}
.-scroll-mt-2\.5{
  scroll-margin-top: -0.625rem !important;
}
.-scroll-mt-20{
  scroll-margin-top: -5rem !important;
}
.-scroll-mt-24{
  scroll-margin-top: -6rem !important;
}
.-scroll-mt-28{
  scroll-margin-top: -7rem !important;
}
.-scroll-mt-3{
  scroll-margin-top: -0.75rem !important;
}
.-scroll-mt-3\.5{
  scroll-margin-top: -0.875rem !important;
}
.-scroll-mt-32{
  scroll-margin-top: -8rem !important;
}
.-scroll-mt-36{
  scroll-margin-top: -9rem !important;
}
.-scroll-mt-4{
  scroll-margin-top: -1rem !important;
}
.-scroll-mt-40{
  scroll-margin-top: -10rem !important;
}
.-scroll-mt-44{
  scroll-margin-top: -11rem !important;
}
.-scroll-mt-48{
  scroll-margin-top: -12rem !important;
}
.-scroll-mt-5{
  scroll-margin-top: -1.25rem !important;
}
.-scroll-mt-52{
  scroll-margin-top: -13rem !important;
}
.-scroll-mt-56{
  scroll-margin-top: -14rem !important;
}
.-scroll-mt-6{
  scroll-margin-top: -1.5rem !important;
}
.-scroll-mt-60{
  scroll-margin-top: -15rem !important;
}
.-scroll-mt-64{
  scroll-margin-top: -16rem !important;
}
.-scroll-mt-7{
  scroll-margin-top: -1.75rem !important;
}
.-scroll-mt-72{
  scroll-margin-top: -18rem !important;
}
.-scroll-mt-8{
  scroll-margin-top: -2rem !important;
}
.-scroll-mt-80{
  scroll-margin-top: -20rem !important;
}
.scroll-mb-1{
  scroll-margin-bottom: 0.25rem !important;
}
.scroll-mb-1\.5{
  scroll-margin-bottom: 0.375rem !important;
}
.scroll-mb-10{
  scroll-margin-bottom: 2.5rem !important;
}
.scroll-mb-11{
  scroll-margin-bottom: 2.75rem !important;
}
.scroll-mb-12{
  scroll-margin-bottom: 3rem !important;
}
.scroll-mb-14{
  scroll-margin-bottom: 3.5rem !important;
}
.scroll-mb-16{
  scroll-margin-bottom: 4rem !important;
}
.scroll-mb-2{
  scroll-margin-bottom: 0.5rem !important;
}
.scroll-mb-2\.5{
  scroll-margin-bottom: 0.625rem !important;
}
.scroll-mb-20{
  scroll-margin-bottom: 5rem !important;
}
.scroll-mb-24{
  scroll-margin-bottom: 6rem !important;
}
.scroll-mb-28{
  scroll-margin-bottom: 7rem !important;
}
.scroll-mb-3{
  scroll-margin-bottom: 0.75rem !important;
}
.scroll-mb-3\.5{
  scroll-margin-bottom: 0.875rem !important;
}
.scroll-mb-32{
  scroll-margin-bottom: 8rem !important;
}
.scroll-mb-36{
  scroll-margin-bottom: 9rem !important;
}
.scroll-mb-4{
  scroll-margin-bottom: 1rem !important;
}
.scroll-mb-40{
  scroll-margin-bottom: 10rem !important;
}
.scroll-mb-44{
  scroll-margin-bottom: 11rem !important;
}
.scroll-mb-48{
  scroll-margin-bottom: 12rem !important;
}
.scroll-mb-5{
  scroll-margin-bottom: 1.25rem !important;
}
.scroll-mb-52{
  scroll-margin-bottom: 13rem !important;
}
.scroll-mb-56{
  scroll-margin-bottom: 14rem !important;
}
.scroll-mb-6{
  scroll-margin-bottom: 1.5rem !important;
}
.scroll-mb-60{
  scroll-margin-bottom: 15rem !important;
}
.scroll-mb-64{
  scroll-margin-bottom: 16rem !important;
}
.scroll-mb-7{
  scroll-margin-bottom: 1.75rem !important;
}
.scroll-mb-72{
  scroll-margin-bottom: 18rem !important;
}
.scroll-mb-8{
  scroll-margin-bottom: 2rem !important;
}
.scroll-mb-80{
  scroll-margin-bottom: 20rem !important;
}
.scroll-ml-1{
  scroll-margin-left: 0.25rem !important;
}
.scroll-ml-1\.5{
  scroll-margin-left: 0.375rem !important;
}
.scroll-ml-10{
  scroll-margin-left: 2.5rem !important;
}
.scroll-ml-11{
  scroll-margin-left: 2.75rem !important;
}
.scroll-ml-12{
  scroll-margin-left: 3rem !important;
}
.scroll-ml-14{
  scroll-margin-left: 3.5rem !important;
}
.scroll-ml-16{
  scroll-margin-left: 4rem !important;
}
.scroll-ml-2{
  scroll-margin-left: 0.5rem !important;
}
.scroll-ml-2\.5{
  scroll-margin-left: 0.625rem !important;
}
.scroll-ml-20{
  scroll-margin-left: 5rem !important;
}
.scroll-ml-24{
  scroll-margin-left: 6rem !important;
}
.scroll-ml-28{
  scroll-margin-left: 7rem !important;
}
.scroll-ml-3{
  scroll-margin-left: 0.75rem !important;
}
.scroll-ml-3\.5{
  scroll-margin-left: 0.875rem !important;
}
.scroll-ml-32{
  scroll-margin-left: 8rem !important;
}
.scroll-ml-36{
  scroll-margin-left: 9rem !important;
}
.scroll-ml-4{
  scroll-margin-left: 1rem !important;
}
.scroll-ml-40{
  scroll-margin-left: 10rem !important;
}
.scroll-ml-44{
  scroll-margin-left: 11rem !important;
}
.scroll-ml-48{
  scroll-margin-left: 12rem !important;
}
.scroll-ml-5{
  scroll-margin-left: 1.25rem !important;
}
.scroll-ml-52{
  scroll-margin-left: 13rem !important;
}
.scroll-ml-56{
  scroll-margin-left: 14rem !important;
}
.scroll-ml-6{
  scroll-margin-left: 1.5rem !important;
}
.scroll-ml-60{
  scroll-margin-left: 15rem !important;
}
.scroll-ml-64{
  scroll-margin-left: 16rem !important;
}
.scroll-ml-7{
  scroll-margin-left: 1.75rem !important;
}
.scroll-ml-72{
  scroll-margin-left: 18rem !important;
}
.scroll-ml-8{
  scroll-margin-left: 2rem !important;
}
.scroll-ml-80{
  scroll-margin-left: 20rem !important;
}
.scroll-mr-1{
  scroll-margin-right: 0.25rem !important;
}
.scroll-mr-1\.5{
  scroll-margin-right: 0.375rem !important;
}
.scroll-mr-10{
  scroll-margin-right: 2.5rem !important;
}
.scroll-mr-11{
  scroll-margin-right: 2.75rem !important;
}
.scroll-mr-12{
  scroll-margin-right: 3rem !important;
}
.scroll-mr-14{
  scroll-margin-right: 3.5rem !important;
}
.scroll-mr-16{
  scroll-margin-right: 4rem !important;
}
.scroll-mr-2{
  scroll-margin-right: 0.5rem !important;
}
.scroll-mr-2\.5{
  scroll-margin-right: 0.625rem !important;
}
.scroll-mr-20{
  scroll-margin-right: 5rem !important;
}
.scroll-mr-24{
  scroll-margin-right: 6rem !important;
}
.scroll-mr-28{
  scroll-margin-right: 7rem !important;
}
.scroll-mr-3{
  scroll-margin-right: 0.75rem !important;
}
.scroll-mr-3\.5{
  scroll-margin-right: 0.875rem !important;
}
.scroll-mr-32{
  scroll-margin-right: 8rem !important;
}
.scroll-mr-36{
  scroll-margin-right: 9rem !important;
}
.scroll-mr-4{
  scroll-margin-right: 1rem !important;
}
.scroll-mr-40{
  scroll-margin-right: 10rem !important;
}
.scroll-mr-44{
  scroll-margin-right: 11rem !important;
}
.scroll-mr-48{
  scroll-margin-right: 12rem !important;
}
.scroll-mr-5{
  scroll-margin-right: 1.25rem !important;
}
.scroll-mr-52{
  scroll-margin-right: 13rem !important;
}
.scroll-mr-56{
  scroll-margin-right: 14rem !important;
}
.scroll-mr-6{
  scroll-margin-right: 1.5rem !important;
}
.scroll-mr-60{
  scroll-margin-right: 15rem !important;
}
.scroll-mr-64{
  scroll-margin-right: 16rem !important;
}
.scroll-mr-7{
  scroll-margin-right: 1.75rem !important;
}
.scroll-mr-72{
  scroll-margin-right: 18rem !important;
}
.scroll-mr-8{
  scroll-margin-right: 2rem !important;
}
.scroll-mr-80{
  scroll-margin-right: 20rem !important;
}
.scroll-mt-1{
  scroll-margin-top: 0.25rem !important;
}
.scroll-mt-1\.5{
  scroll-margin-top: 0.375rem !important;
}
.scroll-mt-10{
  scroll-margin-top: 2.5rem !important;
}
.scroll-mt-11{
  scroll-margin-top: 2.75rem !important;
}
.scroll-mt-12{
  scroll-margin-top: 3rem !important;
}
.scroll-mt-14{
  scroll-margin-top: 3.5rem !important;
}
.scroll-mt-16{
  scroll-margin-top: 4rem !important;
}
.scroll-mt-2{
  scroll-margin-top: 0.5rem !important;
}
.scroll-mt-2\.5{
  scroll-margin-top: 0.625rem !important;
}
.scroll-mt-20{
  scroll-margin-top: 5rem !important;
}
.scroll-mt-24{
  scroll-margin-top: 6rem !important;
}
.scroll-mt-28{
  scroll-margin-top: 7rem !important;
}
.scroll-mt-3{
  scroll-margin-top: 0.75rem !important;
}
.scroll-mt-3\.5{
  scroll-margin-top: 0.875rem !important;
}
.scroll-mt-32{
  scroll-margin-top: 8rem !important;
}
.scroll-mt-36{
  scroll-margin-top: 9rem !important;
}
.scroll-mt-4{
  scroll-margin-top: 1rem !important;
}
.scroll-mt-40{
  scroll-margin-top: 10rem !important;
}
.scroll-mt-44{
  scroll-margin-top: 11rem !important;
}
.scroll-mt-48{
  scroll-margin-top: 12rem !important;
}
.scroll-mt-5{
  scroll-margin-top: 1.25rem !important;
}
.scroll-mt-52{
  scroll-margin-top: 13rem !important;
}
.scroll-mt-56{
  scroll-margin-top: 14rem !important;
}
.scroll-mt-6{
  scroll-margin-top: 1.5rem !important;
}
.scroll-mt-60{
  scroll-margin-top: 15rem !important;
}
.scroll-mt-64{
  scroll-margin-top: 16rem !important;
}
.scroll-mt-7{
  scroll-margin-top: 1.75rem !important;
}
.scroll-mt-72{
  scroll-margin-top: 18rem !important;
}
.scroll-mt-8{
  scroll-margin-top: 2rem !important;
}
.scroll-mt-80{
  scroll-margin-top: 20rem !important;
}
.scroll-px-1{
  scroll-padding-left: 0.25rem !important;
  scroll-padding-right: 0.25rem !important;
}
.scroll-px-1\.5{
  scroll-padding-left: 0.375rem !important;
  scroll-padding-right: 0.375rem !important;
}
.scroll-px-10{
  scroll-padding-left: 2.5rem !important;
  scroll-padding-right: 2.5rem !important;
}
.scroll-px-11{
  scroll-padding-left: 2.75rem !important;
  scroll-padding-right: 2.75rem !important;
}
.scroll-px-12{
  scroll-padding-left: 3rem !important;
  scroll-padding-right: 3rem !important;
}
.scroll-px-14{
  scroll-padding-left: 3.5rem !important;
  scroll-padding-right: 3.5rem !important;
}
.scroll-px-16{
  scroll-padding-left: 4rem !important;
  scroll-padding-right: 4rem !important;
}
.scroll-px-2{
  scroll-padding-left: 0.5rem !important;
  scroll-padding-right: 0.5rem !important;
}
.scroll-px-2\.5{
  scroll-padding-left: 0.625rem !important;
  scroll-padding-right: 0.625rem !important;
}
.scroll-px-20{
  scroll-padding-left: 5rem !important;
  scroll-padding-right: 5rem !important;
}
.scroll-px-24{
  scroll-padding-left: 6rem !important;
  scroll-padding-right: 6rem !important;
}
.scroll-px-28{
  scroll-padding-left: 7rem !important;
  scroll-padding-right: 7rem !important;
}
.scroll-px-3{
  scroll-padding-left: 0.75rem !important;
  scroll-padding-right: 0.75rem !important;
}
.scroll-px-3\.5{
  scroll-padding-left: 0.875rem !important;
  scroll-padding-right: 0.875rem !important;
}
.scroll-px-32{
  scroll-padding-left: 8rem !important;
  scroll-padding-right: 8rem !important;
}
.scroll-px-36{
  scroll-padding-left: 9rem !important;
  scroll-padding-right: 9rem !important;
}
.scroll-px-4{
  scroll-padding-left: 1rem !important;
  scroll-padding-right: 1rem !important;
}
.scroll-px-40{
  scroll-padding-left: 10rem !important;
  scroll-padding-right: 10rem !important;
}
.scroll-px-44{
  scroll-padding-left: 11rem !important;
  scroll-padding-right: 11rem !important;
}
.scroll-px-48{
  scroll-padding-left: 12rem !important;
  scroll-padding-right: 12rem !important;
}
.scroll-px-5{
  scroll-padding-left: 1.25rem !important;
  scroll-padding-right: 1.25rem !important;
}
.scroll-px-52{
  scroll-padding-left: 13rem !important;
  scroll-padding-right: 13rem !important;
}
.scroll-px-56{
  scroll-padding-left: 14rem !important;
  scroll-padding-right: 14rem !important;
}
.scroll-px-6{
  scroll-padding-left: 1.5rem !important;
  scroll-padding-right: 1.5rem !important;
}
.scroll-px-60{
  scroll-padding-left: 15rem !important;
  scroll-padding-right: 15rem !important;
}
.scroll-px-64{
  scroll-padding-left: 16rem !important;
  scroll-padding-right: 16rem !important;
}
.scroll-px-7{
  scroll-padding-left: 1.75rem !important;
  scroll-padding-right: 1.75rem !important;
}
.scroll-px-72{
  scroll-padding-left: 18rem !important;
  scroll-padding-right: 18rem !important;
}
.scroll-px-8{
  scroll-padding-left: 2rem !important;
  scroll-padding-right: 2rem !important;
}
.scroll-px-80{
  scroll-padding-left: 20rem !important;
  scroll-padding-right: 20rem !important;
}
.scroll-py-1{
  scroll-padding-top: 0.25rem !important;
  scroll-padding-bottom: 0.25rem !important;
}
.scroll-py-1\.5{
  scroll-padding-top: 0.375rem !important;
  scroll-padding-bottom: 0.375rem !important;
}
.scroll-py-10{
  scroll-padding-top: 2.5rem !important;
  scroll-padding-bottom: 2.5rem !important;
}
.scroll-py-11{
  scroll-padding-top: 2.75rem !important;
  scroll-padding-bottom: 2.75rem !important;
}
.scroll-py-12{
  scroll-padding-top: 3rem !important;
  scroll-padding-bottom: 3rem !important;
}
.scroll-py-14{
  scroll-padding-top: 3.5rem !important;
  scroll-padding-bottom: 3.5rem !important;
}
.scroll-py-16{
  scroll-padding-top: 4rem !important;
  scroll-padding-bottom: 4rem !important;
}
.scroll-py-2{
  scroll-padding-top: 0.5rem !important;
  scroll-padding-bottom: 0.5rem !important;
}
.scroll-py-2\.5{
  scroll-padding-top: 0.625rem !important;
  scroll-padding-bottom: 0.625rem !important;
}
.scroll-py-20{
  scroll-padding-top: 5rem !important;
  scroll-padding-bottom: 5rem !important;
}
.scroll-py-24{
  scroll-padding-top: 6rem !important;
  scroll-padding-bottom: 6rem !important;
}
.scroll-py-28{
  scroll-padding-top: 7rem !important;
  scroll-padding-bottom: 7rem !important;
}
.scroll-py-3{
  scroll-padding-top: 0.75rem !important;
  scroll-padding-bottom: 0.75rem !important;
}
.scroll-py-3\.5{
  scroll-padding-top: 0.875rem !important;
  scroll-padding-bottom: 0.875rem !important;
}
.scroll-py-32{
  scroll-padding-top: 8rem !important;
  scroll-padding-bottom: 8rem !important;
}
.scroll-py-36{
  scroll-padding-top: 9rem !important;
  scroll-padding-bottom: 9rem !important;
}
.scroll-py-4{
  scroll-padding-top: 1rem !important;
  scroll-padding-bottom: 1rem !important;
}
.scroll-py-40{
  scroll-padding-top: 10rem !important;
  scroll-padding-bottom: 10rem !important;
}
.scroll-py-44{
  scroll-padding-top: 11rem !important;
  scroll-padding-bottom: 11rem !important;
}
.scroll-py-48{
  scroll-padding-top: 12rem !important;
  scroll-padding-bottom: 12rem !important;
}
.scroll-py-5{
  scroll-padding-top: 1.25rem !important;
  scroll-padding-bottom: 1.25rem !important;
}
.scroll-py-52{
  scroll-padding-top: 13rem !important;
  scroll-padding-bottom: 13rem !important;
}
.scroll-py-56{
  scroll-padding-top: 14rem !important;
  scroll-padding-bottom: 14rem !important;
}
.scroll-py-6{
  scroll-padding-top: 1.5rem !important;
  scroll-padding-bottom: 1.5rem !important;
}
.scroll-py-60{
  scroll-padding-top: 15rem !important;
  scroll-padding-bottom: 15rem !important;
}
.scroll-py-64{
  scroll-padding-top: 16rem !important;
  scroll-padding-bottom: 16rem !important;
}
.scroll-py-7{
  scroll-padding-top: 1.75rem !important;
  scroll-padding-bottom: 1.75rem !important;
}
.scroll-py-72{
  scroll-padding-top: 18rem !important;
  scroll-padding-bottom: 18rem !important;
}
.scroll-py-8{
  scroll-padding-top: 2rem !important;
  scroll-padding-bottom: 2rem !important;
}
.scroll-py-80{
  scroll-padding-top: 20rem !important;
  scroll-padding-bottom: 20rem !important;
}
.scroll-pb-1{
  scroll-padding-bottom: 0.25rem !important;
}
.scroll-pb-1\.5{
  scroll-padding-bottom: 0.375rem !important;
}
.scroll-pb-10{
  scroll-padding-bottom: 2.5rem !important;
}
.scroll-pb-11{
  scroll-padding-bottom: 2.75rem !important;
}
.scroll-pb-12{
  scroll-padding-bottom: 3rem !important;
}
.scroll-pb-14{
  scroll-padding-bottom: 3.5rem !important;
}
.scroll-pb-16{
  scroll-padding-bottom: 4rem !important;
}
.scroll-pb-2{
  scroll-padding-bottom: 0.5rem !important;
}
.scroll-pb-2\.5{
  scroll-padding-bottom: 0.625rem !important;
}
.scroll-pb-20{
  scroll-padding-bottom: 5rem !important;
}
.scroll-pb-24{
  scroll-padding-bottom: 6rem !important;
}
.scroll-pb-28{
  scroll-padding-bottom: 7rem !important;
}
.scroll-pb-3{
  scroll-padding-bottom: 0.75rem !important;
}
.scroll-pb-3\.5{
  scroll-padding-bottom: 0.875rem !important;
}
.scroll-pb-32{
  scroll-padding-bottom: 8rem !important;
}
.scroll-pb-36{
  scroll-padding-bottom: 9rem !important;
}
.scroll-pb-4{
  scroll-padding-bottom: 1rem !important;
}
.scroll-pb-40{
  scroll-padding-bottom: 10rem !important;
}
.scroll-pb-44{
  scroll-padding-bottom: 11rem !important;
}
.scroll-pb-48{
  scroll-padding-bottom: 12rem !important;
}
.scroll-pb-5{
  scroll-padding-bottom: 1.25rem !important;
}
.scroll-pb-52{
  scroll-padding-bottom: 13rem !important;
}
.scroll-pb-56{
  scroll-padding-bottom: 14rem !important;
}
.scroll-pb-6{
  scroll-padding-bottom: 1.5rem !important;
}
.scroll-pb-60{
  scroll-padding-bottom: 15rem !important;
}
.scroll-pb-64{
  scroll-padding-bottom: 16rem !important;
}
.scroll-pb-7{
  scroll-padding-bottom: 1.75rem !important;
}
.scroll-pb-72{
  scroll-padding-bottom: 18rem !important;
}
.scroll-pb-8{
  scroll-padding-bottom: 2rem !important;
}
.scroll-pb-80{
  scroll-padding-bottom: 20rem !important;
}
.scroll-pl-1{
  scroll-padding-left: 0.25rem !important;
}
.scroll-pl-1\.5{
  scroll-padding-left: 0.375rem !important;
}
.scroll-pl-10{
  scroll-padding-left: 2.5rem !important;
}
.scroll-pl-11{
  scroll-padding-left: 2.75rem !important;
}
.scroll-pl-12{
  scroll-padding-left: 3rem !important;
}
.scroll-pl-14{
  scroll-padding-left: 3.5rem !important;
}
.scroll-pl-16{
  scroll-padding-left: 4rem !important;
}
.scroll-pl-2{
  scroll-padding-left: 0.5rem !important;
}
.scroll-pl-2\.5{
  scroll-padding-left: 0.625rem !important;
}
.scroll-pl-20{
  scroll-padding-left: 5rem !important;
}
.scroll-pl-24{
  scroll-padding-left: 6rem !important;
}
.scroll-pl-28{
  scroll-padding-left: 7rem !important;
}
.scroll-pl-3{
  scroll-padding-left: 0.75rem !important;
}
.scroll-pl-3\.5{
  scroll-padding-left: 0.875rem !important;
}
.scroll-pl-32{
  scroll-padding-left: 8rem !important;
}
.scroll-pl-36{
  scroll-padding-left: 9rem !important;
}
.scroll-pl-4{
  scroll-padding-left: 1rem !important;
}
.scroll-pl-40{
  scroll-padding-left: 10rem !important;
}
.scroll-pl-44{
  scroll-padding-left: 11rem !important;
}
.scroll-pl-48{
  scroll-padding-left: 12rem !important;
}
.scroll-pl-5{
  scroll-padding-left: 1.25rem !important;
}
.scroll-pl-52{
  scroll-padding-left: 13rem !important;
}
.scroll-pl-56{
  scroll-padding-left: 14rem !important;
}
.scroll-pl-6{
  scroll-padding-left: 1.5rem !important;
}
.scroll-pl-60{
  scroll-padding-left: 15rem !important;
}
.scroll-pl-64{
  scroll-padding-left: 16rem !important;
}
.scroll-pl-7{
  scroll-padding-left: 1.75rem !important;
}
.scroll-pl-72{
  scroll-padding-left: 18rem !important;
}
.scroll-pl-8{
  scroll-padding-left: 2rem !important;
}
.scroll-pl-80{
  scroll-padding-left: 20rem !important;
}
.scroll-pr-1{
  scroll-padding-right: 0.25rem !important;
}
.scroll-pr-1\.5{
  scroll-padding-right: 0.375rem !important;
}
.scroll-pr-10{
  scroll-padding-right: 2.5rem !important;
}
.scroll-pr-11{
  scroll-padding-right: 2.75rem !important;
}
.scroll-pr-12{
  scroll-padding-right: 3rem !important;
}
.scroll-pr-14{
  scroll-padding-right: 3.5rem !important;
}
.scroll-pr-16{
  scroll-padding-right: 4rem !important;
}
.scroll-pr-2{
  scroll-padding-right: 0.5rem !important;
}
.scroll-pr-2\.5{
  scroll-padding-right: 0.625rem !important;
}
.scroll-pr-20{
  scroll-padding-right: 5rem !important;
}
.scroll-pr-24{
  scroll-padding-right: 6rem !important;
}
.scroll-pr-28{
  scroll-padding-right: 7rem !important;
}
.scroll-pr-3{
  scroll-padding-right: 0.75rem !important;
}
.scroll-pr-3\.5{
  scroll-padding-right: 0.875rem !important;
}
.scroll-pr-32{
  scroll-padding-right: 8rem !important;
}
.scroll-pr-36{
  scroll-padding-right: 9rem !important;
}
.scroll-pr-4{
  scroll-padding-right: 1rem !important;
}
.scroll-pr-40{
  scroll-padding-right: 10rem !important;
}
.scroll-pr-44{
  scroll-padding-right: 11rem !important;
}
.scroll-pr-48{
  scroll-padding-right: 12rem !important;
}
.scroll-pr-5{
  scroll-padding-right: 1.25rem !important;
}
.scroll-pr-52{
  scroll-padding-right: 13rem !important;
}
.scroll-pr-56{
  scroll-padding-right: 14rem !important;
}
.scroll-pr-6{
  scroll-padding-right: 1.5rem !important;
}
.scroll-pr-60{
  scroll-padding-right: 15rem !important;
}
.scroll-pr-64{
  scroll-padding-right: 16rem !important;
}
.scroll-pr-7{
  scroll-padding-right: 1.75rem !important;
}
.scroll-pr-72{
  scroll-padding-right: 18rem !important;
}
.scroll-pr-8{
  scroll-padding-right: 2rem !important;
}
.scroll-pr-80{
  scroll-padding-right: 20rem !important;
}
.scroll-pt-1{
  scroll-padding-top: 0.25rem !important;
}
.scroll-pt-1\.5{
  scroll-padding-top: 0.375rem !important;
}
.scroll-pt-10{
  scroll-padding-top: 2.5rem !important;
}
.scroll-pt-11{
  scroll-padding-top: 2.75rem !important;
}
.scroll-pt-12{
  scroll-padding-top: 3rem !important;
}
.scroll-pt-14{
  scroll-padding-top: 3.5rem !important;
}
.scroll-pt-16{
  scroll-padding-top: 4rem !important;
}
.scroll-pt-2{
  scroll-padding-top: 0.5rem !important;
}
.scroll-pt-2\.5{
  scroll-padding-top: 0.625rem !important;
}
.scroll-pt-20{
  scroll-padding-top: 5rem !important;
}
.scroll-pt-24{
  scroll-padding-top: 6rem !important;
}
.scroll-pt-28{
  scroll-padding-top: 7rem !important;
}
.scroll-pt-3{
  scroll-padding-top: 0.75rem !important;
}
.scroll-pt-3\.5{
  scroll-padding-top: 0.875rem !important;
}
.scroll-pt-32{
  scroll-padding-top: 8rem !important;
}
.scroll-pt-36{
  scroll-padding-top: 9rem !important;
}
.scroll-pt-4{
  scroll-padding-top: 1rem !important;
}
.scroll-pt-40{
  scroll-padding-top: 10rem !important;
}
.scroll-pt-44{
  scroll-padding-top: 11rem !important;
}
.scroll-pt-48{
  scroll-padding-top: 12rem !important;
}
.scroll-pt-5{
  scroll-padding-top: 1.25rem !important;
}
.scroll-pt-52{
  scroll-padding-top: 13rem !important;
}
.scroll-pt-56{
  scroll-padding-top: 14rem !important;
}
.scroll-pt-6{
  scroll-padding-top: 1.5rem !important;
}
.scroll-pt-60{
  scroll-padding-top: 15rem !important;
}
.scroll-pt-64{
  scroll-padding-top: 16rem !important;
}
.scroll-pt-7{
  scroll-padding-top: 1.75rem !important;
}
.scroll-pt-72{
  scroll-padding-top: 18rem !important;
}
.scroll-pt-8{
  scroll-padding-top: 2rem !important;
}
.scroll-pt-80{
  scroll-padding-top: 20rem !important;
}
.list-none{
  list-style-type: none !important;
}
.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}
.grid-cols-10{
  grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
}
.grid-cols-11{
  grid-template-columns: repeat(11, minmax(0, 1fr)) !important;
}
.grid-cols-12{
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
}
.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.grid-cols-3{
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
.grid-cols-4{
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.grid-cols-5{
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}
.grid-cols-6{
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}
.grid-cols-7{
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
}
.grid-cols-8{
  grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
}
.grid-cols-9{
  grid-template-columns: repeat(9, minmax(0, 1fr)) !important;
}
.grid-cols-none{
  grid-template-columns: none !important;
}
.grid-cols-subgrid{
  grid-template-columns: subgrid !important;
}
.flex-col{
  flex-direction: column !important;
}
.items-end{
  align-items: flex-end !important;
}
.items-center{
  align-items: center !important;
}
.justify-center{
  justify-content: center !important;
}
.justify-between{
  justify-content: space-between !important;
}
.gap-2{
  gap: 0.5rem !important;
}
.self-center{
  align-self: center !important;
}
.truncate{
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.rounded-full{
  border-radius: 9999px !important;
}
.rounded-lg{
  border-radius: 0.5rem !important;
}
.border{
  border-width: 1px !important;
}
.border-b-2{
  border-bottom-width: 2px !important;
}
.border-l{
  border-left-width: 1px !important;
}
.border-t-2{
  border-top-width: 2px !important;
}
.border-gray-900{
  --tw-border-opacity: 1 !important;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1)) !important;
}
.bg-gray-300{
  --tw-bg-opacity: 1 !important;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1)) !important;
}
.p-4{
  padding: 1rem !important;
}
.px-1{
  padding-left: 0.25rem !important;
  padding-right: 0.25rem !important;
}
.px-1\.5{
  padding-left: 0.375rem !important;
  padding-right: 0.375rem !important;
}
.px-10{
  padding-left: 2.5rem !important;
  padding-right: 2.5rem !important;
}
.px-11{
  padding-left: 2.75rem !important;
  padding-right: 2.75rem !important;
}
.px-12{
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}
.px-14{
  padding-left: 3.5rem !important;
  padding-right: 3.5rem !important;
}
.px-16{
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}
.px-2{
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}
.px-2\.5{
  padding-left: 0.625rem !important;
  padding-right: 0.625rem !important;
}
.px-20{
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}
.px-24{
  padding-left: 6rem !important;
  padding-right: 6rem !important;
}
.px-28{
  padding-left: 7rem !important;
  padding-right: 7rem !important;
}
.px-3{
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
}
.px-3\.5{
  padding-left: 0.875rem !important;
  padding-right: 0.875rem !important;
}
.px-32{
  padding-left: 8rem !important;
  padding-right: 8rem !important;
}
.px-36{
  padding-left: 9rem !important;
  padding-right: 9rem !important;
}
.px-4{
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}
.px-40{
  padding-left: 10rem !important;
  padding-right: 10rem !important;
}
.px-44{
  padding-left: 11rem !important;
  padding-right: 11rem !important;
}
.px-48{
  padding-left: 12rem !important;
  padding-right: 12rem !important;
}
.px-5{
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}
.px-52{
  padding-left: 13rem !important;
  padding-right: 13rem !important;
}
.px-56{
  padding-left: 14rem !important;
  padding-right: 14rem !important;
}
.px-6{
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}
.px-60{
  padding-left: 15rem !important;
  padding-right: 15rem !important;
}
.px-64{
  padding-left: 16rem !important;
  padding-right: 16rem !important;
}
.px-7{
  padding-left: 1.75rem !important;
  padding-right: 1.75rem !important;
}
.px-72{
  padding-left: 18rem !important;
  padding-right: 18rem !important;
}
.px-8{
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}
.px-80{
  padding-left: 20rem !important;
  padding-right: 20rem !important;
}
.py-1{
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}
.py-1\.5{
  padding-top: 0.375rem !important;
  padding-bottom: 0.375rem !important;
}
.py-10{
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}
.py-11{
  padding-top: 2.75rem !important;
  padding-bottom: 2.75rem !important;
}
.py-12{
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}
.py-14{
  padding-top: 3.5rem !important;
  padding-bottom: 3.5rem !important;
}
.py-16{
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}
.py-2{
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}
.py-2\.5{
  padding-top: 0.625rem !important;
  padding-bottom: 0.625rem !important;
}
.py-20{
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}
.py-24{
  padding-top: 6rem !important;
  padding-bottom: 6rem !important;
}
.py-28{
  padding-top: 7rem !important;
  padding-bottom: 7rem !important;
}
.py-3{
  padding-top: 0.75rem !important;
  padding-bottom: 0.75rem !important;
}
.py-3\.5{
  padding-top: 0.875rem !important;
  padding-bottom: 0.875rem !important;
}
.py-32{
  padding-top: 8rem !important;
  padding-bottom: 8rem !important;
}
.py-36{
  padding-top: 9rem !important;
  padding-bottom: 9rem !important;
}
.py-4{
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}
.py-40{
  padding-top: 10rem !important;
  padding-bottom: 10rem !important;
}
.py-44{
  padding-top: 11rem !important;
  padding-bottom: 11rem !important;
}
.py-48{
  padding-top: 12rem !important;
  padding-bottom: 12rem !important;
}
.py-5{
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}
.py-52{
  padding-top: 13rem !important;
  padding-bottom: 13rem !important;
}
.py-56{
  padding-top: 14rem !important;
  padding-bottom: 14rem !important;
}
.py-6{
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}
.py-60{
  padding-top: 15rem !important;
  padding-bottom: 15rem !important;
}
.py-64{
  padding-top: 16rem !important;
  padding-bottom: 16rem !important;
}
.py-7{
  padding-top: 1.75rem !important;
  padding-bottom: 1.75rem !important;
}
.py-72{
  padding-top: 18rem !important;
  padding-bottom: 18rem !important;
}
.py-8{
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}
.py-80{
  padding-top: 20rem !important;
  padding-bottom: 20rem !important;
}
.pb-1{
  padding-bottom: 0.25rem !important;
}
.pb-1\.5{
  padding-bottom: 0.375rem !important;
}
.pb-10{
  padding-bottom: 2.5rem !important;
}
.pb-11{
  padding-bottom: 2.75rem !important;
}
.pb-12{
  padding-bottom: 3rem !important;
}
.pb-14{
  padding-bottom: 3.5rem !important;
}
.pb-16{
  padding-bottom: 4rem !important;
}
.pb-2{
  padding-bottom: 0.5rem !important;
}
.pb-2\.5{
  padding-bottom: 0.625rem !important;
}
.pb-20{
  padding-bottom: 5rem !important;
}
.pb-24{
  padding-bottom: 6rem !important;
}
.pb-28{
  padding-bottom: 7rem !important;
}
.pb-3{
  padding-bottom: 0.75rem !important;
}
.pb-3\.5{
  padding-bottom: 0.875rem !important;
}
.pb-32{
  padding-bottom: 8rem !important;
}
.pb-36{
  padding-bottom: 9rem !important;
}
.pb-4{
  padding-bottom: 1rem !important;
}
.pb-40{
  padding-bottom: 10rem !important;
}
.pb-44{
  padding-bottom: 11rem !important;
}
.pb-48{
  padding-bottom: 12rem !important;
}
.pb-5{
  padding-bottom: 1.25rem !important;
}
.pb-52{
  padding-bottom: 13rem !important;
}
.pb-56{
  padding-bottom: 14rem !important;
}
.pb-6{
  padding-bottom: 1.5rem !important;
}
.pb-60{
  padding-bottom: 15rem !important;
}
.pb-64{
  padding-bottom: 16rem !important;
}
.pb-7{
  padding-bottom: 1.75rem !important;
}
.pb-72{
  padding-bottom: 18rem !important;
}
.pb-8{
  padding-bottom: 2rem !important;
}
.pb-80{
  padding-bottom: 20rem !important;
}
.pl-1{
  padding-left: 0.25rem !important;
}
.pl-1\.5{
  padding-left: 0.375rem !important;
}
.pl-10{
  padding-left: 2.5rem !important;
}
.pl-11{
  padding-left: 2.75rem !important;
}
.pl-12{
  padding-left: 3rem !important;
}
.pl-14{
  padding-left: 3.5rem !important;
}
.pl-16{
  padding-left: 4rem !important;
}
.pl-2{
  padding-left: 0.5rem !important;
}
.pl-2\.5{
  padding-left: 0.625rem !important;
}
.pl-20{
  padding-left: 5rem !important;
}
.pl-24{
  padding-left: 6rem !important;
}
.pl-28{
  padding-left: 7rem !important;
}
.pl-3{
  padding-left: 0.75rem !important;
}
.pl-3\.5{
  padding-left: 0.875rem !important;
}
.pl-32{
  padding-left: 8rem !important;
}
.pl-36{
  padding-left: 9rem !important;
}
.pl-4{
  padding-left: 1rem !important;
}
.pl-40{
  padding-left: 10rem !important;
}
.pl-44{
  padding-left: 11rem !important;
}
.pl-48{
  padding-left: 12rem !important;
}
.pl-5{
  padding-left: 1.25rem !important;
}
.pl-52{
  padding-left: 13rem !important;
}
.pl-56{
  padding-left: 14rem !important;
}
.pl-6{
  padding-left: 1.5rem !important;
}
.pl-60{
  padding-left: 15rem !important;
}
.pl-64{
  padding-left: 16rem !important;
}
.pl-7{
  padding-left: 1.75rem !important;
}
.pl-72{
  padding-left: 18rem !important;
}
.pl-8{
  padding-left: 2rem !important;
}
.pl-80{
  padding-left: 20rem !important;
}
.pr-1{
  padding-right: 0.25rem !important;
}
.pr-1\.5{
  padding-right: 0.375rem !important;
}
.pr-10{
  padding-right: 2.5rem !important;
}
.pr-11{
  padding-right: 2.75rem !important;
}
.pr-12{
  padding-right: 3rem !important;
}
.pr-14{
  padding-right: 3.5rem !important;
}
.pr-16{
  padding-right: 4rem !important;
}
.pr-2{
  padding-right: 0.5rem !important;
}
.pr-2\.5{
  padding-right: 0.625rem !important;
}
.pr-20{
  padding-right: 5rem !important;
}
.pr-24{
  padding-right: 6rem !important;
}
.pr-28{
  padding-right: 7rem !important;
}
.pr-3{
  padding-right: 0.75rem !important;
}
.pr-3\.5{
  padding-right: 0.875rem !important;
}
.pr-32{
  padding-right: 8rem !important;
}
.pr-36{
  padding-right: 9rem !important;
}
.pr-4{
  padding-right: 1rem !important;
}
.pr-40{
  padding-right: 10rem !important;
}
.pr-44{
  padding-right: 11rem !important;
}
.pr-48{
  padding-right: 12rem !important;
}
.pr-5{
  padding-right: 1.25rem !important;
}
.pr-52{
  padding-right: 13rem !important;
}
.pr-56{
  padding-right: 14rem !important;
}
.pr-6{
  padding-right: 1.5rem !important;
}
.pr-60{
  padding-right: 15rem !important;
}
.pr-64{
  padding-right: 16rem !important;
}
.pr-7{
  padding-right: 1.75rem !important;
}
.pr-72{
  padding-right: 18rem !important;
}
.pr-8{
  padding-right: 2rem !important;
}
.pr-80{
  padding-right: 20rem !important;
}
.pt-1{
  padding-top: 0.25rem !important;
}
.pt-1\.5{
  padding-top: 0.375rem !important;
}
.pt-10{
  padding-top: 2.5rem !important;
}
.pt-11{
  padding-top: 2.75rem !important;
}
.pt-12{
  padding-top: 3rem !important;
}
.pt-14{
  padding-top: 3.5rem !important;
}
.pt-16{
  padding-top: 4rem !important;
}
.pt-2{
  padding-top: 0.5rem !important;
}
.pt-2\.5{
  padding-top: 0.625rem !important;
}
.pt-20{
  padding-top: 5rem !important;
}
.pt-24{
  padding-top: 6rem !important;
}
.pt-28{
  padding-top: 7rem !important;
}
.pt-3{
  padding-top: 0.75rem !important;
}
.pt-3\.5{
  padding-top: 0.875rem !important;
}
.pt-32{
  padding-top: 8rem !important;
}
.pt-36{
  padding-top: 9rem !important;
}
.pt-4{
  padding-top: 1rem !important;
}
.pt-40{
  padding-top: 10rem !important;
}
.pt-44{
  padding-top: 11rem !important;
}
.pt-48{
  padding-top: 12rem !important;
}
.pt-5{
  padding-top: 1.25rem !important;
}
.pt-52{
  padding-top: 13rem !important;
}
.pt-56{
  padding-top: 14rem !important;
}
.pt-6{
  padding-top: 1.5rem !important;
}
.pt-60{
  padding-top: 15rem !important;
}
.pt-64{
  padding-top: 16rem !important;
}
.pt-7{
  padding-top: 1.75rem !important;
}
.pt-72{
  padding-top: 18rem !important;
}
.pt-8{
  padding-top: 2rem !important;
}
.pt-80{
  padding-top: 20rem !important;
}
.text-center{
  text-align: center !important;
}
.font-mono{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}
.font-bold{
  font-weight: 700 !important;
}
.italic{
  font-style: italic !important;
}
.invert{
  --tw-invert: invert(100%) !important;
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}
.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}
/**
 * Swiper 12.1.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 24, 2026
 */
:root{--swiper-theme-color:#007aff}
:host{display:block;margin-left:auto;margin-right:auto;position:relative;z-index:1}
.swiper{display:block;list-style:none;margin-left:auto;margin-right:auto;overflow:hidden;padding:0;position:relative;z-index:1}
.swiper-vertical>.swiper-wrapper{flex-direction:column}
.swiper-wrapper{box-sizing:initial;display:flex;height:100%;position:relative;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);width:100%;z-index:1}
.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}
.swiper-horizontal{touch-action:pan-y}
.swiper-vertical{touch-action:pan-x}
.swiper-slide{display:block;flex-shrink:0;height:100%;position:relative;transition-property:transform;width:100%}
.swiper-slide-invisible-blank{visibility:hidden}
.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}
.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}
.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}
.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}
.swiper-3d .swiper-wrapper{transform-style:preserve-3d}
.swiper-3d{perspective:1200px;}
.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}
.swiper-css-mode >.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;}
.swiper-css-mode >.swiper-wrapper::-webkit-scrollbar{display:none}
.swiper-css-mode >.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}
.swiper-css-mode.swiper-horizontal >.swiper-wrapper{scroll-snap-type:x mandatory}
.swiper-css-mode.swiper-horizontal >.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}
.swiper-css-mode.swiper-horizontal >.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}
.swiper-css-mode.swiper-vertical >.swiper-wrapper{scroll-snap-type:y mandatory}
.swiper-css-mode.swiper-vertical >.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}
.swiper-css-mode.swiper-vertical >.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}
.swiper-css-mode.swiper-free-mode >.swiper-wrapper{scroll-snap-type:none}
.swiper-css-mode.swiper-free-mode >.swiper-wrapper>.swiper-slide{scroll-snap-align:none}
.swiper-css-mode.swiper-centered >.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}
.swiper-css-mode.swiper-centered >.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}
.swiper-css-mode.swiper-centered.swiper-horizontal >.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}
.swiper-css-mode.swiper-centered.swiper-horizontal >.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}
.swiper-css-mode.swiper-centered.swiper-vertical >.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}
.swiper-css-mode.swiper-centered.swiper-vertical >.swiper-wrapper:before{height:var(--swiper-centered-offset-after);min-width:1px;width:100%}
.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}
.swiper-3d .swiper-slide-shadow{background:#00000026}
.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}
.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}
.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(0deg,#00000080,#0000)}
.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,#00000080,#0000)}
.swiper-lazy-preloader{border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top:4px solid #0000;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}
.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}
.swiper-lazy-preloader-black{--swiper-preloader-color:#000}
@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}
.swiper-virtual.swiper-css-mode .swiper-wrapper:after{content:"";left:0;pointer-events:none;position:absolute;top:0}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after{height:1px;width:var(--swiper-virtual-size)}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after{height:var(--swiper-virtual-size);width:1px}
:root{--swiper-navigation-size:44px}
.swiper-button-next,.swiper-button-prev{align-items:center;color:var(--swiper-navigation-color,var(--swiper-theme-color));cursor:pointer;display:flex;height:var(--swiper-navigation-size);justify-content:center;position:absolute;width:var(--swiper-navigation-size);z-index:10;}
.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{cursor:auto;opacity:.35;pointer-events:none}
.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{cursor:auto;opacity:0;pointer-events:none}
.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}
.swiper-button-next ::slotted(svg),.swiper-button-next svg,.swiper-button-prev ::slotted(svg),.swiper-button-prev svg{height:100%;-o-object-fit:contain;object-fit:contain;transform-origin:center;width:100%;fill:currentColor;pointer-events:none}
.swiper-button-lock{display:none}
.swiper-button-next,.swiper-button-prev{margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}
.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto;}
.swiper-button-prev .swiper-navigation-icon,.swiper-button-prev ::slotted(.swiper-navigation-icon){transform:rotate(180deg)}
.swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}
.swiper-horizontal .swiper-button-next,.swiper-horizontal .swiper-button-prev,.swiper-horizontal ~.swiper-button-next,.swiper-horizontal ~.swiper-button-prev{margin-left:0;margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}
.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal .swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}
.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev,.swiper-horizontal~.swiper-button-next,.swiper-horizontal .swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}
.swiper-horizontal.swiper-rtl .swiper-button-next .swiper-navigation-icon,.swiper-horizontal.swiper-rtl .swiper-button-next ::slotted(.swiper-navigation-icon),.swiper-horizontal.swiper-rtl~.swiper-button-next .swiper-navigation-icon,.swiper-horizontal.swiper-rtl~.swiper-button-next ::slotted(.swiper-navigation-icon),.swiper-horizontal~.swiper-button-prev .swiper-navigation-icon,.swiper-horizontal~.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-horizontal .swiper-button-prev .swiper-navigation-icon,.swiper-horizontal .swiper-button-prev ::slotted(.swiper-navigation-icon){transform:rotate(180deg)}
.swiper-horizontal.swiper-rtl .swiper-button-prev .swiper-navigation-icon,.swiper-horizontal.swiper-rtl .swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-horizontal.swiper-rtl~.swiper-button-prev .swiper-navigation-icon,.swiper-horizontal.swiper-rtl~.swiper-button-prev ::slotted(.swiper-navigation-icon){transform:rotate(0deg)}
.swiper-vertical .swiper-button-next,.swiper-vertical .swiper-button-prev,.swiper-vertical ~.swiper-button-next,.swiper-vertical ~.swiper-button-prev{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - var(--swiper-navigation-size)/2);margin-top:0;right:auto}
.swiper-vertical .swiper-button-prev,.swiper-vertical ~.swiper-button-prev{bottom:auto;top:var(--swiper-navigation-sides-offset,4px);}
.swiper-vertical .swiper-button-prev .swiper-navigation-icon,.swiper-vertical .swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-vertical ~.swiper-button-prev .swiper-navigation-icon,.swiper-vertical ~.swiper-button-prev ::slotted(.swiper-navigation-icon){transform:rotate(-90deg)}
.swiper-vertical .swiper-button-next,.swiper-vertical ~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto;}
.swiper-vertical .swiper-button-next .swiper-navigation-icon,.swiper-vertical .swiper-button-next ::slotted(.swiper-navigation-icon),.swiper-vertical ~.swiper-button-next .swiper-navigation-icon,.swiper-vertical ~.swiper-button-next ::slotted(.swiper-navigation-icon){transform:rotate(90deg)}
.swiper-pagination{position:absolute;text-align:center;transform:translateZ(0);transition:opacity .3s;z-index:10;}
.swiper-pagination.swiper-pagination-hidden{opacity:0}
.swiper-pagination.swiper-pagination-disabled,.swiper-pagination-disabled>.swiper-pagination{display:none!important}
.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);left:0;top:var(--swiper-pagination-top,auto);width:100%}
.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden;}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{position:relative;transform:scale(.33)}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}
.swiper-pagination-bullet{background:var(--swiper-pagination-bullet-inactive-color,#000);border-radius:var(--swiper-pagination-bullet-border-radius,50%);display:inline-block;height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));}
button.swiper-pagination-bullet{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;box-shadow:none;margin:0;padding:0}
.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}
.swiper-pagination-bullet:only-child{display:none!important}
.swiper-pagination-bullet-active{background:var(--swiper-pagination-color,var(--swiper-theme-color));opacity:var(--swiper-pagination-bullet-opacity,1)}
.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{left:var(--swiper-pagination-left,auto);right:var(--swiper-pagination-right,8px);top:50%;transform:translate3d(0,-50%,0);}
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{display:block;margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px;}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:transform .2s,top .2s}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}
.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap;}
.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,left .2s}
.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}
.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}
.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute;}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));height:100%;left:0;position:absolute;top:0;transform:scale(0);transform-origin:left top;width:100%}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}
.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-horizontal>.swiper-pagination-progressbar,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0;width:100%}
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar{height:100%;left:0;top:0;width:var(--swiper-pagination-progressbar-size,4px)}
.swiper-pagination-lock{display:none}
.swiper-scrollbar{background:var(--swiper-scrollbar-bg-color,#0000001a);border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;}
.swiper-scrollbar.swiper-scrollbar-disabled,.swiper-scrollbar-disabled>.swiper-scrollbar{display:none!important}
.swiper-scrollbar.swiper-scrollbar-horizontal,.swiper-horizontal>.swiper-scrollbar{bottom:var(--swiper-scrollbar-bottom,4px);height:var(--swiper-scrollbar-size,4px);left:var(--swiper-scrollbar-sides-offset,1%);position:absolute;top:var(--swiper-scrollbar-top,auto);width:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);z-index:50}
.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{height:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);left:var(--swiper-scrollbar-left,auto);position:absolute;right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);width:var(--swiper-scrollbar-size,4px);z-index:50}
.swiper-scrollbar-drag{background:var(--swiper-scrollbar-drag-bg-color,#00000080);border-radius:var(--swiper-scrollbar-border-radius,10px);height:100%;left:0;position:relative;top:0;width:100%}
.swiper-scrollbar-cursor-drag{cursor:move}
.swiper-scrollbar-lock{display:none}
.swiper-zoom-container{align-items:center;display:flex;height:100%;justify-content:center;text-align:center;width:100%;}
.swiper-zoom-container >canvas,.swiper-zoom-container >img,.swiper-zoom-container >svg{max-height:100%;max-width:100%;-o-object-fit:contain;object-fit:contain}
.swiper-slide-zoomed{cursor:move;touch-action:none}
.swiper .swiper-notification{left:0;opacity:0;pointer-events:none;position:absolute;top:0;z-index:-1000}
.swiper-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}
.swiper-grid>.swiper-wrapper{flex-wrap:wrap}
.swiper-grid-column>.swiper-wrapper{flex-direction:column;flex-wrap:wrap}
.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}
.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity;}
.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}
.swiper-fade .swiper-slide-active{pointer-events:auto;}
.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}
.swiper.swiper-cube{overflow:visible}
.swiper-cube .swiper-slide{backface-visibility:hidden;height:100%;pointer-events:none;transform-origin:0 0;visibility:hidden;width:100%;z-index:1;}
.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}
.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}
.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}
.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}
.swiper-cube .swiper-cube-shadow{bottom:0;height:100%;left:0;opacity:.6;position:absolute;width:100%;z-index:0;}
.swiper-cube .swiper-cube-shadow:before{background:#000;bottom:0;content:"";filter:blur(50px);left:0;position:absolute;right:0;top:0}
.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}
.swiper.swiper-flip{overflow:visible}
.swiper-flip .swiper-slide{backface-visibility:hidden;pointer-events:none;z-index:1;}
.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}
.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}
.swiper-creative .swiper-slide{backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}
.swiper.swiper-cards{overflow:visible}
.swiper-cards .swiper-slide{backface-visibility:hidden;overflow:hidden;transform-origin:center bottom}
/* A theme that can override color definitions */
body {
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  width: 100vw;
  min-height: 100dvh;
  background-color: var(--body-background);
  color: var(--color-grey-800);
  font-family: "Inter", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
body:has(.nav-container.active) {
    overflow: hidden;
  }
body main {
    flex-grow: 1;
    z-index: 0;
    padding: 1rem 0 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
body main:has(.banner) {
      padding-top: 0;
    }
body main > .button-row:last-child {
        width: 100%;
        margin-top: auto;
        align-self: flex-end;
      }
body main > .panel,
    body main > .callout {
      margin-bottom: 0;
    }
body main > form:only-child {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        flex-grow: 1;
        gap: 1rem;
      }
body main > form:only-child > .button-row {
          margin-top: auto;
        }
body:has(.feature-tour:popover-open) {
    overflow: hidden;
  }
::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 0.25s;
}
hr {
  margin: 1.5rem 0;
  border-color: var(--color-grey-200);
}
.circle-icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 2.5rem;
  color: var(--icon-color);
  background-color: var(--body-background);
  display: flex;
  align-items: center;
  justify-content: center;
}
.circle-icon.delete {
    color: var(--color-red-800);
    background-color: var(--color-red-50);
  }
.circle-icon.delete svg {
      color: inherit;
    }
.circle-icon.reversed {
    background-color: var(--icon-color);
    color: var(--body-background);
  }
.circle-icon.reversed svg {
      color: inherit;
    }
turbo-frame:not(:empty) {
    margin-bottom: 1rem;
    display: block;
  }
turbo-frame.button-row {
    display: flex;
  }
turbo-frame:last-child {
    margin-bottom: 0;
  }
.attached-image {
  width: 100%;
  border-radius: var(--border-radius);
  margin-bottom: 1.5rem;
  aspect-ratio: 16 / 9;
  -o-object-fit: cover;
     object-fit: cover;
}
*:focus {
    outline-color: var(--color-blue-700);
  }
.video-container {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-bottom: 2rem;
}
.tabs {
  list-style: none;
  margin: 1.5rem 0 0;
  display: grid;
  grid-auto-columns: minmax(0, 1fr);
  grid-auto-flow: column;
  gap: 1rem;
}
.tabs:only-child {
    margin-top: 0;
  }
.tabs .tab a {
      display: block;
      padding: 0.875rem 1rem;
      font-size: 0.875rem;
      line-height: 1;
      font-weight: 500;
      color: var(--header-foreground);
      background-color: var(--header-background);
      border: 1px solid var(--icon-color);
      border-radius: 2rem;
      text-align: center;
      text-decoration: none;
    }
.tabs .tab.active a {
        background-color: var(--header-accent);
        border-color: var(--header-accent);
        color: var(--header-background);
      }
.hide {
  display: none !important;
  height: 0;
  opacity: 0;
}
.hide-on-mobile {
  display: none;
}
@media (min-width: 782px) {
.hide-on-mobile {
    display: inline
}
.mobile-only {
    display: none
}
  }
.no-wrap {
  white-space: nowrap;
}
strong,
b {
  font-weight: 600;
}
/* HEADING STYLES */
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-bottom: 0.5rem;
  font-style: normal;
  font-weight: 500;
  color: var(--color-grey-900);
}
h1 i, .h1 i, h2 i, .h2 i, h3 i, .h3 i {
    color: var(--header-accent);
  }
h1,
.h1 {
  font-size: 2.125rem;
  line-height: 1.2;
  font-family: "ivyora-display", serif;
  text-wrap: balance;
  margin-bottom: 0.75rem;
}
h2,
.h2 {
  font-size: 1.375rem;
  font-family: "ivyora-display", serif;
  margin-bottom: 0.75rem;
}
h3,
.h3 {
  font-size: 1.125rem;
  line-height: 1.4;
  font-family: "inter", serif;
  font-weight: 600;
}
p {
  text-wrap: wrap;
  margin-bottom: 1.5rem;
}
p:last-child {
    margin-bottom: 0;
  }
p.error {
    --icon-color: var(--color-red-800);

    color: var(--color-red-800);
  }
@media (min-width: 782px) {
  p {
    text-wrap: pretty;
  }
}
.small {
  font-size: 0.85rem;
}
a {
  text-decoration: underline;
  color: inherit;
  cursor: pointer;
}
a:has(svg), p:has(svg), li:has(svg) {
    display: flex;
    align-items: center;
    gap: 0.75rem;
  }
a svg, p svg, li svg {
    color: var(--icon-color);
    flex-shrink: 0;
  }
address {
  font-style: normal;
}
body:not(.admin):not(.public) div.lexxy-content *, body:not(.admin):not(.public) .lexxy-editor__content * {
      font-family: "Inter", sans-serif;
      font-size: 16px;
      line-height: 1.5;
      color: var(--color-grey-800);
    }
body:not(.admin):not(.public) div.lexxy-content h1,
    body:not(.admin):not(.public) div.lexxy-content h2,
    body:not(.admin):not(.public) div.lexxy-content h3,
    body:not(.admin):not(.public) div.lexxy-content h4,
    body:not(.admin):not(.public) div.lexxy-content h5,
    body:not(.admin):not(.public) div.lexxy-content h6,
    body:not(.admin):not(.public) div.lexxy-content blockquote,
    body:not(.admin):not(.public) .lexxy-editor__content h1,
    body:not(.admin):not(.public) .lexxy-editor__content h2,
    body:not(.admin):not(.public) .lexxy-editor__content h3,
    body:not(.admin):not(.public) .lexxy-editor__content h4,
    body:not(.admin):not(.public) .lexxy-editor__content h5,
    body:not(.admin):not(.public) .lexxy-editor__content h6,
    body:not(.admin):not(.public) .lexxy-editor__content blockquote {
      font-weight: normal;
      font-style: normal;
      margin-bottom: 1.5rem;
      padding: 0;
      border: none;
    }
/* Some copy and pasting is resulting in inline styles making it to the DB.
       Currently can't repro, but hopefully this will stop it causing issues when it does happen. */
body:not(.admin):not(.public) div.lexxy-content [style], body:not(.admin):not(.public) .lexxy-editor__content [style] {
      background: none !important;
      color: inherit !important;
      font-weight: normal !important;
      font-style: normal !important;
    }
body:not(.admin):not(.public) div.lexxy-content p, body:not(.admin):not(.public) .lexxy-editor__content p {
      text-wrap: wrap;
      margin-bottom: 1.5rem;
    }
body:not(.admin):not(.public) div.lexxy-content p:last-child, body:not(.admin):not(.public) .lexxy-editor__content p:last-child {
        margin-bottom: 0;
      }
@media (min-width: 782px) {
      body:not(.admin):not(.public) div.lexxy-content p, body:not(.admin):not(.public) .lexxy-editor__content p {
        text-wrap: pretty;
      }
    }
body:not(.admin):not(.public) div.lexxy-content ul,
    body:not(.admin):not(.public) div.lexxy-content ol,
    body:not(.admin):not(.public) div.lexxy-content pre,
    body:not(.admin):not(.public) div.lexxy-content blockquote,
    body:not(.admin):not(.public) .lexxy-editor__content ul,
    body:not(.admin):not(.public) .lexxy-editor__content ol,
    body:not(.admin):not(.public) .lexxy-editor__content pre,
    body:not(.admin):not(.public) .lexxy-editor__content blockquote {
      margin-top: 0;
      margin-bottom: 1.5rem;
    }
/* All global variables thay may be useful to the project should go here, e.g. max-width for grid containers etc */
:root {
  --max-width: 1300px;
  --border-radius: 10px;
  --grid-gap: 3rem;

  --header-background: var(--color-cream-50);
  --header-foreground: var(--color-red-900);
  --header-text: var(--color-grey-800);
  --header-accent: var(--color-red-800);
  --header-button-color: var(--color-grey-900);
  --header-button-text-color: var(--color-white);

  --body-background: var(--color-cream-100);
  --body-accent: var(--color-cream-50);
  --label-color: var(--color-grey-900);
  --icon-color: var(--color-cream-800);
  --banner-color: var(--color-red-900);
  --callout-color: var(--color-cream-100);

  --font-family: "ivyora-display", serif;
}
.admin-header {
  width: 100vw;
  background-color: var(--header-background);
  color: var(--header-foreground);
  text-align: center;
}
.admin-header .main-content {
    position: relative;
    padding: 1rem 0;
    text-align: center;
    display: grid;
    gap: 1rem;
    grid-template-columns: 1fr;
  }
@media (min-width: 1025px) {
.admin-header .main-content {
      grid-template-columns: 1fr auto 1fr;
      align-items: center
  }
    }
.admin-header .accent {
    color: var(--header-accent);
  }
.admin-header .brand {
    margin: 0 auto;
    width: 94px;
    z-index: 2;
  }
@media (min-width: 1025px) {
.admin-header .brand {
      margin: 0 auto 0 0
  }
    }
.admin-header .brand svg {
      display: block;
      width: 100%;
      transition: color 0.3s;
      color: var(--header-accent);
    }
.admin-header .back {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 0;
  }
.admin-header .admin-menu ul {
      display: flex;
      flex-direction: row;
      justify-content: center;
      gap: 1rem;
      flex-wrap: nowrap;
      list-style: none;
      margin: 0;
    }
@media (min-width: 1025px) {
.admin-header .admin-menu ul {
        justify-content: flex-end
    }
      }
body.admin .button {
    width: auto;
  }
body.admin .button:not(.small) {
      padding: 1rem 1.5rem;
    }
body.admin .button-row {
    justify-content: space-between;
  }
body.admin .container {
    max-width: 1200px;
  }
body.admin ul li {
      margin-bottom: 0.5rem;
    }
body.admin .page-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
  }
body.admin .table-container table tr td:has(.swatch) {
            display: flex;
            align-items: center;
          }
body.admin .lexxy-content h1, body.admin .lexxy-editor__content h1 {
      font-size: 3rem;
    }
body.admin .lexxy-content h1,
    body.admin .lexxy-content h2,
    body.admin .lexxy-content h3,
    body.admin .lexxy-content h4,
    body.admin .lexxy-editor__content h1,
    body.admin .lexxy-editor__content h2,
    body.admin .lexxy-editor__content h3,
    body.admin .lexxy-editor__content h4 {
      margin-top: 2rem !important;
      line-height: 1.2;
      font-family: "ivyora-display", serif;
      color: var(--color-red-900);
      font-weight: 500;
    }
.celebration.events {
    --header-background: var(--color-red-900);
    --header-text: var(--color-white);
    --header-foreground: var(--color-white);
		--header-accent: var(--color-red-400);
    --header-button-color: var(--color-white);
    --header-button-text-color: var(--color-grey-900);
    --body-background: var(--color-red-50);
    --body-accent: var(--color-red-100);
    --label-color: var(--color-red-950);
    --icon-color: var(--color-red-800);
    --banner-color: var(--color-red-100);
    --callout-color: var(--color-red-100);
    --callout-text-color: var(--color-grey-800);
  }
.celebration.guest-list {
    --header-background: var(--color-blue-950);
    --header-text: var(--color-white);
    --header-foreground: var(--color-white);
    --header-accent: var(--color-blue-200);
    --header-button-color: var(--color-white);
    --header-button-text-color: var(--color-grey-900);
    --body-background: var(--color-blue-50);
    --body-accent: var(--color-blue-200);
    --label-color: var(--color-blue-950);
    --icon-color: var(--color-blue-700);
    --banner-color: var(--color-blue-200);
    --callout-color: var(--color-blue-200);
    --callout-text-color: var(--color-grey-800);
  }
.celebration.guest-list header .page-content:has(.guest-list-count){
          padding-bottom: 0;
        }
.celebration.guest-list header .page-content .guest-list-count {
          --icon-color: var(--color-grey-900);
          width: 100vw;
          position: relative;
          left: 50%;
          right: 50%;
          margin: 1.5rem -50vw 0;
          overflow-x: hidden;
          text-align: center;
          padding: 0.75rem;
          background-color: var(--banner-color);
          color: var(--color-grey-800);
          font-weight: 600;
        }
.celebration.guest-list header .page-content .guest-list-count p {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: .5rem;
            font-size: 0.875rem;
          }
.celebration.guest-list header .page-content .guest-list-count p span {
              line-height: 1.5rem;
              font-size: 1.375rem;
              color: var(--color-grey-900);
            }
.celebration.rsvp{
    --header-background: var(--color-green-900);
    --header-text: var(--color-white);
    --header-foreground: var(--color-white);
    --header-accent: var(--color-green-300);
    --header-button-color: var(--color-white);
    --header-button-text-color: var(--color-grey-900);
    --body-background: var(--color-green-100);
    --body-accent: var(--color-green-200);
    --label-color: var(--color-green-900);
    --icon-color: var(--color-green-700);
    --banner-color: var(--color-green-300);
    --callout-color: var(--color-green-300);
    --callout-text-color: var(--color-grey-800);
  }
.celebration.rsvp .banner.upgrade {
      --icon-color: var(--color-green-700);
      color: var(--color-grey-900);
    }
body.guest-rsvp,
body.contact-collector,
.theme-preview {
  /* only use these variables and adjust colours if there is a style attribute on the body tag */
  --header-text: var(--color-grey-900);
  --theme-background: var(--color-cream-50);
  --theme-heading: var(--color-red-900);
  color: var(--color-grey-800);
}
body.guest-rsvp[style], body.contact-collector[style], .theme-preview[style] {
    --header-background: var(--theme-background);
    --header-foreground: var(--theme-heading);
    --header-accent: var(--theme-heading);
    --body-background: var(--theme-background);
    --body-accent: var(--color-grey-800);
    --label-color: var(--color-grey-900);
    --icon-color: var(--color-grey-900);
  }
body.guest-rsvp[style] h1,
    body.guest-rsvp[style] .h1,
    body.guest-rsvp[style] .group-welcome,
    body.contact-collector[style] h1,
    body.contact-collector[style] .h1,
    body.contact-collector[style] .group-welcome,
    .theme-preview[style] h1,
    .theme-preview[style] .h1,
    .theme-preview[style] .group-welcome {
      color: var(--theme-heading);
      font-family: var(--theme-font, var(--font-family));
    }
body.guest-rsvp[style] .circle-icon, body.contact-collector[style] .circle-icon, .theme-preview[style] .circle-icon {
      background-color: var(--color-grey-50);
    }
body.guest-rsvp[style] a:not(.button), body.contact-collector[style] a:not(.button), .theme-preview[style] a:not(.button) {
        color: var(--body-accent);
      }
body.guest-rsvp.theme-dark[style], body.contact-collector.theme-dark[style], .theme-preview.theme-dark[style] {
      --body-accent: var(--color-white);
      --header-text: var(--color-white);
    }
body.guest-rsvp.theme-dark .feature-tour .button, body.contact-collector.theme-dark .feature-tour .button, .theme-preview.theme-dark .feature-tour .button {
        background-color: var(--color-white);
        color: var(--color-grey-900);
        border-color: var(--color-white);
      }
body.guest-rsvp.theme-dark .button, body.contact-collector.theme-dark .button, .theme-preview.theme-dark .button {
      background-color: var(--color-white);
      border: 1px solid var(--color-white);
      color: var(--color-grey-900);
    }
body.guest-rsvp.theme-dark .button.secondary, body.contact-collector.theme-dark .button.secondary, .theme-preview.theme-dark .button.secondary {
        background-color: transparent;
        color: var(--color-white);
        border-color: var(--color-white);
      }
body.guest-rsvp.theme-dark .button.secondary svg, body.contact-collector.theme-dark .button.secondary svg, .theme-preview.theme-dark .button.secondary svg {
          color: var(--color-white);
        }
body.guest-rsvp .main-header a svg, body.contact-collector .main-header a svg, .theme-preview .main-header a svg {
        color: var(--header-accent);
      }
body.guest-rsvp .main-header .page-content, body.contact-collector .main-header .page-content, .theme-preview .main-header .page-content {
      padding: 62px 0 1rem;
    }
body.guest-rsvp .main-header .page-content h2, body.contact-collector .main-header .page-content h2, .theme-preview .main-header .page-content h2 {
        color: var(--body-accent);
      }
body.guest-rsvp .main-header .page-content .lexxy-content, body.contact-collector .main-header .page-content .lexxy-content, .theme-preview .main-header .page-content .lexxy-content {
        margin-bottom: 1rem;
      }
body.guest-rsvp .main-header .page-content .lexxy-content *, body.contact-collector .main-header .page-content .lexxy-content *, .theme-preview .main-header .page-content .lexxy-content * {
          color: var(--body-accent);
        }
body.guest-rsvp main, body.contact-collector main, .theme-preview main {
    padding: 1rem 0 1.5rem;
  }
body.guest-rsvp .callout, body.contact-collector .callout, .theme-preview .callout {
    background-color: var(--color-white);
  }
body.guest-rsvp .panel a:not(.button), body.guest-rsvp .callout a:not(.button), body.guest-rsvp [popover] a:not(.button), body.contact-collector .panel a:not(.button), body.contact-collector .callout a:not(.button), body.contact-collector [popover] a:not(.button), .theme-preview .panel a:not(.button), .theme-preview .callout a:not(.button), .theme-preview [popover] a:not(.button) {
        color: var(--color-grey-900);
      }
body.guest-rsvp .panel .button, body.guest-rsvp .callout .button, body.guest-rsvp [popover] .button, body.contact-collector .panel .button, body.contact-collector .callout .button, body.contact-collector [popover] .button, .theme-preview .panel .button, .theme-preview .callout .button, .theme-preview [popover] .button {
      background-color: var(--color-grey-900);
      border: 1px solid var(--color-grey-900);
      color: var(--color-white);
    }
body.guest-rsvp .panel .button svg, body.guest-rsvp .callout .button svg, body.guest-rsvp [popover] .button svg, body.contact-collector .panel .button svg, body.contact-collector .callout .button svg, body.contact-collector [popover] .button svg, .theme-preview .panel .button svg, .theme-preview .callout .button svg, .theme-preview [popover] .button svg {
        color: var(--color-white);
      }
body.guest-rsvp .panel .button.link-style, body.guest-rsvp .callout .button.link-style, body.guest-rsvp [popover] .button.link-style, body.contact-collector .panel .button.link-style, body.contact-collector .callout .button.link-style, body.contact-collector [popover] .button.link-style, .theme-preview .panel .button.link-style, .theme-preview .callout .button.link-style, .theme-preview [popover] .button.link-style {
        background: none;
        border: none;
        color: var(--color-grey-900);
      }
body.guest-rsvp h2, body.contact-collector h2 {
    font-family: "Inter";
    font-size: 1.25rem;
  }
body.guest-rsvp h1,
  body.guest-rsvp .h1,
  body.contact-collector h1,
  body.contact-collector .h1 {
    font-size: 2.125rem;
    margin-bottom: 0.75rem;
  }
body.guest-rsvp .panel > header .panel-title, body.contact-collector .panel > header .panel-title {
      border-color: #e7e7e7;
    }
body.theme-preview main {
    padding-top: 0;
  }
body.onboarding .panel.selectable {
      display:flex;
      gap: 1rem;
      align-items: flex-start;
    }
body.onboarding .panel.selectable svg {
        color: var(--icon-color);
        width: 1.5rem;
      }
body.onboarding .panel.selectable.active {
        border-color: var(--color-grey-900);
      }
body.onboarding .panel.oauth .button_to + .button_to {
          margin-top: 1rem;
        }
body.upgrades:not(:has(.main-header .page-content)) {
    --body-background: var(--color-cream-50);
  }
body.upgrades:not(:has(.main-header .page-content)) main {
      display: flex;
      align-items: center;
      justify-content: center;
    }
footer.guest-footer {
  padding: 1.5rem 0;
  background-color: var(--color-grey-900);
  color: var(--color-white);
}
footer.guest-footer .brand {
    width: 5.75rem;
  }
footer.guest-footer .brand svg {
      color: var(--color-white);
    }
footer.guest-footer p {
    font-size: 1rem;
    margin: 1rem 0;
  }
footer.guest-footer p.copyright {
      margin: 1.5rem 0 0;
    }
footer.guest-footer p a {
      color: var(--color-white) !important;
    }
body.rsvp main > .guest-messaging {
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 1rem;
    }
body.rsvp main > .guest-messaging > .button-row {
        margin-top: auto;
      }
body.rsvp main .messaging-fields .events {
        margin-bottom: 1.5rem;
      }
@keyframes slide-down {
  0% {
    transform: translateY(-100%);
  }

  100% {
    transform: translateY(0);
  }
}
header.main-header {
  width: 100vw;
  background-color: var(--header-background);
  color: var(--header-text);
  position: relative;
}
header.main-header .main-content {
    position: absolute;
    width: 100vw;
    display: grid;
    grid-template-columns: 88px auto 88px;
    align-items: center;
    padding: 1rem;
    background-color: inherit;
  }
@media (min-width: 1025px) {
header.main-header .main-content {
      background-color: transparent
  }
    }
header.main-header .main-content:has(button),
    header.main-header .main-content:has(.back),
    header.main-header .main-content:has(.help-link) {
      padding: 1px 0.25rem;
    }
@media (min-width: 1025px) {
header.main-header .main-content:has(button),
    header.main-header .main-content:has(.back),
    header.main-header .main-content:has(.help-link) {
        padding: 0.5rem 1rem 1px
    }
      }
header.main-header .main-content > div:last-child {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 0;
      }
header.main-header .main-content.is-fixed {
      animation: slide-down 0.5s;
      width: 100vw;
      position: fixed;
      z-index: 3;
    }
@media (min-width: 1025px) {
header.main-header .main-content.is-fixed {
        position: absolute;
        animation: unset
    }
      }
header.main-header .main-content:has(.nav-container.active) {
      top: 0;
    }
header.main-header .page-content {
    padding: 62px 0 1.5rem;
    text-align: center;
  }
header.main-header .page-content p {
      margin-bottom: 0;
      text-wrap: pretty;
    }
header.main-header .page-content h2:last-child {
        margin-bottom: 0;
      }
header.main-header .page-content .celebration-image {
      margin: 0 auto 1rem;
      width: 80px;
      aspect-ratio: 1;
      -o-object-fit: cover;
         object-fit: cover;
      border-radius: 100%;
      background-color: var(--color-white);
      border: 4px solid var(--color-white);
    }
header.main-header .page-content .celebration-image.empty {
        background-color: var(--color-white);
        display: flex;
        align-items: center;
        justify-content: center;
      }
header.main-header .accent {
    color: var(--header-accent);
  }
header.main-header .brand {
    width: 94px;
    height: 14px;
    margin: 0 auto;
    z-index: 3;
  }
header.main-header .brand svg {
      display: block;
      width: 100%;
      transition: color 0.3s;
      color: var(--header-accent);
    }
header.main-header .back,
  header.main-header .help-link {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 0;
    width: 44px;
  }
header.main-header .back svg, header.main-header .help-link svg {
      color: var(--header-foreground);
    }
header.main-header .nav-container {
    z-index: 2;
    position: fixed;
    right: -100%;
    top: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100dvh;
    overflow-y: auto;
    padding: 5rem 2rem 2rem;
    background-color: var(--header-background);
    color: var(--header-text);
    transition: right 0.3s;
    text-align: left;
    visibility: hidden;
  }
@media (min-width: 1025px) {
header.main-header .nav-container {
      background-color: var(--color-cream-25);
      color: var(--color-grey-900);
      padding-top: 4rem
  }
    }
header.main-header .nav-container .callout {
      background-color: var(--callout-color);
      color: var(--callout-text-color);

      margin-top: 1.5rem;
    }
header.main-header .nav-container .callout h3 {
        color: inherit;
      }
header.main-header .nav-container .callout p {
        text-wrap: pretty;
      }
@media (min-width: 1025px) {
header.main-header .nav-container .callout {
        background-color: var(--color-cream-50)
    }
      }
header.main-header .nav-container.active {
      visibility: visible;
      right: 0;
    }
header.main-header .nav-container nav {
      width: 100%;
      --icon-color: var(--header-accent);
    }
@media (min-width: 1025px) {
header.main-header .nav-container nav {
        --icon-color: var(--color-cream-800)
    }
      }
header.main-header .nav-container nav ul {
        display: flex;
        flex-direction: column;
        list-style: none;
        margin: 0;
        gap: 0.75rem;
      }
header.main-header .nav-container nav ul hr {
          width: 2rem;
          margin: 1rem 0;
          border-color: var(--header-text);
        }
@media (min-width: 1025px) {
header.main-header .nav-container nav ul hr {
            border-color: var(--color-grey-300)
        }
          }
header.main-header .nav-container nav ul li:not(:has(a)) {
            margin-top: 1.5rem;
            color: var(--color-cream-700);
            font-weight: 600;
          }
header.main-header .nav-container nav ul li a {
            display: block;
            text-decoration: none;
            font-weight: 500;
            font-size: 1.125rem;
          }
@media (min-width: 1025px) {
header.main-header .nav-container nav ul li a {
              color: var(--color-grey-900) !important
          }
              header.main-header .nav-container nav ul li a:focus,
              header.main-header .nav-container nav ul li a:hover {
                outline: none;
                text-decoration: underline;
              }
header.main-header .nav-container {
      max-width: 340px
  }
            }
header.main-header .tour-toggle {
    z-index: 10;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    width: 44px;
    height: 44px;
    aspect-ratio: 1;

    pointer-events: all;
    color: var(--header-foreground);
  }
header.main-header .menu-toggle {
    z-index: 10;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    width: 44px;
    height: 44px;
    aspect-ratio: 1;

    pointer-events: all;
  }
header.main-header .menu-toggle .line {
      display: block;
      width: 1.5rem;
      height: 2px;
      border-radius: 1px;
      transition: background 0.3s;
      background: var(--header-foreground);
    }
@media (min-width: 1025px) {
        header.main-header .menu-toggle.active .line {
          background-color: var(--color-grey-900);
        }
      }
header.main-header .menu-toggle.active .line-1 {
        transform: translateY(0.35rem) translateX(0) rotate(45deg);
      }
header.main-header .menu-toggle.active .line-2 {
        opacity: 0;
      }
header.main-header .menu-toggle.active .line-3 {
        transform: translateY(-0.5rem) translateX(0) rotate(-45deg);
      }
header.main-header h1 {
    color: var(--header-foreground);
  }
.theme-picker {
  --header-background: var(--color-red-900);
  --header-text: var(--color-white);
  --body-background: var(--color-cream-100);
  --label-color: var(--color-grey-900);
  --icon-color: var(--color-cream-800);
}
.theme-picker .fonts .list .options .option {
          padding: 1rem 1rem 0.875rem;
          font-family: var(--theme-font);
          border-color: var(--color-grey-200);
        }
.theme-picker .fonts .list .options .option:has(input:checked) {
            border-color: var(--color-red-900);
            background-color: var(--color-white);
          }
.theme-picker .fonts .list .options .option label {
            font-size: 1.25rem;
            line-height: 1;
            justify-content: center;
          }
.theme-picker .fonts .list .options .option label::before {
              display: none;
            }
.banner {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
  margin-bottom: 1.5rem;
	overflow-x: hidden;
  background-color: var(--banner-color);
  color: var(--color-grey-900);
  padding: 1rem 0;
}
.banner .container {
    display: flex;
    align-items: center;
    gap: .5rem;
  }
.banner .container p {
      margin-bottom: 0;
      font-weight: 600;
    }
.banner .container .icon {
      color: var(--icon-color);
    }
.banner .container .button {
      margin-left: auto;
    }
.banner.upgrade {
    --icon-color: var(--color-red-500);
    color: var(--color-white);
    position: sticky;
    top: 0;
    left: 0;
    z-index: 3;
  }
.banner.upgrade .button {
      background-color: var(--color-white);
      border-color: var(--color-white);
      color: var(--color-grey-900);
    }
.callout {
  position: relative;
  padding: 1.5rem 1rem;
  border-radius: var(--border-radius);
  background-color: var(--body-accent);
}
.callout:first-child {
    margin-top: 0;
  }
.callout header {
    margin-bottom: 0.5rem;
  }
.callout header:has(svg) {
      display: flex;
      align-items: flex-start;
      gap: 0.5rem;
    }
.callout .callout-title {
    margin-bottom: 0;
    line-height: 1.5rem;
  }
.callout p {
    margin-bottom: 0;
    font-size: 0.875rem;
  }
.callout p + p {
      margin-top: 0.5rem;
    }
.callout svg {
    width: 1.5rem;
    height: 1.5rem;
    flex-shrink: 0;
    color: var(--icon-color);
  }
.callout .button {
    margin-top: 1rem;
    font-size: 0.875rem;
  }
.callout.promo {
    border: 2px solid #a08654;
    background-color: var(--color-cream-50);
  }
.callout.promo header svg {
        color: #a08654;
      }
.callout.impersonation {
    border-radius: 0;
  }
/* We want to make the impersonation banner fit with the colour coded sections */
body.celebration .callout.impersonation {
    background-color: var(--color-cream-100);
  }
body.celebration .callout.impersonation svg,
    body.celebration .callout.impersonation p {
      color: var(--color-red-900);
    }
body.celebration .callout.impersonation button {
      background-color: var(--color-red-900);
      border: 1px solid var(--color-red-900);
      color: var(--color-white);
    }
/* Style the guest area impersonation banner to match the theme */
body.guest-rsvp[style].theme-light .callout.impersonation, body.theme-preview[style].theme-light .callout.impersonation, body.contact-collector[style].theme-light .callout.impersonation {
        background-color: var(--theme-heading);
      }
body.guest-rsvp[style].theme-light .callout.impersonation svg,
        body.guest-rsvp[style].theme-light .callout.impersonation p,
        body.theme-preview[style].theme-light .callout.impersonation svg,
        body.theme-preview[style].theme-light .callout.impersonation p,
        body.contact-collector[style].theme-light .callout.impersonation svg,
        body.contact-collector[style].theme-light .callout.impersonation p {
          color: var(--color-white);
        }
body.guest-rsvp[style].theme-light .callout.impersonation button, body.theme-preview[style].theme-light .callout.impersonation button, body.contact-collector[style].theme-light .callout.impersonation button {
          background-color: var(--color-white);
          border: 1px solid var(--color-white);
          color: var(--color-black);
        }
body.guest-rsvp[style].theme-dark .callout.impersonation, body.theme-preview[style].theme-dark .callout.impersonation, body.contact-collector[style].theme-dark .callout.impersonation {
        background-color: var(--theme-heading);
      }
body.guest-rsvp[style].theme-dark .callout.impersonation svg,
        body.guest-rsvp[style].theme-dark .callout.impersonation p,
        body.theme-preview[style].theme-dark .callout.impersonation svg,
        body.theme-preview[style].theme-dark .callout.impersonation p,
        body.contact-collector[style].theme-dark .callout.impersonation svg,
        body.contact-collector[style].theme-dark .callout.impersonation p {
          color: var(--color-black);
        }
body.guest-rsvp[style].theme-dark .callout.impersonation button, body.theme-preview[style].theme-dark .callout.impersonation button, body.contact-collector[style].theme-dark .callout.impersonation button {
          background-color: var(--color-black);
          border: 1px solid var(--color-black);
          color: var(--color-white);
        }
.swiper {
  --swiper-pagination-bullet-width: 1rem;
  --swiper-pagination-bullet-height: 1rem;
  --swiper-pagination-bullet-horizontal-gap: 0.5rem;
  position: relative;
  max-width: 300px;
  text-align: center;
}
.swiper .swiper-pagination {
    position: relative;
    margin-top: 2rem;
  }
.swiper .swiper-pagination .swiper-pagination-bullet {
      background-color: var(--color-grey-300);
    }
.swiper .swiper-pagination .swiper-pagination-bullet-active {
      background-color: var(--color-cream-800);
    }
.swiper .swiper-slide img {
      margin: 0 auto 1rem;
      width: 8rem;
      height: auto;
      aspect-ratio: 1;
    }
.feature-tour .swiper {
    max-width: 100%;
  }
.carousel-field .carousel {
    overflow: hidden;
  }
.carousel-field .carousel .swiper {
      max-width: 100%;
    }
.carousel-field .carousel .swiper .swiper-wrapper {
        align-items: center;
      }
.carousel-field .carousel .swiper .swiper-slide {
        border-radius: 8px;
        overflow: hidden;
      }
.carousel-field .carousel .swiper .swiper-slide > * {
          width: 100%;
          aspect-ratio: 16 / 9;
          -o-object-fit: cover;
             object-fit: cover;
          -o-object-position: center;
             object-position: center;
        }
.carousel-field .carousel .swiper .swiper-slide .no-image {
          -o-object-position: center;
             object-position: center;
          background-color: var(--color-grey-50);
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          gap: 0.75rem;
          text-wrap: balance;
          padding: 2rem;
          text-align: center;
        }
.carousel-field .carousel .swiper .swiper-slide .no-image > svg {
            display: block;
          }
.carousel-field .carousel .swiper .swiper-slide img {
          width: 100%;
          margin: 0;
        }
.carousel-field .carousel .swiper .swiper-thumbs {
        margin-top: 1.5rem;
      }
.carousel-field .carousel .swiper .swiper-thumbs .swiper-slide {
          cursor: pointer;
          border-radius: 8px;
        }
.carousel-field .carousel .swiper .swiper-thumbs .swiper-slide > * {
            aspect-ratio: 1;
            -o-object-fit: cover;
               object-fit: cover;
          }
.carousel-field .carousel .swiper .swiper-thumbs .swiper-slide .no-image {
            padding: 0;
          }
.carousel-field .carousel .swiper .swiper-thumbs .swiper-slide-thumb-active {
          border: 1px solid var(--color-grey-900);
        }
.clipboard {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  margin-bottom: 1rem;
}
.clipboard .copy-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--field-padding);
    min-height: 46px;
    border: var(--input-border);
    border-radius: var(--border-radius);
    word-break: break-all;
  }
.clipboard .copy-link p {
      margin: 0;
    }
.clipboard .copy-link .slug {
      font-weight: bold;
      display: inline-block; /* prefer not to wrap */
    }
.clipboard .copy-link .icon {
      flex-shrink: 0;
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 0 0 0 .5rem;
    }
.clipboard .copy-link .icon svg {
        height: 1.5;
        color: var(--icon-color);
      }
.clipboard input {
    margin-bottom: 0;
    padding-right: 2.8rem !important;
  }
.clipboard input:focus {
      border-color: var(--color-grey-800);
    }
.clipboard button {
    color: var(--color-text);
    position: absolute;
    border: 0;
    background: transparent;
    right: 0;
    top: 0;
    margin: 0;
    height: 100%;
    aspect-ratio: 1/1;
  }
[data-controller~="cropo"] [data-cropo-target="button"] .replace {
      display: none;
    }
[data-controller~="cropo"] [data-cropo-target="removeButton"] {
    display: none;
  }
[data-controller~="cropo"] [data-cropo-target="zoom"] {
    display: none;
  }
/* can only zoom newly-selected images */
[data-controller~="cropo"].selected-image [data-cropo-target="zoom"] {
      display: block;
    }
[data-controller~="cropo"].selected-image .empty {
      display: none !important;
    }
[data-controller~="cropo"].existing-image [data-cropo-target="empty"], [data-controller~="cropo"].selected-image [data-cropo-target="empty"] {
      display: none !important;
    }
[data-controller~="cropo"].existing-image [data-cropo-target="button"] .add, [data-controller~="cropo"].selected-image [data-cropo-target="button"] .add {
        display: none;
      }
[data-controller~="cropo"].existing-image [data-cropo-target="button"] .replace, [data-controller~="cropo"].selected-image [data-cropo-target="button"] .replace {
        display: inline;
      }
[data-controller~="cropo"].existing-image [data-cropo-target="removeButton"], [data-controller~="cropo"].selected-image [data-cropo-target="removeButton"] {
      display: inline-block;
    }
:root {
  --input-border: 1px solid var(--color-grey-300);
  --field-padding: 0.75rem 1rem;
  --form-input-color: var(--color-grey-800);
  --field-spacing: 1rem;
}
form .field-group {
    margin-bottom: var(--field-spacing);
  }
form h2 {
    margin-bottom: 0.5rem;
  }
form .nested-fields > .panel {
      margin-bottom: 1rem;
    }
label,
legend {
  display: block;
  margin-bottom: 0.75rem;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 600;
  color: var(--label-color);
}
label:has(+ input[type="file"]), legend:has(+ input[type="file"]) {
    margin-bottom: 1rem;
  }
label:has(+ .hint), legend:has(+ .hint) {
    margin-bottom: 0.5rem;
  }
.hint,
.errors,
.success {
  display: block;
  font-size: 0.875rem;
  line-height: 1.5;
}
.hint:not(.preserve):first-letter, .errors:not(.preserve):first-letter, .success:not(.preserve):first-letter {
      text-transform: capitalize;
    }
.hint {
  margin-bottom: 0.75rem;
  color: var(--color-grey-600);
}
.hint:has(+ .options) {
    margin-bottom: 1rem;
  }
.errors {
  margin-top: 0.25rem;
  color: var(--color-red-800);
}
.success {
  margin-top: 0.25rem;
  color: var(--color-green-700);
}
/* GENERIC FIELD  STYLES */
input,
select,
textarea {
  display: block;
  width: 100%;
  padding: var(--field-padding);
  border: var(--input-border);
  border-radius: var(--border-radius);
  outline: none;
  background-color: var(--color-white);
  color: var(--form-input-color);
  font-size: 1rem;
  line-height: 1.4;
}
input:focus, select:focus, textarea:focus {
    border-color: var(--color-grey-900);
  }
input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
    color: var(--color-grey-400);
  }
input::placeholder, select::placeholder, textarea::placeholder {
    color: var(--color-grey-400);
  }
input:disabled, select:disabled, textarea:disabled {
    border-color: var(--color-grey-200);
    background-color: var(--color-grey-50);
    pointer-events: none;
  }
input:disabled + label, select:disabled + label, textarea:disabled + label {
      pointer-events: none;
    }
input[type="date"] {
  -webkit-appearance: none;
  line-height: 1;
  text-align: left;
  font-family: "Inter", sans-serif !important;
  min-height: 46px;
}
input[type="date"] ::-webkit-datetime-edit {
    display: block;
  }
input[type="date"] ::-webkit-inner-spin-button,
  input[type="date"] ::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none;
  }
input::-webkit-date-time-edit {
  font-family: "Inter", sans-serif !important;
  text-align: left !important;
  display: block;
  font-size: 1rem;
  line-height: 1.4;
}
input::-webkit-date-and-time-value {
  text-align: left !important;
  display: block;
  font-size: 1rem;
  line-height: 1.4;
}
textarea {
  min-height: 7.5rem;
}
input[type="submit"] {
  background-color: var(--color-grey-900);
  border-radius: 3rem;
  color: var(--color-white);
  font-weight: 500;
  line-height: 1;
}
/* SPECIFIC FIELD TYPE STYLES */
.field {
  margin-bottom: var(--field-spacing);
}
.field:has(.required-field) label:not(.button):after {
          content: "*";
          display: inline-block;
          margin-left: 2px;
        }
.field:has(+ hr) {
    margin-bottom: 0;
  }
.field:last-of-type {
    margin-bottom: 0;
  }
.field:has(.errors) {
    --input-border: 1px solid var(--color-red-800);
    --label-color: var(--color-red-800);
  }
.field .button svg {
      color: var(--color-grey-900);
    }
/* SELECT FIELDS */
.field.select .wrapper, .field.sort .wrapper, .field.filter .wrapper {
      position: relative;
      display: block;
      /* margin-bottom: var(--field-spacing); */
      overflow: hidden;
    }
.field.select .wrapper select, .field.sort .wrapper select, .field.filter .wrapper select {
        -webkit-appearance: none;
        width: 100%;
        padding: var(--field-padding);
        padding-right: 36px;
        margin-bottom: 0;
        border: var(--input-border);
        border-radius: var(--border-radius);

        background-color: var(--color-white);
      }
.field.select .wrapper select:focus, .field.sort .wrapper select:focus, .field.filter .wrapper select:focus {
          background-color: var(--color-white);
        }
.field.select .wrapper:after, .field.sort .wrapper:after, .field.filter .wrapper:after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        width: 36px;
        height: 100%;
        background-image: url("/assets/form-icons/select-c20334ce.svg");
        background-size: 0.75rem;
        background-repeat: no-repeat;
        background-position: center center;
        pointer-events: none;
      }
/* SORT */
.field.sort .wrapper:after {
        background-image: url("/assets/form-icons/sort-b3118f6d.svg");
      }
/* FILTER */
.field.filter .wrapper:after {
        background-image: url("/assets/form-icons/filter-1e71bda9.svg");
      }
/* PASSWORD */
.field.password .wrapper {
      position: relative;

      display: flex;
      align-items: stretch;
      width: 100%;
    }
.field.password .wrapper input {
        margin-bottom: 0;
      }
.field.password .wrapper .button {
        position: absolute;
        right: 0;
        top: 0;
        width: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        border: 0;
        margin: 0;
        background: transparent;
        aspect-ratio: 1 / 1;

        color: var(--color-text);
      }
.field.password .wrapper .input-group-field {
        padding-right: 4rem;
      }
/* FILE */
.field.file .svg-inline--fa {
      margin-right: 0.5rem;
    }
.field.file input {
      position: relative;

      max-width: 100%;
      padding: 0;
      border: 0;
      margin-top: 1rem;

      background-color: transparent;
    }
.field.file input::file-selector-button {
        padding: 12px 30px;
        margin-right: 1rem;
        border-radius: var(--border-radius);
        border: var(--input-border);

        background-color: var(--color-grey-900);
        color: var(--color-white);
        font-size: 16px;
        line-height: 1.667;
        font-weight: 700;
        cursor: pointer;
      }
.field.file input::file-selector-button:focus,
        .field.file input::file-selector-button:hover {
          background-color: var(--color-grey-900);
          border-color: var(--color-grey-900);
          color: var(--color-white);
          outline: none;
        }
/* SEARCH */
.field.search .wrapper {
      position: relative;
      display: flex;
      align-items: stretch;
    }
.field.search .wrapper input {
        padding-right: 2.8rem;
        margin-bottom: 0;
        border-radius: 3rem !important;
      }
.field.search .wrapper .button {
        position: absolute;
        right: 0;
        top: 0;
        width: auto;
        min-width: 44px;
        height: 100%;
        padding: 0.85rem 1rem 0.75rem;
        margin: 0;
        border: 0;
        background: transparent;
        color: inherit;
        line-height: 1.7;
      }
/* COLOR */
.field.color input {
      width: 100px;
      height: 50px;
      padding: 5px;
    }
/* CLIPBOARD */
.field.clipboard {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    margin-bottom: 1rem;
  }
.field.clipboard input {
      padding-right: 2.8rem !important;
      margin-bottom: 0;
    }
.field.clipboard input:focus {
        border-color: var(--color-white);
      }
.field.clipboard button {
      position: absolute;
      right: 0;
      top: 0;

      height: 100%;
      border: 0;
      margin: 0;
      aspect-ratio: 1/1;
      background: transparent;

      color: var(--color-text);
    }
/*  AVATAR */
.field.avatar {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
  }
.field.avatar .avatar {
      width: 100px;
      height: 100px;
      flex-shrink: 0;
    }
.field.avatar .field {
      margin-bottom: 0;
    }
.field.radio_button input[type="radio"],
    .field.radio_button input[type="checkbox"],
    .field.radio_buttons input[type="radio"],
    .field.radio_buttons input[type="checkbox"],
    .field.checkbox input[type="radio"],
    .field.checkbox input[type="checkbox"],
    .field.check_boxes input[type="radio"],
    .field.check_boxes input[type="checkbox"] {
      position: absolute;
      overflow: hidden;
      padding: 0;
      width: 1px !important;
      height: 1px;
      border: 0;
      clip: rect(0 0 0 0);
      margin: -1px;
    }
.field.radio_button input[type="radio"] + label, .field.radio_button input[type="checkbox"] + label, .field.radio_buttons input[type="radio"] + label, .field.radio_buttons input[type="checkbox"] + label, .field.checkbox input[type="radio"] + label, .field.checkbox input[type="checkbox"] + label, .field.check_boxes input[type="radio"] + label, .field.check_boxes input[type="checkbox"] + label {
        display: inline-flex !important;
        margin-left: 0;
        font-weight: 400;
        line-height: 1.3;
        cursor: pointer;
      }
.field.radio_button input[type="radio"] + label:before, .field.radio_button input[type="checkbox"] + label:before, .field.radio_buttons input[type="radio"] + label:before, .field.radio_buttons input[type="checkbox"] + label:before, .field.checkbox input[type="radio"] + label:before, .field.checkbox input[type="checkbox"] + label:before, .field.check_boxes input[type="radio"] + label:before, .field.check_boxes input[type="checkbox"] + label:before {
          content: "";
          display: inline-block;
          width: 1.25rem;
          height: 1.25rem;
          flex-shrink: 0;
          border: 2px solid var(--color-grey-600);
          border-radius: 1rem;
          margin-right: 0.5rem;
        }
.field.radio_button input[type="radio"]:checked + label:before, .field.radio_button input[type="checkbox"]:checked + label:before, .field.radio_buttons input[type="radio"]:checked + label:before, .field.radio_buttons input[type="checkbox"]:checked + label:before, .field.checkbox input[type="radio"]:checked + label:before, .field.checkbox input[type="checkbox"]:checked + label:before, .field.check_boxes input[type="radio"]:checked + label:before, .field.check_boxes input[type="checkbox"]:checked + label:before {
            border-color: var(--color-grey-900);
            background: url("/assets/form-icons/radio-d0a97ef3.svg") no-repeat center center;
            background-size: 1.25rem;
          }
.field.radio_button.column .options, .field.radio_buttons.column .options, .field.checkbox.column .options, .field.check_boxes.column .options {
        display: inline-block;
      }
.field.radio_button.column .options .option ~ .option, .field.radio_buttons.column .options .option ~ .option, .field.checkbox.column .options .option ~ .option, .field.check_boxes.column .options .option ~ .option {
            margin-top: 0.5rem;
          }
.field.radio_button.list, .field.radio_buttons.list, .field.checkbox.list, .field.check_boxes.list {
      display: block;
    }
.field.radio_button.list .options, .field.radio_buttons.list .options, .field.checkbox.list .options, .field.check_boxes.list .options {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
      }
.field.radio_button.list .option, .field.radio_buttons.list .option, .field.checkbox.list .option, .field.check_boxes.list .option {
        border: 1px solid var(--color-grey-300);
        border-radius: var(--border-radius);
        padding: 0.875rem 1rem;
      }
.field.radio_button.list .option label, .field.radio_buttons.list .option label, .field.checkbox.list .option label, .field.check_boxes.list .option label {
          width: 100%;
          flex-direction: row-reverse;
          justify-content: space-between;
          margin: 0;
          font-weight: 500;
          font-size: 1rem;
        }
.field.radio_button.list .option:has(input:checked), .field.radio_buttons.list .option:has(input:checked), .field.checkbox.list .option:has(input:checked), .field.check_boxes.list .option:has(input:checked) {
          background-color: var(--body-background);
          border-color: var(--icon-color);
        }
.field.radio_button,
  .field.radio_buttons {
    display: flex;
    flex-wrap: wrap;
  }
.field.radio_button label.radio_buttons, .field.radio_buttons label.radio_buttons {
      width: 100%;
      margin-bottom: 0.5rem;
    }
.field.radio_button .options label:after, .field.radio_buttons .options label:after {
          display: none;
        }
.field.checkbox input[type="checkbox"] + label button, .field.check_boxes input[type="checkbox"] + label button {
          display: inline-block;
          margin-left: 0.5rem;
          text-decoration: underline;
        }
.field.checkbox input[type="checkbox"] + label:before, .field.check_boxes input[type="checkbox"] + label:before {
          display: inline-block;
          border-radius: 2px;
          margin-right: 0.5rem;
        }
.field.checkbox input[type="checkbox"]:checked + label:before, .field.check_boxes input[type="checkbox"]:checked + label:before {
            border-radius: 2px;
            background: var(--color-grey-900) url("/assets/form-icons/checkbox-803b6f2e.svg")
              no-repeat center center;
          }
.field.checkbox input[type="checkbox"]:disabled + label:before, .field.check_boxes input[type="checkbox"]:disabled + label:before {
            opacity: 0.25;
          }
.field.check_boxes .options {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }
.field.filters .options {
      display: flex;
      flex-direction: row;
      gap: 0.75rem;
    }
.field.filters .options input {
        position: absolute;
        overflow: hidden;
        padding: 0;
        width: 1px !important;
        height: 1px;
        border: 0;
        clip: rect(0 0 0 0);
        margin: -1px;
      }
.field.filters .options input + label {
          padding: 0.75rem 1rem;
          margin: 0;
          border-radius: 2rem;
          border: 1px solid var(--color-grey-900);
          color: var(--color-grey-900);
          background-color: var(--color-white);
          font-size: 14px;
          line-height: 1;
          font-weight: 500;
        }
.field.filters .options input + label:before {
            display: none;
          }
.field.filters .options input:checked + label {
            background-color: var(--color-grey-900);
            color: var(--color-white);
          }
.field.swatches .options {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 1rem;
    }
@media (min-width: 782px) {
.field.swatches .options {
        grid-template-columns: repeat(12, 1fr)
    }
      }
.field.swatches .options .option {
        width: 100%;
        height: auto;
        aspect-ratio: 1;
        border-radius: 100%;
        overflow: hidden;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        transform: rotate(45deg);
        border: 1px solid var(--color-grey-200);
        text-indent: -9999px;
        cursor: pointer;
      }
.field.swatches .options .option:before,
        .field.swatches .options .option:after {
          display: block;
          content: "";
        }
.field.swatches .options .option:before {
          background-color: var(--theme-background);
        }
.field.swatches .options .option:after {
          background-color: var(--theme-heading);
        }
.field.swatches .options input {
        position: absolute;
        overflow: hidden;
        padding: 0;
        width: 1px !important;
        height: 1px;
        border: 0;
        clip: rect(0 0 0 0);
        margin: -1px;
      }
.field.swatches .options input + label {
          opacity: 0;
          position: absolute;
          top: 0;
          left: 0;
          bottom: 0;
          right: 0;
        }
.field.swatches .options input + label:before {
            display: none;
          }
.field.swatches .options input:checked + label {
            background-color: var(--color-grey-900);
            color: var(--color-white);
          }
.field.tabs {
    display: block;
    margin-bottom: 1.5rem;
  }
.field.tabs input[type="radio"] {
      position: absolute;
      overflow: hidden;
      padding: 0;
      width: 1px !important;
      height: 1px;
      border: 0;
      clip: rect(0 0 0 0);
      margin: -1px;
    }
.field.tabs .options {
      width: 100%;
      display: grid;
      grid-auto-columns: minmax(0, 1fr);
      grid-auto-flow: column;
      gap: 0;
      text-align: center;
      overflow: hidden;
    }
.field.tabs .options .option label {
          border: 1px solid var(--header-background);
          padding: 0.75rem 1rem;
          font-size: 14px;
          line-height: 1;
          font-weight: 500;
          margin: 0;
          cursor: pointer;
        }
.field.tabs .options .option:first-of-type label {
            border-radius: 2rem 0 0 2rem;
            overflow: hidden;
            border-right: 0;
          }
.field.tabs .options .option:last-of-type label {
            border-radius: 0 2rem 2rem 0;
            border-left: 0;
            overflow: hidden;
          }
.field.tabs .options .option input:checked + label {
              background-color: var(--header-background);
              color: var(--header-text);
            }
/* TOGGLE */
.field.toggle {
    display: block !important;
  }
.field.toggle .hint {
      margin-top: 0.5rem;
    }
.field.toggle:has(input:disabled) {
      opacity: 0.5;
    }
.field.toggle label {
      position: relative;
      display: flex;
      gap: 1rem;
      flex-direction: row-reverse;
      justify-content: space-between;
      align-items: flex-start;
      cursor: pointer;
      font-weight: 600;
      line-height: 1.5rem;
      margin: 0;
    }
.field.toggle label:before,
      .field.toggle label:after {
        content: "";
      }
.field.toggle label:before {
        position: relative;
        width: 2.375rem;
        height: 1.5rem;
        vertical-align: middle;
        background: var(--color-white);
        border: 1px solid var(--color-grey-900);
        border-radius: 1.5rem;
        transition: background 0.25s;
        flex-shrink: 0;
      }
.field.toggle label:after {
        position: absolute;
        top: 0.25rem;
        right: 1.125rem;
        display: block;
        width: 1rem;
        height: 1rem;
        background: var(--color-grey-900);
        border-radius: 50%;
        transition:
          left 0.25s,
          right 0.25s;
        flex-shrink: 0;
      }
.field.toggle input {
      position: absolute;
      overflow: hidden;
      padding: 0;
      width: 1px !important;
      height: 1px;
      border: 0;
      clip: rect(0 0 0 0);
      margin: -1px;
    }
.field.toggle input:checked + label:before {
            background: var(--color-green-700);
            border-color: var(--color-green-700);
          }
.field.toggle input:checked + label:after {
            right: 0.25rem;
            background-color: var(--color-white);
          }
.field.image_upload .hint {
      margin-bottom: 1rem;
    }
.field.image_upload .delete {
      text-align: center;
      margin: 0 auto;
    }
.field.image_upload .canvas-wrapper {
      display: grid;
      grid-template-areas: "stack";
      margin-bottom: 1rem;
    }
.field.image_upload .canvas-wrapper > * {
        grid-area: stack;
      }
.field.image_upload .canvas-wrapper canvas {
        width: 200%;
        transform: scale(0.5) translate(-50%, 0);
        margin-top: -28%;
        margin-bottom: -28%;
        transform-origin: center center;
        touch-action: none;
        aspect-ratio: 16 / 9;
        border-radius: var(--border-radius);
        background-color: var(--color-grey-50);
      }
.field.image_upload .canvas-wrapper .empty {
        display: grid;
        grid-template-areas: "stack";
        cursor: pointer;
        z-index: 1;
      }
.field.image_upload .canvas-wrapper .circle-icon {
        z-index: 1;
        background-color: var(--icon-color);
        place-self: center center;
      }
.field.image_upload .canvas-wrapper .circle-icon svg {
          color: var(--color-white);
        }
.field.image_upload input[type="range"] {
      -webkit-appearance: none;
      -moz-appearance: none;
           appearance: none;
      width: 100%;
      padding: 0;
      margin: 25px 0;
      accent-color: var(--color-grey-900);
      cursor: pointer;
      border-radius: 6px;
      border: none;
    }
.field.image_upload input[type="range"]::-webkit-slider-runnable-track {
        -webkit-appearance: none;
        height: 6px;
        background: var(--color-grey-200);
        border: 0;
        border-radius: 6px;
        outline: none;
        box-shadow: none;
      }
.field.image_upload input[type="range"]::-moz-range-track {
        height: 6px;
        border: 0;
        border-radius: 6px;
        outline: none;
        background: var(--color-grey-200);
      }
/* Thumb: webkit */
.field.image_upload input[type="range"]::-webkit-slider-thumb {
        -webkit-appearance: none; /* Override default look */
        appearance: none;
        margin-top: -9px; /* Centers thumb on the track */
        background-color: var(--color-grey-800);
        height: 1.5rem;
        width: 1.5rem;
        border-radius: 1.5rem;
      }
/* Thumb: firefox */
.field.image_upload input[type="range"]::-moz-range-thumb {
        border: none;
        background-color: var(--color-grey-800);
        height: 1.5rem;
        width: 1.5rem;
        border-radius: 1.5rem;
      }
.field.image_upload input[type="range"]:focus::-moz-range-thumb {
          background: var(--color-grey-900);
        }
.field.image_upload input[type="range"]:focus::-webkit-slider-thumb {
          background: var(--color-grey-900);
        }
.field.image_upload:has(.celebration-image) canvas {
        width: 320px;
        height: 320px;
        border-radius: 100%;
        margin: -40px auto;
        aspect-ratio: 1;
        image-rendering: crisp-edges;
        transform: scale(0.75) translate(0);
      }
.field.custom_link .input {
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      border: var(--input-border);
      border-radius: var(--border-radius);
      padding: var(--field-padding);
      word-break: break-all;
    }
.field.custom_link .input textarea.slug, .field.custom_link .input input[type="text"].slug {
          flex-grow: 1;
          border: none;
          border-radius: 0;
          font-weight: bold;
          min-height: unset;
          padding: 0;
          resize: none;
          width: auto;
          max-width: 100%;
        }
/* FIELDSETS */
.select-guests {
  padding: 0;
  border-radius: var(--border-radius);
  border: 1px solid var(--color-grey-300);
  background-color: var(--color-white);
  overflow: hidden;
  margin: 1rem 0;
}
.select-guests label {
    margin: 0;
  }
.select-guests .field {
    margin-bottom: 0;
  }
.select-guests .field .options {
      gap: 0;
    }
.select-guests .field.checkbox,
    .select-guests .field.radio_button {
      margin-bottom: 0;
    }
.select-guests .field.checkbox input[type="checkbox"] + label, .select-guests .field.checkbox input[type="radio"] + label, .select-guests .field.radio_button input[type="checkbox"] + label, .select-guests .field.radio_button input[type="radio"] + label {
          display: flex !important;
          margin: 0;
          padding: 1rem;
        }
.select-guests header {
    background-color: var(--color-grey-50);
    cursor: pointer;
  }
.select-guests ul {
    list-style: none;
    margin: 0;
    padding: 0 1rem;
  }
.select-guests ul li {
      padding: 0.75rem 0;
      font-weight: normal;
      line-height: 1;
    }
.select-guests ul li:first-of-type {
        padding-top: 1rem;
      }
.select-guests ul li:last-of-type {
        padding-bottom: 1rem;
      }
.select-guests .options {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0 1rem;
  }
.select-guests .options .option {
      width: 100%;
    }
.select-guests .options .option label {
        padding: 0.75rem 0;
        width: 100%;
      }
.select-guests .options .option:first-of-type label {
          padding-top: 1rem;
        }
.select-guests .options .option:last-of-type label {
          padding-bottom: 1rem;
        }
.select-guests:has(header input:checked) {
    border-color: var(--icon-color);
  }
.select-guests:has(header input:checked) header {
      background-color: var(--body-accent);
    }
/* RADIO BUTTONS AND CHECKBOXES */
.options {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.options label {
    margin-bottom: 0;
  }
/* BUTTONS */
.button-row {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  justify-content: center;
}
.button-row:not(:first-child) {
    margin-top: 1.5rem;
  }
.button-row .button {
    margin: 0;
  }
.button-row .button.link-style {
      text-align: center;
    }
.button-row + .panel {
    margin-top: 1.5rem;
  }
.button-row .delete {
    margin-top: 0;
  }
.button-row form {
    width: 100%;
  }
.actions {
  margin-top: 1rem;
  text-align: center;
}
.actions p {
    margin-bottom: 0.5rem;
  }
.actions p:last-child {
      margin-bottom: 0;
    }
a.delete,
button.delete {
  width: 100%;
  font-weight: 400;
  text-decoration: underline;
  text-align: center;
  color: var(--color-red-800);
  margin-top: 1rem;
}
a.delete svg, button.delete svg {
    pointer-events: none;
  }
.event-guests .field.check_boxes .options label {
          width: 100%;
          display: flex;
          flex-direction: row-reverse;
          justify-content: space-between;
          margin: 0;
        }
.event-guests .field.check_boxes .options label:before {
            width: 2rem;
            height: 2rem;
            border-radius: 2rem;
            border: 1px solid var(--color-grey-900);
            background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxOCAxOCI+PHBhdGggZmlsbD0iIzJDMkMyQyIgc3Ryb2tlPSIjMkMyQzJDIiBzdHJva2Utd2lkdGg9Ii4yIiBkPSJNMS40MjMgOC4yNTVBLjc0OC43NDggMCAwIDAgLjY3OSA5YS43NDYuNzQ2IDAgMCAwIC43NDQuNzQ0aDYuODMydjYuODMyYS43NDMuNzQzIDAgMCAwIDEuNDg0IDBWOS43NDJoNi44MzZhLjc0My43NDMgMCAwIDAgMC0xLjQ4NEg5Ljc0MlYxLjQyNGEuNzQzLjc0MyAwIDAgMC0xLjQ4NCAwdjYuODMxSDEuNDIzWiIvPjwvc3ZnPg==");
            background-size: 1rem;
            background-repeat: no-repeat;
            background-position: center center;
          }
.event-guests .field.check_boxes .options input:checked + label:before {
                background-color: var(--color-grey-900);
                background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxOCAxNCI+PHBhdGggc3Ryb2tlPSIjZmZmIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMS43NSIgZD0ibTE3IDEuNS0xMSAxMS01LTUiLz48L3N2Zz4=");
                background-size: 1rem;
                background-repeat: no-repeat;
                background-position: center center;
              }
.dish-fields .wrapper {
    position: relative;
    margin-bottom: var(--field-spacing);
  }
.dish-fields .wrapper:has(.delete) input {
        padding-right: 50px;
      }
.dish-fields .wrapper a.delete {
      position: absolute;
      right: 0;
      bottom: 0;
      width: auto;
      aspect-ratio: 1;
      height: 48px;
      margin: 0;
      border: 0;
      background: transparent;
      color: inherit;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
.rsvp-fields {
  flex-shrink: 0;
}
.rsvp-fields .collection .options {
      gap: 0.75rem;
    }
.rsvp-fields .collection .options .option input + label {
            width: 2.5rem;
            height: 2.5rem;
            border-radius: 2.5rem;
            background-color: var(--color-white);
            border: 1px solid var(--color-grey-300);
            display: flex;
            align-items: center;
            justify-content: center;
            text-indent: -99999px;
            margin-bottom: 0;
            font-size: 0px;
            line-height: 0px;
          }
.rsvp-fields .collection .options .option input + label:before {
              width: 1.5rem;
              height: 1.5rem;
              display: block;
              border: 0;
              margin: 0;
            }
.rsvp-fields .collection .options .option input:focus + label, .rsvp-fields .collection .options .option input:hover + label {
              border: 1px solid var(--color-grey-600);
            }
.rsvp-fields .collection .options .option input[value="declined"] + label:before {
                background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggc3Ryb2tlPSIjODg4IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE4IDYgNiAxOE02IDZsMTIgMTIiLz48L3N2Zz4=");
              }
.rsvp-fields .collection .options .option input[value="declined"]:checked + label {
                border-color: var(--color-red-50);
                background: var(--color-red-50);
              }
.rsvp-fields .collection .options .option input[value="declined"]:checked + label:before {
                  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggc3Ryb2tlPSIjQjYwMDQyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE4IDYgNiAxOE02IDZsMTIgMTIiLz48L3N2Zz4=");
                }
.rsvp-fields .collection .options .option input[value="accepted"] + label:before {
                background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggc3Ryb2tlPSIjODg4IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTIwIDYgOSAxN2wtNS01Ii8+PC9zdmc+");
              }
.rsvp-fields .collection .options .option input[value="accepted"]:checked + label {
                border-color: var(--color-green-100);
                background: var(--color-green-100);
              }
.rsvp-fields .collection .options .option input[value="accepted"]:checked + label:before {
                  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggc3Ryb2tlPSIjMDc3MDdFIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTIwIDYgOSAxN2wtNS01Ii8+PC9zdmc+");
                }
.rsvp-fields.disabled .collection .options .option input + label {
              border-color: var(--color-grey-50);
              background-color: var(--color-grey-50);
              opacity: 0.5;
            }
.phone-fields {
  display: flex;
  gap: 1rem;
}
.phone-fields .field:nth-child(2) {
      flex-grow: 1;
    }
.phone-fields .field.select select {
        padding-left: 0.5rem;
        width: -moz-max-content;
        width: max-content;
      }
/* lexxy-editor {
  lexxy-toolbar {
    summary {
      display: grid;
    }
  }
} */
body:not(.admin) .rich_textarea {
    margin-top: 0.5rem;
    overflow: hidden;
  }
body:not(.admin) .rich_textarea:has(lexxy-editor:focus-visible) lexxy-toolbar,
      body:not(.admin) .rich_textarea:has(lexxy-editor:focus-visible) .lexxy-editor__toolbar-button {
        border-color: var(--color-grey-900);
      }
body:not(.admin) lexxy-editor {
    border: var(--input-border);

    min-height: 160px;
    border-radius: var(--border-radius);
  }
body:not(.admin) lexxy-editor:focus-visible {
      outline: none;
      border-color: var(--color-grey-900);
    }
body:not(.admin) lexxy-editor lexxy-toolbar {
      border: none;
      border-bottom: var(--input-border);
      border-top-left-radius: var(--border-radius);
      border-top-right-radius: var(--border-radius);
      background-color: var(--color-white);
      color: var(--form-input-color);
      margin-top: 0rem;
      background-color: var(--color-grey-50);
    }
body:not(.admin) lexxy-editor lexxy-toolbar .lexxy-editor__toolbar-button {
        height: 44px;
        cursor: pointer;
        color: var(--color-grey-800);
        border-radius: var(--border-radius);
        background-color: var(--color-grey-50);
        outline: none;
      }
body:not(.admin) lexxy-editor lexxy-toolbar .lexxy-editor__toolbar-button:is(:active),
        body:not(.admin) lexxy-editor lexxy-toolbar .lexxy-editor__toolbar-button:hover,
        body:not(.admin) lexxy-editor lexxy-toolbar .lexxy-editor__toolbar-button[aria-pressed="true"] {
          background-color: var(--color-grey-200);
        }
body:not(.admin) lexxy-editor lexxy-toolbar > .lexxy-editor__toolbar-button,
      body:not(.admin) lexxy-editor lexxy-toolbar > .lexxy-editor__toolbar-dropdown > .lexxy-editor__toolbar-button {
        position: relative;

        display: inline-flex;

        width: 44px;
        font-size: 0.75em;
        font-weight: 600;

        background-position: 50% 50%;
        background-repeat: no-repeat;
      }
body:not(.admin) lexxy-editor lexxy-toolbar > .lexxy-editor__toolbar-button svg, body:not(.admin) lexxy-editor lexxy-toolbar > .lexxy-editor__toolbar-dropdown > .lexxy-editor__toolbar-button svg {
          display: none;
        }
body:not(.admin) lexxy-editor lexxy-toolbar > .lexxy-editor__toolbar-button:after, body:not(.admin) lexxy-editor lexxy-toolbar > .lexxy-editor__toolbar-dropdown > .lexxy-editor__toolbar-button:after {
          content: "";
          display: none;
        }
body:not(.admin) lexxy-editor lexxy-toolbar > details {
        line-height: 1;
      }
body:not(.admin) lexxy-editor lexxy-toolbar input[type="url"] {
        height: 44px;
        line-height: 1.4;
        padding: var(--field-padding);
        border-radius: var(--border-radius);
        border: var(--input-border);
      }
body:not(.admin) lexxy-editor lexxy-toolbar .lexxy-editor__toolbar-button[name="bold"] {
        /* https://lucide.dev/icons/bold */
        background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWJvbGQiPjxwYXRoIGQ9Ik02IDEyaDlhNCA0IDAgMCAxIDAgOEg3YTEgMSAwIDAgMS0xLTFWNWExIDEgMCAwIDEgMS0xaDdhNCA0IDAgMCAxIDAgOCIvPjwvc3ZnPg==");
      }
body:not(.admin) lexxy-editor lexxy-toolbar .lexxy-editor__toolbar-button[name="italic"] {
        /* https://lucide.dev/icons/italic */
        background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWl0YWxpYyI+PGxpbmUgeDE9IjE5IiB4Mj0iMTAiIHkxPSI0IiB5Mj0iNCIvPjxsaW5lIHgxPSIxNCIgeDI9IjUiIHkxPSIyMCIgeTI9IjIwIi8+PGxpbmUgeDE9IjE1IiB4Mj0iOSIgeTE9IjQiIHkyPSIyMCIvPjwvc3ZnPg==");
      }
body:not(.admin) lexxy-editor lexxy-toolbar .lexxy-editor__toolbar-button[name="link"] {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWxpbmstaWNvbiBsdWNpZGUtbGluayI+PHBhdGggZD0iTTEwIDEzYTUgNSAwIDAgMCA3LjU0LjU0bDMtM2E1IDUgMCAwIDAtNy4wNy03LjA3bC0xLjcyIDEuNzEiLz48cGF0aCBkPSJNMTQgMTFhNSA1IDAgMCAwLTcuNTQtLjU0bC0zIDNhNSA1IDAgMCAwIDcuMDcgNy4wN2wxLjcxLTEuNzEiLz48L3N2Zz4=");
      }
body:not(.admin) .lexxy-editor__content {
    padding: var(--field-padding);
  }
.panel {
  z-index: 2;
  overflow:hidden;
  display: block;
  width: 100%;
  padding: 1rem 1rem 1.5rem;
  margin: 0 auto 1rem;
  border-radius: var(--border-radius);
  background: var(--color-white);
}
.panel:last-child {
    margin-bottom: 0;
  }
@media (min-width: 624px) {
.panel {
    padding: 2rem
}
  }
.panel.outlined {
    border: 1px solid var(--color-grey-300);
    padding: 1rem;
  }
.panel .icon {
    width: 1.5rem;
    height: 1.5rem;
    margin-bottom: 1rem;
  }
.panel > header {
    margin-bottom: 1.5rem;
    position: relative;
  }
.panel > header .panel-title {
      margin: 0;
      padding-bottom: .75rem;
      border-bottom: 3px solid var(--body-background);
    }
.panel > header .intro {
      margin-top: .75rem;
    }
.panel > header .tag {
      position: absolute;
      right: 0;
    }
.panel > header:not(:has(p)):has( + p) {
        margin-bottom: .75rem;
      }
.panel .callout {
    margin-top: 1.5rem;
  }
.panel .callout:last-child {
      margin-bottom: 0;
    }
.panel footer {
    margin-top: 1.5rem;
  }
.panel > .button:last-child {
      margin-top: 1.5rem;
    }
.panel.question-responses {
    padding: 0;
      margin-top: 1rem;
  }
.panel.question-responses > header {
      background-color: var(--color-grey-50);
      font-weight: 600;
      padding: 1rem;
      margin: 0;
    }
.panel.question-responses > div {
      padding: 1rem;
    }
a.panel {
  width: 100%;
  display: block;
  text-decoration: none;
  cursor: pointer;
}
@media (min-width: 1025px) {
    a.panel:focus,
    a.panel:hover {
      border-color: var(--color-grey-900);
      outline: none;
    }
  }
[popover]::backdrop {
    background-color: rgb(0 0 0 / 0%);
    transition:
      transform 0.2s,
      overlay 0.2s allow-discrete,
      background-color 0.2s;
  }
[popover]:popover-open {
    z-index: 1;
    padding: 2rem 1.5rem;
    border: 0;
    width: calc(100vw - 3rem);
    max-width: 450px;
    max-height: 100dvh;
    border-radius:var(--border-radius);
    background: var(--color-white);
    color: var(--color-grey-900);
    text-align: left;
    box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.2);


  }
@media (min-width: 782px) {
[popover]:popover-open {
      border-radius: var(--border-radius);
      margin: auto;
      max-width: 800px


  }
    }
[popover]:popover-open > header {
      margin-bottom: 1.5rem;
    }
[popover]:popover-open > header .popover-title {
        padding-bottom: .75rem;
        border-bottom: 3px solid var(--body-background);
      }
[popover]:popover-open p {
      text-wrap: pretty;
    }
[popover]:popover-open footer {
      margin-top: 1rem;
    }
[popover]:popover-open .callout {
      margin-bottom: 1rem;
    }
[popover]:popover-open::backdrop {
      background-color: rgb(0 0 0 / 60%);
    }
[popover]:popover-open form {
      --field-spacing: 1.5rem;
    }
[popover]:popover-open form .button-row {
        margin-top: 1.5rem;
      }
[popover]:popover-open .close {
      position: absolute;
      top: 0;
      right: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 44px;
      height: 44px;
    }
[popover]:popover-open.full_height {
      min-height: 100dvh;
      max-width: 100%;
      width: 100vw;
      border-radius: 0;
      display: flex;
      margin: 0 auto;
      padding: 2rem 1rem 1rem;
      flex-direction: column;
      --field-spacing: 2rem;
    }
[popover]:popover-open.full_height h2 {
        margin: 0;
        padding-bottom: .75rem;
        border-bottom: 3px solid var(--body-background);
      }
[popover]:popover-open.full_height .form-content {
        flex-grow: 1;
        margin-bottom: 0;
      }
@media (min-width: 782px) {
[popover]:popover-open.full_height {
        min-height: 90dvh;
        max-width: 800px;
        margin: auto
    }
      }
[popover].bottom {
    transform: translateY(100%);
    transition: transform 0.2s;
  }
@media (min-width: 782px) {
[popover].bottom {
      transform: translateY(0)
  }
    }
[popover].bottom:popover-open {
      margin-bottom: 0;
      transform: translateY(0);
      border-radius: var(--border-radius) var(--border-radius)  0 0;
      width: 100%;
      max-width: 100%;
      max-height: 80dvh;
    }
@media (min-width: 782px) {
[popover].bottom:popover-open {
        margin-bottom:auto;
        transform: translateY(0);
        border-radius: var(--border-radius);
        width: calc(100% - 2rem);
        max-width: 450px;
        padding: 2rem 1.5rem
    }
      }
[popover].bottom#terms .close {
        display: none;
      }
[popover].bottom#terms > h2 {
        font-family: 'Inter', sans-serif;
        font-weight: normal;
        font-size: 1rem;
        margin-bottom: .5rem;
        text-transform: uppercase;
      }
[popover].bottom#terms ol, [popover].bottom#terms ul {
        margin: 0;
        padding-inline-start: 2rem;
      }
[popover].bottom#terms ol li, [popover].bottom#terms ul li {
          margin-bottom: .5rem;
        }
[popover].bottom#terms > ol ol {
          margin-top: .5rem;
        }
@media (min-width: 782px) {
[popover].bottom#terms:popover-open {
        max-width:800px
    }
      }
/* Needs to be after the previous [popover]:popover-open rule
to take effect, as the specificity is the same */
@starting-style {

  [popover] {
    transform: translateY(0);
  }


      [popover].bottom:popover-open {
        transform: translateY(100%);

      }
        @media (min-width: 782px) {


      [popover].bottom:popover-open {
          transform: translateY(0)

      }
        }
}
/* The nesting selector (&) cannot represent pseudo-elements
so this starting-style rule cannot be nested */
@starting-style {
  [popover]:popover-open::backdrop {
    background-color: rgb(0 0 0 / 0%);
  }
}
.progress {
  height: .25rem;
  margin-bottom: 1rem;
  border-radius: .25rem;
  overflow: hidden;
  background-color: var(--color-red-200);
}
.progress:has(.progress-meter-text) {
    height: 1.5rem;
  }
.progress .progress-meter {
    position: relative;
    display: block;
    width: 0%;
    height: 100%;
    background-color: var(--color-red-800);
    color: var(--color-white);
  }
.progress .progress-meter .progress-meter-text {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0;
      font-size: 0.75rem;
      font-weight: bold;
      white-space: nowrap;
    }
.progress.warning {
    background-color: var(--color-cream-100);
  }
.progress.warning .progress-meter {
      color: var(--color-white);
      background-color: var(--color-cream-800);
    }
.progress.error, .progress.alert {
    background-color: var(--color-red-200);
  }
.progress.error .progress-meter, .progress.alert .progress-meter {
      color: var(--color-white);
      background-color: var(--color-red-800);
    }
.progress.success {
    background-color: var(--color-green-200);
  }
.progress.success .progress-meter {
      color: var(--color-white);
      background-color: var(--color-green-700);
    }
[data-controller="reveal"] .reveal-content:not(.revealed) {
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    display: none;
  }
.snackbar {
  display: flex;
  justify-content: space-between;
}
.snackbar svg.alert {
      color: var(--color-red-800);
    }
.snackbar + .snackbar {
    margin-top: .75rem;
  }
.stat {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: .75rem;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  border: 1px solid var(--color-grey-300);
  color: var(--color-grey-900);
  border-radius: var(--border-radius);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  position: relative;
}
.stat:last-child {
      margin-bottom: 0;
    }
.stat p {
    font-size: inherit;
    margin-bottom: 0;
  }
.stat p:first-child {
      margin-right: auto;
    }
.stat .figure {
    font-size: 1.375rem;
    line-height: 1;
    font-weight: 600;
    color: inherit;
    flex-shrink: 0;
    margin-right: auto;
  }
.stat svg {
    flex-shrink: 0;
    color: inherit;
  }
.stat a:before {
      display: block;
      content: '';
      position: absolute;
      inset: 0;
    }
.stat.archived{
    border: 0;
    color: var(--color-grey-900);
    background: var(--color-grey-50);
  }
.stat.accepted {
    border: 0;
    background: var(--color-green-100);
  }
.stat.pending{
    border: 0;
    background: var(--color-cream-75);
  }
.stat.guests {
    border: 0;
    background: var(--color-blue-200);
  }
.stat.declined {
    border: 0;
    background: var(--color-red-50);
  }
.checklist .stat.accepted {
      border: 1px solid var(--color-green-700);
    }
.checklist .stat.accepted:after {
        content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIxLjgwMDYgOS45OTk5OUMyMi4yNTczIDEyLjI0MTMgMjEuOTMxOCAxNC41NzE0IDIwLjg3ODUgMTYuNjAxOEMxOS44MjUxIDE4LjYzMjIgMTguMTA3NSAyMC4yNCAxNi4wMTIxIDIxLjE1NzNDMTMuOTE2NyAyMi4wNzQ2IDExLjU3MDIgMjIuMjQ1OCA5LjM2MzkxIDIxLjY0MjRDNy4xNTc1OCAyMS4wMzg5IDUuMjI0OCAxOS42OTc0IDMuODg3ODkgMTcuODQxNEMyLjU1MDk3IDE1Ljk4NTQgMS44OTA3MyAxMy43MjcyIDIuMDE3MjggMTEuNDQzNEMyLjE0MzgyIDkuMTU5NTIgMy4wNDk0OSA2Ljk4ODA4IDQuNTgzMjYgNS4yOTExNkM2LjExNzAzIDMuNTk0MjQgOC4xODYxOSAyLjQ3NDQyIDEwLjQ0NTcgMi4xMTg0NEMxMi43MDUyIDEuNzYyNDcgMTUuMDE4NCAyLjE5MTg1IDE2Ljk5OTYgMy4zMzQ5OU04Ljk5OTYxIDExTDExLjk5OTYgMTRMMjEuOTk5NiAzLjk5OTk5IiBzdHJva2U9IiMwNzcwN0UiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPg==");
        display: block;
        height: 1.5rem;
        width: 1.5rem;
      }
[data-controller~="tabs"] .tabs {
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 2rem auto 0;
    border: 0;
  }
[data-controller~="tabs"] .tabs-title, [data-controller~="tabs"] [data-tabs-target="tab"] {
    cursor: pointer;
    display: block;
    flex-grow: 1;
    flex-shrink: 0;
    padding: 14px 16px;
    margin-right: 1rem;

    border-top-left-radius: var(--border-radius);
    border-top-right-radius: var(--border-radius);

    background: rgba(255,255,255,0.5);

    font-size: 18px;
    line-height: 21px;
    font-weight: 500;
    text-decoration: none;
    text-align: center;
  }
[data-controller~="tabs"] .tabs-title a, [data-controller~="tabs"] [data-tabs-target="tab"] a {
      text-decoration:none;
      color: inherit;
    }
[data-controller~="tabs"] .tabs-title p, [data-controller~="tabs"] [data-tabs-target="tab"] p {
      margin: 0;
    }
[data-controller~="tabs"] .tabs-title:focus, [data-controller~="tabs"] .tabs-title:hover, [data-controller~="tabs"] [data-tabs-target="tab"]:focus, [data-controller~="tabs"] [data-tabs-target="tab"]:hover {
      background: var(--color-white);
      outline: none;
    }
[data-controller~="tabs"] .tabs-title.is-active, [data-controller~="tabs"] [data-tabs-target="tab"].is-active {
      background: var(--color-white);
      color: var(--color-grey-900);
      pointer-events:none;
      font-weight: bold;

    }
[data-controller~="tabs"] [data-tabs-target="content"] {
    display: none;
  }
[data-controller~="tabs"] [data-tabs-target="content"].is-active {
      display: block;
      padding: 2rem;
      margin-top: 0;
      background-color: var(--color-white);
    }
/* Toastify overides */
.toastify {
  padding: 1rem 2rem 1rem 1rem;
  border-radius: var(--border-radius);
  border: 1px solid var(--color-white);
  background-color: var(--color-white);

  font-size: 1rem;
}
.toastify .toast-close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    width: 0.5rem;
    height: 0.5rem;

    padding-right: 0;
    padding-left: 0;

    opacity: 0.5;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxMCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTkgMUwxIDlNMSAxTDkgOSIgc3Ryb2tlPSIjOTAwQjA5IiBzdHJva2Utd2lkdGg9IjEuNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPg==");
    background-repeat: no-repeat;
    background-size: 0.5rem;
    text-indent: -999px;
    color: var(--text-color) !important;
  }
.toast-notice {
  border: 1px solid var(--color-cream-200);
  background: var(--color-cream-50);
  color: var(--color-cream-800);
}
.toast-alert {
  border: 1px solid var(--color-red-400);
  background: var(--color-red-50);
  color: var(--color-red-400);
}
#turbo-confirm {
  z-index: 1;
  padding: 1.5rem;
  width: calc(100% - 2rem);
	max-width: 450px;
  border: 0;
  border-radius: var(--border-radius);
  background: var(--color-white);
  color: var(--color-grey-900);
	text-align: left;
  box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.2);
}
#turbo-confirm .button-row {
    display: flex;
    flex-direction: column;
    margin-top: 1rem;
	}
#turbo-confirm .button-row #confirm-accept:has(svg.remove) {
        background-color: var(--color-red-800);
        border-color: var(--color-red-800);
        color: var(--color-white);
      }
#turbo-confirm .button-row #confirm-accept:has(svg.remove) svg {
          color: inherit;
        }
@media (min-width: 1025px) {
          #turbo-confirm .button-row #confirm-accept:has(svg.remove):focus,
          #turbo-confirm .button-row #confirm-accept:has(svg.remove):hover {
            background-color: var(--color-red-100);
            color: var(--color-red-800);
            outline: none;
          }
        }
#turbo-confirm h2 {
    margin-bottom: 0.75rem;
  }
#turbo-confirm[open]::backdrop {
      background: rgba(0, 0, 0, 0.6);
    }
.feature-tour:popover-open {
    z-index: 1;
    padding: 1px 1rem 1.5rem;
    border: 0;
    width: 100%;
    max-width: 100%;
    height: 100dvh;
    border-radius: 0;
    background: var(--header-background);
    color: var(--header-text);
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
  }
@media (min-width: 1025px) {
.feature-tour:popover-open {
      padding: 0.5rem 1rem 1.5rem
  }
    }
.feature-tour:popover-open .container {
      width: 100%;
    }
.feature-tour:popover-open .brand {
      width: 94px;
      height: 44px;
      display: flex;
      margin: 0 auto;
      z-index: 2;
    }
.feature-tour:popover-open .brand svg {
        display: block;
        width: 100%;
        transition: color 0.3s;
        color: var(--header-accent);
      }
.feature-tour:popover-open .button {
      align-self: flex-end;
      background-color: var(--header-button-color);
      color: var(--header-button-text-color);
    }
.feature-tour:popover-open .button svg {
        color: var(--header-background);
      }
.feature-tour:popover-open .button.secondary {
        background-color: transparent;
        border-color: var(--header-button-color);
        color: var(--header-button-color);
      }
.feature-tour:popover-open h1,
    .feature-tour:popover-open h2 {
      color: var(--header-foreground);
    }
.feature-tour:popover-open h1 i, .feature-tour:popover-open h2 i {
        color: var(--header-accent);
      }
.feature-tour:popover-open p {
      text-wrap: pretty;
    }
.feature-tour:popover-open .modal.bottom h2 {
        color: var(--color-grey-900);
      }
.feature-tour:popover-open img {
      margin: 0 auto 1rem;
      width: 8rem;
      height: auto;
      aspect-ratio: 1;
    }
.feature-tour:popover-open .swiper-pagination {
      position: relative;
      margin-top: 2rem;
    }
.feature-tour:popover-open .swiper-pagination .swiper-pagination-bullet {
        background-color: var(--header-text);
      }
.feature-tour:popover-open .swiper-pagination .swiper-pagination-bullet-active {
          background-color: var(--header-accent);
      }
.feature-tour:popover-open .video-tour-container {
      max-width: 480px;
      margin-top: 4rem;
    }
@media (max-height: 700px) {
.feature-tour:popover-open .video-tour-container {
        margin-top: 2rem
    }
      }
@media (min-width: 640px) and (min-height: 700px) {
.feature-tour:popover-open .video-tour-container {
        max-width: 540px;
        margin-top: 2rem
    }
      }
@media (min-width: 640px) and (min-height: 800px) {
.feature-tour:popover-open .video-tour-container {
        max-width: 640px;
        margin-top: 2rem
    }
      }
@media (min-width: 1024px) and (min-height: 1000px) {
.feature-tour:popover-open .video-tour-container {
        max-width: 100%
    }
      }
.progress-steps {
  display: flex;
  gap: 1rem;
  flex-wrap: nowrap;
	margin-bottom: 1.5rem;
}
.progress-steps .progress-step {
    background-color: var(--color-red-200);
    border-radius: 6px;
    height: 6px;
		flex-basis: 25%;
  }
.progress-steps .progress-step.active {
      background-color: var(--color-red-800);
    }
.animation-container {
  margin-bottom: 1rem;
}
.animation-container svg {
    max-height: 200px;
  }
.breadcrumbs {
  display:flex;
}
.breadcrumbs li {
    font-weight: 500;
  }
.breadcrumbs li:after {
        content:'>';
        margin-right: 1rem;
        margin-left: .5rem;

    }
.breadcrumbs li:last-of-type:after {
        display:none;
        content:'';
      }
.breadcrumbs li a {
      font-weight: normal;
    }
.breadcrumbs li a:focus,
      .breadcrumbs li a:hover {
        color: inherit;
        text-decoration: underline;
        outline: none;
      }
.button {
  display: block;
  padding: 1rem;
  cursor: pointer;
  background-color: var(--color-grey-900);
  border: 1px solid var(--color-grey-900);
  border-radius: 3rem;
  color: var(--color-white);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  text-align: center;
  width: 100%;
}
.button:has(svg) {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    align-items: center;
    padding: 0.875rem;
  }
.button:has(svg) svg {
      color: var(--body-accent);
    }
.button svg {
    width: 1.25rem;
    height: 1.25rem;
  }
@media (min-width: 1025px) {
    .button:focus,
    .button:hover {
      background-color: var(--color-grey-800);
      text-decoration: none;
      outline: none;
    }
  }
@media (min-width: 782px) {
    .button.only-full-on-small {
      width: auto;
      display: inline-block;
    }
  }
.button:disabled,
  .button.disabled {
    opacity: 0.3;
    pointer-events: none;
    cursor: not-allowed;
  }
/* variations */
.button.small {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    width: auto;
    display: inline-block;
  }
.button.secondary {
    background-color: transparent;
    border-color: var(--color-grey-800);
    color: var(--color-grey-900);
  }
.button.secondary svg {
      color: var(--icon-color);
    }
@media (min-width: 1025px) {
      .button.secondary:focus,
      .button.secondary:hover {
        border-color: var(--color-grey-900);
        outline: none;
      }
    }
.button.delete {
    background-color: var(--color-red-800);
    border-color: var(--color-red-800);
    color: var(--color-white);
    text-decoration: none;
    text-align: center !important;
    font-weight: 500;
  }
@media (min-width: 1025px) {
      .button.delete:focus,
      .button.delete:hover {
        background-color: var(--color-red-100);
        color: var(--color-red-800);
        outline: none;
      }
    }
.button.delete svg {
      color: inherit;
    }
.button.link-style {
    display: inline-block;
    width: auto;
    padding: 0;
    background: none;
    border: 0;
    border-radius: unset;
    color: var(--color-grey-900);
    text-decoration: underline;
    text-align: left;
    font-weight: normal;
  }
.button.white {
    background-color: var(--color-white);
  }
.button.white svg {
      color: var(--icon-color);
    }
.button.circle {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    padding: 0;
  }
.button.circle svg {
      width: 1.5rem;
    }
.event-panel {
  gap: 1rem;
  border: 1px solid var(--color-grey-300);
  padding: 1rem;
  border-radius: var(--border-radius);
  margin-bottom: 1rem;
}
.event-panel > a {
    text-decoration: none;
  }
.event-panel > a >
      svg {
        margin-left: auto;
        color: inherit;
        flex-shrink: 0;
      }
.event-panel .event-image {
    width: 4rem;
    height: 4rem;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 0.25rem;
  }
.event-panel .event-name {
    margin-bottom: .25rem;
  }
.event-panel .event-name:has(+ .event-details) {
      margin-bottom: 0;
    }
.event-panel ul.details {
    margin-top: 1.5rem;
  }
@media (min-width: 1025px) {
.event-panel ul.details {
      display: none
  }
    }
.event-panel p {
    margin-bottom: 0;
  }
.event-panel p.event-details {
    margin-top: .25rem;
      display: none;
    }
@media (min-width: 1025px) {
.event-panel p.event-details {
        display: block
    }
      }
.event-panel.archived {
    border: 0;
    color: var(--color-grey-900);
    background: var(--color-grey-50);
  }
.event-panel.alert {
    border: 0;
    background: var(--color-red-100);
  }
a.event-panel {
  justify-content: space-between;
  text-decoration: none;
}
.flash-message {
  --animation-duration: 6s;
  --icon-color: var(--color-green-700);

  position: fixed;
  top: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 11;

  width: calc(100vw - 2rem);
  max-width: 500px;
  padding: 1rem;
  overflow: hidden;

  background-color: var(--color-white);
  border-radius: var(--border-radius);
  box-shadow: 0px 4px 8px 3px rgba(0, 0, 0, 0.15), 0px 1px 3px 0px rgba(0, 0, 0, 0.30); /* Visuals */

  text-align: left;

  animation: flashMessage var(--animation-duration) forwards;
}
.flash-message .inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;
  }
.flash-message p {
    max-width: 100%;
    margin-bottom: 0;
    font-size: 0.875rem;
    line-height: 1.6;
  }
.flash-message .icon {
    color: var(--icon-color);
  }
.flash-message button {
    margin-left: auto;
    margin-right: 0;
  }
.flash-message .progress {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
    margin: 0;
    background-color: var(--color-white);
  }
.flash-message .progress .progress-meter {
      width: 100%;
      background-color: var(--icon-color);
      animation: flashProgress var(--animation-duration) linear forwards;
    }
.flash-message.alert {
    --icon-color: var(--color-red-800);
  }
@keyframes flashMessage {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(-150%);
  }
  8% {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
  92% {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-50%) translateY(-150%);
  }
}
@keyframes flashProgress {
  0% {
    width: 100%;
  }
  8% {
    width: 100%;
  }
  92% {
    width: 0;
  }
  100% {
    width: 0;
  }
}
.guest-filters {
  display: flex;
  gap: 1rem;
  width: 100%;
}
.guest-filters > .field {
    margin: 0;
    flex-grow: 1;
  }
.guest-filters > .field input {
      height: 48px;
    }
.guest-filters .button.circle {
    height: 48px;
    width: 48px;
  }
.guest-filters .button.circle.active {
      background-color: var(--icon-color);
    }
.guest-filters .button.circle.active svg {
        color: var(--color-white);
      }
.guest-filters [type="search"]::-webkit-search-cancel-button,
  .guest-filters [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
  }
.guest-group {
  position: relative;
  text-align: left;
}
.guest-group:not(:has(header)) {
    padding: 1rem;
  }
.guest-group .tag-container + ul {
      margin-top: 1rem;
    }
.guest-group ul {
    margin: 0;
    list-style: none;
  }
.guest-group ul li {
      padding: 0.5rem 0;
    }
.guest-group ul li:has(.rsvp-fields) {
        --icon-color: var(--color-grey-400);
      }
.guest-group ul li:has(.circle-icon),
      .guest-group ul li:has(.rsvp-fields),
      .guest-group ul li:has(.tag) {
        display: flex;
        gap: 1rem;
        justify-content: flex-end;
        align-items: center;
        padding: 0.5rem 0;
        border-top: 0;
      }
.guest-group ul li .name {
        margin-right: auto;
      }
.guest-group ul li .name:has(svg) {
          display: inline-flex;
          gap: 0.5rem;
          align-items: center;
        }
.guest-group ul li:first-child {
        padding-top: 0;
      }
.guest-group ul li:last-child {
        padding-bottom: 0;
      }
.guest-group ul li .circle-icon.rsvp {
          background-color: var(--color-white);
          border: 1px solid var(--color-grey-300);
        }
.guest-group ul + .tag-container {
      margin-top: 1rem;
    }
.guest-group.assign-events ul li {
        padding: 0;
      }
.guest-group.assign-events ul li:last-of-type hr {
            display: none;
          }
.guest-group.rsvp-responses {
    padding: 0;
  }
.guest-group.selectable {
    border: 1px solid var(--color-grey-200);
  }
.guest-group.selectable ul li {
        padding: 0.125rem 0;
      }
.guest-group.guest-list,
  .guest-group.guest-lookup {
    display: flex;
    align-items: center;
    gap: 0;
    padding: 0;
    background-color: #f1f7fe;
  }
.guest-group.guest-list .arrow, .guest-group.guest-lookup .arrow {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      padding: 0.25rem;
    }
.guest-group.guest-list .arrow svg, .guest-group.guest-lookup .arrow svg {
        color: var(--color-blue-700);
      }
.guest-group.guest-list > div:first-child, .guest-group.guest-lookup > div:first-child {
        flex-grow: 1;
        padding: 1rem;
        background-color: var(--color-white);
      }
.guest-group.guest-list ul li svg, .guest-group.guest-lookup ul li svg {
          flex-shrink: 0;
          color: var(--color-green-600);
        }
.guest-group.guest-list ul li svg.declined, .guest-group.guest-lookup ul li svg.declined {
            color: var(--color-grey-400);
          }
.guest-group.guest-lookup {
    background-color: var(--color-grey-900);
  }
.guest-group.guest-lookup .arrow svg {
        color: var(--color-white);
      }
.label {
  display: inline-block;
  padding: 0.75rem 1rem;
  border-radius: 2rem;
  border: 1px solid var(--color-grey-900);
  color: var(--color-grey-900);
  background-color: var(--color-white);
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
}
.label + .label {
    margin-left: 1rem;
  }
.label.active, .label.selected {
    color: var(--color-white);
    background-color: var(--color-grey-900);
  }
.tag {
  display: inline-block;
  padding: 0.5rem 1rem;
  border-radius: .5rem;
  color: var(--color-cream-900);
  background-color: var(--color-cream-100);
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
}
.tag.archived{
    color: var(--color-grey-900);
    background: var(--color-grey-50);
  }
.tag.accepted, .tag.active {
    color: var(--color-green-900);
    background: var(--color-green-100);
  }
.tag.pending {
    color: var(--color-cream-900);
    background: var(--color-cream-75);
  }
.tag.declined, .tag.disabled {
    color: var(--color-red-900);
    background: var(--color-red-50);
  }
ul {
  margin: 1rem;
  list-style-type: disc;

}
ul.breadcrumbs, ul.list-none, ul.menu {
    margin-left: 0;
    list-style-type: none;
  }
ol {
  margin: 1rem;
  list-style-type: decimal;
}
ul.details {
  margin: 0;
  list-style: none;
}
ul.details li {
    margin-bottom: .5rem;
    padding:0;
    align-items: flex-start;
  }
ul.details li:last-of-type {
      margin-bottom: 1.5rem;
    }
ul.details li:has(svg) {
      margin-bottom: .75rem;
    }
ul.details li:has(.tag) {
      display: flex;
      justify-content: space-between;
      margin-bottom: .75rem;
    }
ul.details li:has(.tag):last-of-type {
        margin-bottom: 1.5rem;
      }
ul.details li:has(.circle-icon) {
      align-items: center;
    }
ul.details li.collaborator {
      display: flex;
      margin-bottom: 1rem;
      flex-direction: column;
    }
@media (min-width: 782px) {
ul.details li.collaborator {
        flex-direction: row;
        justify-content: space-between;
        align-items: center
    }
      }
ul.details li.collaborator .circle-icon {
        background-color: var(--color-red-50);
        color: var(--color-red-800);
      }
ul.details li.collaborator a {
        margin-top: 0;
        width: -moz-fit-content;
        width: fit-content;
      }
ul.details li.collaborator:first-child {
        margin-top: 1rem;
      }
ul.details:last-child li:last-of-type {
        margin-bottom: 0;
      }
ul.menu {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 2rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
@media (min-width: 782px) {
    ul.menu.main {
      justify-content: flex-start;
    }
  }
ul.menu li {
    position: relative;
    outline: none;
  }
ul.menu li:last-of-type {
      margin-right: 0;
    }
ul.menu li a {
      display: block;
      color: var(--color-grey-900);
      font-weight: 500;
      text-decoration: none;
    }
ul.menu li a:not(.button):focus,
      ul.menu li a:not(.button):hover {
        color: var(--color-text);
        outline: none;
      }
ul.menu li:hover {
      outline: none;
    }
ul.menu li.active a {
        text-decoration: underline;
      }
ul.menu.align-right {
    justify-content: flex-end;
  }
ul.menu.content-center {
    justify-content: center;
  }
ul.menu .menu {
    z-index: 2;
    position: absolute;
    top: 100%;
    left: 0;
    right: auto;
    display: none;
    min-width: 200px;
    padding: 1rem;
    background: white;
    border-radius: var(--border-radius);
    box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.25);
  }
ul.menu .menu li {
      width: 100%;
    }
ul.menu.vertical {
    flex-direction: column;
    align-items: flex-start;
  }
ul.menu.vertical li .menu {
        left: 100%;
        text-align: left;
      }
.pagy {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 3rem;
  margin-left: 0;
  margin-bottom: 1rem;
  gap: 0.5rem;
  list-style: none;
}
.pagy a {
    line-height: 1;
    font-size: 1rem;
    min-width: 2.25rem;
    height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border-radius: 4px;
    font-weight: normal;
    text-decoration: none;
  }
.pagy a svg {
      display: block;
      width: auto;
      height: 1rem;
      margin: -1px auto 0;
    }
.pagy a.current,
    .pagy a[aria-current="page"] {
      background-color: var(--color-grey-900);
      border-radius: var(--border-radius);
      color: var(--color-white);
    }
.pagy a.current span, .pagy a[aria-current="page"] span {
        background-color: var(--color-grey-900);
        border-radius: var(--border-radius);
        color: var(--color-white);
      }
.pagy a[aria-label="Previous"],
    .pagy a[aria-label="Next"] {
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEuMzMzMzEgNS45OTk5MkgxMC42NjY2TTEwLjY2NjYgNS45OTk5Mkw1Ljk5OTk4IDEuMzMzMjVNMTAuNjY2NiA1Ljk5OTkyTDUuOTk5OTggMTAuNjY2NiIgc3Ryb2tlPSIjMUUxRTFFIiBzdHJva2Utd2lkdGg9IjEuNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=");
      background-position: center center;
      background-repeat: no-repeat;
      text-indent: -9999px;
      font-size: 1px;
    }
.pagy a[aria-label="Previous"][aria-disabled="true"], .pagy a[aria-label="Next"][aria-disabled="true"] {
        opacity: 0.5;
        pointer-events: none;
      }
.pagy a[aria-label="Previous"] {
      transform: rotate(180deg);
    }
.preview {
  position: relative;
}
.preview .overlay {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 9;
  }
.qr-code {
  background-color: #fff;
  border-radius: var(--border-radius);
  margin-bottom: 1rem;
  height: 200px;
  width: 200px;
  padding: 1rem;
}
.qr-code svg {
    height: 100% !important;
    width: 100% !important;  
  }
.save-the-date-upload .field.image_upload .canvas-wrapper canvas {
    aspect-ratio: 9/16;
    transform: scale(0.25) translate(-100%, 0);
    margin-top: -133%; /* 16/9 * 0.75 = 1.33 */
    margin-bottom: -133%;
    border-radius: 10px;
    overflow: hidden;
  }
.landing-page-preview {
  border: 1px solid var(--color-grey-400);
  border-radius: 2rem;
  overflow: hidden;
  max-width: 300px;
  margin: 0 auto;
  display: grid;
  grid-template-areas: "stack";
  position: relative;
}
.landing-page-preview > * {
    grid-area: stack;
  }
.landing-page-preview img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    aspect-ratio: 9 / 16;
  }
.landing-page-preview > div {
    place-content: end center;
  }
.landing-page-preview .introduction {
    position: relative;
    border-radius: 0;
    text-align: center;
    background: var(--theme-background);
    background-color: color-mix(
      in srgb,
      var(--theme-background) 80%,
      transparent
    );
    padding: 1.5rem;
  }
.landing-page-preview .introduction p {
      font-size: 0.9rem;
      margin-bottom: 0.5rem;
    }
.landing-page-preview .introduction.dark p {
      color: var(--color-white);
    }
.landing-page-preview .introduction.light p {
      color: var(--color-grey-800);
    }
.landing-page-preview .introduction h3 {
      color: var(--theme-heading);
      font-family: var(--theme-font);
      font-weight: 500 !important;
      margin: 0;
      font-size: 1.25rem;
    }
body.guest-save-the-date {
  background-color: var(--theme-background);
}
body.guest-save-the-date .welcome-page {
    width: 100%;
    height: 100vh !important;
    display: flex;
  }
body.guest-save-the-date .welcome-image {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 100vh !important;
  }
body.guest-save-the-date .introduction {
    background-color: var(--theme-background);
    background-color: color-mix(
      in srgb,
      var(--theme-background) 80%,
      transparent
    );
  }
body.guest-save-the-date .introduction .page-content {
      padding: 1.5rem 1rem !important;
    }
body.guest-save-the-date .information-page .lexxy-content * {
      font-size: 1.25rem !important;
      font-weight: 500 !important;
      color: var(--body-accent) !important;
    }
body.guest-save-the-date .information-page .main-header,
    body.guest-save-the-date .information-page .main-header .main-content {
      width: 100%;
    }
body.guest-save-the-date .information-page footer p {
        color: var(--body-accent) !important;
      }
body.guest-save-the-date .information-page footer hr {
        border-color: var(--body-accent) !important;
        opacity: 0.8;
      }
@supports (height: 100dvh) {
    body.guest-save-the-date .welcome-page,
    body.guest-save-the-date .welcome-image {
      height: 100dvh !important;
    }
  }
@media (min-aspect-ratio: 1/1) {
    body.guest-save-the-date .welcome-image {
      width: 50%;
    }

    body.guest-save-the-date .welcome-page {
      flex-direction: row;
    }

    body.guest-save-the-date .introduction {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 50%;
    }
  }
@media (max-aspect-ratio: 1/1) {
    body.guest-save-the-date .welcome-image {
      width: 100%;
    }

    body.guest-save-the-date .introduction {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
    }
  }
@media (max-width: 623px) {
    @supports (height: 100dvh) {
      body.guest-save-the-date .information-page .container {
        min-height: calc(100dvh - 2rem);

        display: flex;
        flex-direction: column;
      }

        body.guest-save-the-date .information-page .container footer {
          margin-top: auto;
        }
    }
  }
@media (min-width: 624px) {
    body.guest-save-the-date:has(.information-page) {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
      body.guest-save-the-date .information-page .main-header main-content {
        padding-top: 2rem;
      }
      body.guest-save-the-date .information-page .container {
        padding: 2rem;
        border: 1px solid var(--body-accent);
      }

      body.guest-save-the-date .information-page footer {
        margin-top: 2rem;
      }
  }
body.guest-save-the-date:has(.welcome-page.hide) {
    padding: 1rem 0;
  }
.swatch {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 2.5rem;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  transform: rotate(45deg);
  border: 1px solid var(--color-grey-200);
}
.swatch:before, .swatch:after {
    display: block;
    content:'';
  }
.swatch:before {
    background-color: var(--theme-background);
  }
.swatch:after {
    background-color: var(--theme-heading);
  }
.swipeable {
  display: flex;
  gap: 1rem;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none;
}
/* Firefox */
.swipeable ::-webkit-scrollbar {
    display: none;
  }
.swipeable .item {
    border-radius: var(--border-radius);
    padding: 1rem;
    display: flex;
    gap: 1rem;
    border: 1px solid var(--color-grey-300);
    width: calc(100% - 46px);
    min-width: 240px;
    flex-shrink: 0;
    flex-grow: 0;
    scroll-snap-align: center;
    scroll-snap-stop: always;
  }
.swipeable .item p {
      max-width: 100%;
      text-wrap: pretty;
      margin-bottom: 0.75rem;
    }
.swipeable .item > svg {
      color: var(--icon-color);
      width: 1.5rem;
      flex-shrink: 0;
    }
.swipeable .item > div {
      display: flex;
      flex-direction: column;
    }
.swipeable .item > div .button {
        margin-top: auto;
        width: -moz-fit-content;
        width: fit-content;
      }
@media (min-width: 782px) {
.swipeable {
    flex-wrap: wrap
}
    .swipeable .item {
      width: calc(50% - 0.5rem);
    }
  }
.table-container {
  width: 100%;
  overflow: scroll;
  margin: 1rem auto 2rem;
  border: 1px solid var(--color-cream-200);
  border-radius: var(--border-radius);
}
.table-container:has(.stack) {
    overflow: hidden;
  }
table {
  min-width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 0.875rem;
  line-height: 1.5;
  caption-side: bottom;
  background-color: var(--color-white);
}
table:not(.stack) {
    width: max(40rem, 100%);
    table-layout: fixed;
  }
table:not(.stack) th:first-of-type {
        width: 10rem;
      }
table th,
  table caption {
    text-align: start;
  }
table th,
  table td {
    padding: 1rem;
    text-align: end;
    vertical-align: baseline;
  }
table th img, table td img {
      display: inline-block;
      margin-right: 0.5rem;
    }
table th:first-of-type, table td:first-of-type {
      text-align: start;
    }
@media (min-width: 782px) {
table th.fit-width, table td.fit-width {
        width: 1%;
        white-space: nowrap
    }
      }
table th button.delete, table td button.delete {
      text-align: right !important;
    }
table thead th {
      vertical-align: bottom;
      font-size: 1rem;
    }
table thead,
  table tfoot {
    background-color: var(--color-cream-200);
  }
table thead a, table tfoot a {
      color: var(--color-text);
    }
table.striped tr:nth-child(even) {
      background-color: var(--color-cream-50);
    }
table.stack thead,
    table.stack tfoot {
      display: none;
    }
@media (min-width: 782px) {
table.stack thead,
    table.stack tfoot {
        display: table-header-group
    }
      }
table.stack th,
    table.stack caption {
      text-align: start;
    }
table.stack th,
    table.stack td {
      display: flex;
      gap: 1rem;
      text-align: start;
    }
table.stack th:before, table.stack td:before {
        content: attr(label);
        font-weight: bold;
        width: 150px;
        flex-shrink: 0;
      }
@media (min-width: 782px) {
table.stack th,
    table.stack td {
        display: table-cell;
        padding: 1rem;
        text-align: end
    }
        table.stack th:before, table.stack td:before {
          display: none;
        }
      }
table.stack th:first-of-type, table.stack td:first-of-type {
        text-align: start;
      }
@media (min-width: 782px) {
table.stack th.fit-width, table.stack td.fit-width {
          width: 1%;
          white-space: nowrap
      }
        }
table.stack tr {
      display: block;
    }
@media (min-width: 782px) {
table.stack tr {
        display: table-row;
        border: 0
    }
      }
table .button-row {
    margin: 0 !important;
    justify-content: flex-start !important;
  }
.has-tip {
  color: var(--color-text);
  display: inline;
  font-weight: 600;
  text-decoration: underline;
}
.tippy-box {
  padding: 6px 14px;
  border-radius: 6px;
  background-color: var(--color-grey-900);
  color: var(--color-white);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 400;
}
.tippy-box .tippy-arrow {
    color: var(--color-grey-900);
  }
@media (min-width: 782px){
  .sm\:grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-10{
    grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-11{
    grid-template-columns: repeat(11, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-12{
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-7{
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-8{
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-9{
    grid-template-columns: repeat(9, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-none{
    grid-template-columns: none !important;
  }
  .sm\:grid-cols-subgrid{
    grid-template-columns: subgrid !important;
  }
}
@media (min-width: 1025px){
  .md\:grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-10{
    grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-11{
    grid-template-columns: repeat(11, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-12{
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-7{
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-8{
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-9{
    grid-template-columns: repeat(9, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-none{
    grid-template-columns: none !important;
  }
  .md\:grid-cols-subgrid{
    grid-template-columns: subgrid !important;
  }
}
@media (min-width: 1441px){
  .lg\:grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-10{
    grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-11{
    grid-template-columns: repeat(11, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-12{
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-7{
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-8{
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-9{
    grid-template-columns: repeat(9, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-none{
    grid-template-columns: none !important;
  }
  .lg\:grid-cols-subgrid{
    grid-template-columns: subgrid !important;
  }
}
@media (min-width: 1680px){
  .xl\:grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-10{
    grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-11{
    grid-template-columns: repeat(11, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-12{
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-7{
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-8{
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-9{
    grid-template-columns: repeat(9, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-none{
    grid-template-columns: none !important;
  }
  .xl\:grid-cols-subgrid{
    grid-template-columns: subgrid !important;
  }
}

/*# sourceMappingURL=/assets/application-ba27c044.css.map */