/**
 * Wedding Website Styles - Extracted from MHTML
 * Olumide Olugbemiro and Aminat Ogunrinde's Wedding Website
 */

/* =====================================================
   TOAST NOTIFICATIONS
   ===================================================== */
.toastV2__MTlmN {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
  max-width: 600px;
  margin: 0px auto;
  padding: 20px;
  box-shadow: rgba(0, 0, 0, 0.12) 0px 4px 12px 0px;
  border-radius: var(--zola-toast-border-radius, 16px);
  color: rgb(255, 255, 255);
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  z-index: 2010;
  transition: opacity 0.4s ease-in-out, margin-top 0.4s;
}

.toastV2__MTlmN.message__Y2Q2N,
.toastV2__MTlmN.positive__MzA1Y {
  background-color: rgb(21, 132, 93);
}

.toastV2__MTlmN.negative__NzA0N {
  background-color: rgb(199, 48, 91);
}

.toastV2__MTlmN.informational__NGYyN {
  background-color: rgb(85, 161, 191);
}

.toastV2__MTlmN:first-child {
  margin-top: -40px;
}

.toastV2__MTlmN + .toastV2__MTlmN {
  margin-top: 12px;
}

.toastV2__MTlmN .icon__NWUyZ {
  display: none;
}

@media (min-width: 768px) {
  .toastV2__MTlmN .icon__NWUyZ {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    width: 24px;
    height: 24px;
    margin-right: 0px;
  }
}

.toastV2__MTlmN .content__ZjlmO {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-right: auto;
}

.toastV2__MTlmN .headline__ZGQ4N {
  display: block;
}

.toastV2__MTlmN .dek__OTQyN {
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.toastV2__MTlmN .link__MDJkM {
  align-self: center;
  margin-left: 32px;
  line-height: 24px;
}

.zui-toast-enter {
  opacity: 0;
}

.zui-toast-enter-active,
.zui-toast-exit {
  opacity: 1;
}

.zui-toast-exit-active {
  opacity: 0;
  transition: 0.4s ease-in-out;
  z-index: 2010;
}

.toastsV2__NDE0M {
  position: fixed;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  top: 80px;
  left: 50%;
  transform: translateX(-50%);
  padding-top: 40px;
  z-index: 2010;
}

.toastsV2__NDE0M:empty {
  padding-top: 0px;
}

@media (max-width: 767px) {
  .toastsV2__NDE0M {
    width: 90%;
  }
}

/* =====================================================
   MODALS
   ===================================================== */
.zola-ui#video-modal .modal-header {
  text-align: center;
  padding: 20px 10px 0px;
}

@media (min-width: 768px) {
  .zola-ui#video-modal .modal-header {
    padding: 20px 20px 0px;
  }
}

.zola-ui#video-modal .modal-header .modal-title {
  font-weight: 700;
  letter-spacing: 0px;
  line-height: 36px;
  font-family: circular, helvetica, sans-serif;
}

.zola-ui#video-modal .modal-body {
  text-align: center;
  padding: 10px;
}

@media (min-width: 768px) {
  .zola-ui#video-modal .modal-body {
    padding: 0px 20px 20px;
  }
}

@media (min-width: 992px) {
  .zola-ui#video-modal .modal-body {
    padding: 10px 40px 40px;
  }
}

.digital-greeting-card-modal {
  max-width: 100%;
  border-radius: 24px;
  overflow: hidden;
  width: 1024px !important;
}

@media (max-width: 767px) {
  .digital-greeting-card-modal {
    max-height: 100dvh;
    border-radius: 0px;
    overflow: scroll;
    margin: 0px !important;
  }
}

.digital-greeting-card-modal .modal-content {
  padding: 48px;
  background-color: rgb(255, 255, 255);
}

@media (max-width: 767px) {
  .digital-greeting-card-modal .modal-content {
    min-height: 100dvh;
    padding: 48px 24px;
    border-radius: 0px;
  }
}

.digital-greeting-card-modal .modal-close {
  display: none;
}

.quick-checkout-modal {
  max-width: 100%;
  border-radius: 24px;
  overflow: hidden;
  width: 536px !important;
}

@media (max-width: 767px) {
  .quick-checkout-modal {
    max-height: 100dvh;
    border-radius: 0px;
    overflow: scroll;
    margin: 0px !important;
  }
}

.quick-checkout-modal .modal-content {
  padding: 48px;
  background-color: rgb(255, 255, 255);
}

@media (max-width: 767px) {
  .quick-checkout-modal .modal-content {
    min-height: 100dvh;
    padding: 48px 24px;
    border-radius: 0px;
  }
}

.quick-checkout-modal .modal-close {
  top: 16px;
  right: 16px;
  color: rgb(14, 14, 14);
}

.quick-checkout-modal .modal-close:hover {
  color: rgb(74, 74, 74);
}

/* =====================================================
   NAVIGATION
   ===================================================== */
.unifiedNav__MDFmO .navSecondary__link a {
  text-decoration: none;
}

.hidden__MDI2Z {
  position: absolute;
  z-index: 2001;
  left: -9999px;
}

.hidden__MDI2Z #desktop-nav,
.hidden__MDI2Z #mobile-nav {
  display: none;
}

/* =====================================================
   TOOLTIPS
   ===================================================== */
.zola-ui.tooltip__container {
  width: 125px;
}

.zola-ui.tooltip__container.icon-tooltip {
  position: absolute;
  top: -40px;
  left: -10px;
}

.zola-ui .pop-in {
  animation: 0.5s ease-in 0s 1 normal both running pop-in;
}

@keyframes pop-in {
  0% {
    bottom: -10px;
    opacity: 0;
  }
  100% {
    bottom: 0px;
    opacity: 1;
  }
}

.zola-ui .tooltip {
  background-color: rgb(14, 14, 14);
  border-radius: 8px;
  color: rgb(255, 255, 255);
  display: inline-block;
  font-size: 12px;
  font-weight: 400;
  padding: 5px 10px;
  position: relative;
  text-align: center;
}

.zola-ui .tooltip::before {
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-top: 9px solid rgb(14, 14, 14);
  bottom: -8px;
  content: "";
  height: 0px;
  left: 0px;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  right: 0px;
  width: 0px;
}

/* =====================================================
   TOGGLE SWITCHES
   ===================================================== */
.toggleWrapper__Nzk1Y .react-toggle {
  display: inline-block;
  position: relative;
  cursor: pointer;
  background-color: transparent;
  border: 0px;
  padding: 0px;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.toggleWrapper__Nzk1Y .react-toggle .react-toggle-track {
  padding: 0px;
  border-radius: 120px;
  background-color: var(--background-light, #fff);
  border: var(--border-element-hover, 1px solid #b7b7b7);
  transition: 0.2s;
  width: 60px;
  height: 32px;
}

@media (min-width: 768px) {
  .toggleWrapper__Nzk1Y .react-toggle .react-toggle-track {
    width: 46px;
    height: 24px;
  }
}

.toggleWrapper__Nzk1Y .react-toggle.react-toggle--checked .react-toggle-track {
  border-color: var(--interactive-primary, #15845d);
  background-color: var(--interactive-primary-hover-background, #d7f5d9);
}

.toggleWrapper__Nzk1Y .react-toggle .react-toggle-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: var(--border-element-hover-color, #b7b7b7);
  transition: 0.25s;
}

@media (min-width: 768px) {
  .toggleWrapper__Nzk1Y .react-toggle .react-toggle-thumb {
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
  }
}

.toggleWrapper__Nzk1Y .react-toggle.react-toggle--checked .react-toggle-thumb {
  left: 30px;
  background-color: var(--interactive-primary, #15845d);
}

@media (min-width: 768px) {
  .toggleWrapper__Nzk1Y .react-toggle.react-toggle--checked .react-toggle-thumb {
    left: 25px;
  }
}

/* =====================================================
   FORM FIELDS
   ===================================================== */
.zola-ui.v2-render-field input {
  padding: 14px 12px;
}

.zola-ui.v2-render-field.dropdown-v2__selection-box,
.zola-ui.v2-render-field input {
  border: var(--border-element, 1px solid #b7b7b7);
  border-radius: var(--border-radius-xs, 4px);
  box-sizing: border-box;
  color: var(--text-primary, #0e0e0e);
  font-size: 16px;
  font-weight: 400;
  height: 44px;
  width: 100%;
  background-color: var(--background-light, #fff);
}

@media (max-width: 767px) {
  .zola-ui.v2-render-field.dropdown-v2__selection-box,
  .zola-ui.v2-render-field input {
    height: 52px;
  }
}

.zola-ui.v2-render-field.dropdown-v2__selection-box:focus,
.zola-ui.v2-render-field input:focus {
  border: var(--border-element-selected, 1px solid #0e0e0e);
}

.zola-ui.v2-render-field.dropdown-v2__selection-box::placeholder,
.zola-ui.v2-render-field input::placeholder {
  color: var(--text-tertiary, #757575);
}

.zola-ui.v2-render-field .text-danger {
  color: var(--system-error, #c7305b);
}

.zola-ui.v2-render-field .text-warning {
  color: var(--system-warning, #ff9a00);
}

.zola-ui.v2-render-field .text-success {
  color: var(--system-success, #15845d);
  line-height: 16px;
}

.zola-ui.v2-render-field.has-error.dropdown-v2__selection-box,
.zola-ui.v2-render-field.has-error input {
  border: 1px solid var(--system-error, #c7305b);
}

.zola-ui.v2-render-field.has-warning input {
  border: 1px solid var(--system-warning, #ff9a00);
}

.zola-ui.v2-render-field.has-success input {
  border: 1px solid var(--system-success, #15845d);
}

/* =====================================================
   LINKS
   ===================================================== */
.link__ZTllN,
.primary__ZmQyO {
  color: var(--text-primary, #0e0e0e);
  font-weight: 600;
  font-family: circular, helvetica, sans-serif;
  font-size: inherit;
  line-height: normal;
  cursor: pointer;
  text-decoration: underline;
  letter-spacing: normal;
}

.link__ZTllN:active,
.link__ZTllN:hover,
.primary__ZmQyO:active,
.primary__ZmQyO:hover {
  color: var(--text-secondary, #4a4a4a);
  text-decoration: underline;
}

.secondary__NjdkY {
  cursor: pointer;
  color: var(--interactive-primary, #0f5c82);
  text-decoration: underline;
}

.secondary__NjdkY:hover {
  color: var(--interactive-primary-hover, #4a4a4a);
}

.tertiary__MjQyM {
  cursor: pointer;
  color: rgb(255, 255, 255);
  text-decoration: underline;
}

.tertiary__MjQyM:hover {
  color: rgb(219, 219, 219);
}

.disabled__ZjQ1M {
  color: rgb(183, 183, 183);
  text-decoration: underline;
  cursor: auto;
}

.danger__NTc4N {
  text-decoration: underline;
  cursor: pointer;
  color: rgb(199, 48, 91);
}

.danger__NTc4N:hover {
  color: rgb(207, 79, 116);
}

/* =====================================================
   HEADINGS
   ===================================================== */
.h1__ZjhiN,
.heading__NTJkY {
  margin: 0px;
  padding: 0px;
  color: var(--text-primary, #0e0e0e);
  font-family: circular, helvetica, sans-serif;
  font-weight: 400;
}

.h1__ZjhiN {
  font-size: 42px;
  line-height: 42px;
  letter-spacing: -0.04em;
}

@media (min-width: 768px) {
  .h1__ZjhiN {
    font-size: 64px;
    line-height: 64px;
  }
}

.h2__Yjg3M {
  margin: 0px;
  padding: 0px;
  color: var(--text-primary, #0e0e0e);
  font-family: circular, helvetica, sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 32px;
  letter-spacing: -0.04em;
}

@media (min-width: 768px) {
  .h2__Yjg3M {
    font-size: 48px;
    line-height: 48px;
  }
}

.h3__OWY5N {
  margin: 0px;
  padding: 0px;
  color: var(--text-primary, #0e0e0e);
  font-family: circular, helvetica, sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: -0.04em;
}

@media (min-width: 768px) {
  .h3__OWY5N {
    font-size: 32px;
    line-height: 40px;
  }
}

.h4__OWQ3M {
  margin: 0px;
  padding: 0px;
  color: var(--text-primary, #0e0e0e);
  font-family: circular, helvetica, sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: -0.03em;
}

@media (min-width: 768px) {
  .h4__OWQ3M {
    font-size: 24px;
    line-height: 32px;
  }
}

.h5__ZmRlN {
  margin: 0px;
  padding: 0px;
  color: var(--text-primary, #0e0e0e);
  font-family: circular, helvetica, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 22px;
  letter-spacing: normal;
}

@media (min-width: 768px) {
  .h5__ZmRlN {
    font-size: 20px;
    line-height: 24px;
  }
}

.h6__MjgxZ {
  margin: 0px;
  padding: 0px;
  color: var(--text-primary, #0e0e0e);
  font-family: circular, helvetica, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: normal;
}

/* =====================================================
   BUTTONS
   ===================================================== */
.v2-button {
  border: 1px solid transparent;
  text-align: center;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  border-radius: 100px;
  height: 52px;
  padding-left: 16px;
  padding-right: 16px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s;
}

@media (min-width: 768px) {
  .v2-button {
    height: 44px;
  }
}

.v2-button.button--compact {
  font-size: 14px;
  height: 38px;
}

.v2-button.button--fullWidth {
  width: 100%;
  flex-basis: 100%;
}

.v2-button:disabled {
  cursor: default;
}

.v2-button:focus {
  outline: -webkit-focus-ring-color auto 5px;
}

a.v2-button {
  justify-content: center;
  align-items: center;
  user-select: none;
  text-align: center;
}

a.v2-button,
a.v2-button:active,
a.v2-button:focus,
a.v2-button:hover {
  text-decoration: none;
}

.v2-button.primary-button {
  background-color: rgb(14, 14, 14);
  color: rgb(255, 255, 255);
}

.v2-button.primary-button:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(74, 74, 74);
}

.v2-button.primary-button:active {
  background-color: rgb(14, 14, 14);
}

.v2-button.primary-button:disabled {
  background-color: rgb(183, 183, 183);
}

.v2-button.secondary-button {
  background-color: rgb(255, 255, 255);
  color: rgb(14, 14, 14);
  border-color: rgb(14, 14, 14);
}

.v2-button.secondary-button:hover {
  background-color: rgb(243, 243, 243);
  color: rgb(14, 14, 14);
  border-color: rgb(14, 14, 14);
}

.v2-button.secondary-button:active {
  background-color: rgb(255, 255, 255);
  color: rgb(14, 14, 14);
}

.v2-button.secondary-button:disabled {
  background-color: rgb(255, 255, 255);
  color: rgb(183, 183, 183);
  border-color: rgb(183, 183, 183);
}

.v2-button.tertiary-button {
  background-color: rgb(255, 255, 255);
  color: rgb(199, 48, 91);
  border-color: rgb(199, 48, 91);
}

.v2-button.tertiary-button:hover {
  background-color: rgb(252, 245, 247);
}

.v2-button.tertiary-button:active {
  background-color: rgb(255, 255, 255);
}

.v2-button.tertiary-button:disabled {
  background-color: rgb(252, 245, 247);
  color: rgb(238, 193, 206);
  border-color: rgb(238, 193, 206);
}

.v2-button.transparent-button {
  background-color: transparent;
  color: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
}

.v2-button.transparent-button:disabled {
  background-color: rgb(243, 243, 243);
  color: rgb(183, 183, 183);
}

.v2-button.danger-button {
  background-color: rgb(199, 48, 91);
  color: rgb(255, 255, 255);
}

.v2-button.danger-button:hover {
  background-color: rgb(207, 79, 116);
}

.v2-button.danger-button:active {
  background-color: rgb(199, 48, 91);
}

.v2-button.danger-button:disabled {
  background-color: rgb(238, 193, 206);
}

/* =====================================================
   BASE STYLES & RESET
   ===================================================== */
html {
  font-family: sans-serif;
  text-size-adjust: 100%;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline: 0px;
}

b, strong {
  font-weight: 700;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0px;
}

img {
  border: 0px;
  vertical-align: middle;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

.img-rounded {
  border-radius: 6px;
}

.img-circle {
  border-radius: 50%;
}

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border-width: 1px 0px 0px;
  border-top-style: solid;
  border-top-color: rgb(183, 183, 183);
}

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

/* =====================================================
   GRID SYSTEM
   ===================================================== */
.container {
  padding-right: 10px;
  padding-left: 10px;
  margin-right: auto;
  margin-left: auto;
}

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

@media (min-width: 992px) {
  .container { width: 940px; }
}

@media (min-width: 1200px) {
  .container { width: 1180px; }
}

.container-fluid {
  padding-right: 10px;
  padding-left: 10px;
  margin-right: auto;
  margin-left: auto;
}

.row {
  margin-right: -10px;
  margin-left: -10px;
}

.row-no-gutters {
  margin-right: 0px;
  margin-left: 0px;
}

.row-no-gutters [class*="col-"] {
  padding-right: 0px;
  padding-left: 0px;
}

.col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12,
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12,
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  position: relative;
  min-height: 1px;
  padding-right: 10px;
  padding-left: 10px;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-12 { width: 100%; }
.col-xs-11 { width: 91.6667%; }
.col-xs-10 { width: 83.3333%; }
.col-xs-9 { width: 75%; }
.col-xs-8 { width: 66.6667%; }
.col-xs-7 { width: 58.3333%; }
.col-xs-6 { width: 50%; }
.col-xs-5 { width: 41.6667%; }
.col-xs-4 { width: 33.3333%; }
.col-xs-3 { width: 25%; }
.col-xs-2 { width: 16.6667%; }
.col-xs-1 { width: 8.33333%; }

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 { width: 100%; }
  .col-sm-11 { width: 91.6667%; }
  .col-sm-10 { width: 83.3333%; }
  .col-sm-9 { width: 75%; }
  .col-sm-8 { width: 66.6667%; }
  .col-sm-7 { width: 58.3333%; }
  .col-sm-6 { width: 50%; }
  .col-sm-5 { width: 41.6667%; }
  .col-sm-4 { width: 33.3333%; }
  .col-sm-3 { width: 25%; }
  .col-sm-2 { width: 16.6667%; }
  .col-sm-1 { width: 8.33333%; }
}

@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 { width: 100%; }
  .col-md-11 { width: 91.6667%; }
  .col-md-10 { width: 83.3333%; }
  .col-md-9 { width: 75%; }
  .col-md-8 { width: 66.6667%; }
  .col-md-7 { width: 58.3333%; }
  .col-md-6 { width: 50%; }
  .col-md-5 { width: 41.6667%; }
  .col-md-4 { width: 33.3333%; }
  .col-md-3 { width: 25%; }
  .col-md-2 { width: 16.6667%; }
  .col-md-1 { width: 8.33333%; }
}

@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 { width: 100%; }
  .col-lg-11 { width: 91.6667%; }
  .col-lg-10 { width: 83.3333%; }
  .col-lg-9 { width: 75%; }
  .col-lg-8 { width: 66.6667%; }
  .col-lg-7 { width: 58.3333%; }
  .col-lg-6 { width: 50%; }
  .col-lg-5 { width: 41.6667%; }
  .col-lg-4 { width: 33.3333%; }
  .col-lg-3 { width: 25%; }
  .col-lg-2 { width: 16.6667%; }
  .col-lg-1 { width: 8.33333%; }
}

.clearfix::after, .clearfix::before,
.container-fluid::after, .container-fluid::before,
.container::after, .container::before,
.row::after, .row::before {
  display: table;
  content: " ";
}

.clearfix::after, .container-fluid::after, .container::after, .row::after {
  clear: both;
}

.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.pull-right { float: right !important; }
.pull-left { float: left !important; }
.hide { display: none !important; }
.show { display: block !important; }
.invisible { visibility: hidden; }
.hidden { display: none !important; }
.affix { position: fixed; }

/* =====================================================
   VISIBILITY CLASSES
   ===================================================== */
.visible-lg, .visible-lg-block, .visible-lg-inline, .visible-lg-inline-block,
.visible-md, .visible-md-block, .visible-md-inline, .visible-md-inline-block,
.visible-sm, .visible-sm-block, .visible-sm-inline, .visible-sm-inline-block,
.visible-xs, .visible-xs-block, .visible-xs-inline, .visible-xs-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs { display: block !important; }
  .visible-xs-block { display: block !important; }
  .visible-xs-inline { display: inline !important; }
  .visible-xs-inline-block { display: inline-block !important; }
  .hidden-xs { display: none !important; }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm { display: block !important; }
  .visible-sm-block { display: block !important; }
  .visible-sm-inline { display: inline !important; }
  .visible-sm-inline-block { display: inline-block !important; }
  .hidden-sm { display: none !important; }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md { display: block !important; }
  .visible-md-block { display: block !important; }
  .visible-md-inline { display: inline !important; }
  .visible-md-inline-block { display: inline-block !important; }
  .hidden-md { display: none !important; }
}

@media (min-width: 1200px) {
  .visible-lg { display: block !important; }
  .visible-lg-block { display: block !important; }
  .visible-lg-inline { display: inline !important; }
  .visible-lg-inline-block { display: inline-block !important; }
  .hidden-lg { display: none !important; }
}

/* =====================================================
   SLICK SLIDER
   ===================================================== */
.slick-slider {
  box-sizing: border-box;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list, .slick-slider {
  position: relative;
  display: block;
}

.slick-list {
  overflow: hidden;
  margin: 0px;
  padding: 0px;
}

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

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

.slick-slider .slick-list, .slick-slider .slick-track {
  transform: translateZ(0px);
}

.slick-track {
  position: relative;
  top: 0px;
  left: 0px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

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

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

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

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

.slick-slide img {
  display: block;
}

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

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

/* =====================================================
   DAY PICKER (Calendar)
   ===================================================== */
.DayPicker {
  display: inline-block;
  font-size: 1rem;
}

.DayPicker-wrapper {
  position: relative;
  flex-direction: row;
  padding-bottom: 1em;
  user-select: none;
}

.DayPicker-Months {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.DayPicker-Month {
  display: table;
  margin: 1em 1em 0px;
  border-spacing: 0px;
  border-collapse: collapse;
  user-select: none;
}

.DayPicker-Day {
  border-radius: 50%;
  text-align: center;
}

.DayPicker-Day, .DayPicker-WeekNumber {
  display: table-cell;
  padding: 0.5em;
  vertical-align: middle;
  cursor: pointer;
}

.DayPicker-Day--today {
  color: rgb(208, 2, 27);
  font-weight: 700;
}

.DayPicker-Day--outside {
  color: rgb(139, 152, 152);
  cursor: default;
}

.DayPicker-Day--disabled {
  color: rgb(220, 224, 224);
  cursor: default;
}

.DayPicker-Day--selected:not(.DayPicker-Day--disabled):not(.DayPicker-Day--outside) {
  position: relative;
  background-color: rgb(74, 144, 226);
  color: rgb(240, 248, 255);
}

.DayPicker-Day--selected:not(.DayPicker-Day--disabled):not(.DayPicker-Day--outside):hover {
  background-color: rgb(81, 160, 250);
}

/* =====================================================
   GLOBAL STYLES
   ===================================================== */
abbr, acronym, address, applet, article, aside, audio, b, big, blockquote,
canvas, caption, center, cite, code, dd, del, details, dfn, dl, dt, em, embed,
fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header,
hgroup, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object,
ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong,
sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0px;
  padding: 0px;
  border: 0px;
  vertical-align: baseline;
}

body {
  line-height: 1;
  margin: 0px;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote::after, blockquote::before, q::after, q::before {
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0px;
}

*, ::after, ::before {
  box-sizing: border-box;
}

html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  min-width: 320px;
  overflow-x: auto;
}

body {
  font-family: circular, helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.42857;
  color: var(--text-primary, #0e0e0e);
  background-color: var(--background-screen, #fff);
}

button, input, select, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  outline: none;
}

a {
  color: var(--text-primary, #0e0e0e);
}

a, a:focus, a:hover {
  text-decoration: underline;
}

a:focus, a:hover {
  color: var(--text-secondary, #4a4a4a);
}

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

.font-weight-light { font-weight: 100; }
.font-weight-regular { font-weight: 400; }
.font-weight-bold { font-weight: 700; }

.font-family-serif {
  font-family: new-spirit, helvetica-bold, serif;
}

.font-family-script {
  font-family: "Sakura Regular", Georgia, serif;
}

.h1, .h2, .h3, .h4, .h5, .h6, .h7, h1, h2, h3, h4, h5, h6 {
  font-family: circular, helvetica, sans-serif;
  font-weight: 600;
  line-height: 1.1;
  color: rgb(33, 32, 31);
}

.h1, h1 {
  font-family: new-spirit, helvetica-bold, serif;
  font-size: 32px;
  font-weight: 500;
}

.h2, h2 {
  font-size: 30px;
  letter-spacing: 0px;
  font-weight: 400;
}

.h3, h3 {
  font-size: 24px;
  letter-spacing: 0.2px;
  font-weight: 400;
}

.h4, h4 {
  font-size: 18px;
  letter-spacing: 0px;
  font-weight: 400;
}

.h5, h5 {
  font-size: 14px;
  letter-spacing: 1.2px;
  font-weight: 600;
}

.h6, h6 {
  font-size: 12px;
  letter-spacing: 1.2px;
  font-weight: 600;
}

.p, p {
  margin: 0px 0px 11px;
  font-size: 16px;
  font-weight: 400;
  color: var(--text-primary, #0e0e0e);
}

/* =====================================================
   INLINE / EMOTION STYLES
   ===================================================== */
.css-vdjs5a {
  font-family: "Proxima Nova";
  font-size: 12px;
  color: rgb(33, 32, 31);
  display: flex;
  flex-direction: column;
  -webkit-box-align: center;
  align-items: center;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 80px;
  margin-top: 80px;
}

@media (max-width: 767px) {
  .css-vdjs5a {
    padding-top: 20px;
    padding-bottom: 40px;
  }
}

.css-1djlbjl {
  width: 120px;
  margin-bottom: 20px;
}

.css-stbjhc {
  display: flex;
  flex-flow: column;
  text-decoration: none;
  color: rgb(24, 59, 84);
  width: 120px;
  margin-bottom: 20px;
}

.css-stbjhc:hover {
  text-decoration: none;
}

.css-gxh3qs {
  font-size: 14px;
  margin-bottom: 12px;
}

.css-1d77kop {
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  justify-content: center;
}

.css-1d77kop > * {
  padding: 4px 12px;
}

@media (max-width: 767px) {
  .css-1d77kop > * {
    padding: 12px;
  }
}

.css-1ozkgka {
  color: inherit;
}

.css-1ozkgka:hover {
  color: inherit;
}

/* =====================================================
   MOBILE MENU - SLIDE PANEL
   ===================================================== */
.css-g7ily {
  background-color: white;
  color: rgb(33, 32, 31);
  font-weight: 600;
  height: 100%;
  line-height: 1.5;
  overflow-y: auto;
  padding: 50px 40px;
  position: fixed;
  right: 0px;
  top: 0px;
  text-align: left;
  width: 75%;
  max-width: 320px;
  z-index: 500;
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
  box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
}

/* Menu panel open state */
.css-g7ily.menu-open {
  transform: translateX(0);
}

/* Menu header section */
.mobile-menu-header {
  margin-bottom: 0;
}

.mobile-menu-header h3 {
  font-size: 18px;
  font-weight: 600;
  color: rgb(33, 32, 31);
  margin: 0 0 4px 0;
  letter-spacing: 0;
}

.mobile-menu-header p {
  font-size: 14px;
  font-weight: 400;
  color: rgb(118, 118, 118);
  margin: 0;
  line-height: 1.4;
}

/* Close button (X icon) */
.css-1w2mnrv {
  fill: rgb(80, 80, 80);
  position: absolute;
  right: 20px;
  top: 20px;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: rgb(243, 243, 243);
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.css-1w2mnrv:hover {
  cursor: pointer;
  background-color: rgb(230, 230, 230);
}

.css-1w2mnrv svg {
  width: 20px;
  height: 20px;
}

.css-shgx55 {
  color: rgb(118, 118, 118);
  font-weight: 400;
}

.css-l9l8sf {
  border-top: 1px solid rgb(217, 217, 217);
  display: flex;
  flex-direction: column;
  margin-top: 25px;
  padding-top: 25px;
}

.css-l9l8sf a {
  color: inherit;
  font-size: 24px;
  padding: 12px 0px;
}

.css-l9l8sf a:hover {
  cursor: pointer;
  text-decoration: underline;
}

/* Marquee Animation */
.css-1v07i6i {
  display: flex;
  flex-direction: row;
  height: 100%;
  min-height: 100%;
  width: fit-content;
  will-change: transform;
  backface-visibility: hidden;
  animation: 30s linear 0s infinite normal none running animation-ljdmff;
}

@media (max-width: 767px) {
  .css-1v07i6i {
    animation: 25s linear 0s infinite normal none running animation-ljdmff;
  }
}

@keyframes animation-ljdmff {
  0% { transform: translate3d(0px, 0px, 0px); }
  100% { transform: translate3d(-50%, 0px, 0px); }
}

.css-4u14pt {
  height: 100vw;
  width: 100vw;
}

@media (min-width: 768px) {
  .css-4u14pt {
    height: 882px;
    width: 641.259px;
  }
}

.css-1tflf23 {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.css-i4ylxu {
  height: 100vw;
  width: 100vw;
}

@media (min-width: 768px) {
  .css-i4ylxu {
    height: 882px;
    width: 587.856px;
  }
}

.css-10rlcm3 {
  margin: 0px;
  font-size: 56px;
}

@media (min-width: 768px) and (max-width: 991px) {
  .css-10rlcm3 { font-size: 56px; }
}

@media (max-width: 767px) {
  .css-10rlcm3 { font-size: 45px; }
}

@media (max-width: 767px) {
  .css-1i9nm5b {
    width: 100%;
    padding: 0px;
  }
}

.css-19qmio0 {
  margin-top: 12px;
  margin-bottom: 24px;
}

@media (max-width: 767px) {
  .css-82ekq3 {
    width: 100%;
    padding: 0px;
    border: none;
  }
}


.css-82ekq3 > div {
  display: inline-flex;
  flex-direction: column;
}

.css-949y1o {
  overflow-wrap: anywhere;
  position: relative;
  display: flex;
  flex-direction: column;
  -webkit-box-align: center;
  align-items: center;
}

.css-xx78k7 {
  margin-top: 80px;
  padding-bottom: 120px;
  position: relative;
}

@media (max-width: 991px) {
  .css-xx78k7 {
    padding-bottom: 40px;
  }
}

.css-xx78k7 > div:not(:first-of-type),
.css-xx78k7 > span:not(:first-of-type) {
  margin-top: 100px;
}

.css-xx78k7 > span:not(:first-of-type) {
  display: block;
}

.css-o7rhth {
  margin-bottom: 80px;
}

.css-uualxx {
  border-radius: 4px;
  border: none;
  padding: 16px;
  font-size: 16px;
  font-weight: 600;
  line-height: 16px;
  margin: 0px;
  text-align: center;
  width: 300px;
}

.css-uualxx:hover {
  color: inherit;
  text-decoration: none;
}

.css-uualxx:disabled {
  opacity: 0.4;
}

.css-uualxx:visited {
  color: inherit;
}

.css-uualxx:focus {
  text-decoration: none;
}

@media (max-width: 767px) {
  .css-uualxx { width: 200px; }
}

@media (max-width: 479px) {
  .css-uualxx { width: 100%; }
}

.css-1r7f6p7 {
  width: 300px;
}

@media (max-width: 767px) {
  .css-1r7f6p7 { width: 200px; }
}

@media (max-width: 479px) {
  .css-1r7f6p7 { width: 100%; }
}

.css-ib9iq6 {
  margin-top: 80px;
}

.css-yusne {
  margin-left: 16px;
}

@media (min-width: 768px) {
  .css-hiki5m { display: none; }
}

@media (max-width: 767px) {
  .css-r9bic9 { display: none; }
}

.css-lgghvf {
  margin-top: 40px;
  margin-bottom: 80px;
}

.css-19v0ev7 {
  margin-top: 24px;
}

.css-1yralp6 {
  margin: 0px;
  font-size: 40px;
}

@media (max-width: 767px) {
  .css-1yralp6 { font-size: 32px; }
}

.css-cb1c07 {
  font-size: 40px;
}

@media (max-width: 767px) {
  .css-cb1c07 { font-size: 32px; }
}

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

.css-5ael0v {
  width: 100%;
  margin-top: 40px;
  margin-bottom: 40px;
}

.css-rm9e7r {
  margin-top: 40px;
  margin-bottom: 40px;
}

.css-165p0iv {
  z-index: 300;
}

@media (max-width: 767px) {
  .css-165p0iv { margin: 20px 0px; }
}

.css-1oeufvc {
  margin: 0px;
  font-size: 56px;
}

@media (min-width: 768px) and (max-width: 991px) {
  .css-1oeufvc { font-size: 56px; }
}

@media (max-width: 767px) {
  .css-1oeufvc { font-size: 9.09091vw; }
}

.css-e58mg4 {
  display: flex;
  z-index: 300;
  max-width: 100%;
}

.css-1kllulx {
  display: inline-flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  max-width: 800px;
  text-align: center;
  z-index: 300;
}

.css-1kllulx .esrdw8g5,
.css-1kllulx .esrdw8g4 {
  flex-direction: column;
  width: 30%;
}

.css-1kllulx .esrdw8g5 {
  align-items: flex-end;
  text-align: right;
}

.css-1kllulx .esrdw8g4 {
  align-items: flex-start;
  text-align: left;
}

.css-1kllulx .esrdw8g3 {
  margin: 0px 32px;
  -webkit-box-flex: 0;
  flex-grow: 0;
  background-image: none;
  position: relative;
  width: unset;
  height: unset;
  z-index: 300;
}

@media (max-width: 767px) {
  .css-1kllulx {
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    width: 100%;
  }
  .css-1kllulx .esrdw8g5,
  .css-1kllulx .esrdw8g4 {
    -webkit-box-align: center;
    align-items: center;
  }
  .css-1kllulx .esrdw8g3 {
    margin: 20px 0px;
  }
}

.css-x23uhb {
  width: 100%;
  text-align: center;
  position: relative;
}

.css-1h2v24 {
  padding-top: 90px;
  padding-bottom: 120px;
  width: 100%;
}

@media (min-width: 768px) and (max-width: 991px) {
  .css-1h2v24 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

@media (max-width: 767px) {
  .css-1h2v24 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

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

.css-1eteumd {
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 150;
  padding-top: 65px;
  padding-right: 32px;
  padding-left: 32px;
}

@media (max-width: 991px) {
  .css-1eteumd {
    padding-right: 5%;
    padding-left: 5%;
    padding-top: 8px;
  }
}

@media (max-width: 1020px) {
  .css-1eteumd {
    margin-left: 10%;
    margin-right: 10%;
  }
}

@media (max-width: 767px) {
  .css-1eteumd {
    margin-left: 5%;
    margin-right: 5%;
  }
}

.css-taqna2 {
  position: relative;
  overflow: visible;
  padding-top: 1px;
  margin-top: -1px;
}

.css-11ytfx9 {
  z-index: 300;
  opacity: 1;
  overflow-wrap: break-word;
  width: 100%;
  font-size: 6vw;
}

@media (min-width: 768px) and (max-width: 991px) {
  .css-11ytfx9 { font-size: 8vw; }
}

@media (max-width: 767px) {
  .css-11ytfx9 { font-size: 8vw; }
}

@media (max-width: 479px) {
  .css-11ytfx9 { font-size: 7vw; }
}

.css-1klksvp {
  z-index: 300;
  padding: 40px 80px;
  width: 100%;
}

@media (max-width: 767px) {
  .css-1klksvp {
    padding: 64px 20px;
  }
}

.css-1ll4ckx {
  margin: 0px;
  height: 100%;
  display: flex;
  overflow: hidden;
  min-width: 1px;
}

.css-j5jh7q {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 100;
}

.css-1tby29p {
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  position: relative;
  text-align: center;
  overflow: hidden;
  aspect-ratio: 12 / 7;
}

@media (max-width: 767px) {
  .css-1tby29p {
    aspect-ratio: 1 / 1;
  }
}

.css-vc763q {
  min-height: 300px;
}

.css-vabva8 {
  position: relative;
  overflow: hidden;
}

.css-b59ad9 {
  position: absolute;
  bottom: 0px;
  left: 0px;
  right: 0px;
  width: 100%;
  height: 3px;
  transform: scaleX(0);
  transition: transform 0.3s;
}

.css-1eqnoda {
  position: absolute;
  bottom: 0px;
  left: 0px;
  right: 0px;
  width: 100%;
  height: 3px;
  transform: scaleX(1);
  transition: transform 0.3s;
}

.css-ooq18z {
  margin: 0px 12px;
  padding: 8px 0px;
  position: relative;
}

.css-ooq18z:hover .e1q2dhxc4,
.css-ooq18z:focus .e1q2dhxc4 {
  transform: scaleX(1);
}

.css-ooq18z a {
  color: inherit;
}

.css-ooq18z a:hover,
.css-ooq18z a:focus {
  text-decoration: none;
  color: inherit;
}

.css-j4a2rg {
  display: flex;
  justify-content: safe center;
  margin: 0px;
  overflow-x: hidden;
  padding: 0px;
  text-align: center;
}

.css-j4a2rg::-webkit-scrollbar {
  display: none;
}

.css-1j5hk87 {
  position: sticky;
  top: 0px;
  padding-top: 20px;
  padding-bottom: 12px;
}

.css-cgt46j {
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 10;
}

.css-lnhrpw {
  margin-top: 0px;
}

@media (max-width: 767px) {
  .css-lnhrpw { display: none; }
}

.css-lnhrpw a {
  color: inherit;
}

.css-lnhrpw a:hover {
  text-decoration: none;
  color: inherit;
}

.css-1u5q96s {
  padding: 20px 20px 0px;
  position: relative;
  text-align: center;
  min-height: 80px;
}

@media (max-width: 767px) {
  .css-1u5q96s { display: none; }
}

.css-or2dyt {
  display: unset;
}

@media (max-width: 991px) {
  .css-or2dyt { display: none; }
}

.css-12z0wuy {
  margin-right: 8px;
}

.css-ipupi {
  -webkit-box-align: center;
  align-items: center;
  border-radius: 50%;
  display: flex;
  height: 44px;
  -webkit-box-pack: center;
  justify-content: center;
  width: 44px;
}

.css-ipupi:hover {
  cursor: pointer;
}

/* =====================================================
   MOBILE MENU - HAMBURGER BUTTON CONTAINER
   ===================================================== */
.css-1cxabwd {
  display: flex;
  flex-direction: row-reverse;
  padding-bottom: 8px;
  padding-right: 12px;
  padding-top: 20px;
  right: 0px;
  z-index: 400;
  position: absolute;
}

/* Hamburger button */
.hamburger-btn {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: white;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hamburger-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.hamburger-btn:active {
  transform: scale(0.95);
}

.hamburger-btn svg {
  width: 24px;
  height: 24px;
  fill: rgb(33, 32, 31);
}

/* Hamburger icon lines */
.hamburger-icon {
  width: 20px;
  height: 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.hamburger-icon span {
  display: block;
  width: 100%;
  height: 2px;
  background-color: rgb(33, 32, 31);
  border-radius: 1px;
}

.css-nb7yii {
  background-color: transparent;
  flex-direction: row-reverse;
  position: sticky;
  top: 0px;
  z-index: 400;
}

/* =====================================================
   MOBILE MENU - DARK OVERLAY
   ===================================================== */
.css-g6nz61 {
  background: rgba(0, 0, 0, 0.0);
  inset: 0px;
  position: fixed;
  z-index: 490;
  pointer-events: none;
  transition: background 0.3s ease-in-out;
}

.css-g6nz61.overlay-visible {
  background: rgba(0, 0, 0, 0.8);
  pointer-events: auto;
  cursor: pointer;
}

.css-g6nz61:hover {
  cursor: pointer;
}

.css-1fyga1f {
  display: unset;
}

@media (min-width: 992px) {
  .css-1fyga1f { display: none; }
}

.css-4zleql {
  display: block;
}

/* Skeleton loading animation */
@keyframes animation-14odzv1 {
  0% { background-position: -960px 0px; }
  100% { background-position: 960px 0px; }
}

.css-11an8yn {
  border-radius: 8px;
  width: 100%;
  max-width: 289px;
  background-size: 1920px 100px;
  animation: 2s ease-out 0s infinite normal none running animation-14odzv1;
  line-height: 20px;
}

@media (min-width: 992px) {
  .css-11an8yn { line-height: 24px; }
}

.css-7ykp99 {
  border-radius: 8px;
  width: 100%;
  max-width: 158px;
  background-size: 1920px 100px;
  animation: 2s ease-out 0s infinite normal none running animation-14odzv1;
  line-height: 20px;
}

@media (min-width: 992px) {
  .css-7ykp99 { line-height: 24px; }
}

.css-1tlz5pi {
  border-radius: 8px;
  width: 100%;
  max-width: 457px;
  background-size: 1920px 100px;
  animation: 2s ease-out 0s infinite normal none running animation-14odzv1;
  line-height: 20px;
}

@media (min-width: 992px) {
  .css-1tlz5pi { line-height: 24px; }
}

.css-gj5a00 {
  border-radius: 8px;
  width: 100%;
  max-width: 431px;
  background-size: 1920px 100px;
  animation: 2s ease-out 0s infinite normal none running animation-14odzv1;
  line-height: 20px;
}

@media (min-width: 992px) {
  .css-gj5a00 { line-height: 24px; }
}

.css-175qovl {
  border-bottom: var(--border-grid, 1px solid #b7b7b7);
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  gap: 16px;
  padding: 6px 0px;
  justify-content: space-around;
  height: 56px;
}

.css-rvigo9 {
  z-index: -1;
  position: fixed;
  width: 100%;
  background-color: var(--background-screen, #ffffff);
}

@media (max-width: 991px) {
  .css-rvigo9 { display: none; }
}

@media (max-width: 991px) {
  .css-ro5zzw { display: none; }
}

.css-1a09ipb {
  border-radius: 8px;
  width: 100%;
  max-width: 64px;
  background-size: 1920px 100px;
  animation: 2s ease-out 0s infinite normal none running animation-14odzv1;
  line-height: 20px;
}

@media (min-width: 992px) {
  .css-1a09ipb { line-height: 24px; }
}

.css-mws4fn {
  opacity: 0;
}

.css-1q89iyw {
  border-radius: 8px;
  width: 100%;
  max-width: 133px;
  background-size: 1920px 100px;
  animation: 2s ease-out 0s infinite normal none running animation-14odzv1;
  line-height: 20px;
}

@media (min-width: 992px) {
  .css-1q89iyw { line-height: 24px; }
}

.css-tnqhx8 {
  line-height: 20px;
}

@media (min-width: 992px) {
  .css-tnqhx8 { line-height: 24px; }
}

.css-4md2z0 {
  border-bottom: var(--border-grid, 1px solid #b7b7b7);
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  gap: 16px;
  padding: 21px 20px;
  -webkit-box-pack: justify;
  justify-content: space-between;
  height: 56px;
}

@media (min-width: 992px) {
  .css-4md2z0 {
    height: 76px;
    padding: 24px 64px;
  }
}

.css-1jj8ta5 {
  z-index: -1;
  position: fixed;
  width: 100%;
  background-color: var(--background-screen, #ffffff);
}

@media (min-width: 992px) {
  .css-1jj8ta5 { display: none; }
}

@media (min-width: 992px) {
  .css-92dg0j { display: none; }
}

.css-naa195 {
  overflow: hidden;
}

/* =====================================================
   FONT FACES
   ===================================================== */
@font-face {
  font-family: "Adora Bouton";
  font-weight: 400;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Adora-Bouton.otf");
}

@font-face {
  font-family: "Aston Script";
  font-weight: 400;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/AstonScript-Regular.otf");
}

@font-face {
  font-family: "Alex Brush";
  font-weight: 400;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/AlexBrush-Regular.ttf");
}

@font-face {
  font-family: Aleo;
  font-weight: 300;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Aleo-Light.otf") format("truetype");
}

@font-face {
  font-family: Aleo;
  font-weight: 400;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Aleo-Regular.otf") format("truetype");
}

@font-face {
  font-family: Aleo;
  font-weight: 700;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Aleo-Bold.otf") format("truetype");
}

@font-face {
  font-family: Allura;
  font-weight: 400;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Allura-Regular.ttf");
}

@font-face {
  font-family: Arvo;
  font-weight: 400;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Arvo-Regular.ttf");
}

@font-face {
  font-family: Arvo;
  font-weight: 700;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Arvo-Bold.ttf");
}

@font-face {
  font-family: Abigail;
  font-weight: 400;
  font-style: normal;
  src: url("https://d1tntvpcrzvon2.cloudfront.net/static-assets/fonts/Abigail-Regular.ttf");
}

@font-face {
  font-family: circular;
  font-weight: 400;
  src: local("Circular Std Book"), local("CircularStd-Book");
}

@font-face {
  font-family: circular;
  font-weight: 600;
  src: local("Circular Std Medium"), local("CircularStd-Medium");
}

@font-face {
  font-family: circular;
  font-weight: 700;
  src: local("Circular Std Bold"), local("CircularStd-Bold");
}

@font-face {
  font-family: "new-spirit";
  font-weight: 500;
  src: local("New Spirit Medium"), local("NewSpirit-Medium");
}

/* =====================================================
   MOBILE MENU - BODY SCROLL LOCK & UTILITIES
   ===================================================== */
body.menu-is-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
  height: 100%;
}

/* Prevent body scroll when menu is open */
html.menu-is-open,
html.menu-is-open body {
  overflow: hidden;
  touch-action: none;
}

/* Menu items styling */
.mobile-menu-nav {
  border-top: 1px solid rgb(217, 217, 217);
  margin-top: 25px;
  padding-top: 25px;
}

.mobile-menu-nav a {
  display: block;
  color: rgb(33, 32, 31);
  font-size: 20px;
  font-weight: 600;
  padding: 14px 0;
  text-decoration: none;
  transition: color 0.2s ease;
}

.mobile-menu-nav a:hover {
  color: rgb(100, 100, 100);
  text-decoration: none;
}

.mobile-menu-nav a:active {
  color: rgb(33, 32, 31);
}

/* Mobile only display */
@media (min-width: 992px) {
  .css-1cxabwd,
  .css-g7ily,
  .css-g6nz61 {
    display: none !important;
  }
}

/* =====================================================
   LOVE STORY SECTION - TEXT ALIGNMENT FIX
   ===================================================== */
.css-949y1o.etrpm3j0 {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}

.css-1i9nm5b p {
  white-space: pre-line !important;
  text-align: center;
}

@media (max-width: 767px) {
  .css-949y1o.etrpm3j0 {
    padding: 0 20px;
  }
}

/* =====================================================
   HERO MARQUEE OVERLAY
   ===================================================== */
.css-j5jh7q::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  pointer-events: none;
  z-index: 50;
}
