@import url("https://fonts.googleapis.com/css2?family=Dancing+Script:wght@600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500;1,600&family=Instrument+Sans:ital,wght@0,300;0,400..700;1,400..700&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");

/* ── Brand tokens ─────────────────────────────────────────────────────── */

/* These defaults are overridden at runtime by root.html.heex via SiteSettings */

:root {
  --brand-primary:      #C8001F;
  --brand-primary-dark: #9B0017;
  --brand-black:        #111111;
  /* Legacy aliases kept for backward compatibility */
  --brand-red:   #C8001F;
  /* Font stacks — overridden per-tenant via SiteSettings */
  --font-script:  "Dancing Script", cursive;
  --font-serif:   "Playfair Display", Georgia, serif;
  --font-sans:    "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  --font-ui:      "Inter", ui-sans-serif, system-ui, sans-serif;
  /* Semantic aliases used by brand utilities below */
  --font-heading: "Playfair Display", Georgia, serif;
  --font-body:    "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
}

/* ── Brand utility classes (CSS-var driven, always themeable) ─────────── */

.btn-brand {
  background-color: var(--brand-primary);
  color: #fff;
  transition: background-color 0.15s;
}

.btn-brand:hover {
  background-color: var(--brand-primary-dark);
}

.text-brand   {
  color: var(--brand-primary);
}

.bg-brand     {
  background-color: var(--brand-primary);
}

.border-brand {
  border-color: var(--brand-primary);
}

.font-heading-brand {
  font-family: var(--font-heading);
}

.font-body-brand    {
  font-family: var(--font-body);
}

.font-script-brand  {
  font-family: var(--font-script);
}

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

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

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #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: Instrument Sans, ui-sans-serif, system-ui, sans-serif;
  /* 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] {
  display: none;
}

[type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select{
  -webkit-appearance:      none;
     -moz-appearance:      none;
          appearance:      none;
  background-color:      #fff;
  border-color:      #6b7280;
  border-width:      1px;
  border-radius:      0px;
  padding-top:      0.5rem;
  padding-right:      0.75rem;
  padding-bottom:      0.5rem;
  padding-left:      0.75rem;
  font-size:      1rem;
  line-height:      1.5rem;
  --tw-shadow:      0 0 #0000;
}

[type='text']:focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus{
  outline:      2px solid transparent;
  outline-offset:      2px;
  --tw-ring-inset:      var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width:      0px;
  --tw-ring-offset-color:      #fff;
  --tw-ring-color:      #2563eb;
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-color:      #2563eb;
}

input::-moz-placeholder, textarea::-moz-placeholder{
  color:      #6b7280;
  opacity:      1;
}

input::placeholder,textarea::placeholder{
  color:      #6b7280;
  opacity:      1;
}

::-webkit-datetime-edit-fields-wrapper{
  padding:      0;
}

::-webkit-date-and-time-value{
  min-height:      1.5em;
}

::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{
  padding-top:      0;
  padding-bottom:      0;
}

select{
  background-image:      url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position:      right 0.5rem center;
  background-repeat:      no-repeat;
  background-size:      1.5em 1.5em;
  padding-right:      2.5rem;
  -webkit-print-color-adjust:      exact;
          print-color-adjust:      exact;
}

[multiple]{
  background-image:      initial;
  background-position:      initial;
  background-repeat:      unset;
  background-size:      initial;
  padding-right:      0.75rem;
  -webkit-print-color-adjust:      unset;
          print-color-adjust:      unset;
}

[type='checkbox'],[type='radio']{
  -webkit-appearance:      none;
     -moz-appearance:      none;
          appearance:      none;
  padding:      0;
  -webkit-print-color-adjust:      exact;
          print-color-adjust:      exact;
  display:      inline-block;
  vertical-align:      middle;
  background-origin:      border-box;
  -webkit-user-select:      none;
     -moz-user-select:      none;
          user-select:      none;
  flex-shrink:      0;
  height:      1rem;
  width:      1rem;
  color:      #2563eb;
  background-color:      #fff;
  border-color:      #6b7280;
  border-width:      1px;
  --tw-shadow:      0 0 #0000;
}

[type='checkbox']{
  border-radius:      0px;
}

[type='radio']{
  border-radius:      100%;
}

[type='checkbox']:focus,[type='radio']:focus{
  outline:      2px solid transparent;
  outline-offset:      2px;
  --tw-ring-inset:      var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width:      2px;
  --tw-ring-offset-color:      #fff;
  --tw-ring-color:      #2563eb;
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

[type='checkbox']:checked,[type='radio']:checked{
  border-color:      transparent;
  background-color:      currentColor;
  background-size:      100% 100%;
  background-position:      center;
  background-repeat:      no-repeat;
}

[type='checkbox']:checked{
  background-image:      url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
}

[type='radio']:checked{
  background-image:      url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
}

[type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus{
  border-color:      transparent;
  background-color:      currentColor;
}

[type='checkbox']:indeterminate{
  background-image:      url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
  border-color:      transparent;
  background-color:      currentColor;
  background-size:      100% 100%;
  background-position:      center;
  background-repeat:      no-repeat;
}

[type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus{
  border-color:      transparent;
  background-color:      currentColor;
}

[type='file']{
  background:      unset;
  border-color:      inherit;
  border-width:      0;
  border-radius:      0;
  padding:      0;
  font-size:      unset;
  line-height:      inherit;
}

[type='file']:focus{
  outline:      1px solid ButtonText;
  outline:      1px auto -webkit-focus-ring-color;
}

*, ::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:       ;
}

.container{
  width:      100%;
}

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

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

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

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

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

.hero-arrow-left-solid{
  --hero-arrow-left-solid:      url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">  <path fill-rule="evenodd" d="M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z" clip-rule="evenodd"/></svg>');
  -webkit-mask:      var(--hero-arrow-left-solid);
  mask:      var(--hero-arrow-left-solid);
  -webkit-mask-repeat:      no-repeat;
          mask-repeat:      no-repeat;
  background-color:      currentColor;
  vertical-align:      middle;
  display:      inline-block;
  width:      1.5rem;
  height:      1.5rem;
}

.hero-arrow-path{
  --hero-arrow-path:      url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon">  <path stroke-linecap="round" stroke-linejoin="round" d="M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0 3.181 3.183a8.25 8.25 0 0 0 13.803-3.7M4.031 9.865a8.25 8.25 0 0 1 13.803-3.7l3.181 3.182m0-4.991v4.99"/></svg>');
  -webkit-mask:      var(--hero-arrow-path);
  mask:      var(--hero-arrow-path);
  -webkit-mask-repeat:      no-repeat;
          mask-repeat:      no-repeat;
  background-color:      currentColor;
  vertical-align:      middle;
  display:      inline-block;
  width:      1.5rem;
  height:      1.5rem;
}

.hero-exclamation-circle-mini{
  --hero-exclamation-circle-mini:      url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">  <path fill-rule="evenodd" d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-8-5a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-1.5 0v-4.5A.75.75 0 0 1 10 5Zm0 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd"/></svg>');
  -webkit-mask:      var(--hero-exclamation-circle-mini);
  mask:      var(--hero-exclamation-circle-mini);
  -webkit-mask-repeat:      no-repeat;
          mask-repeat:      no-repeat;
  background-color:      currentColor;
  vertical-align:      middle;
  display:      inline-block;
  width:      1.25rem;
  height:      1.25rem;
}

.hero-information-circle-mini{
  --hero-information-circle-mini:      url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" data-slot="icon">  <path fill-rule="evenodd" d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-7-4a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM9 9a.75.75 0 0 0 0 1.5h.253a.25.25 0 0 1 .244.304l-.459 2.066A1.75 1.75 0 0 0 10.747 15H11a.75.75 0 0 0 0-1.5h-.253a.25.25 0 0 1-.244-.304l.459-2.066A1.75 1.75 0 0 0 9.253 9H9Z" clip-rule="evenodd"/></svg>');
  -webkit-mask:      var(--hero-information-circle-mini);
  mask:      var(--hero-information-circle-mini);
  -webkit-mask-repeat:      no-repeat;
          mask-repeat:      no-repeat;
  background-color:      currentColor;
  vertical-align:      middle;
  display:      inline-block;
  width:      1.25rem;
  height:      1.25rem;
}

.hero-x-mark-solid{
  --hero-x-mark-solid:      url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon">  <path fill-rule="evenodd" d="M5.47 5.47a.75.75 0 0 1 1.06 0L12 10.94l5.47-5.47a.75.75 0 1 1 1.06 1.06L13.06 12l5.47 5.47a.75.75 0 1 1-1.06 1.06L12 13.06l-5.47 5.47a.75.75 0 0 1-1.06-1.06L10.94 12 5.47 6.53a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd"/></svg>');
  -webkit-mask:      var(--hero-x-mark-solid);
  mask:      var(--hero-x-mark-solid);
  -webkit-mask-repeat:      no-repeat;
          mask-repeat:      no-repeat;
  background-color:      currentColor;
  vertical-align:      middle;
  display:      inline-block;
  width:      1.5rem;
  height:      1.5rem;
}

.sr-only{
  position:      absolute;
  width:      1px;
  height:      1px;
  padding:      0;
  margin:      -1px;
  overflow:      hidden;
  clip:      rect(0, 0, 0, 0);
  white-space:      nowrap;
  border-width:      0;
}

.pointer-events-none{
  pointer-events:      none;
}

.visible{
  visibility:      visible;
}

.invisible{
  visibility:      hidden;
}

.static{
  position:      static;
}

.fixed{
  position:      fixed;
}

.absolute{
  position:      absolute;
}

.relative{
  position:      relative;
}

.sticky{
  position:      sticky;
}

.inset-0{
  inset:      0px;
}

.-inset-y-px{
  top:      -1px;
  bottom:      -1px;
}

.inset-x-0{
  left:      0px;
  right:      0px;
}

.inset-y-0{
  top:      0px;
  bottom:      0px;
}

.-bottom-10{
  bottom:      -2.5rem;
}

.-bottom-8{
  bottom:      -2rem;
}

.-left-16{
  left:      -4rem;
}

.-left-3{
  left:      -0.75rem;
}

.-left-4{
  left:      -1rem;
}

.-left-6{
  left:      -1.5rem;
}

.-right-0{
  right:      -0px;
}

.-right-0\.5{
  right:      -0.125rem;
}

.-right-1{
  right:      -0.25rem;
}

.-right-12{
  right:      -3rem;
}

.-right-2{
  right:      -0.5rem;
}

.-right-3{
  right:      -0.75rem;
}

.-right-4{
  right:      -1rem;
}

.-right-6{
  right:      -1.5rem;
}

.-right-8{
  right:      -2rem;
}

.-top-0{
  top:      -0px;
}

.-top-0\.5{
  top:      -0.125rem;
}

.-top-1{
  top:      -0.25rem;
}

.-top-12{
  top:      -3rem;
}

.-top-2{
  top:      -0.5rem;
}

.-top-8{
  top:      -2rem;
}

.bottom-0{
  bottom:      0px;
}

.bottom-2{
  bottom:      0.5rem;
}

.bottom-4{
  bottom:      1rem;
}

.bottom-6{
  bottom:      1.5rem;
}

.left-0{
  left:      0px;
}

.left-1\/2{
  left:      50%;
}

.left-2{
  left:      0.5rem;
}

.left-3{
  left:      0.75rem;
}

.left-3\.5{
  left:      0.875rem;
}

.left-\[40rem\]{
  left:      40rem;
}

.right-0{
  right:      0px;
}

.right-1{
  right:      0.25rem;
}

.right-1\.5{
  right:      0.375rem;
}

.right-2{
  right:      0.5rem;
}

.right-20{
  right:      5rem;
}

.right-3{
  right:      0.75rem;
}

.right-40{
  right:      10rem;
}

.right-5{
  right:      1.25rem;
}

.right-6{
  right:      1.5rem;
}

.top-0{
  top:      0px;
}

.top-1{
  top:      0.25rem;
}

.top-1\/2{
  top:      50%;
}

.top-1\/3{
  top:      33.333333%;
}

.top-2{
  top:      0.5rem;
}

.top-3{
  top:      0.75rem;
}

.top-6{
  top:      1.5rem;
}

.top-\[200px\]{
  top:      200px;
}

.top-full{
  top:      100%;
}

.z-0{
  z-index:      0;
}

.z-10{
  z-index:      10;
}

.z-20{
  z-index:      20;
}

.z-30{
  z-index:      30;
}

.z-40{
  z-index:      40;
}

.z-50{
  z-index:      50;
}

.col-span-full{
  grid-column:      1 / -1;
}

.-m-3{
  margin:      -0.75rem;
}

.-mx-2{
  margin-left:      -0.5rem;
  margin-right:      -0.5rem;
}

.-my-0{
  margin-top:      -0px;
  margin-bottom:      -0px;
}

.-my-0\.5{
  margin-top:      -0.125rem;
  margin-bottom:      -0.125rem;
}

.-my-4{
  margin-top:      -1rem;
  margin-bottom:      -1rem;
}

.mx-2{
  margin-left:      0.5rem;
  margin-right:      0.5rem;
}

.mx-4{
  margin-left:      1rem;
  margin-right:      1rem;
}

.mx-6{
  margin-left:      1.5rem;
  margin-right:      1.5rem;
}

.mx-8{
  margin-left:      2rem;
  margin-right:      2rem;
}

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

.my-1{
  margin-top:      0.25rem;
  margin-bottom:      0.25rem;
}

.my-1\.5{
  margin-top:      0.375rem;
  margin-bottom:      0.375rem;
}

.my-2{
  margin-top:      0.5rem;
  margin-bottom:      0.5rem;
}

.my-8{
  margin-top:      2rem;
  margin-bottom:      2rem;
}

.mb-1{
  margin-bottom:      0.25rem;
}

.mb-1\.5{
  margin-bottom:      0.375rem;
}

.mb-10{
  margin-bottom:      2.5rem;
}

.mb-2{
  margin-bottom:      0.5rem;
}

.mb-3{
  margin-bottom:      0.75rem;
}

.mb-4{
  margin-bottom:      1rem;
}

.mb-5{
  margin-bottom:      1.25rem;
}

.mb-6{
  margin-bottom:      1.5rem;
}

.mb-8{
  margin-bottom:      2rem;
}

.ml-1{
  margin-left:      0.25rem;
}

.ml-1\.5{
  margin-left:      0.375rem;
}

.ml-2{
  margin-left:      0.5rem;
}

.ml-3{
  margin-left:      0.75rem;
}

.ml-4{
  margin-left:      1rem;
}

.ml-7{
  margin-left:      1.75rem;
}

.ml-auto{
  margin-left:      auto;
}

.mr-2{
  margin-right:      0.5rem;
}

.mt-0{
  margin-top:      0px;
}

.mt-0\.5{
  margin-top:      0.125rem;
}

.mt-1{
  margin-top:      0.25rem;
}

.mt-1\.5{
  margin-top:      0.375rem;
}

.mt-10{
  margin-top:      2.5rem;
}

.mt-11{
  margin-top:      2.75rem;
}

.mt-12{
  margin-top:      3rem;
}

.mt-14{
  margin-top:      3.5rem;
}

.mt-16{
  margin-top:      4rem;
}

.mt-2{
  margin-top:      0.5rem;
}

.mt-3{
  margin-top:      0.75rem;
}

.mt-4{
  margin-top:      1rem;
}

.mt-5{
  margin-top:      1.25rem;
}

.mt-6{
  margin-top:      1.5rem;
}

.mt-8{
  margin-top:      2rem;
}

.mt-auto{
  margin-top:      auto;
}

.line-clamp-1{
  overflow:      hidden;
  display:      -webkit-box;
  -webkit-box-orient:      vertical;
  -webkit-line-clamp:      1;
}

.line-clamp-2{
  overflow:      hidden;
  display:      -webkit-box;
  -webkit-box-orient:      vertical;
  -webkit-line-clamp:      2;
}

.block{
  display:      block;
}

.inline-block{
  display:      inline-block;
}

.inline{
  display:      inline;
}

.flex{
  display:      flex;
}

.inline-flex{
  display:      inline-flex;
}

.table{
  display:      table;
}

.grid{
  display:      grid;
}

.contents{
  display:      contents;
}

.hidden{
  display:      none;
}

.aspect-\[3\/4\]{
  aspect-ratio:      3/4;
}

.aspect-\[4\/3\]{
  aspect-ratio:      4/3;
}

.aspect-square{
  aspect-ratio:      1 / 1;
}

.h-1{
  height:      0.25rem;
}

.h-1\.5{
  height:      0.375rem;
}

.h-10{
  height:      2.5rem;
}

.h-11{
  height:      2.75rem;
}

.h-12{
  height:      3rem;
}

.h-14{
  height:      3.5rem;
}

.h-16{
  height:      4rem;
}

.h-2{
  height:      0.5rem;
}

.h-2\.5{
  height:      0.625rem;
}

.h-20{
  height:      5rem;
}

.h-24{
  height:      6rem;
}

.h-28{
  height:      7rem;
}

.h-3{
  height:      0.75rem;
}

.h-3\.5{
  height:      0.875rem;
}

.h-32{
  height:      8rem;
}

.h-36{
  height:      9rem;
}

.h-4{
  height:      1rem;
}

.h-40{
  height:      10rem;
}

.h-48{
  height:      12rem;
}

.h-5{
  height:      1.25rem;
}

.h-52{
  height:      13rem;
}

.h-56{
  height:      14rem;
}

.h-6{
  height:      1.5rem;
}

.h-64{
  height:      16rem;
}

.h-7{
  height:      1.75rem;
}

.h-8{
  height:      2rem;
}

.h-9{
  height:      2.25rem;
}

.h-\[300px\]{
  height:      300px;
}

.h-\[42px\]{
  height:      42px;
}

.h-\[520px\]{
  height:      520px;
}

.h-\[calc\(100vh-220px\)\]{
  height:      calc(100vh - 220px);
}

.h-fit{
  height:      -moz-fit-content;
  height:      fit-content;
}

.h-full{
  height:      100%;
}

.h-px{
  height:      1px;
}

.h-screen{
  height:      100vh;
}

.min-h-\[280px\]{
  min-height:      280px;
}

.min-h-\[380px\]{
  min-height:      380px;
}

.min-h-\[420px\]{
  min-height:      420px;
}

.min-h-\[500px\]{
  min-height:      500px;
}

.min-h-\[6rem\]{
  min-height:      6rem;
}

.min-h-full{
  min-height:      100%;
}

.min-h-screen{
  min-height:      100vh;
}

.w-1{
  width:      0.25rem;
}

.w-1\.5{
  width:      0.375rem;
}

.w-1\/4{
  width:      25%;
}

.w-10{
  width:      2.5rem;
}

.w-11{
  width:      2.75rem;
}

.w-12{
  width:      3rem;
}

.w-14{
  width:      3.5rem;
}

.w-16{
  width:      4rem;
}

.w-2{
  width:      0.5rem;
}

.w-2\.5{
  width:      0.625rem;
}

.w-20{
  width:      5rem;
}

.w-24{
  width:      6rem;
}

.w-3{
  width:      0.75rem;
}

.w-3\.5{
  width:      0.875rem;
}

.w-32{
  width:      8rem;
}

.w-36{
  width:      9rem;
}

.w-4{
  width:      1rem;
}

.w-44{
  width:      11rem;
}

.w-48{
  width:      12rem;
}

.w-5{
  width:      1.25rem;
}

.w-52{
  width:      13rem;
}

.w-56{
  width:      14rem;
}

.w-6{
  width:      1.5rem;
}

.w-7{
  width:      1.75rem;
}

.w-72{
  width:      18rem;
}

.w-8{
  width:      2rem;
}

.w-80{
  width:      20rem;
}

.w-9{
  width:      2.25rem;
}

.w-\[100\%\]{
  width:      100%;
}

.w-\[220px\]{
  width:      220px;
}

.w-\[300px\]{
  width:      300px;
}

.w-\[360px\]{
  width:      360px;
}

.w-\[40rem\]{
  width:      40rem;
}

.w-fit{
  width:      -moz-fit-content;
  width:      fit-content;
}

.w-full{
  width:      100%;
}

.min-w-0{
  min-width:      0px;
}

.max-w-2xl{
  max-width:      42rem;
}

.max-w-3xl{
  max-width:      48rem;
}

.max-w-7xl{
  max-width:      80rem;
}

.max-w-\[240px\]{
  max-width:      240px;
}

.max-w-md{
  max-width:      28rem;
}

.max-w-none{
  max-width:      none;
}

.max-w-sm{
  max-width:      24rem;
}

.max-w-xl{
  max-width:      36rem;
}

.max-w-xs{
  max-width:      20rem;
}

.flex-1{
  flex:      1 1 0%;
}

.flex-none{
  flex:      none;
}

.flex-shrink-0{
  flex-shrink:      0;
}

.shrink-0{
  flex-shrink:      0;
}

.origin-top{
  transform-origin:      top;
}

.-translate-x-1\/2{
  --tw-translate-x:      -50%;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

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

.-translate-y-1\/2{
  --tw-translate-y:      -50%;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

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

.translate-x-0{
  --tw-translate-x:      0px;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-0{
  --tw-translate-y:      0px;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-4{
  --tw-translate-y:      1rem;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180{
  --tw-rotate:      180deg;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-90{
  --tw-rotate:      90deg;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-95{
  --tw-scale-x:      .95;
  --tw-scale-y:      .95;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform{
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes ping{
  75%, 100%{
    transform:      scale(2);
    opacity:      0;
  }
}

.animate-ping{
  animation:      ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
}

@keyframes pulse{
  50%{
    opacity:      .5;
  }
}

.animate-pulse{
  animation:      pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes spin{
  to{
    transform:      rotate(360deg);
  }
}

.animate-spin{
  animation:      spin 1s linear infinite;
}

.cursor-default{
  cursor:      default;
}

.cursor-not-allowed{
  cursor:      not-allowed;
}

.cursor-pointer{
  cursor:      pointer;
}

.select-none{
  -webkit-user-select:      none;
     -moz-user-select:      none;
          user-select:      none;
}

.resize-none{
  resize:      none;
}

.resize-y{
  resize:      vertical;
}

.list-disc{
  list-style-type:      disc;
}

.appearance-none{
  -webkit-appearance:      none;
     -moz-appearance:      none;
          appearance:      none;
}

.grid-cols-1{
  grid-template-columns:      repeat(1, minmax(0, 1fr));
}

.grid-cols-2{
  grid-template-columns:      repeat(2, minmax(0, 1fr));
}

.grid-cols-3{
  grid-template-columns:      repeat(3, minmax(0, 1fr));
}

.flex-col{
  flex-direction:      column;
}

.flex-wrap{
  flex-wrap:      wrap;
}

.items-start{
  align-items:      flex-start;
}

.items-end{
  align-items:      flex-end;
}

.items-center{
  align-items:      center;
}

.items-baseline{
  align-items:      baseline;
}

.justify-start{
  justify-content:      flex-start;
}

.justify-end{
  justify-content:      flex-end;
}

.justify-center{
  justify-content:      center;
}

.justify-between{
  justify-content:      space-between;
}

.gap-0{
  gap:      0px;
}

.gap-0\.5{
  gap:      0.125rem;
}

.gap-1{
  gap:      0.25rem;
}

.gap-1\.5{
  gap:      0.375rem;
}

.gap-10{
  gap:      2.5rem;
}

.gap-2{
  gap:      0.5rem;
}

.gap-2\.5{
  gap:      0.625rem;
}

.gap-3{
  gap:      0.75rem;
}

.gap-4{
  gap:      1rem;
}

.gap-5{
  gap:      1.25rem;
}

.gap-6{
  gap:      1.5rem;
}

.gap-8{
  gap:      2rem;
}

.gap-px{
  gap:      1px;
}

.gap-x-6{
  -moz-column-gap:      1.5rem;
       column-gap:      1.5rem;
}

.gap-y-4{
  row-gap:      1rem;
}

.space-y-0 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(0px * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(0px * var(--tw-space-y-reverse));
}

.space-y-0\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(0.125rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(0.125rem * var(--tw-space-y-reverse));
}

.space-y-1 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(0.25rem * var(--tw-space-y-reverse));
}

.space-y-1\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(0.375rem * var(--tw-space-y-reverse));
}

.space-y-12 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(3rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(3rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-2\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(0.625rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(0.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(1rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(1.5rem * var(--tw-space-y-reverse));
}

.space-y-7 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(1.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(1.75rem * var(--tw-space-y-reverse));
}

.space-y-8 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse:      0;
  margin-top:      calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:      calc(2rem * var(--tw-space-y-reverse));
}

.divide-x > :not([hidden]) ~ :not([hidden]){
  --tw-divide-x-reverse:      0;
  border-right-width:      calc(1px * var(--tw-divide-x-reverse));
  border-left-width:      calc(1px * calc(1 - var(--tw-divide-x-reverse)));
}

.divide-y > :not([hidden]) ~ :not([hidden]){
  --tw-divide-y-reverse:      0;
  border-top-width:      calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width:      calc(1px * var(--tw-divide-y-reverse));
}

.divide-gray-100 > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity:      1;
  border-color:      rgb(243 244 246 / var(--tw-divide-opacity));
}

.divide-gray-300 > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity:      1;
  border-color:      rgb(209 213 219 / var(--tw-divide-opacity));
}

.divide-gray-50 > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity:      1;
  border-color:      rgb(249 250 251 / var(--tw-divide-opacity));
}

.divide-white\/20 > :not([hidden]) ~ :not([hidden]){
  border-color:      rgb(255 255 255 / 0.2);
}

.divide-zinc-100 > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity:      1;
  border-color:      rgb(244 244 245 / var(--tw-divide-opacity));
}

.overflow-hidden{
  overflow:      hidden;
}

.overflow-x-auto{
  overflow-x:      auto;
}

.overflow-y-auto{
  overflow-y:      auto;
}

.scroll-smooth{
  scroll-behavior:      smooth;
}

.truncate{
  overflow:      hidden;
  text-overflow:      ellipsis;
  white-space:      nowrap;
}

.whitespace-nowrap{
  white-space:      nowrap;
}

.text-balance{
  text-wrap:      balance;
}

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

.rounded{
  border-radius:      0.25rem;
}

.rounded-2xl{
  border-radius:      1rem;
}

.rounded-3xl{
  border-radius:      1.5rem;
}

.rounded-full{
  border-radius:      9999px;
}

.rounded-lg{
  border-radius:      0.5rem;
}

.rounded-md{
  border-radius:      0.375rem;
}

.rounded-xl{
  border-radius:      0.75rem;
}

.rounded-b-xl{
  border-bottom-right-radius:      0.75rem;
  border-bottom-left-radius:      0.75rem;
}

.rounded-tl-sm{
  border-top-left-radius:      0.125rem;
}

.rounded-tr-sm{
  border-top-right-radius:      0.125rem;
}

.border{
  border-width:      1px;
}

.border-0{
  border-width:      0px;
}

.border-2{
  border-width:      2px;
}

.border-y{
  border-top-width:      1px;
  border-bottom-width:      1px;
}

.border-b{
  border-bottom-width:      1px;
}

.border-l{
  border-left-width:      1px;
}

.border-r{
  border-right-width:      1px;
}

.border-r-2{
  border-right-width:      2px;
}

.border-t{
  border-top-width:      1px;
}

.border-\[\#C8001F\]{
  --tw-border-opacity:      1;
  border-color:      rgb(200 0 31 / var(--tw-border-opacity));
}

.border-\[\#C8001F\]\/20{
  border-color:      rgb(200 0 31 / 0.2);
}

.border-\[\#C8001F\]\/30{
  border-color:      rgb(200 0 31 / 0.3);
}

.border-amber-100{
  --tw-border-opacity:      1;
  border-color:      rgb(254 243 199 / var(--tw-border-opacity));
}

.border-amber-300{
  --tw-border-opacity:      1;
  border-color:      rgb(252 211 77 / var(--tw-border-opacity));
}

.border-black{
  --tw-border-opacity:      1;
  border-color:      rgb(0 0 0 / var(--tw-border-opacity));
}

.border-gray-100{
  --tw-border-opacity:      1;
  border-color:      rgb(243 244 246 / var(--tw-border-opacity));
}

.border-gray-200{
  --tw-border-opacity:      1;
  border-color:      rgb(229 231 235 / var(--tw-border-opacity));
}

.border-gray-300{
  --tw-border-opacity:      1;
  border-color:      rgb(209 213 219 / var(--tw-border-opacity));
}

.border-gray-400{
  --tw-border-opacity:      1;
  border-color:      rgb(156 163 175 / var(--tw-border-opacity));
}

.border-gray-50{
  --tw-border-opacity:      1;
  border-color:      rgb(249 250 251 / var(--tw-border-opacity));
}

.border-gray-700{
  --tw-border-opacity:      1;
  border-color:      rgb(55 65 81 / var(--tw-border-opacity));
}

.border-gray-800{
  --tw-border-opacity:      1;
  border-color:      rgb(31 41 55 / var(--tw-border-opacity));
}

.border-gray-900{
  --tw-border-opacity:      1;
  border-color:      rgb(17 24 39 / var(--tw-border-opacity));
}

.border-green-100{
  --tw-border-opacity:      1;
  border-color:      rgb(220 252 231 / var(--tw-border-opacity));
}

.border-green-200{
  --tw-border-opacity:      1;
  border-color:      rgb(187 247 208 / var(--tw-border-opacity));
}

.border-indigo-100{
  --tw-border-opacity:      1;
  border-color:      rgb(224 231 255 / var(--tw-border-opacity));
}

.border-indigo-200{
  --tw-border-opacity:      1;
  border-color:      rgb(199 210 254 / var(--tw-border-opacity));
}

.border-pink-100{
  --tw-border-opacity:      1;
  border-color:      rgb(252 231 243 / var(--tw-border-opacity));
}

.border-pink-200{
  --tw-border-opacity:      1;
  border-color:      rgb(251 207 232 / var(--tw-border-opacity));
}

.border-red-100{
  --tw-border-opacity:      1;
  border-color:      rgb(254 226 226 / var(--tw-border-opacity));
}

.border-red-200{
  --tw-border-opacity:      1;
  border-color:      rgb(254 202 202 / var(--tw-border-opacity));
}

.border-red-300{
  --tw-border-opacity:      1;
  border-color:      rgb(252 165 165 / var(--tw-border-opacity));
}

.border-rose-100{
  --tw-border-opacity:      1;
  border-color:      rgb(255 228 230 / var(--tw-border-opacity));
}

.border-rose-400{
  --tw-border-opacity:      1;
  border-color:      rgb(251 113 133 / var(--tw-border-opacity));
}

.border-transparent{
  border-color:      transparent;
}

.border-violet-100{
  --tw-border-opacity:      1;
  border-color:      rgb(237 233 254 / var(--tw-border-opacity));
}

.border-white{
  --tw-border-opacity:      1;
  border-color:      rgb(255 255 255 / var(--tw-border-opacity));
}

.border-white\/10{
  border-color:      rgb(255 255 255 / 0.1);
}

.border-white\/20{
  border-color:      rgb(255 255 255 / 0.2);
}

.border-white\/40{
  border-color:      rgb(255 255 255 / 0.4);
}

.border-white\/50{
  border-color:      rgb(255 255 255 / 0.5);
}

.border-zinc-200{
  --tw-border-opacity:      1;
  border-color:      rgb(228 228 231 / var(--tw-border-opacity));
}

.border-zinc-300{
  --tw-border-opacity:      1;
  border-color:      rgb(212 212 216 / var(--tw-border-opacity));
}

.bg-\[\#C8001F\]{
  --tw-bg-opacity:      1;
  background-color:      rgb(200 0 31 / var(--tw-bg-opacity));
}

.bg-\[\#C8001F\]\/10{
  background-color:      rgb(200 0 31 / 0.1);
}

.bg-\[\#C8001F\]\/5{
  background-color:      rgb(200 0 31 / 0.05);
}

.bg-\[\#f5f5f3\]{
  --tw-bg-opacity:      1;
  background-color:      rgb(245 245 243 / var(--tw-bg-opacity));
}

.bg-\[\#f9f9f7\]{
  --tw-bg-opacity:      1;
  background-color:      rgb(249 249 247 / var(--tw-bg-opacity));
}

.bg-amber-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(254 243 199 / var(--tw-bg-opacity));
}

.bg-amber-400{
  --tw-bg-opacity:      1;
  background-color:      rgb(251 191 36 / var(--tw-bg-opacity));
}

.bg-amber-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(255 251 235 / var(--tw-bg-opacity));
}

.bg-amber-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(245 158 11 / var(--tw-bg-opacity));
}

.bg-black{
  --tw-bg-opacity:      1;
  background-color:      rgb(0 0 0 / var(--tw-bg-opacity));
}

.bg-black\/20{
  background-color:      rgb(0 0 0 / 0.2);
}

.bg-black\/30{
  background-color:      rgb(0 0 0 / 0.3);
}

.bg-black\/40{
  background-color:      rgb(0 0 0 / 0.4);
}

.bg-black\/50{
  background-color:      rgb(0 0 0 / 0.5);
}

.bg-blue-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(219 234 254 / var(--tw-bg-opacity));
}

.bg-blue-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(239 246 255 / var(--tw-bg-opacity));
}

.bg-blue-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(59 130 246 / var(--tw-bg-opacity));
}

.bg-brand\/5{
  background-color:      rgb(200 0 31 / 0.05);
}

.bg-emerald-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(236 253 245 / var(--tw-bg-opacity));
}

.bg-gray-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(243 244 246 / var(--tw-bg-opacity));
}

.bg-gray-200{
  --tw-bg-opacity:      1;
  background-color:      rgb(229 231 235 / var(--tw-bg-opacity));
}

.bg-gray-300{
  --tw-bg-opacity:      1;
  background-color:      rgb(209 213 219 / var(--tw-bg-opacity));
}

.bg-gray-400{
  --tw-bg-opacity:      1;
  background-color:      rgb(156 163 175 / var(--tw-bg-opacity));
}

.bg-gray-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(249 250 251 / var(--tw-bg-opacity));
}

.bg-gray-50\/50{
  background-color:      rgb(249 250 251 / 0.5);
}

.bg-gray-50\/60{
  background-color:      rgb(249 250 251 / 0.6);
}

.bg-gray-50\/80{
  background-color:      rgb(249 250 251 / 0.8);
}

.bg-gray-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(107 114 128 / var(--tw-bg-opacity));
}

.bg-gray-900{
  --tw-bg-opacity:      1;
  background-color:      rgb(17 24 39 / var(--tw-bg-opacity));
}

.bg-green-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(220 252 231 / var(--tw-bg-opacity));
}

.bg-green-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(240 253 244 / var(--tw-bg-opacity));
}

.bg-green-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(34 197 94 / var(--tw-bg-opacity));
}

.bg-green-600{
  --tw-bg-opacity:      1;
  background-color:      rgb(22 163 74 / var(--tw-bg-opacity));
}

.bg-indigo-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(238 242 255 / var(--tw-bg-opacity));
}

.bg-indigo-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(99 102 241 / var(--tw-bg-opacity));
}

.bg-orange-400{
  --tw-bg-opacity:      1;
  background-color:      rgb(251 146 60 / var(--tw-bg-opacity));
}

.bg-orange-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(249 115 22 / var(--tw-bg-opacity));
}

.bg-pink-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(252 231 243 / var(--tw-bg-opacity));
}

.bg-pink-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(253 242 248 / var(--tw-bg-opacity));
}

.bg-pink-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(236 72 153 / var(--tw-bg-opacity));
}

.bg-purple-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(250 245 255 / var(--tw-bg-opacity));
}

.bg-purple-600{
  --tw-bg-opacity:      1;
  background-color:      rgb(147 51 234 / var(--tw-bg-opacity));
}

.bg-red-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(254 226 226 / var(--tw-bg-opacity));
}

.bg-red-400{
  --tw-bg-opacity:      1;
  background-color:      rgb(248 113 113 / var(--tw-bg-opacity));
}

.bg-red-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(254 242 242 / var(--tw-bg-opacity));
}

.bg-red-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(239 68 68 / var(--tw-bg-opacity));
}

.bg-red-800{
  --tw-bg-opacity:      1;
  background-color:      rgb(153 27 27 / var(--tw-bg-opacity));
}

.bg-rose-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(255 241 242 / var(--tw-bg-opacity));
}

.bg-rose-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(244 63 94 / var(--tw-bg-opacity));
}

.bg-teal-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(20 184 166 / var(--tw-bg-opacity));
}

.bg-transparent{
  background-color:      transparent;
}

.bg-violet-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(237 233 254 / var(--tw-bg-opacity));
}

.bg-violet-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(245 243 255 / var(--tw-bg-opacity));
}

.bg-violet-500{
  --tw-bg-opacity:      1;
  background-color:      rgb(139 92 246 / var(--tw-bg-opacity));
}

.bg-white{
  --tw-bg-opacity:      1;
  background-color:      rgb(255 255 255 / var(--tw-bg-opacity));
}

.bg-white\/10{
  background-color:      rgb(255 255 255 / 0.1);
}

.bg-white\/20{
  background-color:      rgb(255 255 255 / 0.2);
}

.bg-white\/30{
  background-color:      rgb(255 255 255 / 0.3);
}

.bg-white\/5{
  background-color:      rgb(255 255 255 / 0.05);
}

.bg-white\/50{
  background-color:      rgb(255 255 255 / 0.5);
}

.bg-white\/95{
  background-color:      rgb(255 255 255 / 0.95);
}

.bg-zinc-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(250 250 250 / var(--tw-bg-opacity));
}

.bg-zinc-50\/90{
  background-color:      rgb(250 250 250 / 0.9);
}

.bg-zinc-900{
  --tw-bg-opacity:      1;
  background-color:      rgb(24 24 27 / var(--tw-bg-opacity));
}

.bg-gradient-to-br{
  background-image:      linear-gradient(to bottom right, var(--tw-gradient-stops));
}

.bg-gradient-to-r{
  background-image:      linear-gradient(to right, var(--tw-gradient-stops));
}

.bg-gradient-to-t{
  background-image:      linear-gradient(to top, var(--tw-gradient-stops));
}

.from-\[\#C8001F\]{
  --tw-gradient-from:      #C8001F var(--tw-gradient-from-position);
  --tw-gradient-to:      rgb(200 0 31 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops:      var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black\/70{
  --tw-gradient-from:      rgb(0 0 0 / 0.7) var(--tw-gradient-from-position);
  --tw-gradient-to:      rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops:      var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-200{
  --tw-gradient-from:      #e5e7eb var(--tw-gradient-from-position);
  --tw-gradient-to:      rgb(229 231 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops:      var(--tw-gradient-from), var(--tw-gradient-to);
}

.via-\[\#a8001a\]{
  --tw-gradient-to:      rgb(168 0 26 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops:      var(--tw-gradient-from), #a8001a var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-black\/20{
  --tw-gradient-to:      rgb(0 0 0 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops:      var(--tw-gradient-from), rgb(0 0 0 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.to-\[\#6b0010\]{
  --tw-gradient-to:      #6b0010 var(--tw-gradient-to-position);
}

.to-\[\#8b0014\]{
  --tw-gradient-to:      #8b0014 var(--tw-gradient-to-position);
}

.to-gray-300{
  --tw-gradient-to:      #d1d5db var(--tw-gradient-to-position);
}

.to-red-800{
  --tw-gradient-to:      #991b1b var(--tw-gradient-to-position);
}

.to-transparent{
  --tw-gradient-to:      transparent var(--tw-gradient-to-position);
}

.fill-current{
  fill:      currentColor;
}

.fill-cyan-900{
  fill:      #164e63;
}

.fill-gray-200{
  fill:      #e5e7eb;
}

.fill-rose-900{
  fill:      #881337;
}

.fill-zinc-400{
  fill:      #a1a1aa;
}

.object-contain{
  -o-object-fit:      contain;
     object-fit:      contain;
}

.object-cover{
  -o-object-fit:      cover;
     object-fit:      cover;
}

.object-\[40\%\]{
  -o-object-position:      40%;
     object-position:      40%;
}

.object-center{
  -o-object-position:      center;
     object-position:      center;
}

.object-top{
  -o-object-position:      top;
     object-position:      top;
}

.p-0{
  padding:      0px;
}

.p-1{
  padding:      0.25rem;
}

.p-1\.5{
  padding:      0.375rem;
}

.p-14{
  padding:      3.5rem;
}

.p-16{
  padding:      4rem;
}

.p-2{
  padding:      0.5rem;
}

.p-2\.5{
  padding:      0.625rem;
}

.p-3{
  padding:      0.75rem;
}

.p-4{
  padding:      1rem;
}

.p-5{
  padding:      1.25rem;
}

.p-6{
  padding:      1.5rem;
}

.p-7{
  padding:      1.75rem;
}

.p-8{
  padding:      2rem;
}

.px-1{
  padding-left:      0.25rem;
  padding-right:      0.25rem;
}

.px-1\.5{
  padding-left:      0.375rem;
  padding-right:      0.375rem;
}

.px-10{
  padding-left:      2.5rem;
  padding-right:      2.5rem;
}

.px-16{
  padding-left:      4rem;
  padding-right:      4rem;
}

.px-2{
  padding-left:      0.5rem;
  padding-right:      0.5rem;
}

.px-2\.5{
  padding-left:      0.625rem;
  padding-right:      0.625rem;
}

.px-3{
  padding-left:      0.75rem;
  padding-right:      0.75rem;
}

.px-3\.5{
  padding-left:      0.875rem;
  padding-right:      0.875rem;
}

.px-4{
  padding-left:      1rem;
  padding-right:      1rem;
}

.px-5{
  padding-left:      1.25rem;
  padding-right:      1.25rem;
}

.px-6{
  padding-left:      1.5rem;
  padding-right:      1.5rem;
}

.px-7{
  padding-left:      1.75rem;
  padding-right:      1.75rem;
}

.px-8{
  padding-left:      2rem;
  padding-right:      2rem;
}

.py-0{
  padding-top:      0px;
  padding-bottom:      0px;
}

.py-0\.5{
  padding-top:      0.125rem;
  padding-bottom:      0.125rem;
}

.py-1{
  padding-top:      0.25rem;
  padding-bottom:      0.25rem;
}

.py-1\.5{
  padding-top:      0.375rem;
  padding-bottom:      0.375rem;
}

.py-10{
  padding-top:      2.5rem;
  padding-bottom:      2.5rem;
}

.py-12{
  padding-top:      3rem;
  padding-bottom:      3rem;
}

.py-14{
  padding-top:      3.5rem;
  padding-bottom:      3.5rem;
}

.py-16{
  padding-top:      4rem;
  padding-bottom:      4rem;
}

.py-2{
  padding-top:      0.5rem;
  padding-bottom:      0.5rem;
}

.py-2\.5{
  padding-top:      0.625rem;
  padding-bottom:      0.625rem;
}

.py-20{
  padding-top:      5rem;
  padding-bottom:      5rem;
}

.py-24{
  padding-top:      6rem;
  padding-bottom:      6rem;
}

.py-3{
  padding-top:      0.75rem;
  padding-bottom:      0.75rem;
}

.py-3\.5{
  padding-top:      0.875rem;
  padding-bottom:      0.875rem;
}

.py-4{
  padding-top:      1rem;
  padding-bottom:      1rem;
}

.py-5{
  padding-top:      1.25rem;
  padding-bottom:      1.25rem;
}

.py-6{
  padding-top:      1.5rem;
  padding-bottom:      1.5rem;
}

.py-8{
  padding-top:      2rem;
  padding-bottom:      2rem;
}

.pb-10{
  padding-bottom:      2.5rem;
}

.pb-2{
  padding-bottom:      0.5rem;
}

.pb-4{
  padding-bottom:      1rem;
}

.pb-6{
  padding-bottom:      1.5rem;
}

.pl-10{
  padding-left:      2.5rem;
}

.pl-2{
  padding-left:      0.5rem;
}

.pl-2\.5{
  padding-left:      0.625rem;
}

.pl-4{
  padding-left:      1rem;
}

.pl-5{
  padding-left:      1.25rem;
}

.pl-6{
  padding-left:      1.5rem;
}

.pl-8{
  padding-left:      2rem;
}

.pl-9{
  padding-left:      2.25rem;
}

.pr-10{
  padding-right:      2.5rem;
}

.pr-14{
  padding-right:      3.5rem;
}

.pr-3{
  padding-right:      0.75rem;
}

.pr-4{
  padding-right:      1rem;
}

.pr-6{
  padding-right:      1.5rem;
}

.pr-8{
  padding-right:      2rem;
}

.pr-9{
  padding-right:      2.25rem;
}

.pt-1{
  padding-top:      0.25rem;
}

.pt-2{
  padding-top:      0.5rem;
}

.pt-2\.5{
  padding-top:      0.625rem;
}

.pt-3{
  padding-top:      0.75rem;
}

.pt-4{
  padding-top:      1rem;
}

.pt-5{
  padding-top:      1.25rem;
}

.pt-6{
  padding-top:      1.5rem;
}

.pt-8{
  padding-top:      2rem;
}

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

.text-center{
  text-align:      center;
}

.text-right{
  text-align:      right;
}

.font-mono{
  font-family:      ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.font-serif{
  font-family:      Playfair Display, Georgia, serif;
}

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

.text-3xl{
  font-size:      1.875rem;
  line-height:      2.25rem;
}

.text-4xl{
  font-size:      2.25rem;
  line-height:      2.5rem;
}

.text-5xl{
  font-size:      3rem;
  line-height:      1;
}

.text-6xl{
  font-size:      3.75rem;
  line-height:      1;
}

.text-\[0\.8125rem\]{
  font-size:      0.8125rem;
}

.text-\[100px\]{
  font-size:      100px;
}

.text-\[10px\]{
  font-size:      10px;
}

.text-\[11px\]{
  font-size:      11px;
}

.text-\[13px\]{
  font-size:      13px;
}

.text-\[17px\]{
  font-size:      17px;
}

.text-\[280px\]{
  font-size:      280px;
}

.text-\[2rem\]{
  font-size:      2rem;
}

.text-\[9px\]{
  font-size:      9px;
}

.text-base{
  font-size:      1rem;
  line-height:      1.5rem;
}

.text-lg{
  font-size:      1.125rem;
  line-height:      1.75rem;
}

.text-sm{
  font-size:      0.875rem;
  line-height:      1.25rem;
}

.text-xl{
  font-size:      1.25rem;
  line-height:      1.75rem;
}

.text-xs{
  font-size:      0.75rem;
  line-height:      1rem;
}

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

.font-light{
  font-weight:      300;
}

.font-medium{
  font-weight:      500;
}

.font-normal{
  font-weight:      400;
}

.font-semibold{
  font-weight:      600;
}

.uppercase{
  text-transform:      uppercase;
}

.capitalize{
  text-transform:      capitalize;
}

.italic{
  font-style:      italic;
}

.tabular-nums{
  --tw-numeric-spacing:      tabular-nums;
  font-variant-numeric:      var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}

.leading-10{
  line-height:      2.5rem;
}

.leading-5{
  line-height:      1.25rem;
}

.leading-6{
  line-height:      1.5rem;
}

.leading-7{
  line-height:      1.75rem;
}

.leading-8{
  line-height:      2rem;
}

.leading-none{
  line-height:      1;
}

.leading-relaxed{
  line-height:      1.625;
}

.leading-snug{
  line-height:      1.375;
}

.leading-tight{
  line-height:      1.25;
}

.tracking-\[0\.25em\]{
  letter-spacing:      0.25em;
}

.tracking-\[0\.2em\]{
  letter-spacing:      0.2em;
}

.tracking-tight{
  letter-spacing:      -0.025em;
}

.tracking-tighter{
  letter-spacing:      -0.05em;
}

.tracking-wide{
  letter-spacing:      0.025em;
}

.tracking-wider{
  letter-spacing:      0.05em;
}

.tracking-widest{
  letter-spacing:      0.1em;
}

.text-\[\#C8001F\]{
  --tw-text-opacity:      1;
  color:      rgb(200 0 31 / var(--tw-text-opacity));
}

.text-\[\#C8001F\]\/70{
  color:      rgb(200 0 31 / 0.7);
}

.text-amber-400{
  --tw-text-opacity:      1;
  color:      rgb(251 191 36 / var(--tw-text-opacity));
}

.text-amber-600{
  --tw-text-opacity:      1;
  color:      rgb(217 119 6 / var(--tw-text-opacity));
}

.text-amber-700{
  --tw-text-opacity:      1;
  color:      rgb(180 83 9 / var(--tw-text-opacity));
}

.text-black{
  --tw-text-opacity:      1;
  color:      rgb(0 0 0 / var(--tw-text-opacity));
}

.text-blue-600{
  --tw-text-opacity:      1;
  color:      rgb(37 99 235 / var(--tw-text-opacity));
}

.text-blue-700{
  --tw-text-opacity:      1;
  color:      rgb(29 78 216 / var(--tw-text-opacity));
}

.text-brand{
  --tw-text-opacity:      1;
  color:      rgb(200 0 31 / var(--tw-text-opacity));
}

.text-emerald-800{
  --tw-text-opacity:      1;
  color:      rgb(6 95 70 / var(--tw-text-opacity));
}

.text-gray-100{
  --tw-text-opacity:      1;
  color:      rgb(243 244 246 / var(--tw-text-opacity));
}

.text-gray-200{
  --tw-text-opacity:      1;
  color:      rgb(229 231 235 / var(--tw-text-opacity));
}

.text-gray-300{
  --tw-text-opacity:      1;
  color:      rgb(209 213 219 / var(--tw-text-opacity));
}

.text-gray-400{
  --tw-text-opacity:      1;
  color:      rgb(156 163 175 / var(--tw-text-opacity));
}

.text-gray-500{
  --tw-text-opacity:      1;
  color:      rgb(107 114 128 / var(--tw-text-opacity));
}

.text-gray-600{
  --tw-text-opacity:      1;
  color:      rgb(75 85 99 / var(--tw-text-opacity));
}

.text-gray-700{
  --tw-text-opacity:      1;
  color:      rgb(55 65 81 / var(--tw-text-opacity));
}

.text-gray-800{
  --tw-text-opacity:      1;
  color:      rgb(31 41 55 / var(--tw-text-opacity));
}

.text-gray-900{
  --tw-text-opacity:      1;
  color:      rgb(17 24 39 / var(--tw-text-opacity));
}

.text-green-500{
  --tw-text-opacity:      1;
  color:      rgb(34 197 94 / var(--tw-text-opacity));
}

.text-green-600{
  --tw-text-opacity:      1;
  color:      rgb(22 163 74 / var(--tw-text-opacity));
}

.text-green-700{
  --tw-text-opacity:      1;
  color:      rgb(21 128 61 / var(--tw-text-opacity));
}

.text-green-800{
  --tw-text-opacity:      1;
  color:      rgb(22 101 52 / var(--tw-text-opacity));
}

.text-indigo-600{
  --tw-text-opacity:      1;
  color:      rgb(79 70 229 / var(--tw-text-opacity));
}

.text-pink-600{
  --tw-text-opacity:      1;
  color:      rgb(219 39 119 / var(--tw-text-opacity));
}

.text-pink-700{
  --tw-text-opacity:      1;
  color:      rgb(190 24 93 / var(--tw-text-opacity));
}

.text-purple-600{
  --tw-text-opacity:      1;
  color:      rgb(147 51 234 / var(--tw-text-opacity));
}

.text-red-100\/80{
  color:      rgb(254 226 226 / 0.8);
}

.text-red-200{
  --tw-text-opacity:      1;
  color:      rgb(254 202 202 / var(--tw-text-opacity));
}

.text-red-400{
  --tw-text-opacity:      1;
  color:      rgb(248 113 113 / var(--tw-text-opacity));
}

.text-red-500{
  --tw-text-opacity:      1;
  color:      rgb(239 68 68 / var(--tw-text-opacity));
}

.text-red-600{
  --tw-text-opacity:      1;
  color:      rgb(220 38 38 / var(--tw-text-opacity));
}

.text-red-700{
  --tw-text-opacity:      1;
  color:      rgb(185 28 28 / var(--tw-text-opacity));
}

.text-rose-600{
  --tw-text-opacity:      1;
  color:      rgb(225 29 72 / var(--tw-text-opacity));
}

.text-rose-900{
  --tw-text-opacity:      1;
  color:      rgb(136 19 55 / var(--tw-text-opacity));
}

.text-violet-600{
  --tw-text-opacity:      1;
  color:      rgb(124 58 237 / var(--tw-text-opacity));
}

.text-white{
  --tw-text-opacity:      1;
  color:      rgb(255 255 255 / var(--tw-text-opacity));
}

.text-white\/50{
  color:      rgb(255 255 255 / 0.5);
}

.text-white\/60{
  color:      rgb(255 255 255 / 0.6);
}

.text-white\/70{
  color:      rgb(255 255 255 / 0.7);
}

.text-white\/80{
  color:      rgb(255 255 255 / 0.8);
}

.text-yellow-400{
  --tw-text-opacity:      1;
  color:      rgb(250 204 21 / var(--tw-text-opacity));
}

.text-zinc-500{
  --tw-text-opacity:      1;
  color:      rgb(113 113 122 / var(--tw-text-opacity));
}

.text-zinc-600{
  --tw-text-opacity:      1;
  color:      rgb(82 82 91 / var(--tw-text-opacity));
}

.text-zinc-700{
  --tw-text-opacity:      1;
  color:      rgb(63 63 70 / var(--tw-text-opacity));
}

.text-zinc-800{
  --tw-text-opacity:      1;
  color:      rgb(39 39 42 / var(--tw-text-opacity));
}

.text-zinc-900{
  --tw-text-opacity:      1;
  color:      rgb(24 24 27 / var(--tw-text-opacity));
}

.underline{
  text-decoration-line:      underline;
}

.line-through{
  text-decoration-line:      line-through;
}

.decoration-white\/50{
  text-decoration-color:      rgb(255 255 255 / 0.5);
}

.underline-offset-2{
  text-underline-offset:      2px;
}

.underline-offset-4{
  text-underline-offset:      4px;
}

.placeholder-gray-300::-moz-placeholder{
  --tw-placeholder-opacity:      1;
  color:      rgb(209 213 219 / var(--tw-placeholder-opacity));
}

.placeholder-gray-300::placeholder{
  --tw-placeholder-opacity:      1;
  color:      rgb(209 213 219 / var(--tw-placeholder-opacity));
}

.placeholder-gray-400::-moz-placeholder{
  --tw-placeholder-opacity:      1;
  color:      rgb(156 163 175 / var(--tw-placeholder-opacity));
}

.placeholder-gray-400::placeholder{
  --tw-placeholder-opacity:      1;
  color:      rgb(156 163 175 / var(--tw-placeholder-opacity));
}

.placeholder-gray-500::-moz-placeholder{
  --tw-placeholder-opacity:      1;
  color:      rgb(107 114 128 / var(--tw-placeholder-opacity));
}

.placeholder-gray-500::placeholder{
  --tw-placeholder-opacity:      1;
  color:      rgb(107 114 128 / var(--tw-placeholder-opacity));
}

.placeholder-white\/50::-moz-placeholder{
  color:      rgb(255 255 255 / 0.5);
}

.placeholder-white\/50::placeholder{
  color:      rgb(255 255 255 / 0.5);
}

.accent-\[\#C8001F\]{
  accent-color:      #C8001F;
}

.opacity-0{
  opacity:      0;
}

.opacity-10{
  opacity:      0.1;
}

.opacity-100{
  opacity:      1;
}

.opacity-20{
  opacity:      0.2;
}

.opacity-25{
  opacity:      0.25;
}

.opacity-30{
  opacity:      0.3;
}

.opacity-40{
  opacity:      0.4;
}

.opacity-50{
  opacity:      0.5;
}

.opacity-60{
  opacity:      0.6;
}

.opacity-75{
  opacity:      0.75;
}

.opacity-90{
  opacity:      0.9;
}

.opacity-\[0\.04\]{
  opacity:      0.04;
}

.opacity-\[0\.06\]{
  opacity:      0.06;
}

.shadow-2xl{
  --tw-shadow:      0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored:      0 25px 50px -12px var(--tw-shadow-color);
  box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

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

.shadow-md{
  --tw-shadow:      0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored:      0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-sm{
  --tw-shadow:      0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored:      0 1px 2px 0 var(--tw-shadow-color);
  box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-xl{
  --tw-shadow:      0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored:      0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[\#C8001F\]\/30{
  --tw-shadow-color:      rgb(200 0 31 / 0.3);
  --tw-shadow:      var(--tw-shadow-colored);
}

.shadow-zinc-700\/10{
  --tw-shadow-color:      rgb(63 63 70 / 0.1);
  --tw-shadow:      var(--tw-shadow-colored);
}

.outline{
  outline-style:      solid;
}

.ring{
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-1{
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-2{
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-\[\#C8001F\]{
  --tw-ring-opacity:      1;
  --tw-ring-color:      rgb(200 0 31 / var(--tw-ring-opacity));
}

.ring-\[\#C8001F\]\/60{
  --tw-ring-color:      rgb(200 0 31 / 0.6);
}

.ring-black\/5{
  --tw-ring-color:      rgb(0 0 0 / 0.05);
}

.ring-emerald-500{
  --tw-ring-opacity:      1;
  --tw-ring-color:      rgb(16 185 129 / var(--tw-ring-opacity));
}

.ring-gray-400{
  --tw-ring-opacity:      1;
  --tw-ring-color:      rgb(156 163 175 / var(--tw-ring-opacity));
}

.ring-gray-900{
  --tw-ring-opacity:      1;
  --tw-ring-color:      rgb(17 24 39 / var(--tw-ring-opacity));
}

.ring-rose-500{
  --tw-ring-opacity:      1;
  --tw-ring-color:      rgb(244 63 94 / var(--tw-ring-opacity));
}

.ring-white{
  --tw-ring-opacity:      1;
  --tw-ring-color:      rgb(255 255 255 / var(--tw-ring-opacity));
}

.ring-white\/30{
  --tw-ring-color:      rgb(255 255 255 / 0.3);
}

.ring-zinc-700\/10{
  --tw-ring-color:      rgb(63 63 70 / 0.1);
}

.ring-offset-1{
  --tw-ring-offset-width:      1px;
}

.ring-offset-2{
  --tw-ring-offset-width:      2px;
}

.blur{
  --tw-blur:      blur(8px);
  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);
}

.drop-shadow{
  --tw-drop-shadow:      drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  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);
}

.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);
}

.backdrop-blur{
  --tw-backdrop-blur:      blur(8px);
  -webkit-backdrop-filter:      var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
          backdrop-filter:      var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-md{
  --tw-backdrop-blur:      blur(12px);
  -webkit-backdrop-filter:      var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
          backdrop-filter:      var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-sm{
  --tw-backdrop-blur:      blur(4px);
  -webkit-backdrop-filter:      var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
          backdrop-filter:      var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.transition{
  transition-property:      color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property:      color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property:      color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:      150ms;
}

.transition-\[clip-path\]{
  transition-property:      -webkit-clip-path;
  transition-property:      clip-path;
  transition-property:      clip-path, -webkit-clip-path;
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:      150ms;
}

.transition-all{
  transition-property:      all;
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:      150ms;
}

.transition-colors{
  transition-property:      color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:      150ms;
}

.transition-opacity{
  transition-property:      opacity;
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:      150ms;
}

.transition-shadow{
  transition-property:      box-shadow;
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:      150ms;
}

.transition-transform{
  transition-property:      transform;
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:      150ms;
}

.duration-1000{
  transition-duration:      1000ms;
}

.duration-200{
  transition-duration:      200ms;
}

.duration-300{
  transition-duration:      300ms;
}

.duration-500{
  transition-duration:      500ms;
}

.duration-700{
  transition-duration:      700ms;
}

.ease-in{
  transition-timing-function:      cubic-bezier(0.4, 0, 1, 1);
}

.ease-in-out{
  transition-timing-function:      cubic-bezier(0.4, 0, 0.2, 1);
}

.ease-out{
  transition-timing-function:      cubic-bezier(0, 0, 0.2, 1);
}

.\[scrollbar-gutter\:stable\]{
  scrollbar-gutter:      stable;
}

/* ---------------------------------------------------------------------------
   Instrument Sans & Inter – font-family + weight utilities
   Use: .font-instrument, .font-instrument-medium, .font-instrument-bold, etc.
   --------------------------------------------------------------------------- */

.font-instrument-light {
  font-family: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  font-weight: 300;
}

.font-instrument {
  font-family: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  font-weight: 400;
}

.font-instrument-medium {
  font-family: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  font-weight: 500;
}

.font-instrument-semibold {
  font-family: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  font-weight: 600;
}

.font-instrument-bold {
  font-family: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  font-weight: 700;
}

.font-inter-thin {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 100;
}

.font-inter-extralight {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 200;
}

.font-inter-light {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 300;
}

.font-inter {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 400;
}

.font-inter-medium {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 500;
}

.font-inter-semibold {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 600;
}

.font-inter-bold {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 700;
}

.font-inter-extrabold {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 800;
}

.font-inter-black {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-weight: 900;
}

/* ── Site-wide base ───────────────────────────────────────────────────── */

body {
  font-family: var(--font-ui);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ── Brand / script logo ─────────────────────────────────────────────── */

/* The flowing "Kulola." signature matches the logo script */

.brand-logo,
.font-script {
  font-family: var(--font-script) !important;
  font-weight: 700;
  letter-spacing: 0.01em;
}

/* ── Serif editorial headings ────────────────────────────────────────── */

.font-serif-display {
  font-family: var(--font-serif);
}

/* ── Frontend store pages ─────────────────────────────────────────────── */

.page-typography {
  font-family: var(--font-ui);
  font-weight: 400;
}

/* h1 + h2 → Playfair Display (editorial, high-fashion) */

.page-typography h1,
.page-typography h2 {
  font-family: var(--font-serif);
  letter-spacing: -0.01em;
  line-height: 1.1;
}

.page-typography h1 {
  font-weight: 800;
  letter-spacing: -0.02em;
}

.page-typography h2 {
  font-weight: 700;
}

/* h3–h6 → Instrument Sans (clean, structured) */

.page-typography h3,
.page-typography h4,
.page-typography h5,
.page-typography h6 {
  font-family: var(--font-sans);
  font-weight: 600;
}

/* Nav links, buttons, UI controls → Inter */

.page-typography header nav a,
.page-typography header button:not([aria-label]),
.page-typography header .text-sm.font-medium,
.page-typography a.rounded-full[href],
.page-typography button.rounded-full,
.page-typography .rounded-full.border.px-4.py-2,
.page-typography main select,
.page-typography .category-sidebar button {
  font-family: var(--font-ui);
  font-weight: 500;
}

/* Search placeholder */

.page-typography header input::-moz-placeholder {
  font-family: var(--font-ui);
  font-weight: 300;
}

.page-typography header input::placeholder {
  font-family: var(--font-ui);
  font-weight: 300;
}

/* Uppercase micro labels (SPRING 2025, etc.) → Instrument Sans */

.page-typography .text-xs.uppercase,
.page-typography .text-xs.font-semibold.uppercase {
  font-family: var(--font-sans);
  font-weight: 500;
  letter-spacing: 0.08em;
}

/* Hero stat numbers → Playfair Display italic for drama */

.page-typography .hero-content p.text-3xl,
.page-typography .hero-content p.text-4xl {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 600;
}

/* Countdown numbers → Instrument Sans tabular */

.page-typography #countdown-section .font-display {
  font-family: var(--font-sans);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

/* Body copy */

.page-typography p:not(.text-3xl):not(.text-4xl):not(.text-2xl) {
  font-weight: 400;
  line-height: 1.65;
}

/* Product names in cards → Instrument Sans */

.page-typography .product-name {
  font-family: var(--font-sans);
  font-weight: 600;
}

/* Section eyebrows / taglines → small script accent */

.font-tagline {
  font-family: var(--font-script);
  font-weight: 600;
  color: var(--brand-red);
}

/* Remove Swiper's default arrow content */

.new-arrivals-swiper .swiper-button-prev::after,
.new-arrivals-swiper .swiper-button-next::after {
  content: none;
}

/* Navigation buttons */

.new-arrivals-nav-btn {
  opacity: 1;
  transition: all 0.2s ease;
}

.new-arrivals-nav-btn.opacity-40 {
  opacity: 0.4;
}

.related-products-swiper .swiper-button-prev::after,
.related-products-swiper .swiper-button-next::after {
  content: none;
}

.related-products-nav-btn {
  opacity: 1;
  transition: all 0.2s ease;
}

.related-products-nav-btn.opacity-40 {
  opacity: 0.4;
}

/* Video banner: slow, smooth overlay reveal */

#video-reveal-container {
  will-change: clip-path;
  transition: -webkit-clip-path 1.2s ease-out;
  transition: clip-path 1.2s ease-out;
  transition: clip-path 1.2s ease-out, -webkit-clip-path 1.2s ease-out;
}

/* Countdown section */

.tabular-nums {
  font-variant-numeric: tabular-nums;
}

/* Optional: Add a custom display font for the numbers */

/* If you're using a Google Font like Inter or DM Sans, the numbers will look great */

/* Ensure numbers don't jump around */

#countdown-days,
#countdown-hours,
#countdown-minutes,
#countdown-seconds {
  min-width: 1.5ch;
  display: inline-block;
}

/* Dot pattern animation (optional) */

@keyframes dot-float {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-5px);
  }
}

/* Footer logo marquee - slower animation */

@keyframes marquee-slow {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

.animate-marquee-slow {
  animation: marquee-slow 30s linear infinite;
}

/* Custom scrollbar for bundle section */

.lg\:overflow-y-auto::-webkit-scrollbar {
  width: 6px;
}

.lg\:overflow-y-auto::-webkit-scrollbar-track {
  background: #f3f4f6;
}

.lg\:overflow-y-auto::-webkit-scrollbar-thumb {
  background: #d1d5db;
  border-radius: 3px;
}

.lg\:overflow-y-auto::-webkit-scrollbar-thumb:hover {
  background: #9ca3af;
}

/* Hide scrollbar but keep functionality (optional) */

.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* Hero background marquee - very slow */

@keyframes marquee-slow {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-33.333%);
  }
}

.animate-marquee-slow {
  animation: marquee-slow 40s linear infinite;
}

/* Hero reveal */

#hero-overlay {
  will-change: clip-path;
}

#hero-image {
  will-change: transform;
}

.hero-content {
  will-change: opacity, transform;
}

/* Marquee animation */

@keyframes marquee-slow {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-33.333%);
  }
}

.animate-marquee-slow {
  animation: marquee-slow 40s linear infinite;
}

/* Scroll reveal: initial state + transition, then .in-view for final state */

[data-motion-reveal] {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-motion-reveal].in-view {
  opacity: 1;
  transform: translateY(0);
}

[data-motion-reveal][data-motion-direction="down"] {
  transform: translateY(-28px);
}

[data-motion-reveal][data-motion-direction="down"].in-view {
  transform: translateY(0);
}

[data-motion-reveal][data-motion-direction="left"] {
  transform: translateX(28px);
}

[data-motion-reveal][data-motion-direction="left"].in-view {
  transform: translateX(0);
}

[data-motion-reveal][data-motion-direction="right"] {
  transform: translateX(-28px);
}

[data-motion-reveal][data-motion-direction="right"].in-view {
  transform: translateX(0);
}

/* Category page: mobile filters sidebar */

@media (max-width: 1023px) {
  .category-sidebar {
    padding-top: env(safe-area-inset-top, 0);
  }
}

.file\:mr-4::file-selector-button{
  margin-right:      1rem;
}

.file\:rounded-xl::file-selector-button{
  border-radius:      0.75rem;
}

.file\:border-0::file-selector-button{
  border-width:      0px;
}

.file\:bg-gray-100::file-selector-button{
  --tw-bg-opacity:      1;
  background-color:      rgb(243 244 246 / var(--tw-bg-opacity));
}

.file\:px-4::file-selector-button{
  padding-left:      1rem;
  padding-right:      1rem;
}

.file\:py-2::file-selector-button{
  padding-top:      0.5rem;
  padding-bottom:      0.5rem;
}

.file\:py-2\.5::file-selector-button{
  padding-top:      0.625rem;
  padding-bottom:      0.625rem;
}

.file\:text-sm::file-selector-button{
  font-size:      0.875rem;
  line-height:      1.25rem;
}

.file\:font-semibold::file-selector-button{
  font-weight:      600;
}

.file\:text-gray-700::file-selector-button{
  --tw-text-opacity:      1;
  color:      rgb(55 65 81 / var(--tw-text-opacity));
}

.last\:border-0:last-child{
  border-width:      0px;
}

.focus-within\:border-gray-400:focus-within{
  --tw-border-opacity:      1;
  border-color:      rgb(156 163 175 / var(--tw-border-opacity));
}

.hover\:scale-105:hover{
  --tw-scale-x:      1.05;
  --tw-scale-y:      1.05;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-110:hover{
  --tw-scale-x:      1.1;
  --tw-scale-y:      1.1;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:cursor-pointer:hover{
  cursor:      pointer;
}

.hover\:border-\[\#C8001F\]:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(200 0 31 / var(--tw-border-opacity));
}

.hover\:border-\[\#C8001F\]\/20:hover{
  border-color:      rgb(200 0 31 / 0.2);
}

.hover\:border-\[\#C8001F\]\/30:hover{
  border-color:      rgb(200 0 31 / 0.3);
}

.hover\:border-\[\#C8001F\]\/40:hover{
  border-color:      rgb(200 0 31 / 0.4);
}

.hover\:border-black:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(0 0 0 / var(--tw-border-opacity));
}

.hover\:border-gray-300:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(209 213 219 / var(--tw-border-opacity));
}

.hover\:border-gray-400:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(156 163 175 / var(--tw-border-opacity));
}

.hover\:border-gray-900:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(17 24 39 / var(--tw-border-opacity));
}

.hover\:border-green-500:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(34 197 94 / var(--tw-border-opacity));
}

.hover\:border-pink-500:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(236 72 153 / var(--tw-border-opacity));
}

.hover\:border-red-200:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(254 202 202 / var(--tw-border-opacity));
}

.hover\:border-white:hover{
  --tw-border-opacity:      1;
  border-color:      rgb(255 255 255 / var(--tw-border-opacity));
}

.hover\:bg-\[\#C8001F\]:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(200 0 31 / var(--tw-bg-opacity));
}

.hover\:bg-\[\#C8001F\]\/10:hover{
  background-color:      rgb(200 0 31 / 0.1);
}

.hover\:bg-\[\#C8001F\]\/5:hover{
  background-color:      rgb(200 0 31 / 0.05);
}

.hover\:bg-\[\#a8001a\]:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(168 0 26 / var(--tw-bg-opacity));
}

.hover\:bg-\[var\(--brand-primary-dark\)\]:hover{
  background-color:      var(--brand-primary-dark);
}

.hover\:bg-amber-50:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(255 251 235 / var(--tw-bg-opacity));
}

.hover\:bg-black:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(0 0 0 / var(--tw-bg-opacity));
}

.hover\:bg-gray-100:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(243 244 246 / var(--tw-bg-opacity));
}

.hover\:bg-gray-200:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(229 231 235 / var(--tw-bg-opacity));
}

.hover\:bg-gray-50:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(249 250 251 / var(--tw-bg-opacity));
}

.hover\:bg-gray-50\/80:hover{
  background-color:      rgb(249 250 251 / 0.8);
}

.hover\:bg-gray-700:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(55 65 81 / var(--tw-bg-opacity));
}

.hover\:bg-gray-800:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(31 41 55 / var(--tw-bg-opacity));
}

.hover\:bg-gray-900:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(17 24 39 / var(--tw-bg-opacity));
}

.hover\:bg-green-100:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(220 252 231 / var(--tw-bg-opacity));
}

.hover\:bg-green-50:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(240 253 244 / var(--tw-bg-opacity));
}

.hover\:bg-green-600:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(22 163 74 / var(--tw-bg-opacity));
}

.hover\:bg-red-100:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(254 226 226 / var(--tw-bg-opacity));
}

.hover\:bg-red-50:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(254 242 242 / var(--tw-bg-opacity));
}

.hover\:bg-white:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(255 255 255 / var(--tw-bg-opacity));
}

.hover\:bg-white\/10:hover{
  background-color:      rgb(255 255 255 / 0.1);
}

.hover\:bg-white\/20:hover{
  background-color:      rgb(255 255 255 / 0.2);
}

.hover\:bg-white\/30:hover{
  background-color:      rgb(255 255 255 / 0.3);
}

.hover\:bg-zinc-50:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(250 250 250 / var(--tw-bg-opacity));
}

.hover\:bg-zinc-700:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(63 63 70 / var(--tw-bg-opacity));
}

.hover\:text-\[\#C8001F\]:hover{
  --tw-text-opacity:      1;
  color:      rgb(200 0 31 / var(--tw-text-opacity));
}

.hover\:text-amber-300:hover{
  --tw-text-opacity:      1;
  color:      rgb(252 211 77 / var(--tw-text-opacity));
}

.hover\:text-black:hover{
  --tw-text-opacity:      1;
  color:      rgb(0 0 0 / var(--tw-text-opacity));
}

.hover\:text-gray-600:hover{
  --tw-text-opacity:      1;
  color:      rgb(75 85 99 / var(--tw-text-opacity));
}

.hover\:text-gray-700:hover{
  --tw-text-opacity:      1;
  color:      rgb(55 65 81 / var(--tw-text-opacity));
}

.hover\:text-gray-900:hover{
  --tw-text-opacity:      1;
  color:      rgb(17 24 39 / var(--tw-text-opacity));
}

.hover\:text-green-400:hover{
  --tw-text-opacity:      1;
  color:      rgb(74 222 128 / var(--tw-text-opacity));
}

.hover\:text-green-600:hover{
  --tw-text-opacity:      1;
  color:      rgb(22 163 74 / var(--tw-text-opacity));
}

.hover\:text-pink-400:hover{
  --tw-text-opacity:      1;
  color:      rgb(244 114 182 / var(--tw-text-opacity));
}

.hover\:text-red-500:hover{
  --tw-text-opacity:      1;
  color:      rgb(239 68 68 / var(--tw-text-opacity));
}

.hover\:text-red-600:hover{
  --tw-text-opacity:      1;
  color:      rgb(220 38 38 / var(--tw-text-opacity));
}

.hover\:text-white:hover{
  --tw-text-opacity:      1;
  color:      rgb(255 255 255 / var(--tw-text-opacity));
}

.hover\:text-white\/80:hover{
  color:      rgb(255 255 255 / 0.8);
}

.hover\:text-zinc-700:hover{
  --tw-text-opacity:      1;
  color:      rgb(63 63 70 / var(--tw-text-opacity));
}

.hover\:text-zinc-900:hover{
  --tw-text-opacity:      1;
  color:      rgb(24 24 27 / var(--tw-text-opacity));
}

.hover\:underline:hover{
  text-decoration-line:      underline;
}

.hover\:no-underline:hover{
  text-decoration-line:      none;
}

.hover\:decoration-white:hover{
  text-decoration-color:      #fff;
}

.hover\:opacity-40:hover{
  opacity:      0.4;
}

.hover\:shadow-2xl:hover{
  --tw-shadow:      0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored:      0 25px 50px -12px var(--tw-shadow-color);
  box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

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

.hover\:shadow-md:hover{
  --tw-shadow:      0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored:      0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-xl:hover{
  --tw-shadow:      0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored:      0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:file\:bg-gray-200::file-selector-button:hover{
  --tw-bg-opacity:      1;
  background-color:      rgb(229 231 235 / var(--tw-bg-opacity));
}

.focus\:border-\[\#C8001F\]\/50:focus{
  border-color:      rgb(200 0 31 / 0.5);
}

.focus\:border-\[\#C8001F\]\/60:focus{
  border-color:      rgb(200 0 31 / 0.6);
}

.focus\:border-gray-400:focus{
  --tw-border-opacity:      1;
  border-color:      rgb(156 163 175 / var(--tw-border-opacity));
}

.focus\:border-red-400:focus{
  --tw-border-opacity:      1;
  border-color:      rgb(248 113 113 / var(--tw-border-opacity));
}

.focus\:border-rose-400:focus{
  --tw-border-opacity:      1;
  border-color:      rgb(251 113 133 / var(--tw-border-opacity));
}

.focus\:border-white:focus{
  --tw-border-opacity:      1;
  border-color:      rgb(255 255 255 / var(--tw-border-opacity));
}

.focus\:border-white\/50:focus{
  border-color:      rgb(255 255 255 / 0.5);
}

.focus\:border-zinc-400:focus{
  --tw-border-opacity:      1;
  border-color:      rgb(161 161 170 / var(--tw-border-opacity));
}

.focus\:bg-white:focus{
  --tw-bg-opacity:      1;
  background-color:      rgb(255 255 255 / var(--tw-bg-opacity));
}

.focus\:outline-none:focus{
  outline:      2px solid transparent;
  outline-offset:      2px;
}

.focus\:ring-0:focus{
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-1:focus{
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-2:focus{
  --tw-ring-offset-shadow:      var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:      var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-\[\#C8001F\]\/10:focus{
  --tw-ring-color:      rgb(200 0 31 / 0.1);
}

.focus\:ring-\[\#C8001F\]\/20:focus{
  --tw-ring-color:      rgb(200 0 31 / 0.2);
}

.focus\:ring-\[\#C8001F\]\/30:focus{
  --tw-ring-color:      rgb(200 0 31 / 0.3);
}

.focus\:ring-red-200:focus{
  --tw-ring-opacity:      1;
  --tw-ring-color:      rgb(254 202 202 / var(--tw-ring-opacity));
}

.focus\:ring-white\/20:focus{
  --tw-ring-color:      rgb(255 255 255 / 0.2);
}

.focus\:ring-offset-0:focus{
  --tw-ring-offset-width:      0px;
}

.active\:scale-95:active{
  --tw-scale-x:      .95;
  --tw-scale-y:      .95;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.active\:text-white\/80:active{
  color:      rgb(255 255 255 / 0.8);
}

.disabled\:cursor-not-allowed:disabled{
  cursor:      not-allowed;
}

.disabled\:opacity-40:disabled{
  opacity:      0.4;
}

.disabled\:opacity-50:disabled{
  opacity:      0.5;
}

.group:hover .group-hover\:visible{
  visibility:      visible;
}

.group:hover .group-hover\:translate-x-0{
  --tw-translate-x:      0px;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:translate-x-0\.5{
  --tw-translate-x:      0.125rem;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:rotate-180{
  --tw-rotate:      180deg;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-100{
  --tw-scale-x:      1;
  --tw-scale-y:      1;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-105{
  --tw-scale-x:      1.05;
  --tw-scale-y:      1.05;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-110{
  --tw-scale-x:      1.1;
  --tw-scale-y:      1.1;
  transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:bg-\[\#C8001F\]{
  --tw-bg-opacity:      1;
  background-color:      rgb(200 0 31 / var(--tw-bg-opacity));
}

.group:hover .group-hover\:bg-\[\#C8001F\]\/20{
  background-color:      rgb(200 0 31 / 0.2);
}

.group:hover .group-hover\:bg-amber-200{
  --tw-bg-opacity:      1;
  background-color:      rgb(253 230 138 / var(--tw-bg-opacity));
}

.group:hover .group-hover\:bg-pink-200{
  --tw-bg-opacity:      1;
  background-color:      rgb(251 207 232 / var(--tw-bg-opacity));
}

.group:hover .group-hover\:bg-violet-200{
  --tw-bg-opacity:      1;
  background-color:      rgb(221 214 254 / var(--tw-bg-opacity));
}

.group:hover .group-hover\:bg-zinc-100{
  --tw-bg-opacity:      1;
  background-color:      rgb(244 244 245 / var(--tw-bg-opacity));
}

.group:hover .group-hover\:bg-zinc-50{
  --tw-bg-opacity:      1;
  background-color:      rgb(250 250 250 / var(--tw-bg-opacity));
}

.group:hover .group-hover\:fill-zinc-600{
  fill:      #52525b;
}

.group:hover .group-hover\:text-\[\#C8001F\]{
  --tw-text-opacity:      1;
  color:      rgb(200 0 31 / var(--tw-text-opacity));
}

.group:hover .group-hover\:text-gray-500{
  --tw-text-opacity:      1;
  color:      rgb(107 114 128 / var(--tw-text-opacity));
}

.group:hover .group-hover\:text-gray-600{
  --tw-text-opacity:      1;
  color:      rgb(75 85 99 / var(--tw-text-opacity));
}

.group:hover .group-hover\:opacity-100{
  opacity:      1;
}

.group:hover .group-hover\:opacity-70{
  opacity:      0.7;
}

.phx-submit-loading.phx-submit-loading\:opacity-75{
  opacity:      0.75;
}

.phx-submit-loading .phx-submit-loading\:opacity-75{
  opacity:      0.75;
}

@media (min-width: 640px){
  .sm\:-left-5{
    left:      -1.25rem;
  }

  .sm\:-right-5{
    right:      -1.25rem;
  }

  .sm\:col-span-2{
    grid-column:      span 2 / span 2;
  }

  .sm\:mx-6{
    margin-left:      1.5rem;
    margin-right:      1.5rem;
  }

  .sm\:block{
    display:      block;
  }

  .sm\:inline{
    display:      inline;
  }

  .sm\:flex{
    display:      flex;
  }

  .sm\:hidden{
    display:      none;
  }

  .sm\:h-20{
    height:      5rem;
  }

  .sm\:h-36{
    height:      9rem;
  }

  .sm\:h-8{
    height:      2rem;
  }

  .sm\:min-h-0{
    min-height:      0px;
  }

  .sm\:min-h-\[320px\]{
    min-height:      320px;
  }

  .sm\:min-h-\[600px\]{
    min-height:      600px;
  }

  .sm\:w-20{
    width:      5rem;
  }

  .sm\:w-28{
    width:      7rem;
  }

  .sm\:w-8{
    width:      2rem;
  }

  .sm\:w-96{
    width:      24rem;
  }

  .sm\:w-auto{
    width:      auto;
  }

  .sm\:w-full{
    width:      100%;
  }

  .sm\:flex-none{
    flex:      none;
  }

  .sm\:translate-y-0{
    --tw-translate-y:      0px;
    transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .sm\:scale-100{
    --tw-scale-x:      1;
    --tw-scale-y:      1;
    transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .sm\:scale-95{
    --tw-scale-x:      .95;
    --tw-scale-y:      .95;
    transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .sm\:grid-cols-2{
    grid-template-columns:      repeat(2, minmax(0, 1fr));
  }

  .sm\:grid-cols-3{
    grid-template-columns:      repeat(3, minmax(0, 1fr));
  }

  .sm\:grid-cols-4{
    grid-template-columns:      repeat(4, minmax(0, 1fr));
  }

  .sm\:flex-row{
    flex-direction:      row;
  }

  .sm\:flex-col{
    flex-direction:      column;
  }

  .sm\:items-end{
    align-items:      flex-end;
  }

  .sm\:items-center{
    align-items:      center;
  }

  .sm\:justify-between{
    justify-content:      space-between;
  }

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

  .sm\:gap-8{
    gap:      2rem;
  }

  .sm\:overflow-visible{
    overflow:      visible;
  }

  .sm\:rounded-l-xl{
    border-top-left-radius:      0.75rem;
    border-bottom-left-radius:      0.75rem;
  }

  .sm\:rounded-r-xl{
    border-top-right-radius:      0.75rem;
    border-bottom-right-radius:      0.75rem;
  }

  .sm\:p-10{
    padding:      2.5rem;
  }

  .sm\:p-6{
    padding:      1.5rem;
  }

  .sm\:p-8{
    padding:      2rem;
  }

  .sm\:px-0{
    padding-left:      0px;
    padding-right:      0px;
  }

  .sm\:px-10{
    padding-left:      2.5rem;
    padding-right:      2.5rem;
  }

  .sm\:px-12{
    padding-left:      3rem;
    padding-right:      3rem;
  }

  .sm\:px-6{
    padding-left:      1.5rem;
    padding-right:      1.5rem;
  }

  .sm\:py-14{
    padding-top:      3.5rem;
    padding-bottom:      3.5rem;
  }

  .sm\:py-16{
    padding-top:      4rem;
    padding-bottom:      4rem;
  }

  .sm\:py-24{
    padding-top:      6rem;
    padding-bottom:      6rem;
  }

  .sm\:py-28{
    padding-top:      7rem;
    padding-bottom:      7rem;
  }

  .sm\:py-6{
    padding-top:      1.5rem;
    padding-bottom:      1.5rem;
  }

  .sm\:text-right{
    text-align:      right;
  }

  .sm\:text-3xl{
    font-size:      1.875rem;
    line-height:      2.25rem;
  }

  .sm\:text-4xl{
    font-size:      2.25rem;
    line-height:      2.5rem;
  }

  .sm\:text-5xl{
    font-size:      3rem;
    line-height:      1;
  }

  .sm\:text-6xl{
    font-size:      3.75rem;
    line-height:      1;
  }

  .sm\:text-\[140px\]{
    font-size:      140px;
  }

  .sm\:text-sm{
    font-size:      0.875rem;
    line-height:      1.25rem;
  }

  .sm\:leading-6{
    line-height:      1.5rem;
  }

  .group:hover .sm\:group-hover\:scale-105{
    --tw-scale-x:      1.05;
    --tw-scale-y:      1.05;
    transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
}

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

@media (min-width: 1024px){
  .lg\:sr-only{
    position:      absolute;
    width:      1px;
    height:      1px;
    padding:      0;
    margin:      -1px;
    overflow:      hidden;
    clip:      rect(0, 0, 0, 0);
    white-space:      nowrap;
    border-width:      0;
  }

  .lg\:static{
    position:      static;
  }

  .lg\:absolute{
    position:      absolute;
  }

  .lg\:left-1\/2{
    left:      50%;
  }

  .lg\:top-1\/2{
    top:      50%;
  }

  .lg\:z-0{
    z-index:      0;
  }

  .lg\:col-span-2{
    grid-column:      span 2 / span 2;
  }

  .lg\:col-span-3{
    grid-column:      span 3 / span 3;
  }

  .lg\:col-span-5{
    grid-column:      span 5 / span 5;
  }

  .lg\:col-span-7{
    grid-column:      span 7 / span 7;
  }

  .lg\:row-span-2{
    grid-row:      span 2 / span 2;
  }

  .lg\:mx-0{
    margin-left:      0px;
    margin-right:      0px;
  }

  .lg\:mx-8{
    margin-left:      2rem;
    margin-right:      2rem;
  }

  .lg\:ml-6{
    margin-left:      1.5rem;
  }

  .lg\:mt-0{
    margin-top:      0px;
  }

  .lg\:block{
    display:      block;
  }

  .lg\:flex{
    display:      flex;
  }

  .lg\:grid{
    display:      grid;
  }

  .lg\:hidden{
    display:      none;
  }

  .lg\:h-\[700px\]{
    height:      700px;
  }

  .lg\:min-h-\[380px\]{
    min-height:      380px;
  }

  .lg\:min-h-\[500px\]{
    min-height:      500px;
  }

  .lg\:min-h-\[700px\]{
    min-height:      700px;
  }

  .lg\:min-h-full{
    min-height:      100%;
  }

  .lg\:w-56{
    width:      14rem;
  }

  .lg\:w-64{
    width:      16rem;
  }

  .lg\:max-w-md{
    max-width:      28rem;
  }

  .lg\:max-w-sm{
    max-width:      24rem;
  }

  .lg\:shrink-0{
    flex-shrink:      0;
  }

  .lg\:-translate-y-1\/2{
    --tw-translate-y:      -50%;
    transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .lg\:translate-x-0{
    --tw-translate-x:      0px;
    transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .lg\:translate-x-\[-20\%\]{
    --tw-translate-x:      -20%;
    transform:      translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .lg\:grid-cols-12{
    grid-template-columns:      repeat(12, minmax(0, 1fr));
  }

  .lg\:grid-cols-2{
    grid-template-columns:      repeat(2, minmax(0, 1fr));
  }

  .lg\:grid-cols-3{
    grid-template-columns:      repeat(3, minmax(0, 1fr));
  }

  .lg\:grid-cols-4{
    grid-template-columns:      repeat(4, minmax(0, 1fr));
  }

  .lg\:grid-cols-5{
    grid-template-columns:      repeat(5, minmax(0, 1fr));
  }

  .lg\:flex-row{
    flex-direction:      row;
  }

  .lg\:items-start{
    align-items:      flex-start;
  }

  .lg\:gap-12{
    gap:      3rem;
  }

  .lg\:gap-16{
    gap:      4rem;
  }

  .lg\:gap-8{
    gap:      2rem;
  }

  .lg\:overflow-y-auto{
    overflow-y:      auto;
  }

  .lg\:border-0{
    border-width:      0px;
  }

  .lg\:border-r{
    border-right-width:      1px;
  }

  .lg\:border-white\/20{
    border-color:      rgb(255 255 255 / 0.2);
  }

  .lg\:p-8{
    padding:      2rem;
  }

  .lg\:px-14{
    padding-left:      3.5rem;
    padding-right:      3.5rem;
  }

  .lg\:px-16{
    padding-left:      4rem;
    padding-right:      4rem;
  }

  .lg\:px-8{
    padding-left:      2rem;
    padding-right:      2rem;
  }

  .lg\:py-16{
    padding-top:      4rem;
    padding-bottom:      4rem;
  }

  .lg\:py-20{
    padding-top:      5rem;
    padding-bottom:      5rem;
  }

  .lg\:py-24{
    padding-top:      6rem;
    padding-bottom:      6rem;
  }

  .lg\:py-8{
    padding-top:      2rem;
    padding-bottom:      2rem;
  }

  .lg\:pb-0{
    padding-bottom:      0px;
  }

  .lg\:text-left{
    text-align:      left;
  }

  .lg\:text-5xl{
    font-size:      3rem;
    line-height:      1;
  }

  .lg\:text-6xl{
    font-size:      3.75rem;
    line-height:      1;
  }

  .lg\:text-7xl{
    font-size:      4.5rem;
    line-height:      1;
  }

  .lg\:text-\[180px\]{
    font-size:      180px;
  }

  .lg\:text-lg{
    font-size:      1.125rem;
    line-height:      1.75rem;
  }

  .lg\:shadow-none{
    --tw-shadow:      0 0 #0000;
    --tw-shadow-colored:      0 0 #0000;
    box-shadow:      var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }
}

@media (min-width: 1280px){
  .xl\:-left-12{
    left:      -3rem;
  }

  .xl\:-left-16{
    left:      -4rem;
  }

  .xl\:-right-12{
    right:      -3rem;
  }

  .xl\:-right-16{
    right:      -4rem;
  }

  .xl\:left-\[50rem\]{
    left:      50rem;
  }

  .xl\:w-52{
    width:      13rem;
  }

  .xl\:w-72{
    width:      18rem;
  }

  .xl\:w-\[240px\]{
    width:      240px;
  }

  .xl\:px-24{
    padding-left:      6rem;
    padding-right:      6rem;
  }

  .xl\:px-28{
    padding-left:      7rem;
    padding-right:      7rem;
  }

  .xl\:py-32{
    padding-top:      8rem;
    padding-bottom:      8rem;
  }

  .xl\:text-7xl{
    font-size:      4.5rem;
    line-height:      1;
  }

  .xl\:text-\[350px\]{
    font-size:      350px;
  }
}
