@import 'https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;700&display=swap';
:root {
  --sidebar-width: 17.5rem;
  --transition-duration-primary: 0.3s;
  /* ===== Colors ====== */
  /* Main */
  --color-black: #000;
  --color-white: #fff;
  --color-grey: #c8c8c8;
  --color-teal: #238799;
  --color-teal-light: #ebf8fa;
  --color-purple: #6f35cd;
  --color-purple-light: #efe6fd;
  /* State */
  --color-success: #28a745;
  --color-warning: #ffc107;
  --color-danger: #dc3545;
  --color-info: #17a2b8;
  /* Primary/Secondary */
  --color-primary: var(--color-teal);
  --color-primary-light: var(--color-teal-light);
  --booking-card-bg-color: #343337;
  --booking-card-date-color: #f9b332;
}

.theme-purple {
  /* Primary/Secondary */
  --color-primary: var(--color-purple);
  --color-primary-light: var(--color-purple-light);
  --booking-card-bg-color: #01012a;
  --booking-card-date-color: #ebff07;
}

.profile-img__accept-type, .text-xs, .total-card__title, .input.input--labelled::before, .fc table {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -0.015rem;
}

.profile-img__title, .fc .fc-toolbar-title {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.05rem;
}

/* stylelint-disable selector-no-vendor-prefix */
/*
// Mixin:
@include adaptive-value("Property", start value, min value, type of adapt);
// Example:
@include adaptive-value("padding", 50, 20, 0);
*/
/* Line Height
------------------------- */
/* Border Radius
------------------------- */
/* Opacity
------------------------- */
/* Aspect Ratio
------------------------- */
/* Text overflow
------------------------- */
/* Text Shorten
------------------------- */
/* Placeholders
------------------------- */
.mb-0 {
  margin-bottom: 0;
}

.pb-0 {
  padding-bottom: 0;
}

.p-0 {
  padding: 0;
}

.pt-0 {
  padding-top: 0;
}

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

.gap-0 {
  gap: 0;
}

.gap-x-0 {
  column-gap: 0;
}

.gap-y-0 {
  row-gap: 0;
}

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

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

.p-1 {
  padding: 0.25rem;
}

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

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

.gap-1 {
  gap: 0.25rem;
}

.gap-x-1 {
  column-gap: 0.25rem;
}

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

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

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

.p-2 {
  padding: 0.5rem;
}

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

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

.gap-2 {
  gap: 0.5rem;
}

.gap-x-2 {
  column-gap: 0.5rem;
}

.gap-y-2 {
  row-gap: 0.5rem;
}

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

.pb-3 {
  padding-bottom: 0.75rem;
}

.p-3 {
  padding: 0.75rem;
}

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

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

.gap-3 {
  gap: 0.75rem;
}

.gap-x-3 {
  column-gap: 0.75rem;
}

.gap-y-3 {
  row-gap: 0.75rem;
}

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

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

.p-4 {
  padding: 1rem;
}

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

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

.gap-4 {
  gap: 1rem;
}

.gap-x-4 {
  column-gap: 1rem;
}

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

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

.pb-5 {
  padding-bottom: 1.25rem;
}

.p-5 {
  padding: 1.25rem;
}

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

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

.gap-5 {
  gap: 1.25rem;
}

.gap-x-5 {
  column-gap: 1.25rem;
}

.gap-y-5 {
  row-gap: 1.25rem;
}

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

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

.p-6 {
  padding: 1.5rem;
}

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

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

.gap-6 {
  gap: 1.5rem;
}

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

.gap-y-6 {
  row-gap: 1.5rem;
}

.mb-7 {
  margin-bottom: 1.75rem;
}

.pb-7 {
  padding-bottom: 1.75rem;
}

.p-7 {
  padding: 1.75rem;
}

.pt-7 {
  padding-top: 1.75rem;
}

.py-7 {
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
}

.gap-7 {
  gap: 1.75rem;
}

.gap-x-7 {
  column-gap: 1.75rem;
}

.gap-y-7 {
  row-gap: 1.75rem;
}

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

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

.p-8 {
  padding: 2rem;
}

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

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

.gap-8 {
  gap: 2rem;
}

.gap-x-8 {
  column-gap: 2rem;
}

.gap-y-8 {
  row-gap: 2rem;
}

.mb-9 {
  margin-bottom: 2.25rem;
}

.pb-9 {
  padding-bottom: 2.25rem;
}

.p-9 {
  padding: 2.25rem;
}

.pt-9 {
  padding-top: 2.25rem;
}

.py-9 {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
}

.gap-9 {
  gap: 2.25rem;
}

.gap-x-9 {
  column-gap: 2.25rem;
}

.gap-y-9 {
  row-gap: 2.25rem;
}

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

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

.p-10 {
  padding: 2.5rem;
}

.pt-10 {
  padding-top: 2.5rem;
}

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

.gap-10 {
  gap: 2.5rem;
}

.gap-x-10 {
  column-gap: 2.5rem;
}

.gap-y-10 {
  row-gap: 2.5rem;
}

.mb-25 {
  margin-bottom: 25%;
}

.pb-25 {
  padding-bottom: 25%;
}

.p-25 {
  padding: 25%;
}

.pt-25 {
  padding-top: 25%;
}

.py-25 {
  padding-top: 25%;
  padding-bottom: 25%;
}

.gap-25 {
  gap: 25%;
}

.gap-x-25 {
  column-gap: 25%;
}

.gap-y-25 {
  row-gap: 25%;
}

.mb-50 {
  margin-bottom: 50%;
}

.pb-50 {
  padding-bottom: 50%;
}

.p-50 {
  padding: 50%;
}

.pt-50 {
  padding-top: 50%;
}

.py-50 {
  padding-top: 50%;
  padding-bottom: 50%;
}

.gap-50 {
  gap: 50%;
}

.gap-x-50 {
  column-gap: 50%;
}

.gap-y-50 {
  row-gap: 50%;
}

.mb-100 {
  margin-bottom: 100%;
}

.pb-100 {
  padding-bottom: 100%;
}

.p-100 {
  padding: 100%;
}

.pt-100 {
  padding-top: 100%;
}

.py-100 {
  padding-top: 100%;
  padding-bottom: 100%;
}

.gap-100 {
  gap: 100%;
}

.gap-x-100 {
  column-gap: 100%;
}

.gap-y-100 {
  row-gap: 100%;
}

.text-capitalize {
  text-transform: capitalize;
}

.text-uppercase {
  text-transform: uppercase;
}

.text-lowercase {
  text-transform: lowercase;
}

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

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

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

/* ========== GRID ========== */
@media (max-width: 480px) {
  :root {
    --media-breakdown: 480 * 100vw;
  }
}
@media (min-width: 480px) {
  :root {
    --media-breakdown: 568 * 100vw;
  }
}
@media (min-width: 568px) {
  :root {
    --media-breakdown: 768 * 100vw;
  }
}
@media (min-width: 768px) {
  :root {
    --media-breakdown: 992 * 100vw;
  }
}
@media (min-width: 992px) {
  :root {
    --media-breakdown: 1200 * 100vw;
  }
}
@media (min-width: 1200px) {
  :root {
    --media-breakdown: 1580 * 100vw;
  }
}
@media (min-width: 1580px) {
  :root {
    --media-breakdown: 1920 * 100vw;
  }
}
.row {
  display: flex;
  flex-flow: row wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}

[class^=col-],
[class*=" col-"] {
  flex: 0 0 100%;
  max-width: 100%;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

@media (min-width: 320px) {
  .col-2xs-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
}

@media (min-width: 320px) {
  .col-2xs-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 320px) {
  .col-2xs-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 320px) {
  .col-2xs-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
}

@media (min-width: 320px) {
  .col-2xs-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
}

@media (min-width: 320px) {
  .col-2xs-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 320px) {
  .col-2xs-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
}

@media (min-width: 320px) {
  .col-2xs-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
}

@media (min-width: 320px) {
  .col-2xs-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
}

@media (min-width: 320px) {
  .col-2xs-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
}

@media (min-width: 320px) {
  .col-2xs-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
}

@media (min-width: 320px) {
  .col-2xs-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 480px) {
  .col-xs-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
}

@media (min-width: 480px) {
  .col-xs-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 480px) {
  .col-xs-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 480px) {
  .col-xs-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
}

@media (min-width: 480px) {
  .col-xs-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
}

@media (min-width: 480px) {
  .col-xs-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 480px) {
  .col-xs-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
}

@media (min-width: 480px) {
  .col-xs-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
}

@media (min-width: 480px) {
  .col-xs-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
}

@media (min-width: 480px) {
  .col-xs-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
}

@media (min-width: 480px) {
  .col-xs-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
}

@media (min-width: 480px) {
  .col-xs-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 768px) {
  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
}

@media (min-width: 768px) {
  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 768px) {
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 768px) {
  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
}

@media (min-width: 768px) {
  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
}

@media (min-width: 768px) {
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 768px) {
  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
}

@media (min-width: 768px) {
  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
}

@media (min-width: 768px) {
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
}

@media (min-width: 768px) {
  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
}

@media (min-width: 768px) {
  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
}

@media (min-width: 768px) {
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 992px) {
  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
}

@media (min-width: 992px) {
  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 992px) {
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 992px) {
  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
}

@media (min-width: 992px) {
  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
}

@media (min-width: 992px) {
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 992px) {
  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
}

@media (min-width: 992px) {
  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
}

@media (min-width: 992px) {
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
}

@media (min-width: 992px) {
  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
}

@media (min-width: 992px) {
  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
}

@media (min-width: 992px) {
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 1280px) {
  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
}

@media (min-width: 1280px) {
  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 1280px) {
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 1280px) {
  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
}

@media (min-width: 1280px) {
  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
}

@media (min-width: 1280px) {
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 1280px) {
  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
}

@media (min-width: 1280px) {
  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
}

@media (min-width: 1280px) {
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
}

@media (min-width: 1280px) {
  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
}

@media (min-width: 1280px) {
  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
}

@media (min-width: 1280px) {
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 1440px) {
  .col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
}

@media (min-width: 1440px) {
  .col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 1440px) {
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 1440px) {
  .col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
}

@media (min-width: 1440px) {
  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
}

@media (min-width: 1440px) {
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 1440px) {
  .col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
}

@media (min-width: 1440px) {
  .col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
}

@media (min-width: 1440px) {
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
}

@media (min-width: 1440px) {
  .col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
}

@media (min-width: 1440px) {
  .col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
}

@media (min-width: 1440px) {
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
}

@media (min-width: 1560px) {
  .col-2xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

.d-flex,
.flex {
  display: flex;
}

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

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

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

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

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

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

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

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

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

.grow {
  flex-grow: 1;
}

html {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

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

main,
header,
footer {
  display: block;
}

hr {
  overflow: visible;
  height: 0;
}

ul {
  list-style: none;
}

a {
  display: inline-block;
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
}

b,
strong {
  font-weight: 700;
}

code,
kbd,
samp {
  font-family: monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

img {
  border-style: none;
  max-width: 100%;
  object-fit: cover;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

legend {
  display: table;
  max-width: 100%;
  white-space: normal;
  color: inherit;
}

textarea {
  overflow: auto;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

[hidden] {
  display: none;
}

@font-face {
  src: url("../fonts/icomoon.woff") format("woff"), url("../fonts/icomoon.woff2") format("woff2");
  font-family: "icomoon";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
[class^=icon-],
[class*=" icon-"] {
  display: inline-flex;
  align-items: center;
  font-family: inherit;
}
[class^=icon-]::before,
[class*=" icon-"]::before {
  font-family: "icomoon" !important;
  font-weight: 400;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  speak: never;
}

.icon-twitter-x::before {
  content: "\e900";
}

.icon-facebook-circle::before {
  content: "\e901";
}

.icon-link-external::before {
  content: "\e902";
}

.icon-home::before {
  content: "\e903";
}

.icon-arrow-left::before {
  content: "\e904";
}

.icon-arrow-right::before {
  content: "\e905";
}

.icon-exit::before,
.icon-logout::before {
  content: "\e906";
}

.icon-cross::before {
  content: "\e908";
}

.icon-calendar-check::before {
  content: "\e909";
}

.icon-download::before {
  content: "\e90b";
}

.icon-help-circle::before {
  content: "\e90c";
}

.icon-upload::before {
  content: "\e90d";
}

.icon-folder-search::before {
  content: "\e90e";
}

.icon-pencil::before {
  content: "\e90f";
}

.icon-files-empty::before {
  content: "\e925";
}

.icon-coin-dollar::before {
  content: "\e93b";
}

.icon-coin-euro::before {
  content: "\e93c";
}

.icon-coin-pound::before {
  content: "\e93d";
}

.icon-coin-yen::before {
  content: "\e93e";
}

.icon-phone::before {
  content: "\e942";
}

.icon-location::before {
  content: "\e947";
}

.icon-spinner11::before {
  content: "\e984";
}

.icon-lock::before {
  content: "\e98f";
}

.icon-unlocked::before {
  content: "\e990";
}

.icon-cog::before {
  content: "\e994";
}

.icon-stats-dots::before {
  content: "\e99b";
}

.icon-sphere::before {
  content: "\e9c9";
}

.icon-link::before {
  content: "\e9cb";
}

.icon-attachment::before {
  content: "\e9cd";
}

.icon-eye::before {
  content: "\e9ce";
}

.icon-eye-blocked::before {
  content: "\e9d1";
}

.icon-sun::before {
  content: "\e9d4";
}

.icon-star-empty::before {
  content: "\e9d7";
}

.icon-star-full::before {
  content: "\e9d9";
}

.icon-heart::before {
  content: "\e9da";
}

.icon-loop::before {
  content: "\ea2e";
}

.icon-share::before {
  content: "\ea82";
}

.icon-google::before {
  content: "\ea88";
}

.icon-facebook::before {
  content: "\ea90";
}

.icon-facebook-sqr::before {
  content: "\ea91";
}

.icon-instagram::before {
  content: "\ea92";
}

.icon-whatsapp::before {
  content: "\ea93";
}

.icon-spotify::before {
  content: "\ea94";
}

.icon-telegram::before {
  content: "\ea95";
}

.icon-twitter::before {
  content: "\ea96";
}

.icon-vine::before {
  content: "\ea97";
}

.icon-rss::before {
  content: "\ea9b";
}

.icon-youtube::before {
  content: "\ea9e";
}

.icon-twitch::before {
  content: "\ea9f";
}

.icon-vimeo::before {
  content: "\eaa0";
}

.icon-dribbble::before {
  content: "\eaa7";
}

.icon-behance::before {
  content: "\eaa8";
}

.icon-skype::before {
  content: "\eac5";
}

.icon-reddit::before {
  content: "\eac6";
}

.icon-linkedin::before {
  content: "\eac9";
}

.icon-linkedin-alt::before {
  content: "\eaca";
}

.icon-pinterest::before {
  content: "\ead2";
}

.icon-user::before {
  content: "\e90a";
}

.icon-youtube-alt::before {
  content: "\ea9d";
}

.icon-chevrons-up::before {
  content: "\e910";
}

.icon-chevrons-right::before {
  content: "\e911";
}

.icon-chevrons-left::before {
  content: "\e912";
}

.icon-chevrons-down::before {
  content: "\e913";
}

.icon-chevron-right::before {
  content: "\e914";
}

.icon-chevron-left::before {
  content: "\e915";
}

.icon-chevron-down::before {
  content: "\e916";
}

.icon-chevron-up::before {
  content: "\e917";
}

.icon-file-down::before,
.icon-file-text::before {
  content: "\e918";
}

.icon-loader::before {
  content: "\e919";
}

.icon-x-circle::before {
  content: "\e91a";
}

.icon-minus::before {
  content: "\e91b";
}

.icon-plus::before {
  content: "\e91c";
}

.icon-check-circle::before {
  content: "\e91d";
}

.icon-check-square::before {
  content: "\e91e";
}

.icon-check::before {
  content: "\e91f";
}

.icon-search::before {
  content: "\e907";
}

.soc {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.25rem;
  font-weight: 400;
  gap: 0.75rem;
}
.soc > li > a {
  transition: color 0.35s;
}
@media (any-hover: hover) {
  .soc > li > a:hover {
    color: #238799;
  }
}
.soc > li > a:focus, .soc > li > a:active {
  color: #238799;
}

.modal {
  --transition-time: 0.3s;
  position: fixed;
  z-index: 1000;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: rgba(2, 2, 3, 0.5);
  text-align: center;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  transition: opacity var(--transition-time), visibility var(--transition-time);
}
.modal::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.modal.is-open {
  opacity: 1;
  visibility: visible;
  transition: opacity var(--transition-time), visibility var(--transition-time);
}
.modal__container {
  position: relative;
  display: none;
  margin: 3rem auto;
  border: 0.0625rem solid #ebeded;
  border-radius: 0.5rem;
  width: 61.25rem;
  background-color: #fff;
  text-align: left;
  cursor: default;
}
@media (max-width: 1279px) {
  .modal__container {
    width: 90%;
  }
}
.modal__container.modal-open {
  display: inline-block;
}
.modal__container--sm {
  width: 22rem;
}
@media (max-width: 479px) {
  .modal__container--sm {
    width: 95%;
  }
}

.modal-fade {
  opacity: 0;
  transition: opacity var(--transition-time);
}
.modal-fade.animate-open {
  opacity: 1;
  transition: opacity var(--transition-time);
}

.modal-zoomIn {
  opacity: 0;
  transform: scale(0);
  transition: opacity var(--transition-time);
}
.modal-zoomIn.animate-open {
  opacity: 1;
  transform: scale(1);
  transition: opacity var(--transition-time), transform var(--transition-time);
}

.modal-fadeInUp {
  opacity: 0;
  transform: translateY(-10%);
  transition: opacity var(--transition-time), transform var(--transition-time);
}
.modal-fadeInUp.animate-open {
  opacity: 1;
  transform: translateY(0);
  transition: opacity var(--transition-time), transform var(--transition-time);
}

.disable-scroll {
  position: fixed;
  left: 0;
  top: 0;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}

.modal-content {
  padding: 1.5rem 2.5rem;
  text-align: center;
}
@media (max-width: 991px) {
  .modal-content {
    padding: 1.25rem;
  }
}
.modal-content__title {
  margin-bottom: 1rem;
}
.modal-content__body {
  margin-bottom: 1.5rem;
  color: #888989;
}
.modal-content__btn-box {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
}

:root {
  --fc-small-font-size: 0.85em;
  --fc-page-bg-color: #fff;
  --fc-neutral-bg-color: rgb(208 208 208 / 30%);
  --fc-neutral-text-color: #808080;
  --fc-border-color: #ebeded;
  --fc-button-text-color: #fff;
  --fc-button-bg-color: transparent;
  --fc-button-border-color: var(--color-primary);
  --fc-button-hover-bg-color: var(--color-primary);
  --fc-button-hover-border-color: var(--color-primary);
  --fc-button-active-bg-color: var(--color-primary);
  --fc-button-active-border-color: var(--color-primary);
  --fc-event-bg-color: #3788d8;
  --fc-event-border-color: #3788d8;
  --fc-event-text-color: #fff;
  --fc-event-selected-overlay-color: rgb(0 0 0 / 25%);
  --fc-more-link-bg-color: #d0d0d0;
  --fc-more-link-text-color: inherit;
  --fc-event-resizer-thickness: 8px;
  --fc-event-resizer-dot-total-width: 8px;
  --fc-event-resizer-dot-border-width: 1px;
  --fc-non-business-color: rgb(215 215 215 / 30%);
  --fc-bg-event-color: rgb(143 223 130);
  --fc-bg-event-opacity: 0.3;
  --fc-highlight-color: rgb(188 232 241 / 30%);
  --fc-today-bg-color: rgb(255 220 40 / 15%);
  --fc-now-indicator-color: red;
  --fc-daygrid-event-dot-width: 8px;
  --fc-list-event-dot-width: 10px;
  --fc-list-event-hover-bg-color: #f5f5f5;
}

.fc {
  border: 0.0625rem solid transparent;
  border-radius: 0.5rem;
  padding: 1rem;
}
.fc.fc-theme-standard {
  border-color: #ebeded;
  background-color: var(--color-white);
}
.fc.fc-theme-standard .fc-scrollgrid {
  border: none;
}
.fc.fc-theme-standard th {
  border: none;
}
.fc .fc-toolbar.fc-header-toolbar {
  margin-bottom: 1rem;
}
.fc .fc-button {
  --btn-size: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0.0625rem solid var(--color-primary);
  border-radius: var(--btn-size);
  width: var(--btn-size);
  height: var(--btn-size);
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  color: var(--color-primary);
  user-select: none;
  transition: background-color var(--transition-duration-primary), box-shadow var(--transition-duration-primary), color var(--transition-duration-primary);
}
.fc .fc-button-primary:focus {
  box-shadow: 0 0 0 0.3rem rgba(35, 135, 153, 0.5137254902);
}
.fc .fc-button-primary:not(:disabled).fc-button-active:focus, .fc .fc-button-primary:not(:disabled):active:focus {
  box-shadow: 0 0 0 0.3rem rgba(35, 135, 153, 0.5137254902);
}
.fc table {
  border-collapse: separate;
  border-spacing: 0.25rem;
  line-height: 1;
}
.fc table td {
  border-radius: 0.25rem;
}
.fc .fc-daygrid-day.fc-day-today {
  border-color: var(--color-primary);
  background-color: var(--color-primary-light);
}
.fc .fc-daygrid-day-number {
  width: 100%;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.05em;
  text-align: center;
}
@media (max-width: 991px) {
  .fc .fc-daygrid-day-number {
    font-size: 1rem;
  }
}
@media (max-width: 479px) {
  .fc .fc-daygrid-day-number {
    font-size: 0.875rem;
  }
}

.btn {
  display: inline-flex;
  gap: 0.375rem;
  align-items: center;
  justify-content: center;
  outline: none;
  border: 0.0625rem solid var(--color-primary);
  border-radius: 3rem;
  min-height: 2.5rem;
  padding: 0.5rem 1rem;
  background-color: var(--color-primary);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: -0.02rem;
  white-space: nowrap;
  text-align: center;
  color: #fff;
  cursor: pointer;
  transition: background-color 0.35s, border-color 0.35s, color 0.35s;
}
.btn:disabled, .btn._disabled {
  border-color: #c8c8c8;
  background-color: #c8c8c8;
  color: #000;
  cursor: default;
  pointer-events: none;
}
.btn.btn--outline-gray {
  border-color: #ebeded;
  background-color: transparent;
  color: #020203;
}
@media (any-hover: hover) {
  .btn.btn--outline-gray:not(:disabled, ._disabled):hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
  }
}
.btn.btn--outline-gray:not(:disabled, ._disabled):focus {
  box-shadow: 0 0 0 0.0625rem #000;
}
.btn.btn--outline-gray:not(:disabled, ._disabled):active {
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.btn.btn--outline-white {
  border-color: #fff;
  background-color: transparent;
  color: #fff;
}
@media (any-hover: hover) {
  .btn.btn--outline-white:not(:disabled, ._disabled):hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
  }
}
.btn.btn--outline-white:not(:disabled, ._disabled):focus {
  box-shadow: 0 0 0 0.0625rem #000;
}
.btn.btn--outline-white:not(:disabled, ._disabled):active {
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.btn.btn--outline {
  border-color: var(--color-primary);
  background-color: transparent;
  color: var(--color-primary);
}
@media (any-hover: hover) {
  .btn.btn--outline:not(:disabled, ._disabled):hover {
    border-color: var(--color-primary);
    background-color: var(--color-primary);
    color: #fff;
  }
}
.btn.btn--outline:not(:disabled, ._disabled):focus {
  box-shadow: 0 0 0 0.0625rem #000;
}
.btn.btn--outline:not(:disabled, ._disabled):active {
  border-color: var(--color-primary);
  background-color: var(--color-primary);
  color: #fff;
}
.btn.btn--sm {
  min-height: 2rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
}
@media (any-hover: hover) {
  .btn:not(:disabled, ._disabled):hover {
    background-color: transparent;
    color: var(--color-primary);
  }
}
.btn:not(:disabled, ._disabled):focus {
  box-shadow: 0 0 0 0.0625rem #000;
}
.btn:not(:disabled, ._disabled):active {
  background-color: transparent;
  color: var(--color-primary);
}

.input {
  position: relative;
}
.input.input--labelled {
  position: relative;
}
.input.input--labelled::before {
  content: attr(data-label);
  position: absolute;
  left: 1rem;
  top: 0.25rem;
  color: #888989;
  opacity: 0;
  visibility: hidden;
  transition: visibility 0.35s, opacity 0.35s;
}
.input.input--labelled._focused::before, .input.input--labelled._has-value::before {
  opacity: 1;
  visibility: visible;
}
.input.input--labelled._focused input, .input.input--labelled._has-value input {
  padding: 1.125rem 1rem 0.25rem;
}
.input.input--labelled input {
  min-height: 3rem;
}
.input input,
.input textarea {
  appearance: none;
  display: block;
  outline: none;
  border: 0.0625rem solid #ebeded;
  border-radius: 0.5rem;
  width: 100%;
  padding: 0.6875rem 1rem;
  background-color: #f5f5f5;
  font-size: 1rem;
  line-height: 1;
  color: #020203;
  resize: none;
  transition: border-color 0.35s, padding 0.35s;
}
.input input.placeholder,
.input textarea.placeholder {
  color: #888989;
}
.input input::placeholder,
.input textarea::placeholder {
  color: #888989;
}
.input input:-moz-placeholder,
.input textarea:-moz-placeholder {
  color: #888989;
}
.input input::-moz-placeholder,
.input textarea::-moz-placeholder {
  color: #888989;
}
.input input:-ms-input-placeholder,
.input textarea:-ms-input-placeholder {
  color: #888989;
}
.input input::-webkit-input-placeholder,
.input textarea::-webkit-input-placeholder {
  color: #888989;
}
.input input:disabled, .input input._disabled,
.input textarea:disabled,
.input textarea._disabled {
  border-color: #c8c8c8;
  background-color: rgba(200, 200, 200, 0.75);
  opacity: 0.8;
  cursor: default;
}
.input input::-webkit-search-decoration, .input input::-webkit-search-cancel-button, .input input::-webkit-search-results-button, .input input::-webkit-search-results-decoration,
.input textarea::-webkit-search-decoration,
.input textarea::-webkit-search-cancel-button,
.input textarea::-webkit-search-results-button,
.input textarea::-webkit-search-results-decoration {
  display: none;
}
@media (any-hover: hover) {
  .input input:not(:disabled, ._disabled):hover,
  .input textarea:not(:disabled, ._disabled):hover {
    border-color: var(--color-primary);
    background-color: var(--color-primary-light);
  }
}
.input input:not(:disabled, ._disabled):focus,
.input textarea:not(:disabled, ._disabled):focus {
  border-color: var(--color-primary);
  background-color: var(--color-primary-light);
}
.input input:not(:disabled, ._disabled):active,
.input textarea:not(:disabled, ._disabled):active {
  border-color: var(--color-primary);
  background-color: var(--color-primary-light);
}
.input__toggle {
  position: absolute;
  right: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  width: 2.25rem;
  height: 100%;
  background: none;
  color: #888989;
  transition: color 0.35s;
}
@media (any-hover: hover) {
  .input__toggle:hover {
    color: #020203;
  }
}
.input__toggle::before {
  content: "\e9ce";
  font-family: "icomoon";
}
.input__toggle._show::before {
  content: "\e9d1";
}
.input__toggle:not(:disabled) {
  cursor: pointer;
}

.checkbox {
  position: relative;
  display: block;
  padding-left: 2rem;
  color: #888989;
  user-select: none;
}
[dir=rtl] .checkbox {
  padding-right: 2.25rem;
  padding-left: 0;
}
[dir=rtl] .checkbox .checkbox__mark {
  left: auto;
  right: 0;
}
.checkbox a {
  text-decoration: underline;
  transition: color 0.35s;
}
@media (any-hover: hover) {
  .checkbox a:hover {
    color: var(--color-primary);
  }
}
.checkbox input {
  position: absolute;
  z-index: -1;
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  cursor: pointer;
}
.checkbox input:disabled ~ .checkbox__text {
  color: #020203;
}
.checkbox input:checked ~ .checkbox__mark {
  border-color: var(--color-primary);
  background-color: var(--color-primary);
}
.checkbox input:checked ~ .checkbox__mark::after {
  opacity: 1;
  visibility: visible;
}
.checkbox input:not(:disabled) {
  cursor: pointer;
}
.checkbox input:not(:disabled) ~ .checkbox__mark,
.checkbox input:not(:disabled) ~ .checkbox__text {
  cursor: pointer;
}
.checkbox__mark {
  position: absolute;
  left: 0;
  top: 0;
  border: 0.0625rem solid #ebeded;
  border-radius: 0.375rem;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #fff;
  transition: all 0.35s ease;
}
.checkbox__mark::after {
  content: "";
  position: absolute;
  left: 0.484375rem;
  top: 0.09375rem;
  border: solid #fff;
  border-width: 0 0.1875rem 0.1875rem 0;
  width: 0.5rem;
  height: 0.9375rem;
  opacity: 0;
  visibility: hidden;
  transform: rotate(45deg);
  transition: all 0.35s ease;
}

.radio {
  position: relative;
  display: block;
  padding-left: 2rem;
  cursor: pointer;
  user-select: none;
}
@media (any-hover: hover) {
  .radio:hover input ~ .radio__mark {
    background-color: #ebeded;
  }
}
[dir=rtl] .radio {
  padding-right: 2.25rem;
  padding-left: 0;
}
[dir=rtl] .radio .radio__mark {
  left: auto;
  right: 0;
}
.radio input {
  position: absolute;
  z-index: -1;
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  cursor: pointer;
}
.radio input:checked ~ .radio__mark {
  border-color: var(--color-primary);
  background-color: var(--color-primary);
}
.radio input:checked ~ .radio__mark::after {
  transform: translate(-50%, -50%) scale(1);
}
.radio__mark {
  position: absolute;
  left: 0;
  top: 0;
  border: 0.0625rem solid #ebeded;
  border-radius: 100%;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #fff;
  transition: all 0.35s ease;
}
.radio__mark::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  border: 0.0625rem solid #fff;
  border-radius: 50%;
  width: 0.75rem;
  height: 0.75rem;
  background-color: #fff;
  transform: translate(-50%, -50%) scale(0);
  transition: all 0.35s ease;
}

.btn-radio {
  position: relative;
  display: inline-block;
}
.btn-radio.btn-radio--sqr .btn-radio__btn {
  border-radius: 0.25rem;
}
.btn-radio input {
  position: absolute;
  z-index: -1;
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  cursor: pointer;
}
.btn-radio input:disabled ~ .btn-radio__btn {
  background-color: #f5f5f5;
  color: #cbcccc;
}
.btn-radio input:checked ~ .btn-radio__btn {
  border-color: var(--color-primary);
  background-color: var(--color-primary-light);
  color: var(--color-primary);
}
.btn-radio input:not(:disabled) ~ .btn-radio__btn {
  cursor: pointer;
}
@media (any-hover: hover) {
  .btn-radio input:not(:disabled) ~ .btn-radio__btn:hover {
    border-color: var(--color-primary);
    background-color: var(--color-primary-light);
    color: var(--color-primary);
  }
}
.btn-radio__btn {
  display: block;
  border: 0.0625rem solid #ebeded;
  border-radius: 2.5rem;
  width: 100%;
  padding: 0.5rem 1rem;
  text-align: center;
  transition: border-color 0.35s, color 0.35s, background-color 0.35s;
}

.input-file {
  position: relative;
  display: block;
  text-align: center;
}
.input-file input[type=file] {
  position: absolute;
  z-index: -1;
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
}
.input-file input[type=file]:not(:disabled) ~ .input-file__inner {
  cursor: pointer;
}
@media (any-hover: hover) {
  .input-file input[type=file]:not(:disabled) ~ .input-file__inner:hover {
    border-color: var(--color-primary);
  }
}
.input-file__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 0.0625rem dashed #dcdede;
  border-radius: 0.5rem;
  padding: 1rem 1rem 2rem;
  background-color: #f5f5f5;
  transition: border-color var(--transition-duration-primary);
}
.input-file__img {
  margin-bottom: 0.875rem;
}
.input-file__img img {
  display: block;
}
.input-file__label {
  font-size: 0.75rem;
  font-weight: 400;
  color: #888989;
}
.input-file__label strong {
  font-weight: inherit;
  text-decoration: underline;
  color: var(--color-primary);
}

.header {
  position: fixed;
  z-index: 100;
  left: 0;
  top: 0;
  width: 100%;
  background-color: transparent;
  transition: box-shadow 0.35s, background-color 0.35s, transform 0.35s;
}
.header._scrolled {
  background-color: #fff;
  box-shadow: 0 0 3rem rgba(35, 135, 153, 0.25);
}
@media (min-width: 992px) {
  .header._scrolled .header__wrap {
    padding: 1rem 0;
  }
}
.header._hidden {
  box-shadow: none;
  transform: translateY(-100%);
}
.header__wrap {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem 0;
  transition: padding 0.35s;
}
@media (max-width: 991px) {
  .header__wrap {
    padding: 1rem 0;
  }
}
.header__logo {
  margin-right: 1.5rem;
  transition: opacity 0.35s;
}
@media (any-hover: hover) {
  .header__logo:hover {
    opacity: 0.75;
  }
}
.header__logo:focus, .header__logo:active {
  opacity: 0.75;
}
.header__logo img {
  display: block;
}
.header__menu {
  flex: 1 1 auto;
}
@media (max-width: 991px) {
  .header__menu {
    flex: 0 0 auto;
  }
}

.menu__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  width: 1.5rem;
  height: 1.5rem;
  background: none;
  color: inherit;
  cursor: pointer;
  transition: color 0.35s;
}
.menu__arrow::after {
  content: ">";
  display: inline-block;
  font-size: 1.25rem;
  line-height: 0;
  color: inherit;
  transform: rotate(90deg);
  transition: transform 0.35s;
}
.menu__body {
  display: flex;
  gap: 2.25rem;
  align-items: center;
  justify-content: flex-end;
}
@media (max-width: 991px) {
  .menu__body {
    position: fixed;
    left: -100%;
    top: 0;
    flex-direction: column;
    align-items: stretch;
    justify-content: start;
    overflow: auto;
    width: 100%;
    height: 100%;
    padding: 5rem 1.25rem 1.5rem;
    background-color: rgba(255, 255, 255, 0.975);
    transition: left 0.5s;
  }
  .menu__body._active {
    left: 0;
  }
}
@media (min-width: 992px) {
  .menu__body > ul:not(.soc) {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
    align-items: center;
  }
}
.menu__body > ul:not(.soc) > li {
  position: relative;
  white-space: nowrap;
}
@media (max-width: 991px) {
  .menu__body > ul:not(.soc) > li:not(:last-child) {
    border-bottom: 0.0625rem dashed #238799;
  }
}
.menu__body > ul:not(.soc) > li > a {
  display: inline-block;
  padding: 0.125rem 0.25rem;
  font-size: 1rem;
  font-weight: 400;
  text-transform: capitalize;
  transition: all 0.35s ease;
}
@media (max-width: 991px) {
  .menu__body > ul:not(.soc) > li > a {
    padding: 0.75rem 0.25rem;
    font-size: 1.25rem;
  }
}
@media (any-hover: hover) {
  .menu__body > ul:not(.soc) > li > a:hover {
    color: #238799;
  }
}
.menu__body > ul:not(.soc) > li > a:focus, .menu__body > ul:not(.soc) > li > a:active {
  color: #238799;
}
.menu__sublist {
  position: absolute;
  z-index: 100;
  left: 0;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  transform: translate(0, 10%);
  pointer-events: none;
  transition: all 0.35s ease;
}
.menu__sublist > li > a {
  display: block;
  min-width: 10rem;
  padding: 0.25rem 1rem;
  transition: color 0.35s;
}
@media (any-hover: hover) {
  .menu__sublist > li > a:hover {
    color: #238799;
  }
}
.menu__sublist > li > a:focus, .menu__sublist > li > a:active {
  color: #238799;
}
.menu__btn {
  display: none;
}
@media (max-width: 991px) {
  .menu__btn {
    position: relative;
    z-index: 100;
    display: block;
    border: none;
    width: 2.5rem;
    height: 1.5rem;
    background-color: transparent;
    cursor: pointer;
  }
  .menu__btn span, .menu__btn::before, .menu__btn::after {
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.125rem;
    background-color: #000;
    transition: all 0.35s ease;
  }
  .menu__btn::before, .menu__btn::after {
    content: "";
  }
  .menu__btn::before {
    top: 0;
  }
  .menu__btn::after {
    bottom: 0;
  }
  .menu__btn._active::before {
    top: 50%;
    transform: rotate(-45deg) translate(0, -50%);
  }
  .menu__btn._active::after {
    bottom: 50%;
    transform: rotate(45deg) translate(0, 50%);
  }
  .menu__btn._active span {
    transform: scale(0) translate(0, -50%);
  }
  .menu__btn span {
    top: 50%;
    transform: scale(1) translate(0, -50%);
  }
}
.menu__btn-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: -0.5rem;
}
@media (max-width: 991px) {
  .menu__btn-box {
    flex-direction: column;
    margin-left: -0.5rem;
  }
}
.menu__btn-box > .btn {
  margin: 0.5rem;
}
@media (max-width: 767px) {
  .menu__btn-box > .btn {
    width: calc(100% - 1rem);
  }
}

/* ===== PC ===== */
@media (any-hover: hover) {
  body.pc .menu__body > ul > li:hover .menu__sublist {
    opacity: 1;
    visibility: visible;
    transform: translate(0, 0);
    pointer-events: all;
  }
  body.pc .menu__body > ul > li:hover a,
  body.pc .menu__body > ul > li:hover .menu__arrow {
    color: #238799;
  }
  body.pc .menu__body > ul > li:hover .menu__arrow::after {
    border-color: #238799;
    transform: rotate(270deg);
  }
}
body.pc .menu__arrow::after {
  display: inline-block;
}
body.pc .menu__sublist {
  padding: 0.625rem 0;
  box-shadow: 0 0 1rem rgba(35, 135, 153, 0.25);
}

/* ===== MOBILE ===== */
body.touch .menu__body > ul > li {
  display: flex;
  flex-wrap: wrap;
}
body.touch .menu__body > ul > li._active .menu__sublist {
  max-height: 80vh;
  pointer-events: all;
}
body.touch .menu__body > ul > li._active .menu__arrow::after {
  transform: rotate(270deg);
}
body.touch .menu__body > ul > li > a {
  flex: 1 1 auto;
}
body.touch .menu__body > ul > li .menu__sublist {
  position: static;
  flex: 1 1 100%;
  overflow: hidden;
  max-height: 0;
  padding: 0 0 0 1.125rem;
  background-color: transparent;
  font-size: 1.125rem;
  opacity: 1;
  visibility: visible;
  transform: none;
  transition: max-height 0.5s;
}
body.touch .menu__body > ul > li .menu__sublist > li:not(:last-child) {
  border-bottom: 0.0625rem dashed #238799;
}
body.touch .menu__body > ul > li .menu__sublist > li a {
  padding: 0.625rem 0;
}
body.touch .menu__arrow {
  flex: 0 0 3rem;
  align-self: stretch;
  justify-content: flex-end;
  margin-left: 0.5rem;
  width: 3rem;
  height: auto;
  padding-right: 0.5rem;
}

.booking-header {
  background-color: var(--color-white);
}
.booking-header__wrap {
  display: flex;
  gap: 0.75rem 1.5rem;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 0;
}
@media (max-width: 991px) {
  .booking-header__wrap {
    gap: 0.75rem;
    padding: 0.75rem 0;
  }
}
.booking-header__logo {
  transition: opacity var(--transition-duration-primary);
}
@media (any-hover: hover) {
  .booking-header__logo:hover {
    opacity: 0.75;
  }
}
.booking-header__logo img {
  display: block;
  max-height: 2.5rem;
}
.booking-header__stepper-steps {
  flex: 1 1 auto;
  min-width: 0;
}

.sidebar {
  position: fixed;
  z-index: 199;
  left: 0;
  top: 0;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  width: var(--sidebar-width);
  height: 100%;
  max-height: 100%;
  background-color: #fff;
}
@media (max-width: 991px) {
  .sidebar {
    width: 100%;
    height: auto;
    padding: 0;
  }
}
.sidebar__header {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  min-height: 5.5rem;
  padding: 1rem;
}
.sidebar__img {
  --img-size: 2.75rem;
  flex: 0 0 var(--img-size);
  margin-left: auto;
  border-radius: var(--img-size);
  width: var(--img-size);
  height: var(--img-size);
}
@media (min-width: 992px) {
  .sidebar__img {
    display: none;
  }
}
.sidebar__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 991px) {
  .sidebar__logo {
    height: 2.75rem;
    max-height: 2.75rem;
  }
}
.sidebar__logo img {
  display: block;
}
.sidebar__heading {
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
  color: #888989;
}
.sidebar__menu {
  margin-bottom: 2.5rem;
}
.sidebar__menu > li:not(:last-child) {
  margin-bottom: 0.5rem;
}
.sidebar__menu > li > a {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  border-radius: 5rem;
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: -0.02rem;
  color: #888989;
  transition: background-color 0.35s, color 0.35s;
}
@media (any-hover: hover) {
  .sidebar__menu > li > a:hover {
    background-color: var(--color-primary-light);
    color: var(--color-primary);
  }
}
.sidebar__menu > li > a:focus, .sidebar__menu > li > a:active, .sidebar__menu > li > a._active {
  background-color: var(--color-primary-light);
  color: var(--color-primary);
}
.sidebar__menu > li > a i {
  display: flex;
  flex: 0 0 1rem;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
}
.sidebar__user {
  margin-top: auto;
  margin-bottom: 1.5rem;
}
@media (max-width: 991px) {
  .sidebar__toggle-btn {
    position: relative;
    z-index: 100;
    display: block;
    flex: 0 0 2.75rem;
    border: none;
    width: 2.75rem;
    height: 2.75rem;
    background-color: transparent;
    cursor: pointer;
  }
  .sidebar__toggle-btn span, .sidebar__toggle-btn::before, .sidebar__toggle-btn::after {
    position: absolute;
    left: 0.375rem;
    border-radius: 0.1875rem;
    width: calc(100% - 0.75rem);
    height: 0.1875rem;
    background-color: #020203;
    transition: all 0.35s ease;
  }
  .sidebar__toggle-btn::before, .sidebar__toggle-btn::after {
    content: "";
  }
  .sidebar__toggle-btn::before {
    top: 0.625rem;
  }
  .sidebar__toggle-btn::after {
    bottom: 0.625rem;
  }
  .sidebar__toggle-btn._active::before {
    top: 50%;
    transform: rotate(-45deg) translate(0, -50%);
  }
  .sidebar__toggle-btn._active::after {
    bottom: 50%;
    transform: rotate(45deg) translate(0, 50%);
  }
  .sidebar__toggle-btn._active span {
    transform: scale(0) translate(0, -50%);
  }
  .sidebar__toggle-btn span {
    top: 50%;
    transform: scale(1) translate(0, -50%);
  }
}
.sidebar__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  width: 100%;
  height: calc(100% - 5.5rem);
  padding: 1rem;
  background-color: #fff;
}
@media (max-width: 991px) {
  .sidebar__body {
    position: fixed;
    left: 0;
    top: 5.5rem;
    transform: translateX(-102%);
    transition: transform 0.5s;
  }
  .sidebar__body._active {
    transform: translateX(0);
  }
}

.logo {
  transition: opacity 0.35s;
}
@media (any-hover: hover) {
  .logo:hover {
    opacity: 0.75;
  }
}
.logo img {
  display: block;
}

.sidebar-user {
  border-bottom: 0.0625rem solid #ebeded;
  padding: 1rem 0;
}
.sidebar-user__header {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  margin-bottom: 1rem;
}
.sidebar-user__img {
  --img-size: 3rem;
  flex: 0 0 var(--img-size);
  overflow: hidden;
  border-radius: var(--img-size);
  width: var(--img-size);
  height: var(--img-size);
  max-width: var(--img-size);
}
.sidebar-user__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sidebar-user__info {
  position: relative;
}
.sidebar-user__title {
  padding-right: 1.25rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #020203;
}
.sidebar-user__mail {
  font-size: 0.8rem;
  font-weight: 400;
  line-height: 1.5;
  color: #888989;
}
.sidebar-user__footer {
  display: flex;
  align-items: center;
  margin: -0.25rem;
}
.sidebar-user__btn {
  display: inline-flex;
  flex: 0 0 calc(50% - 0.5rem);
  gap: 0.375rem;
  align-items: center;
  justify-content: center;
  margin: 0.25rem;
  border: none;
  max-width: calc(50% - 0.5rem);
  padding: 0.5rem 0.75rem;
  background: none;
  font-size: 1rem;
  font-weight: 400;
  color: #888989;
  transition: color 0.35s;
}
.sidebar-user__btn:not(:disabled) {
  cursor: pointer;
}
@media (any-hover: hover) {
  .sidebar-user__btn:not(:disabled):hover {
    color: var(--color-primary);
  }
}
.sidebar-user__link-more {
  position: absolute;
  right: 0;
  top: 0;
  font-size: 1.125rem;
  transition: color 0.35s;
}
@media (any-hover: hover) {
  .sidebar-user__link-more:hover {
    color: var(--color-primary);
  }
}

.section--full .section__wrap {
  padding: 11.25rem 0 6.25rem;
}
@media (min-width: 992px) {
  .section--full .section__wrap {
    min-height: 100vh;
  }
}
.section__title:not(:last-child) {
  margin-bottom: 1.25rem;
}
.section__body:not(:last-child) {
  margin-bottom: 2rem;
}
.section__body > *:not(:last-child) {
  margin-bottom: 1rem;
}
.section__btn-box {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.section-card {
  border: 0.0625rem solid #ebeded;
  border-radius: 0.5rem;
  padding: 1.5rem;
  background-color: #fff;
}
@media (max-width: 991px) {
  .section-card {
    padding: 1rem;
  }
}
.section-card__header {
  margin-bottom: 1.5rem;
}

.event-banner {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 0.25rem;
  padding: 2.5rem;
  background-color: #f9b332;
}
.event-banner__bg {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.event-banner__btn {
  position: relative;
  z-index: 20;
}

.img-text--reversed .img-text__row {
  flex-direction: row-reverse;
}
.img-text__wrap {
  padding: 5rem 0;
}
.img-text__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: -1.25rem -1.875rem;
}
.img-text__col {
  flex: 0 0 50%;
  padding: 1.25rem 1.875rem;
}
@media (max-width: 991px) {
  .img-text__col {
    flex: 0 0 100%;
  }
}
.img-text__img {
  position: relative;
  padding-bottom: 65%;
  background-color: rgba(35, 135, 153, 0.1);
}
.img-text__img--contain {
  padding-bottom: 0;
  background-color: none;
  text-align: center;
}
.img-text__img--contain img {
  position: static;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.img-text__img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero {
  background-color: rgba(0, 0, 0, 0.25);
  color: #000;
}
.hero__wrap {
  padding: 7.5rem 0 5rem;
}
@media (min-width: 992px) {
  .hero__wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100vh;
  }
}
.hero__content {
  max-width: 51.25rem;
}
.hero__title {
  margin-bottom: 2rem;
}
.hero__body {
  font-size: 1.25rem;
  line-height: 1.8;
}
@media (max-width: 991px) {
  .hero__body {
    font-size: 1rem;
  }
}

.section-login__container.container {
  max-width: 100%;
}
.section-login__wrap {
  padding: 1.5rem 0;
}
.section-login__card {
  border-radius: 0.5rem;
  padding: 1.5rem;
  background-color: #fff;
}
@media (max-width: 991px) {
  .section-login__card {
    padding: 1.25rem;
  }
}
.section-login__row {
  display: flex;
  flex-wrap: wrap;
  margin: -1rem;
}
.section-login__col {
  --col-width: 40%;
  flex: 0 0 var(--col-width);
  max-width: var(--col-width);
  padding: 1rem;
}
@media (max-width: 991px) {
  .section-login__col {
    --col-width: 100%;
  }
}
.section-login__col:first-child {
  --col-width: 60%;
}
@media (max-width: 991px) {
  .section-login__col:first-child {
    --col-width: 100%;
  }
}
.section-login__text {
  position: relative;
  padding: 7.25rem 7rem 5rem;
}
@media (min-width: 992px) {
  .section-login__text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: calc(100vh - 6rem);
  }
}
@media (max-width: 1439px) {
  .section-login__text {
    padding: 6.5rem 3rem 6rem;
  }
}
@media (max-width: 991px) {
  .section-login__text {
    padding: 5.75rem 0 1.5rem;
  }
}
.section-login__logo {
  position: absolute;
  left: 0;
  top: 0;
  transition: opacity 0.35s;
}
@media (any-hover: hover) {
  .section-login__logo:hover {
    opacity: 0.75;
  }
}
.section-login__logo img {
  display: block;
}
.section-login__title {
  margin-bottom: 1.5rem;
}
.section-login__body {
  color: #888989;
}
.section-login__body:not(:last-child) {
  margin-bottom: 1.5rem;
}
.section-login__body a {
  color: #020203;
  transition: color 0.35s;
}
@media (any-hover: hover) {
  .section-login__body a:hover {
    color: #238799;
  }
}
.section-login__img {
  position: relative;
  overflow: hidden;
  border-radius: 0.25rem;
  min-height: 70vh;
}
@media (min-width: 992px) {
  .section-login__img {
    min-height: 100%;
  }
}
.section-login__img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.section-login__soc-group {
  padding-top: 2.25rem;
}
@media (min-width: 992px) {
  .section-login__soc-group {
    position: absolute;
    left: 0;
    bottom: 0;
  }
}

.login-form__btn {
  width: 100%;
}
.login-form__already {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  text-align: center;
}
.login-form__already a {
  color: #238799;
}

.soc-group__label {
  display: block;
  margin-bottom: 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.06rem;
  text-transform: uppercase;
  color: #888989;
}

.section-booking__wrap {
  padding: 1.875rem 0 2.5rem;
}
.section-booking__title {
  margin-bottom: 2.5rem;
  text-align: center;
  color: #cbcccc;
}
@media (max-width: 991px) {
  .section-booking__title {
    margin-bottom: 1.5rem;
  }
}

.booking-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 0.25rem;
  background-color: var(--booking-card-bg-color);
  color: var(--color-white);
}
[class^=col-] .booking-card, [class*=" col-"] .booking-card {
  min-height: 100%;
}
.booking-card__img {
  position: relative;
  overflow: hidden;
  padding-bottom: 44.27%;
}
.booking-card__img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.booking-card__text {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 0.9375rem;
}
.booking-card__date {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -0.015rem;
  color: var(--booking-card-date-color);
}
.booking-card__title {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.05rem;
}
.booking-card__title:not(:last-child) {
  margin-bottom: 1rem;
}
.booking-card__body {
  flex: 1 1 auto;
  font-family: "Arial", "StevieSansBook", sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.285;
  letter-spacing: -0.035rem;
  color: #dcdede;
}
.booking-card__body:not(:last-child) {
  margin-bottom: 1.5rem;
}
.booking-card__btn {
  width: 100%;
}

.status-card {
  border: 0.0625rem solid #dcdede;
  border-radius: 0.25rem;
  padding: 1rem;
  background-color: #fff;
}
.status-card__header {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.status-card__title {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.05rem;
}
@media (max-width: 991px) {
  .status-card__title {
    font-size: 1.125rem;
  }
}
.status-card__body {
  margin-bottom: 1.25rem;
}
.status-card__table {
  border: none;
  border-collapse: collapse;
  width: 100%;
}
@media (max-width: 991px) {
  .status-card__table {
    display: block;
  }
}
@media (max-width: 991px) {
  .status-card__table thead {
    display: none;
  }
}
.status-card__table thead tr th {
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -0.015rem;
  text-align: left;
  color: #cbcccc;
}
@media (max-width: 991px) {
  .status-card__table thead tr th {
    padding: 0;
  }
}
.status-card__table tbody tr td {
  padding: 0.25rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: -0.64px;
  color: #020203;
}
@media (max-width: 991px) {
  .status-card__table tbody tr td {
    padding: 0;
  }
}
@media (max-width: 991px) {
  .status-card__table tbody tr td::before {
    content: attr(data-label);
    display: block;
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1.32;
    letter-spacing: -0.015rem;
    text-align: left;
    color: #cbcccc;
  }
}
@media (max-width: 991px) {
  .status-card__table tbody tr td:not(:last-child) {
    margin-bottom: 0.75rem;
  }
}
@media (max-width: 991px) {
  .status-card__table tbody,
  .status-card__table tr,
  .status-card__table td,
  .status-card__table th {
    display: block;
  }
}
.status-card__btn {
  width: 100%;
}

.status-view {
  display: inline-flex;
  gap: 0.3125rem;
  align-items: center;
  border-radius: 1.5rem;
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.35;
}
.status-view--success {
  background-color: #c2ffd3;
  color: #16b041;
}
.status-view--danger {
  background-color: #ffc9c9;
  color: #ea5455;
}
.status-view--required {
  background-color: #ffdfb3;
  color: #b87906;
}
.status-view--warning {
  background-color: #fdffa4;
  color: #9a9c1d;
}

.h-event-header__row {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
@media (max-width: 767px) {
  .h-event-header__row {
    flex-wrap: wrap;
  }
}
.h-event-header__img {
  flex: 0 0 16rem;
  overflow: hidden;
  border-radius: 0.125rem;
  width: 16rem;
}
@media (max-width: 767px) {
  .h-event-header__img {
    flex: 0 0 100%;
    width: 100%;
  }
}
.h-event-header__img img {
  display: block;
  width: 100%;
  height: auto;
}
.h-event-header__text {
  flex: 1 1 auto;
}
.h-event-header__title {
  margin-bottom: 1.5rem;
}

.app-label {
  display: block;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -0.015rem;
  color: #888989;
}

.app-value {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.04rem;
}
.app-value p {
  line-height: 1.5;
}

.doc-card {
  border: 0.0625rem solid #dcdede;
  border-radius: 0.25rem;
  padding: 1rem 0.25rem;
  background-color: #fff;
  text-align: center;
}
.doc-card__img {
  margin-bottom: 0.625rem;
  height: 2.25rem;
}
.doc-card__img img {
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
}
.doc-card__title {
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -0.015em;
}
.doc-card__status {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  padding: 0.5rem 0.25rem;
  font-size: 0.75rem;
  font-weight: 400;
}
.doc-card__status--success {
  color: var(--color-primary);
}

.docs-list > li {
  border-top: 0.0625rem solid #ebeded;
}

.pdf-card {
  padding: 1rem;
  transition: background-color 0.35s;
}
.pdf-card._active {
  background-color: var(--color-primary-light);
}
.pdf-card__row {
  display: flex;
  gap: 1.25rem;
  align-items: center;
}
.pdf-card__checkbox {
  min-height: 1.5rem;
  padding-left: 1.5rem;
}
.pdf-card__btn-box {
  margin-left: auto;
}
.pdf-card__status {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  padding: 0.5rem 1.5rem;
}
.pdf-card__status--success {
  color: var(--color-primary);
}

.pdf-card-main__row {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.pdf-card-main__img {
  flex: 0 0 1.875rem;
  width: 1.875rem;
}
.pdf-card-main__img img {
  display: block;
  width: 100%;
  height: auto;
}
.pdf-card-main__text {
  flex: 1 1 auto;
}
.pdf-card-main__title {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #020203;
}
.pdf-card-main__date {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  color: #888989;
}

.toastify {
  position: fixed;
  z-index: 2147483647;
  top: 0.5rem !important;
  display: inline-flex;
  gap: 1rem;
  align-items: center;
  border: 0.0625rem solid #dcdede;
  border-radius: 0.5rem;
  max-width: calc(50% - 20px);
  padding: 1rem;
  background: #fff;
  box-shadow: none;
  text-decoration: none;
  color: #020203;
}
.toastify._success::before {
  content: "";
  display: flex;
  flex: 0 0 2.5rem;
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  background: url("../img/icons/toast-check.svg") no-repeat center/contain;
}
.toastify.toastify-right {
  right: 0.5rem;
}
.toastify .toast-close {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 2.5rem;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.75rem;
  background-color: var(--color-primary-light);
  font-family: inherit;
  font-size: 1em;
  color: var(--color-primary);
  opacity: 1;
  cursor: pointer;
  transition: color 0.35s, background-color 0.35s;
}
@media (any-hover: hover) {
  .toastify .toast-close:hover {
    background-color: var(--color-primary);
    color: #fff;
  }
}

.total-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  min-height: 2.5rem;
  padding: 0.75rem 1rem;
  background-color: var(--color-primary-light);
  color: var(--color-primary);
}
.total-card__title {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
}

.event-extra-card {
  display: flex;
  flex-direction: column;
  border: 0.0625rem solid #ebeded;
  border-radius: 0.5rem;
  padding: 1.5rem;
  background-color: #fff;
  text-align: center;
  transition: border-color 0.35s, background-color 0.35s;
}
@media (any-hover: hover) {
  .event-extra-card:hover {
    border-color: var(--color-primary);
    background-color: var(--color-primary-light);
  }
}
.event-extra-card._selected {
  border-color: var(--color-primary);
  background-color: var(--color-primary-light);
}
[class^=col-] .event-extra-card, [class*=" col-"] .event-extra-card {
  min-height: 100%;
}
.event-extra-card__title {
  margin-bottom: 1rem;
  max-width: 12.5rem;
}
.event-extra-card__body {
  flex: 1 1 auto;
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.285;
  letter-spacing: -0.035rem;
  color: #888989;
}
.event-extra-card__price {
  margin-bottom: 1.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.02rem;
}
.event-extra-card__btn-box {
  display: flex;
  gap: 0.75rem 2rem;
  align-items: center;
  justify-content: center;
}
.event-extra-card__link {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  border: none;
  background: none;
  font-size: 1rem;
  font-weight: 400;
  color: var(--color-primary);
}
.event-extra-card__link:not(:disabled) {
  cursor: pointer;
}

.alert {
  border-radius: 0.5rem;
  padding: 0.75rem;
}
.alert--warning {
  border: 0.0625rem solid #f9b332;
  background-color: #fff6e8;
}
.alert__row {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: center;
}
.alert__img {
  --img-size: 2.5rem;
  flex: 0 0 var(--img-size);
  width: var(--img-size);
}
.alert__img img {
  display: block;
  width: 100%;
  height: auto;
}
.alert__title {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.04em;
}
.alert__body {
  font-family: steviesansbook, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -0.03em;
}

.pdf-file {
  border-bottom: 0.0625rem solid #ebeded;
  padding: 1rem 0;
}
@media (max-width: 991px) {
  .pdf-file {
    padding: 0.75rem 0;
  }
}
.pdf-file__row {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: space-between;
}
.pdf-file__img {
  flex: 0 0 1.875rem;
  width: 1.875rem;
}
.pdf-file__img img {
  display: block;
  width: 100%;
  height: auto;
}
.pdf-file__title {
  flex: 1 1 auto;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -0.015em;
}
.pdf-file__close-btn {
  display: flex;
  flex: 0 0 2.5rem;
  align-items: center;
  justify-content: center;
  border: none;
  width: 2.5rem;
  height: 2.5rem;
  background: none;
  font-size: 1.5rem;
  color: var(--color-primary);
}
.pdf-file__close-btn:not(:disabled) {
  cursor: pointer;
}

.cost-card {
  display: flex;
  flex-direction: column;
  border: 0.0625rem solid #ebeded;
  border-radius: 0.5rem;
  padding: 1.5rem;
  background-color: #fff;
  transition: border-color 0.35s, background-color 0.35s;
}
@media (any-hover: hover) {
  .cost-card:hover {
    border-color: var(--color-primary);
    background-color: var(--color-primary-light);
  }
}
.cost-card._selected {
  border-color: var(--color-primary);
  background-color: var(--color-primary-light);
}
[class^=col-] .cost-card, [class*=" col-"] .cost-card {
  min-height: 100%;
}
.cost-card__row {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}
.cost-card__title {
  margin-bottom: 0.5rem;
}
.cost-card__price {
  margin-bottom: 1.5rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.08em;
}
@media (max-width: 991px) {
  .cost-card__price {
    font-size: 1.5rem;
  }
}
.cost-card__price small {
  font-family: steviesansbook, sans-serif;
  font-size: 37.5%;
  font-weight: 400;
  letter-spacing: -0.015em;
  color: #888989;
}
.cost-card__img {
  --img-size: 4.5rem;
  flex: 0 0 var(--img-size);
  width: var(--img-size);
}
.cost-card__img img {
  display: block;
  width: 100%;
  height: auto;
}
.cost-card__btn-box {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
}

.text-primary {
  color: #238799;
}

.text-dark {
  color: #020203;
}

.text-gray-concrete {
  color: #888989;
}

.w-full {
  width: 100%;
}

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

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

@media (min-width: 992px) {
  .text-md-right {
    text-align: right;
  }
}

@media (min-width: 992px) {
  .mb-md-0 {
    margin-bottom: 0;
  }
}

.basis-1-2 {
  flex: 0 0 50%;
}

.-m-1 {
  margin: -0.25rem;
}

.stepper__content {
  position: relative;
}
.stepper__tab {
  position: absolute;
  opacity: 0;
  visibility: hidden;
}
.stepper__tab._active {
  position: static;
  display: block;
  opacity: 1;
  visibility: visible;
}
.stepper__title {
  margin-bottom: 2.5rem;
  text-align: center;
}

.stepper-progress {
  position: relative;
  height: 0.25rem;
  background-color: #f5f5f5;
}
.stepper-progress__fill {
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 0.25rem;
  width: var(--stepper-progress);
  height: 100%;
  background-color: var(--color-primary);
  transition: width var(--transition-duration-primary);
}

.stepper-steps {
  display: flex;
  gap: 0.5rem 1rem;
  align-items: center;
  justify-content: center;
}
@media (max-width: 479px) {
  .stepper-steps {
    gap: 0.25rem;
  }
}

.stepper-step {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  min-width: 0;
  padding: 0.25rem;
  color: #cbcccc;
  transition: color var(--transition-duration-primary);
}
@media (max-width: 991px) {
  .stepper-step {
    padding: 0;
  }
}
.stepper-step._active {
  color: #020203;
}
.stepper-step._active .stepper-step__num {
  background-color: var(--color-primary);
}
.stepper-step__num {
  display: flex;
  flex: 0 0 1.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #cbcccc;
  font-size: 1rem;
  font-weight: 400;
  text-align: center;
  text-transform: uppercase;
  color: var(--color-white);
  transition: background-color var(--transition-duration-primary);
}
.stepper-step__title {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem;
  white-space: nowrap;
  color: inherit;
}
@media (max-width: 1279px) {
  .stepper-step__title {
    display: none;
  }
}

html {
  font-size: 16px;
}
@media (max-width: 991px) {
  html {
    font-size: 16px;
  }
}

body {
  background-color: #f5f5f5;
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.04rem;
  opacity: 0;
}
body._loaded {
  opacity: 1;
  transition: opacity 0.5s;
}
::-webkit-scrollbar {
  width: 0.5rem;
  height: 0.5rem;
}
::-webkit-scrollbar-track {
  background-color: #c8c8c8;
}
::-webkit-scrollbar-thumb {
  background-color: var(--color-primary);
}

::selection {
  background-color: #238799;
  color: #fff;
}

.disable-scroll {
  position: fixed;
  left: 0;
  top: 0;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}

.wrapper {
  overflow: hidden;
  min-height: 100vh;
}
@media (min-width: 992px) {
  .wrapper--visible {
    overflow: visible;
  }
}
@media (min-width: 992px) {
  .wrapper--sidebar {
    padding-left: var(--sidebar-width);
  }
}

.container {
  margin: 0 auto;
  max-width: 83rem;
  padding: 0 1.5rem;
}
@media (max-width: 991px) {
  .container {
    padding: 0 1rem;
  }
}
.container--sm {
  max-width: 60.5rem;
}
.container--lg {
  max-width: 101.75rem;
}
.container--fluid {
  max-width: 100%;
}

.offset-container {
  padding-left: max(1rem, (100% - 80rem) / 2);
}
@media (max-width: 991px) {
  .offset-container {
    padding: 0 1rem;
  }
}

/* Hiding class, making content visible only to screen readers but not visually */
/* "sr" meaning "screen-reader" */
.sr-only:not(:focus, :active) {
  position: absolute;
  clip-path: inset(50%);
  overflow: hidden;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  clip: rect(0 0 0 0);
}

.text-block ol li:not(:last-child),
.text-block ul li:not(:last-child) {
  margin-bottom: 1.25rem;
}
.text-block ul {
  list-style: disc outside;
  padding-left: 1.25rem;
}
.text-block strong,
.text-block b {
  font-weight: 700;
}
.text-block em,
.text-block i {
  font-style: italic;
}
.text-block mark {
  background-color: #238799;
  color: #fff;
}
.text-block del {
  background-color: #fbb;
  text-decoration: line-through;
}
.text-block ins {
  background-color: #d4fcbc;
  text-decoration: none;
}
.text-block blockquote {
  border-left: 0.1875rem solid #238799;
  padding-left: 0.9375rem;
}
.text-block > *:not(:last-child) {
  margin-bottom: 1.25rem;
}

a[x-apple-data-detectors] {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  text-decoration: none !important;
  color: inherit !important;
}

picture {
  display: inline-block;
}
picture img {
  vertical-align: middle;
}

code {
  border: 1px dashed #999;
  border-radius: 0.2rem;
  padding: 0.1rem 0.3rem 0.2rem;
  background: #fff3f4;
  box-decoration-break: clone;
  word-wrap: break-word;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  font-weight: 700;
  line-height: 1.2;
}

h1,
.h1 {
  font-size: 3rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.12rem;
}
@media (max-width: 991px) {
  h1,
  .h1 {
    font-size: 2.625rem;
  }
}
@media (max-width: 767px) {
  h1,
  .h1 {
    font-size: 2.25rem;
  }
}

h2,
.h2 {
  font-size: 2rem;
  font-weight: 400;
  font-style: normal;
  line-height: 125%;
  letter-spacing: -0.08rem;
}
@media (max-width: 991px) {
  h2,
  .h2 {
    font-size: 1.75rem;
    line-height: 1.15;
    letter-spacing: -0.07rem;
  }
}

h3,
.h3 {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.05em;
}
@media (max-width: 991px) {
  h3,
  .h3 {
    font-size: 1.25rem;
  }
}

h4,
.h4 {
  font-size: 1.25rem;
}
@media (max-width: 991px) {
  h4,
  .h4 {
    font-size: 1.125rem;
  }
}

h5,
.h5 {
  font-size: 1rem;
}

h6,
.h6 {
  font-size: 0.75rem;
}

.pages-list {
  padding-left: 1rem;
}
.pages-list > li:not(:last-child) {
  margin-bottom: 0.5rem;
}
.pages-list > li a {
  text-decoration: underline;
  transition: color 0.35s;
}
@media (any-hover: hover) {
  .pages-list > li a:hover {
    color: #238799;
  }
}

.profile-img__row {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
.profile-img__img {
  --img-size: 7rem;
  display: flex;
  flex: 0 0 var(--img-size);
  align-items: center;
  justify-content: start;
  overflow: hidden;
  border: 0.0625rem solid #ebeded;
  border-radius: var(--img-size);
  width: var(--img-size);
  height: var(--img-size);
  background-color: #f5f5f5;
}
.profile-img__img img {
  display: block;
  border-radius: inherit;
  width: 100%;
  height: 100%;
}
.profile-img__title {
  margin-bottom: 0.5rem;
}
.profile-img__accept-type {
  margin-bottom: 1rem;
  color: #888989;
}
.profile-img__btn-box {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}

.divider {
  border-bottom: 0.0625rem solid #ebeded;
}

.payment-card {
  border-radius: 0.5rem;
  padding: 0.75rem;
  background-color: #f5f5f5;
}
.payment-card__row {
  display: flex;
  gap: 1.25rem;
  align-items: center;
}
.payment-card__nums {
  display: flex;
  align-items: center;
  margin: -0.0625rem -0.5rem;
  line-height: 1;
}
.payment-card__nums > li {
  padding: 0.0625rem 0.5rem;
}
.payment-card__nums > li:not(:last-child) {
  border-right: 0.0625rem solid #cbcccc;
}
.payment-card__img img {
  display: block;
}