
:root {
  --la-brand-darkest: #033F3F;
  --la-brand-dark: #05686C;
  --la-brand-primary: #069393;
  --la-brand-light: #07B4B4;
  --la-brand-lightest: #7CC8C8;
  --la-brand-hover: #07B4B4;
  --la-logo-peach: #F4835E;
  --la-logo-teal-tint: #B8E0DB;
  --la-logo-cream: #F8F2DC;
  --la-support-dark: #05686C;
  --la-support-light: #7CC8C8;
  --la-support-coral: #E25C3D;
  --la-support-blue: #2B5CAA;
  --la-support-amber: #DB9C24;
  --la-support-hover: #058C91;
  --la-success-darkest: #033F3F;
  --la-success-dark: #05686C;
  --la-success-medium: #069393;
  --la-success-light: #07B4B4;
  --la-success-lightest: #7CC8C8;
  --la-success-hover: #07B4B4;
  --la-warning-darkest: #9B6B12;
  --la-warning-dark: #DB9C24;
  --la-warning-medium: #F4B63E;
  --la-warning-light: #F9D48A;
  --la-warning-lightest: #FDF1D9;
  --la-warning-hover: #DB9C24;
  --la-danger-darkest: #A02D14;
  --la-danger-dark: #C0472D;
  --la-danger-medium: #E25C3D;
  --la-danger-light: #F19B85;
  --la-danger-lightest: #FADDDB;
  --la-danger-hover: #C0472D;
  --la-info-darkest: #153670;
  --la-info-dark: #2B5CAA;
  --la-info-medium: #4A7AD8;
  --la-info-light: #8FABEE;
  --la-info-lightest: #D4DEFA;
  --la-info-hover: #2B5CAA;
  --la-base-darkest: #262626;
  --la-base-dark: #4F4F4F;
  --la-base-medium: #757575;
  --la-base-medium-light: #BDBDBD;
  --la-base-light: #F5F5F5;
  --la-base-lighter: #F9F9F9;
  --la-base-lightest: #FFF;
  --la-gradient-brand: linear-gradient(135deg, #05686C 0%, #069393 100%);
}

/* Nunito Regular */
@font-face {
  font-family: Nunito;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshdTQ3jw.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Nunito Bold */
@font-face {
  font-family: Nunito;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/nunito/v25/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshdTA3jw.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Work Sans Regular */
@font-face {
  font-family: "Work Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/worksans/v18/QGYsz_wNahGAdqQ43Rh_c6DptfpA4cD3.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Work Sans Bold */
@font-face {
  font-family: "Work Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/worksans/v18/QGYsz_wNahGAdqQ43Rh_cqDptfpA4cD3.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Base Styles Index
 *
 * This file acts as an entry point for all base styles,
 * forwarding them so they can be consumed by other modules.
 */
/* Base Reset
 *
 * A modern CSS reset that:
 * - Preserves useful defaults
 * - Removes margin/padding to prevent inconsistencies
 * - Normalizes behavior across browsers
 * - Improves accessibility
 */
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin and padding */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
  padding: 0;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizespeed;
  line-height: 1.5;
  background-color: #F9F9F9;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/* Form elements normalization */
button,
input,
select,
textarea {
  background-color: transparent;
  border: 1px solid #BDBDBD;
  color: inherit;
  letter-spacing: inherit;
  padding: 0.25em 0.375em;
  font: inherit;
}

button {
  cursor: pointer;
  text-align: center;
}

fieldset {
  border: 1px solid #BDBDBD;
  min-width: 0;
  padding: 0.35em 0.75em 0.625em;
}

legend {
  display: block;
  padding: 0;
}

progress {
  vertical-align: baseline;
}

/* Accessibility improvements */
[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true],
[disabled] {
  cursor: not-allowed;
}

[aria-hidden=false][hidden] {
  display: initial;
}

[aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}

/* Typography
 *
 * Defines font styles and text utilities
 * Replaces Bootstrap's typography classes while maintaining
 * similar functionality and appearance
 */
body {
  font-family: "Work Sans", "Helvetica", "sans-serif";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #262626;
  text-align: left;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: nunito, "Helvetica", "sans-serif";
  margin-bottom: 0.5rem;
  font-weight: 700;
  line-height: 1.5;
  color: inherit;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

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

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

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

a {
  color: #069393;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #05686C;
  text-decoration: underline;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 1rem;
  padding-left: 2rem;
}

small, .small {
  font-size: 0.875rem;
  font-weight: 400;
}

mark, .mark {
  padding: 0.2em;
  background-color: #DB9C24;
}

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

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

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

.font-italic {
  font-style: italic !important;
}

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

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

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

.text-justify {
  text-align: justify !important;
}

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

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

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

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

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

.text-primary {
  color: #069393 !important;
}

.text-secondary {
  color: #4F4F4F !important;
}

.text-success {
  color: #069393 !important;
}

.text-danger {
  color: #E25C3D !important;
}

.text-warning {
  color: #F4B63E !important;
}

.text-info {
  color: #4A7AD8 !important;
}

.text-light {
  color: #F5F5F5 !important;
}

.text-dark {
  color: #262626 !important;
}

.text-muted {
  color: #757575 !important;
}

@media (min-width: 0) {
  .text-xs-left {
    text-align: left !important;
  }
  .text-xs-right {
    text-align: right !important;
  }
  .text-xs-center {
    text-align: center !important;
  }
}
@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1440px) {
  .text-xxl-left {
    text-align: left !important;
  }
  .text-xxl-right {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1680px) {
  .text-xxxl-left {
    text-align: left !important;
  }
  .text-xxxl-right {
    text-align: right !important;
  }
  .text-xxxl-center {
    text-align: center !important;
  }
}
/* stylelint-disable number-max-precision */
/* Grid System
 *
 * A custom grid system using CSS Flexbox
 * Follows BEM methodology with la- prefix
 * Designed to replace Bootstrap's grid system
 * 
 * Includes Bootstrap-compatible classes for easier migration
 */
.container, .la-container {
  width: 100%;
  max-width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.container-fluid, .la-container--fluid {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.row, .la-grid {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
}

.no-gutters, .la-grid--no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .la-grid__col, .la-grid--no-gutters > .la-grid__col,
.no-gutters > [class*=la-grid__col--],
.la-grid--no-gutters > [class*=la-grid__col--] {
  padding-right: 0;
  padding-left: 0;
}

.col,
.col-1, .col-2, .col-3, .col-4,
.col-5, .col-6, .col-7, .col-8,
.col-9, .col-10, .col-11, .col-12,
.col-auto,
[class*=col-]:not(.no-gutters > *), .la-grid__col,
.la-grid__col--1, .la-grid__col--2, .la-grid__col--3, .la-grid__col--4,
.la-grid__col--5, .la-grid__col--6, .la-grid__col--7, .la-grid__col--8,
.la-grid__col--9, .la-grid__col--10, .la-grid__col--11, .la-grid__col--12,
.la-grid__col--auto,
[class*=la-grid__col--]:not(.la-grid--no-gutters > *) {
  position: relative;
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.col, .la-grid__col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.col-auto, .la-grid__col--auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1, .la-grid__col--1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-2, .la-grid__col--2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-3, .la-grid__col--3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4, .la-grid__col--4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-5, .la-grid__col--5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-6, .la-grid__col--6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7, .la-grid__col--7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-8, .la-grid__col--8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-9, .la-grid__col--9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10, .la-grid__col--10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-11, .la-grid__col--11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-12, .la-grid__col--12 {
  flex: 0 0 100%;
  max-width: 100%;
}

@media (min-width: 0) {
  .la-grid__col--xs {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .la-grid__col--xs-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .la-grid__col--xs-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .la-grid__col--xs-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .la-grid__col--xs-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .la-grid__col--xs-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .la-grid__col--xs-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .la-grid__col--xs-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .la-grid__col--xs-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .la-grid__col--xs-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .la-grid__col--xs-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .la-grid__col--xs-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .la-grid__col--xs-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .la-grid__col--xs-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .col-xs {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xs-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xs-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-xs-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xs-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xs-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-xs-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-xs-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xs-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-xs-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-xs-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xs-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-xs-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-xs-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 576px) {
  .la-grid__col--sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .la-grid__col--sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .la-grid__col--sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .la-grid__col--sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .la-grid__col--sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .la-grid__col--sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .la-grid__col--sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .la-grid__col--sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .la-grid__col--sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .la-grid__col--sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .la-grid__col--sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .la-grid__col--sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .la-grid__col--sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .la-grid__col--sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .la-grid__col--md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .la-grid__col--md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .la-grid__col--md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .la-grid__col--md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .la-grid__col--md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .la-grid__col--md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .la-grid__col--md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .la-grid__col--md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .la-grid__col--md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .la-grid__col--md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .la-grid__col--md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .la-grid__col--md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .la-grid__col--md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .la-grid__col--md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .la-grid__col--lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .la-grid__col--lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .la-grid__col--lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .la-grid__col--lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .la-grid__col--lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .la-grid__col--lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .la-grid__col--lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .la-grid__col--lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .la-grid__col--lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .la-grid__col--lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .la-grid__col--lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .la-grid__col--lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .la-grid__col--lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .la-grid__col--lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 1200px) {
  .la-grid__col--xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .la-grid__col--xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .la-grid__col--xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .la-grid__col--xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .la-grid__col--xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .la-grid__col--xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .la-grid__col--xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .la-grid__col--xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .la-grid__col--xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .la-grid__col--xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .la-grid__col--xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .la-grid__col--xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .la-grid__col--xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .la-grid__col--xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 1440px) {
  .la-grid__col--xxl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .la-grid__col--xxl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .la-grid__col--xxl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .la-grid__col--xxl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .la-grid__col--xxl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .la-grid__col--xxl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .la-grid__col--xxl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .la-grid__col--xxl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .la-grid__col--xxl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .la-grid__col--xxl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .la-grid__col--xxl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .la-grid__col--xxl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .la-grid__col--xxl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .la-grid__col--xxl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .col-xxl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xxl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-xxl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xxl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-xxl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-xxl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-xxl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-xxl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-xxl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-xxl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 1680px) {
  .la-grid__col--xxxl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .la-grid__col--xxxl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .la-grid__col--xxxl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .la-grid__col--xxxl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .la-grid__col--xxxl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .la-grid__col--xxxl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .la-grid__col--xxxl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .la-grid__col--xxxl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .la-grid__col--xxxl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .la-grid__col--xxxl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .la-grid__col--xxxl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .la-grid__col--xxxl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .la-grid__col--xxxl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .la-grid__col--xxxl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .col-xxxl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xxxl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xxxl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-xxxl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xxxl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xxxl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-xxxl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-xxxl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xxxl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-xxxl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-xxxl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xxxl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-xxxl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-xxxl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.la-order--first {
  order: -1;
}

.la-order--last {
  order: 13;
}

.la-order--0 {
  order: 0;
}

.la-order--1 {
  order: 1;
}

.la-order--2 {
  order: 2;
}

.la-order--3 {
  order: 3;
}

.la-order--4 {
  order: 4;
}

.la-order--5 {
  order: 5;
}

.la-order--6 {
  order: 6;
}

.la-order--7 {
  order: 7;
}

.la-order--8 {
  order: 8;
}

.la-order--9 {
  order: 9;
}

.la-order--10 {
  order: 10;
}

.la-order--11 {
  order: 11;
}

.la-order--12 {
  order: 12;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

@media (min-width: 0) {
  .la-order--xs-first {
    order: -1;
  }
  .la-order--xs-last {
    order: 13;
  }
  .la-order--xs-0 {
    order: 0;
  }
  .la-order--xs-1 {
    order: 1;
  }
  .la-order--xs-2 {
    order: 2;
  }
  .la-order--xs-3 {
    order: 3;
  }
  .la-order--xs-4 {
    order: 4;
  }
  .la-order--xs-5 {
    order: 5;
  }
  .la-order--xs-6 {
    order: 6;
  }
  .la-order--xs-7 {
    order: 7;
  }
  .la-order--xs-8 {
    order: 8;
  }
  .la-order--xs-9 {
    order: 9;
  }
  .la-order--xs-10 {
    order: 10;
  }
  .la-order--xs-11 {
    order: 11;
  }
  .la-order--xs-12 {
    order: 12;
  }
  .order-xs-first {
    order: -1;
  }
  .order-xs-last {
    order: 13;
  }
  .order-xs-0 {
    order: 0;
  }
  .order-xs-1 {
    order: 1;
  }
  .order-xs-2 {
    order: 2;
  }
  .order-xs-3 {
    order: 3;
  }
  .order-xs-4 {
    order: 4;
  }
  .order-xs-5 {
    order: 5;
  }
  .order-xs-6 {
    order: 6;
  }
  .order-xs-7 {
    order: 7;
  }
  .order-xs-8 {
    order: 8;
  }
  .order-xs-9 {
    order: 9;
  }
  .order-xs-10 {
    order: 10;
  }
  .order-xs-11 {
    order: 11;
  }
  .order-xs-12 {
    order: 12;
  }
}
@media (min-width: 576px) {
  .la-order--sm-first {
    order: -1;
  }
  .la-order--sm-last {
    order: 13;
  }
  .la-order--sm-0 {
    order: 0;
  }
  .la-order--sm-1 {
    order: 1;
  }
  .la-order--sm-2 {
    order: 2;
  }
  .la-order--sm-3 {
    order: 3;
  }
  .la-order--sm-4 {
    order: 4;
  }
  .la-order--sm-5 {
    order: 5;
  }
  .la-order--sm-6 {
    order: 6;
  }
  .la-order--sm-7 {
    order: 7;
  }
  .la-order--sm-8 {
    order: 8;
  }
  .la-order--sm-9 {
    order: 9;
  }
  .la-order--sm-10 {
    order: 10;
  }
  .la-order--sm-11 {
    order: 11;
  }
  .la-order--sm-12 {
    order: 12;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
}
@media (min-width: 768px) {
  .la-order--md-first {
    order: -1;
  }
  .la-order--md-last {
    order: 13;
  }
  .la-order--md-0 {
    order: 0;
  }
  .la-order--md-1 {
    order: 1;
  }
  .la-order--md-2 {
    order: 2;
  }
  .la-order--md-3 {
    order: 3;
  }
  .la-order--md-4 {
    order: 4;
  }
  .la-order--md-5 {
    order: 5;
  }
  .la-order--md-6 {
    order: 6;
  }
  .la-order--md-7 {
    order: 7;
  }
  .la-order--md-8 {
    order: 8;
  }
  .la-order--md-9 {
    order: 9;
  }
  .la-order--md-10 {
    order: 10;
  }
  .la-order--md-11 {
    order: 11;
  }
  .la-order--md-12 {
    order: 12;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
}
@media (min-width: 992px) {
  .la-order--lg-first {
    order: -1;
  }
  .la-order--lg-last {
    order: 13;
  }
  .la-order--lg-0 {
    order: 0;
  }
  .la-order--lg-1 {
    order: 1;
  }
  .la-order--lg-2 {
    order: 2;
  }
  .la-order--lg-3 {
    order: 3;
  }
  .la-order--lg-4 {
    order: 4;
  }
  .la-order--lg-5 {
    order: 5;
  }
  .la-order--lg-6 {
    order: 6;
  }
  .la-order--lg-7 {
    order: 7;
  }
  .la-order--lg-8 {
    order: 8;
  }
  .la-order--lg-9 {
    order: 9;
  }
  .la-order--lg-10 {
    order: 10;
  }
  .la-order--lg-11 {
    order: 11;
  }
  .la-order--lg-12 {
    order: 12;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
}
@media (min-width: 1200px) {
  .la-order--xl-first {
    order: -1;
  }
  .la-order--xl-last {
    order: 13;
  }
  .la-order--xl-0 {
    order: 0;
  }
  .la-order--xl-1 {
    order: 1;
  }
  .la-order--xl-2 {
    order: 2;
  }
  .la-order--xl-3 {
    order: 3;
  }
  .la-order--xl-4 {
    order: 4;
  }
  .la-order--xl-5 {
    order: 5;
  }
  .la-order--xl-6 {
    order: 6;
  }
  .la-order--xl-7 {
    order: 7;
  }
  .la-order--xl-8 {
    order: 8;
  }
  .la-order--xl-9 {
    order: 9;
  }
  .la-order--xl-10 {
    order: 10;
  }
  .la-order--xl-11 {
    order: 11;
  }
  .la-order--xl-12 {
    order: 12;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
}
@media (min-width: 1440px) {
  .la-order--xxl-first {
    order: -1;
  }
  .la-order--xxl-last {
    order: 13;
  }
  .la-order--xxl-0 {
    order: 0;
  }
  .la-order--xxl-1 {
    order: 1;
  }
  .la-order--xxl-2 {
    order: 2;
  }
  .la-order--xxl-3 {
    order: 3;
  }
  .la-order--xxl-4 {
    order: 4;
  }
  .la-order--xxl-5 {
    order: 5;
  }
  .la-order--xxl-6 {
    order: 6;
  }
  .la-order--xxl-7 {
    order: 7;
  }
  .la-order--xxl-8 {
    order: 8;
  }
  .la-order--xxl-9 {
    order: 9;
  }
  .la-order--xxl-10 {
    order: 10;
  }
  .la-order--xxl-11 {
    order: 11;
  }
  .la-order--xxl-12 {
    order: 12;
  }
  .order-xxl-first {
    order: -1;
  }
  .order-xxl-last {
    order: 13;
  }
  .order-xxl-0 {
    order: 0;
  }
  .order-xxl-1 {
    order: 1;
  }
  .order-xxl-2 {
    order: 2;
  }
  .order-xxl-3 {
    order: 3;
  }
  .order-xxl-4 {
    order: 4;
  }
  .order-xxl-5 {
    order: 5;
  }
  .order-xxl-6 {
    order: 6;
  }
  .order-xxl-7 {
    order: 7;
  }
  .order-xxl-8 {
    order: 8;
  }
  .order-xxl-9 {
    order: 9;
  }
  .order-xxl-10 {
    order: 10;
  }
  .order-xxl-11 {
    order: 11;
  }
  .order-xxl-12 {
    order: 12;
  }
}
@media (min-width: 1680px) {
  .la-order--xxxl-first {
    order: -1;
  }
  .la-order--xxxl-last {
    order: 13;
  }
  .la-order--xxxl-0 {
    order: 0;
  }
  .la-order--xxxl-1 {
    order: 1;
  }
  .la-order--xxxl-2 {
    order: 2;
  }
  .la-order--xxxl-3 {
    order: 3;
  }
  .la-order--xxxl-4 {
    order: 4;
  }
  .la-order--xxxl-5 {
    order: 5;
  }
  .la-order--xxxl-6 {
    order: 6;
  }
  .la-order--xxxl-7 {
    order: 7;
  }
  .la-order--xxxl-8 {
    order: 8;
  }
  .la-order--xxxl-9 {
    order: 9;
  }
  .la-order--xxxl-10 {
    order: 10;
  }
  .la-order--xxxl-11 {
    order: 11;
  }
  .la-order--xxxl-12 {
    order: 12;
  }
  .order-xxxl-first {
    order: -1;
  }
  .order-xxxl-last {
    order: 13;
  }
  .order-xxxl-0 {
    order: 0;
  }
  .order-xxxl-1 {
    order: 1;
  }
  .order-xxxl-2 {
    order: 2;
  }
  .order-xxxl-3 {
    order: 3;
  }
  .order-xxxl-4 {
    order: 4;
  }
  .order-xxxl-5 {
    order: 5;
  }
  .order-xxxl-6 {
    order: 6;
  }
  .order-xxxl-7 {
    order: 7;
  }
  .order-xxxl-8 {
    order: 8;
  }
  .order-xxxl-9 {
    order: 9;
  }
  .order-xxxl-10 {
    order: 10;
  }
  .order-xxxl-11 {
    order: 11;
  }
  .order-xxxl-12 {
    order: 12;
  }
}
.la-offset--0 {
  margin-left: 0%;
}

.la-offset--1 {
  margin-left: 8.3333333333%;
}

.la-offset--2 {
  margin-left: 16.6666666667%;
}

.la-offset--3 {
  margin-left: 25%;
}

.la-offset--4 {
  margin-left: 33.3333333333%;
}

.la-offset--5 {
  margin-left: 41.6666666667%;
}

.la-offset--6 {
  margin-left: 50%;
}

.la-offset--7 {
  margin-left: 58.3333333333%;
}

.la-offset--8 {
  margin-left: 66.6666666667%;
}

.la-offset--9 {
  margin-left: 75%;
}

.la-offset--10 {
  margin-left: 83.3333333333%;
}

.la-offset--11 {
  margin-left: 91.6666666667%;
}

.offset-0 {
  margin-left: 0%;
}

.offset-1 {
  margin-left: 8.3333333333%;
}

.offset-2 {
  margin-left: 16.6666666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.3333333333%;
}

.offset-5 {
  margin-left: 41.6666666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.3333333333%;
}

.offset-8 {
  margin-left: 66.6666666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.3333333333%;
}

.offset-11 {
  margin-left: 91.6666666667%;
}

@media (min-width: 0) {
  .la-offset--xs-0 {
    margin-left: 0%;
  }
  .offset-xs-0 {
    margin-left: 0%;
  }
  .la-offset--xs-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xs-1 {
    margin-left: 8.3333333333%;
  }
  .la-offset--xs-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xs-2 {
    margin-left: 16.6666666667%;
  }
  .la-offset--xs-3 {
    margin-left: 25%;
  }
  .offset-xs-3 {
    margin-left: 25%;
  }
  .la-offset--xs-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xs-4 {
    margin-left: 33.3333333333%;
  }
  .la-offset--xs-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xs-5 {
    margin-left: 41.6666666667%;
  }
  .la-offset--xs-6 {
    margin-left: 50%;
  }
  .offset-xs-6 {
    margin-left: 50%;
  }
  .la-offset--xs-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xs-7 {
    margin-left: 58.3333333333%;
  }
  .la-offset--xs-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xs-8 {
    margin-left: 66.6666666667%;
  }
  .la-offset--xs-9 {
    margin-left: 75%;
  }
  .offset-xs-9 {
    margin-left: 75%;
  }
  .la-offset--xs-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xs-10 {
    margin-left: 83.3333333333%;
  }
  .la-offset--xs-11 {
    margin-left: 91.6666666667%;
  }
  .offset-xs-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 576px) {
  .la-offset--sm-0 {
    margin-left: 0%;
  }
  .offset-sm-0 {
    margin-left: 0%;
  }
  .la-offset--sm-1 {
    margin-left: 8.3333333333%;
  }
  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }
  .la-offset--sm-2 {
    margin-left: 16.6666666667%;
  }
  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }
  .la-offset--sm-3 {
    margin-left: 25%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .la-offset--sm-4 {
    margin-left: 33.3333333333%;
  }
  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }
  .la-offset--sm-5 {
    margin-left: 41.6666666667%;
  }
  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }
  .la-offset--sm-6 {
    margin-left: 50%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .la-offset--sm-7 {
    margin-left: 58.3333333333%;
  }
  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }
  .la-offset--sm-8 {
    margin-left: 66.6666666667%;
  }
  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }
  .la-offset--sm-9 {
    margin-left: 75%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .la-offset--sm-10 {
    margin-left: 83.3333333333%;
  }
  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }
  .la-offset--sm-11 {
    margin-left: 91.6666666667%;
  }
  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 768px) {
  .la-offset--md-0 {
    margin-left: 0%;
  }
  .offset-md-0 {
    margin-left: 0%;
  }
  .la-offset--md-1 {
    margin-left: 8.3333333333%;
  }
  .offset-md-1 {
    margin-left: 8.3333333333%;
  }
  .la-offset--md-2 {
    margin-left: 16.6666666667%;
  }
  .offset-md-2 {
    margin-left: 16.6666666667%;
  }
  .la-offset--md-3 {
    margin-left: 25%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .la-offset--md-4 {
    margin-left: 33.3333333333%;
  }
  .offset-md-4 {
    margin-left: 33.3333333333%;
  }
  .la-offset--md-5 {
    margin-left: 41.6666666667%;
  }
  .offset-md-5 {
    margin-left: 41.6666666667%;
  }
  .la-offset--md-6 {
    margin-left: 50%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .la-offset--md-7 {
    margin-left: 58.3333333333%;
  }
  .offset-md-7 {
    margin-left: 58.3333333333%;
  }
  .la-offset--md-8 {
    margin-left: 66.6666666667%;
  }
  .offset-md-8 {
    margin-left: 66.6666666667%;
  }
  .la-offset--md-9 {
    margin-left: 75%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .la-offset--md-10 {
    margin-left: 83.3333333333%;
  }
  .offset-md-10 {
    margin-left: 83.3333333333%;
  }
  .la-offset--md-11 {
    margin-left: 91.6666666667%;
  }
  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 992px) {
  .la-offset--lg-0 {
    margin-left: 0%;
  }
  .offset-lg-0 {
    margin-left: 0%;
  }
  .la-offset--lg-1 {
    margin-left: 8.3333333333%;
  }
  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }
  .la-offset--lg-2 {
    margin-left: 16.6666666667%;
  }
  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }
  .la-offset--lg-3 {
    margin-left: 25%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .la-offset--lg-4 {
    margin-left: 33.3333333333%;
  }
  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }
  .la-offset--lg-5 {
    margin-left: 41.6666666667%;
  }
  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }
  .la-offset--lg-6 {
    margin-left: 50%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .la-offset--lg-7 {
    margin-left: 58.3333333333%;
  }
  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }
  .la-offset--lg-8 {
    margin-left: 66.6666666667%;
  }
  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }
  .la-offset--lg-9 {
    margin-left: 75%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .la-offset--lg-10 {
    margin-left: 83.3333333333%;
  }
  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }
  .la-offset--lg-11 {
    margin-left: 91.6666666667%;
  }
  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1200px) {
  .la-offset--xl-0 {
    margin-left: 0%;
  }
  .offset-xl-0 {
    margin-left: 0%;
  }
  .la-offset--xl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }
  .la-offset--xl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }
  .la-offset--xl-3 {
    margin-left: 25%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .la-offset--xl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }
  .la-offset--xl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }
  .la-offset--xl-6 {
    margin-left: 50%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .la-offset--xl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }
  .la-offset--xl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }
  .la-offset--xl-9 {
    margin-left: 75%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .la-offset--xl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }
  .la-offset--xl-11 {
    margin-left: 91.6666666667%;
  }
  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1440px) {
  .la-offset--xxl-0 {
    margin-left: 0%;
  }
  .offset-xxl-0 {
    margin-left: 0%;
  }
  .la-offset--xxl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xxl-1 {
    margin-left: 8.3333333333%;
  }
  .la-offset--xxl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xxl-2 {
    margin-left: 16.6666666667%;
  }
  .la-offset--xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .la-offset--xxl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xxl-4 {
    margin-left: 33.3333333333%;
  }
  .la-offset--xxl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xxl-5 {
    margin-left: 41.6666666667%;
  }
  .la-offset--xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .la-offset--xxl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xxl-7 {
    margin-left: 58.3333333333%;
  }
  .la-offset--xxl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xxl-8 {
    margin-left: 66.6666666667%;
  }
  .la-offset--xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .la-offset--xxl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xxl-10 {
    margin-left: 83.3333333333%;
  }
  .la-offset--xxl-11 {
    margin-left: 91.6666666667%;
  }
  .offset-xxl-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1680px) {
  .la-offset--xxxl-0 {
    margin-left: 0%;
  }
  .offset-xxxl-0 {
    margin-left: 0%;
  }
  .la-offset--xxxl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xxxl-1 {
    margin-left: 8.3333333333%;
  }
  .la-offset--xxxl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xxxl-2 {
    margin-left: 16.6666666667%;
  }
  .la-offset--xxxl-3 {
    margin-left: 25%;
  }
  .offset-xxxl-3 {
    margin-left: 25%;
  }
  .la-offset--xxxl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xxxl-4 {
    margin-left: 33.3333333333%;
  }
  .la-offset--xxxl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xxxl-5 {
    margin-left: 41.6666666667%;
  }
  .la-offset--xxxl-6 {
    margin-left: 50%;
  }
  .offset-xxxl-6 {
    margin-left: 50%;
  }
  .la-offset--xxxl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xxxl-7 {
    margin-left: 58.3333333333%;
  }
  .la-offset--xxxl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xxxl-8 {
    margin-left: 66.6666666667%;
  }
  .la-offset--xxxl-9 {
    margin-left: 75%;
  }
  .offset-xxxl-9 {
    margin-left: 75%;
  }
  .la-offset--xxxl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xxxl-10 {
    margin-left: 83.3333333333%;
  }
  .la-offset--xxxl-11 {
    margin-left: 91.6666666667%;
  }
  .offset-xxxl-11 {
    margin-left: 91.6666666667%;
  }
}
.la-align--start {
  align-items: flex-start !important;
}

.la-align--end {
  align-items: flex-end !important;
}

.la-align--center {
  align-items: center !important;
}

.la-align--baseline {
  align-items: baseline !important;
}

.la-align--stretch {
  align-items: stretch !important;
}

.la-align-content--start {
  align-content: flex-start !important;
}

.la-align-content--end {
  align-content: flex-end !important;
}

.la-align-content--center {
  align-content: center !important;
}

.la-align-content--between {
  align-content: space-between !important;
}

.la-align-content--around {
  align-content: space-around !important;
}

.la-align-content--stretch {
  align-content: stretch !important;
}

.la-align-self--auto {
  align-self: auto !important;
}

.la-align-self--start {
  align-self: flex-start !important;
}

.la-align-self--end {
  align-self: flex-end !important;
}

.la-align-self--center {
  align-self: center !important;
}

.la-align-self--baseline {
  align-self: baseline !important;
}

.la-align-self--stretch {
  align-self: stretch !important;
}

.la-justify--start {
  justify-content: flex-start !important;
}

.la-justify--end {
  justify-content: flex-end !important;
}

.la-justify--center {
  justify-content: center !important;
}

.la-justify--between {
  justify-content: space-between !important;
}

.la-justify--around {
  justify-content: space-around !important;
}

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

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

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

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

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

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

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

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

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

.justify-content-around {
  justify-content: space-around !important;
}

@media (min-width: 0) {
  .la-align--xs-start {
    align-items: flex-start !important;
  }
  .la-align--xs-end {
    align-items: flex-end !important;
  }
  .la-align--xs-center {
    align-items: center !important;
  }
  .la-align--xs-baseline {
    align-items: baseline !important;
  }
  .la-align--xs-stretch {
    align-items: stretch !important;
  }
  .la-justify--xs-start {
    justify-content: flex-start !important;
  }
  .la-justify--xs-end {
    justify-content: flex-end !important;
  }
  .la-justify--xs-center {
    justify-content: center !important;
  }
  .la-justify--xs-between {
    justify-content: space-between !important;
  }
  .la-justify--xs-around {
    justify-content: space-around !important;
  }
  .align-items-xs-start {
    align-items: flex-start !important;
  }
  .align-items-xs-end {
    align-items: flex-end !important;
  }
  .align-items-xs-center {
    align-items: center !important;
  }
  .align-items-xs-baseline {
    align-items: baseline !important;
  }
  .align-items-xs-stretch {
    align-items: stretch !important;
  }
  .align-content-xs-start {
    align-content: flex-start !important;
  }
  .align-content-xs-end {
    align-content: flex-end !important;
  }
  .align-content-xs-center {
    align-content: center !important;
  }
  .align-content-xs-between {
    align-content: space-between !important;
  }
  .align-content-xs-around {
    align-content: space-around !important;
  }
  .align-content-xs-stretch {
    align-content: stretch !important;
  }
  .align-self-xs-auto {
    align-self: auto !important;
  }
  .align-self-xs-start {
    align-self: flex-start !important;
  }
  .align-self-xs-end {
    align-self: flex-end !important;
  }
  .align-self-xs-center {
    align-self: center !important;
  }
  .align-self-xs-baseline {
    align-self: baseline !important;
  }
  .align-self-xs-stretch {
    align-self: stretch !important;
  }
  .justify-content-xs-start {
    justify-content: flex-start !important;
  }
  .justify-content-xs-end {
    justify-content: flex-end !important;
  }
  .justify-content-xs-center {
    justify-content: center !important;
  }
  .justify-content-xs-between {
    justify-content: space-between !important;
  }
  .justify-content-xs-around {
    justify-content: space-around !important;
  }
}
@media (min-width: 576px) {
  .la-align--sm-start {
    align-items: flex-start !important;
  }
  .la-align--sm-end {
    align-items: flex-end !important;
  }
  .la-align--sm-center {
    align-items: center !important;
  }
  .la-align--sm-baseline {
    align-items: baseline !important;
  }
  .la-align--sm-stretch {
    align-items: stretch !important;
  }
  .la-justify--sm-start {
    justify-content: flex-start !important;
  }
  .la-justify--sm-end {
    justify-content: flex-end !important;
  }
  .la-justify--sm-center {
    justify-content: center !important;
  }
  .la-justify--sm-between {
    justify-content: space-between !important;
  }
  .la-justify--sm-around {
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
}
@media (min-width: 768px) {
  .la-align--md-start {
    align-items: flex-start !important;
  }
  .la-align--md-end {
    align-items: flex-end !important;
  }
  .la-align--md-center {
    align-items: center !important;
  }
  .la-align--md-baseline {
    align-items: baseline !important;
  }
  .la-align--md-stretch {
    align-items: stretch !important;
  }
  .la-justify--md-start {
    justify-content: flex-start !important;
  }
  .la-justify--md-end {
    justify-content: flex-end !important;
  }
  .la-justify--md-center {
    justify-content: center !important;
  }
  .la-justify--md-between {
    justify-content: space-between !important;
  }
  .la-justify--md-around {
    justify-content: space-around !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
}
@media (min-width: 992px) {
  .la-align--lg-start {
    align-items: flex-start !important;
  }
  .la-align--lg-end {
    align-items: flex-end !important;
  }
  .la-align--lg-center {
    align-items: center !important;
  }
  .la-align--lg-baseline {
    align-items: baseline !important;
  }
  .la-align--lg-stretch {
    align-items: stretch !important;
  }
  .la-justify--lg-start {
    justify-content: flex-start !important;
  }
  .la-justify--lg-end {
    justify-content: flex-end !important;
  }
  .la-justify--lg-center {
    justify-content: center !important;
  }
  .la-justify--lg-between {
    justify-content: space-between !important;
  }
  .la-justify--lg-around {
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
}
@media (min-width: 1200px) {
  .la-align--xl-start {
    align-items: flex-start !important;
  }
  .la-align--xl-end {
    align-items: flex-end !important;
  }
  .la-align--xl-center {
    align-items: center !important;
  }
  .la-align--xl-baseline {
    align-items: baseline !important;
  }
  .la-align--xl-stretch {
    align-items: stretch !important;
  }
  .la-justify--xl-start {
    justify-content: flex-start !important;
  }
  .la-justify--xl-end {
    justify-content: flex-end !important;
  }
  .la-justify--xl-center {
    justify-content: center !important;
  }
  .la-justify--xl-between {
    justify-content: space-between !important;
  }
  .la-justify--xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
}
@media (min-width: 1440px) {
  .la-align--xxl-start {
    align-items: flex-start !important;
  }
  .la-align--xxl-end {
    align-items: flex-end !important;
  }
  .la-align--xxl-center {
    align-items: center !important;
  }
  .la-align--xxl-baseline {
    align-items: baseline !important;
  }
  .la-align--xxl-stretch {
    align-items: stretch !important;
  }
  .la-justify--xxl-start {
    justify-content: flex-start !important;
  }
  .la-justify--xxl-end {
    justify-content: flex-end !important;
  }
  .la-justify--xxl-center {
    justify-content: center !important;
  }
  .la-justify--xxl-between {
    justify-content: space-between !important;
  }
  .la-justify--xxl-around {
    justify-content: space-around !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
}
@media (min-width: 1680px) {
  .la-align--xxxl-start {
    align-items: flex-start !important;
  }
  .la-align--xxxl-end {
    align-items: flex-end !important;
  }
  .la-align--xxxl-center {
    align-items: center !important;
  }
  .la-align--xxxl-baseline {
    align-items: baseline !important;
  }
  .la-align--xxxl-stretch {
    align-items: stretch !important;
  }
  .la-justify--xxxl-start {
    justify-content: flex-start !important;
  }
  .la-justify--xxxl-end {
    justify-content: flex-end !important;
  }
  .la-justify--xxxl-center {
    justify-content: center !important;
  }
  .la-justify--xxxl-between {
    justify-content: space-between !important;
  }
  .la-justify--xxxl-around {
    justify-content: space-around !important;
  }
  .align-items-xxxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxxl-center {
    align-items: center !important;
  }
  .align-items-xxxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxxl-center {
    align-content: center !important;
  }
  .align-content-xxxl-between {
    align-content: space-between !important;
  }
  .align-content-xxxl-around {
    align-content: space-around !important;
  }
  .align-content-xxxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxxl-auto {
    align-self: auto !important;
  }
  .align-self-xxxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxxl-center {
    align-self: center !important;
  }
  .align-self-xxxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxxl-stretch {
    align-self: stretch !important;
  }
  .justify-content-xxxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxxl-center {
    justify-content: center !important;
  }
  .justify-content-xxxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxxl-around {
    justify-content: space-around !important;
  }
}
.la-flex {
  display: flex !important;
}

.la-flex--inline {
  display: inline-flex !important;
}

.la-flex--row {
  flex-direction: row !important;
}

.la-flex--column {
  flex-direction: column !important;
}

.la-flex--row-reverse {
  flex-direction: row-reverse !important;
}

.la-flex--column-reverse {
  flex-direction: column-reverse !important;
}

.la-flex--wrap {
  flex-wrap: wrap !important;
}

.la-flex--nowrap {
  flex-wrap: nowrap !important;
}

.la-flex--wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

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

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.la-gap--1 {
  gap: 0.25rem !important;
}

.la-gap--2 {
  gap: 0.5rem !important;
}

.la-gap--3 {
  gap: 1rem !important;
}

.la-gap--4 {
  gap: 1.5rem !important;
}

.la-gap--5 {
  gap: 3rem !important;
}

@media (min-width: 0) {
  .la-flex--xs {
    display: flex !important;
  }
  .la-flex--xs-inline {
    display: inline-flex !important;
  }
  .la-flex--xs-row {
    flex-direction: row !important;
  }
  .la-flex--xs-column {
    flex-direction: column !important;
  }
  .la-flex--xs-row-reverse {
    flex-direction: row-reverse !important;
  }
  .la-flex--xs-column-reverse {
    flex-direction: column-reverse !important;
  }
  .la-flex--xs-wrap {
    flex-wrap: wrap !important;
  }
  .la-flex--xs-nowrap {
    flex-wrap: nowrap !important;
  }
  .la-flex--xs-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .d-xs-flex {
    display: flex !important;
  }
  .d-xs-inline-flex {
    display: inline-flex !important;
  }
  .flex-xs-row {
    flex-direction: row !important;
  }
  .flex-xs-column {
    flex-direction: column !important;
  }
  .flex-xs-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xs-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xs-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xs-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xs-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .la-gap--xs-1 {
    gap: 0.25rem !important;
  }
  .la-gap--xs-2 {
    gap: 0.5rem !important;
  }
  .la-gap--xs-3 {
    gap: 1rem !important;
  }
  .la-gap--xs-4 {
    gap: 1.5rem !important;
  }
  .la-gap--xs-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 576px) {
  .la-flex--sm {
    display: flex !important;
  }
  .la-flex--sm-inline {
    display: inline-flex !important;
  }
  .la-flex--sm-row {
    flex-direction: row !important;
  }
  .la-flex--sm-column {
    flex-direction: column !important;
  }
  .la-flex--sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .la-flex--sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .la-flex--sm-wrap {
    flex-wrap: wrap !important;
  }
  .la-flex--sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .la-flex--sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .la-gap--sm-1 {
    gap: 0.25rem !important;
  }
  .la-gap--sm-2 {
    gap: 0.5rem !important;
  }
  .la-gap--sm-3 {
    gap: 1rem !important;
  }
  .la-gap--sm-4 {
    gap: 1.5rem !important;
  }
  .la-gap--sm-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 768px) {
  .la-flex--md {
    display: flex !important;
  }
  .la-flex--md-inline {
    display: inline-flex !important;
  }
  .la-flex--md-row {
    flex-direction: row !important;
  }
  .la-flex--md-column {
    flex-direction: column !important;
  }
  .la-flex--md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .la-flex--md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .la-flex--md-wrap {
    flex-wrap: wrap !important;
  }
  .la-flex--md-nowrap {
    flex-wrap: nowrap !important;
  }
  .la-flex--md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .la-gap--md-1 {
    gap: 0.25rem !important;
  }
  .la-gap--md-2 {
    gap: 0.5rem !important;
  }
  .la-gap--md-3 {
    gap: 1rem !important;
  }
  .la-gap--md-4 {
    gap: 1.5rem !important;
  }
  .la-gap--md-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 992px) {
  .la-flex--lg {
    display: flex !important;
  }
  .la-flex--lg-inline {
    display: inline-flex !important;
  }
  .la-flex--lg-row {
    flex-direction: row !important;
  }
  .la-flex--lg-column {
    flex-direction: column !important;
  }
  .la-flex--lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .la-flex--lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .la-flex--lg-wrap {
    flex-wrap: wrap !important;
  }
  .la-flex--lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .la-flex--lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .la-gap--lg-1 {
    gap: 0.25rem !important;
  }
  .la-gap--lg-2 {
    gap: 0.5rem !important;
  }
  .la-gap--lg-3 {
    gap: 1rem !important;
  }
  .la-gap--lg-4 {
    gap: 1.5rem !important;
  }
  .la-gap--lg-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 1200px) {
  .la-flex--xl {
    display: flex !important;
  }
  .la-flex--xl-inline {
    display: inline-flex !important;
  }
  .la-flex--xl-row {
    flex-direction: row !important;
  }
  .la-flex--xl-column {
    flex-direction: column !important;
  }
  .la-flex--xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .la-flex--xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .la-flex--xl-wrap {
    flex-wrap: wrap !important;
  }
  .la-flex--xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .la-flex--xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .la-gap--xl-1 {
    gap: 0.25rem !important;
  }
  .la-gap--xl-2 {
    gap: 0.5rem !important;
  }
  .la-gap--xl-3 {
    gap: 1rem !important;
  }
  .la-gap--xl-4 {
    gap: 1.5rem !important;
  }
  .la-gap--xl-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 1440px) {
  .la-flex--xxl {
    display: flex !important;
  }
  .la-flex--xxl-inline {
    display: inline-flex !important;
  }
  .la-flex--xxl-row {
    flex-direction: row !important;
  }
  .la-flex--xxl-column {
    flex-direction: column !important;
  }
  .la-flex--xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .la-flex--xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .la-flex--xxl-wrap {
    flex-wrap: wrap !important;
  }
  .la-flex--xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .la-flex--xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .la-gap--xxl-1 {
    gap: 0.25rem !important;
  }
  .la-gap--xxl-2 {
    gap: 0.5rem !important;
  }
  .la-gap--xxl-3 {
    gap: 1rem !important;
  }
  .la-gap--xxl-4 {
    gap: 1.5rem !important;
  }
  .la-gap--xxl-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 1680px) {
  .la-flex--xxxl {
    display: flex !important;
  }
  .la-flex--xxxl-inline {
    display: inline-flex !important;
  }
  .la-flex--xxxl-row {
    flex-direction: row !important;
  }
  .la-flex--xxxl-column {
    flex-direction: column !important;
  }
  .la-flex--xxxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .la-flex--xxxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .la-flex--xxxl-wrap {
    flex-wrap: wrap !important;
  }
  .la-flex--xxxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .la-flex--xxxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .d-xxxl-flex {
    display: flex !important;
  }
  .d-xxxl-inline-flex {
    display: inline-flex !important;
  }
  .flex-xxxl-row {
    flex-direction: row !important;
  }
  .flex-xxxl-column {
    flex-direction: column !important;
  }
  .flex-xxxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .la-gap--xxxl-1 {
    gap: 0.25rem !important;
  }
  .la-gap--xxxl-2 {
    gap: 0.5rem !important;
  }
  .la-gap--xxxl-3 {
    gap: 1rem !important;
  }
  .la-gap--xxxl-4 {
    gap: 1.5rem !important;
  }
  .la-gap--xxxl-5 {
    gap: 3rem !important;
  }
}
.la-flex--grow-0 {
  flex-grow: 0 !important;
}

.la-flex--grow-1 {
  flex-grow: 1 !important;
}

.la-flex--shrink-0 {
  flex-shrink: 0 !important;
}

.la-flex--shrink-1 {
  flex-shrink: 1 !important;
}

/* stylelint-disable-next-line no-duplicate-selectors */
/* stylelint-enable number-max-precision */
/* Utilities
 *
 * Common utility classes to replace Bootstrap's utilities
 * Maintains the same class names and behavior for easier migration
 */
.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

@media (min-width: 0) {
  .d-xs-none {
    display: none !important;
  }
  .d-xs-inline {
    display: inline !important;
  }
  .d-xs-inline-block {
    display: inline-block !important;
  }
  .d-xs-block {
    display: block !important;
  }
  .d-xs-table {
    display: table !important;
  }
  .d-xs-table-row {
    display: table-row !important;
  }
  .d-xs-table-cell {
    display: table-cell !important;
  }
  .d-xs-flex {
    display: flex !important;
  }
  .d-xs-inline-flex {
    display: inline-flex !important;
  }
  .d-xs-grid {
    display: grid !important;
  }
  .d-xs-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
  .d-sm-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .d-md-grid {
    display: grid !important;
  }
  .d-md-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
  .d-lg-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
  .d-xl-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 1440px) {
  .d-xxl-none {
    display: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-table {
    display: table !important;
  }
  .d-xxl-table-row {
    display: table-row !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
  .d-xxl-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 1680px) {
  .d-xxxl-none {
    display: none !important;
  }
  .d-xxxl-inline {
    display: inline !important;
  }
  .d-xxxl-inline-block {
    display: inline-block !important;
  }
  .d-xxxl-block {
    display: block !important;
  }
  .d-xxxl-table {
    display: table !important;
  }
  .d-xxxl-table-row {
    display: table-row !important;
  }
  .d-xxxl-table-cell {
    display: table-cell !important;
  }
  .d-xxxl-flex {
    display: flex !important;
  }
  .d-xxxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxxl-grid {
    display: grid !important;
  }
  .d-xxxl-inline-grid {
    display: inline-grid !important;
  }
}
.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

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

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

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

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

@media (min-width: 0) {
  .flex-xs-row {
    flex-direction: row !important;
  }
  .flex-xs-column {
    flex-direction: column !important;
  }
  .flex-xs-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xs-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xs-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xs-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xs-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 1440px) {
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 1680px) {
  .flex-xxxl-row {
    flex-direction: row !important;
  }
  .flex-xxxl-column {
    flex-direction: column !important;
  }
  .flex-xxxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

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

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

@media (min-width: 0) {
  .m-xs-0 {
    margin: 0 !important;
  }
  .mt-xs-0,
  .my-xs-0 {
    margin-top: 0 !important;
  }
  .mr-xs-0,
  .mx-xs-0 {
    margin-right: 0 !important;
  }
  .mb-xs-0,
  .my-xs-0 {
    margin-bottom: 0 !important;
  }
  .ml-xs-0,
  .mx-xs-0 {
    margin-left: 0 !important;
  }
  .m-xs-1 {
    margin: 0.25rem !important;
  }
  .mt-xs-1,
  .my-xs-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xs-1,
  .mx-xs-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xs-1,
  .my-xs-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xs-1,
  .mx-xs-1 {
    margin-left: 0.25rem !important;
  }
  .m-xs-2 {
    margin: 0.5rem !important;
  }
  .mt-xs-2,
  .my-xs-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xs-2,
  .mx-xs-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xs-2,
  .my-xs-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xs-2,
  .mx-xs-2 {
    margin-left: 0.5rem !important;
  }
  .m-xs-3 {
    margin: 1rem !important;
  }
  .mt-xs-3,
  .my-xs-3 {
    margin-top: 1rem !important;
  }
  .mr-xs-3,
  .mx-xs-3 {
    margin-right: 1rem !important;
  }
  .mb-xs-3,
  .my-xs-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xs-3,
  .mx-xs-3 {
    margin-left: 1rem !important;
  }
  .m-xs-4 {
    margin: 1.5rem !important;
  }
  .mt-xs-4,
  .my-xs-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xs-4,
  .mx-xs-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xs-4,
  .my-xs-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xs-4,
  .mx-xs-4 {
    margin-left: 1.5rem !important;
  }
  .m-xs-5 {
    margin: 3rem !important;
  }
  .mt-xs-5,
  .my-xs-5 {
    margin-top: 3rem !important;
  }
  .mr-xs-5,
  .mx-xs-5 {
    margin-right: 3rem !important;
  }
  .mb-xs-5,
  .my-xs-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xs-5,
  .mx-xs-5 {
    margin-left: 3rem !important;
  }
  .p-xs-0 {
    padding: 0 !important;
  }
  .pt-xs-0,
  .py-xs-0 {
    padding-top: 0 !important;
  }
  .pr-xs-0,
  .px-xs-0 {
    padding-right: 0 !important;
  }
  .pb-xs-0,
  .py-xs-0 {
    padding-bottom: 0 !important;
  }
  .pl-xs-0,
  .px-xs-0 {
    padding-left: 0 !important;
  }
  .p-xs-1 {
    padding: 0.25rem !important;
  }
  .pt-xs-1,
  .py-xs-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xs-1,
  .px-xs-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xs-1,
  .py-xs-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xs-1,
  .px-xs-1 {
    padding-left: 0.25rem !important;
  }
  .p-xs-2 {
    padding: 0.5rem !important;
  }
  .pt-xs-2,
  .py-xs-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xs-2,
  .px-xs-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xs-2,
  .py-xs-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xs-2,
  .px-xs-2 {
    padding-left: 0.5rem !important;
  }
  .p-xs-3 {
    padding: 1rem !important;
  }
  .pt-xs-3,
  .py-xs-3 {
    padding-top: 1rem !important;
  }
  .pr-xs-3,
  .px-xs-3 {
    padding-right: 1rem !important;
  }
  .pb-xs-3,
  .py-xs-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xs-3,
  .px-xs-3 {
    padding-left: 1rem !important;
  }
  .p-xs-4 {
    padding: 1.5rem !important;
  }
  .pt-xs-4,
  .py-xs-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xs-4,
  .px-xs-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xs-4,
  .py-xs-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xs-4,
  .px-xs-4 {
    padding-left: 1.5rem !important;
  }
  .p-xs-5 {
    padding: 3rem !important;
  }
  .pt-xs-5,
  .py-xs-5 {
    padding-top: 3rem !important;
  }
  .pr-xs-5,
  .px-xs-5 {
    padding-right: 3rem !important;
  }
  .pb-xs-5,
  .py-xs-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xs-5,
  .px-xs-5 {
    padding-left: 3rem !important;
  }
}
@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important;
  }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important;
  }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important;
  }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important;
  }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important;
  }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important;
  }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important;
  }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important;
  }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important;
  }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important;
  }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important;
  }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important;
  }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important;
  }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important;
  }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important;
  }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important;
  }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important;
  }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important;
  }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important;
  }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important;
  }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important;
  }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important;
  }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important;
  }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important;
  }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important;
  }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important;
  }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important;
  }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important;
  }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important;
  }
}
@media (min-width: 1440px) {
  .m-xxl-0 {
    margin: 0 !important;
  }
  .mt-xxl-0,
  .my-xxl-0 {
    margin-top: 0 !important;
  }
  .mr-xxl-0,
  .mx-xxl-0 {
    margin-right: 0 !important;
  }
  .mb-xxl-0,
  .my-xxl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xxl-0,
  .mx-xxl-0 {
    margin-left: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .mt-xxl-1,
  .my-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xxl-1,
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xxl-1,
  .my-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xxl-1,
  .mx-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .mt-xxl-2,
  .my-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xxl-2,
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xxl-2,
  .my-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xxl-2,
  .mx-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .mt-xxl-3,
  .my-xxl-3 {
    margin-top: 1rem !important;
  }
  .mr-xxl-3,
  .mx-xxl-3 {
    margin-right: 1rem !important;
  }
  .mb-xxl-3,
  .my-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xxl-3,
  .mx-xxl-3 {
    margin-left: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .mt-xxl-4,
  .my-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xxl-4,
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xxl-4,
  .my-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xxl-4,
  .mx-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .mt-xxl-5,
  .my-xxl-5 {
    margin-top: 3rem !important;
  }
  .mr-xxl-5,
  .mx-xxl-5 {
    margin-right: 3rem !important;
  }
  .mb-xxl-5,
  .my-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xxl-5,
  .mx-xxl-5 {
    margin-left: 3rem !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .pt-xxl-0,
  .py-xxl-0 {
    padding-top: 0 !important;
  }
  .pr-xxl-0,
  .px-xxl-0 {
    padding-right: 0 !important;
  }
  .pb-xxl-0,
  .py-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xxl-0,
  .px-xxl-0 {
    padding-left: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .pt-xxl-1,
  .py-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xxl-1,
  .px-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xxl-1,
  .py-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xxl-1,
  .px-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .pt-xxl-2,
  .py-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xxl-2,
  .px-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xxl-2,
  .py-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xxl-2,
  .px-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .pt-xxl-3,
  .py-xxl-3 {
    padding-top: 1rem !important;
  }
  .pr-xxl-3,
  .px-xxl-3 {
    padding-right: 1rem !important;
  }
  .pb-xxl-3,
  .py-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xxl-3,
  .px-xxl-3 {
    padding-left: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .pt-xxl-4,
  .py-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xxl-4,
  .px-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xxl-4,
  .py-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xxl-4,
  .px-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .pt-xxl-5,
  .py-xxl-5 {
    padding-top: 3rem !important;
  }
  .pr-xxl-5,
  .px-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-5,
  .py-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xxl-5,
  .px-xxl-5 {
    padding-left: 3rem !important;
  }
}
@media (min-width: 1680px) {
  .m-xxxl-0 {
    margin: 0 !important;
  }
  .mt-xxxl-0,
  .my-xxxl-0 {
    margin-top: 0 !important;
  }
  .mr-xxxl-0,
  .mx-xxxl-0 {
    margin-right: 0 !important;
  }
  .mb-xxxl-0,
  .my-xxxl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xxxl-0,
  .mx-xxxl-0 {
    margin-left: 0 !important;
  }
  .m-xxxl-1 {
    margin: 0.25rem !important;
  }
  .mt-xxxl-1,
  .my-xxxl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xxxl-1,
  .mx-xxxl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xxxl-1,
  .my-xxxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xxxl-1,
  .mx-xxxl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xxxl-2 {
    margin: 0.5rem !important;
  }
  .mt-xxxl-2,
  .my-xxxl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xxxl-2,
  .mx-xxxl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xxxl-2,
  .my-xxxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xxxl-2,
  .mx-xxxl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xxxl-3 {
    margin: 1rem !important;
  }
  .mt-xxxl-3,
  .my-xxxl-3 {
    margin-top: 1rem !important;
  }
  .mr-xxxl-3,
  .mx-xxxl-3 {
    margin-right: 1rem !important;
  }
  .mb-xxxl-3,
  .my-xxxl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xxxl-3,
  .mx-xxxl-3 {
    margin-left: 1rem !important;
  }
  .m-xxxl-4 {
    margin: 1.5rem !important;
  }
  .mt-xxxl-4,
  .my-xxxl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xxxl-4,
  .mx-xxxl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xxxl-4,
  .my-xxxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xxxl-4,
  .mx-xxxl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xxxl-5 {
    margin: 3rem !important;
  }
  .mt-xxxl-5,
  .my-xxxl-5 {
    margin-top: 3rem !important;
  }
  .mr-xxxl-5,
  .mx-xxxl-5 {
    margin-right: 3rem !important;
  }
  .mb-xxxl-5,
  .my-xxxl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xxxl-5,
  .mx-xxxl-5 {
    margin-left: 3rem !important;
  }
  .p-xxxl-0 {
    padding: 0 !important;
  }
  .pt-xxxl-0,
  .py-xxxl-0 {
    padding-top: 0 !important;
  }
  .pr-xxxl-0,
  .px-xxxl-0 {
    padding-right: 0 !important;
  }
  .pb-xxxl-0,
  .py-xxxl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xxxl-0,
  .px-xxxl-0 {
    padding-left: 0 !important;
  }
  .p-xxxl-1 {
    padding: 0.25rem !important;
  }
  .pt-xxxl-1,
  .py-xxxl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xxxl-1,
  .px-xxxl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xxxl-1,
  .py-xxxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xxxl-1,
  .px-xxxl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xxxl-2 {
    padding: 0.5rem !important;
  }
  .pt-xxxl-2,
  .py-xxxl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xxxl-2,
  .px-xxxl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xxxl-2,
  .py-xxxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xxxl-2,
  .px-xxxl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xxxl-3 {
    padding: 1rem !important;
  }
  .pt-xxxl-3,
  .py-xxxl-3 {
    padding-top: 1rem !important;
  }
  .pr-xxxl-3,
  .px-xxxl-3 {
    padding-right: 1rem !important;
  }
  .pb-xxxl-3,
  .py-xxxl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xxxl-3,
  .px-xxxl-3 {
    padding-left: 1rem !important;
  }
  .p-xxxl-4 {
    padding: 1.5rem !important;
  }
  .pt-xxxl-4,
  .py-xxxl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xxxl-4,
  .px-xxxl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xxxl-4,
  .py-xxxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xxxl-4,
  .px-xxxl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xxxl-5 {
    padding: 3rem !important;
  }
  .pt-xxxl-5,
  .py-xxxl-5 {
    padding-top: 3rem !important;
  }
  .pr-xxxl-5,
  .px-xxxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxxl-5,
  .py-xxxl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xxxl-5,
  .px-xxxl-5 {
    padding-left: 3rem !important;
  }
}
.w-25 {
  width: 25% !important;
}

.h-25 {
  height: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.h-50 {
  height: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.h-75 {
  height: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.h-100 {
  height: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.border {
  border: 0.0625rem solid #BDBDBD !important;
}

.border-0 {
  border: 0 !important;
}

.border-top {
  border-top: 0.0625rem solid #BDBDBD !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right {
  border-right: 0.0625rem solid #BDBDBD !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom {
  border-bottom: 0.0625rem solid #BDBDBD !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left {
  border-left: 0.0625rem solid #BDBDBD !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #069393 !important;
}

.border-secondary {
  border-color: #05686C !important;
}

.border-success {
  border-color: #069393 !important;
}

.border-danger {
  border-color: #E25C3D !important;
}

.border-warning {
  border-color: #F4B63E !important;
}

.border-info {
  border-color: #4A7AD8 !important;
}

.border-light {
  border-color: #F9F9F9 !important;
}

.border-dark {
  border-color: #262626 !important;
}

.border-white {
  border-color: #FFF !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.bg-primary {
  background-color: #069393 !important;
}

.bg-secondary {
  background-color: #05686C !important;
}

.bg-success {
  background-color: #069393 !important;
}

.bg-danger {
  background-color: #E25C3D !important;
}

.bg-warning {
  background-color: #F4B63E !important;
}

.bg-info {
  background-color: #4A7AD8 !important;
}

.bg-light {
  background-color: #F9F9F9 !important;
}

.bg-dark {
  background-color: #262626 !important;
}

.bg-body {
  background-color: #262626 !important;
}

.bg-white {
  background-color: #FFF !important;
}

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

.la-hidden {
  display: none !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

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

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

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

@media (min-width: 0) {
  .text-xs-left {
    text-align: left !important;
  }
  .text-xs-right {
    text-align: right !important;
  }
  .text-xs-center {
    text-align: center !important;
  }
}
@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1440px) {
  .text-xxl-left {
    text-align: left !important;
  }
  .text-xxl-right {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1680px) {
  .text-xxxl-left {
    text-align: left !important;
  }
  .text-xxxl-right {
    text-align: right !important;
  }
  .text-xxxl-center {
    text-align: center !important;
  }
}
.text-left {
  text-align: left !important;
}

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

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

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

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

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

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

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

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

.font-italic {
  font-style: italic !important;
}

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

.text-primary {
  color: #069393 !important;
}

.text-secondary {
  color: #05686C !important;
}

.text-success {
  color: #069393 !important;
}

.text-danger {
  color: #E25C3D !important;
}

.text-warning {
  color: #F4B63E !important;
}

.text-info {
  color: #4A7AD8 !important;
}

.text-light {
  color: #F9F9F9 !important;
}

.text-dark {
  color: #262626 !important;
}

.text-body {
  color: #262626 !important;
}

.text-muted {
  color: #757575 !important;
}

.text-white {
  color: #FFF !important;
}

.text-black-50 {
  color: rgba(38, 38, 38, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-reset {
  color: inherit !important;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-decoration-underline {
  text-decoration: underline !important;
}

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

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-visible {
  overflow: visible !important;
}

.overflow-scroll {
  overflow: scroll !important;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(38, 38, 38, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(38, 38, 38, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.gap-0 {
  gap: 0 !important;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

@media (min-width: 0) {
  .gap-xs-0 {
    gap: 0 !important;
  }
  .gap-xs-1 {
    gap: 0.25rem !important;
  }
  .gap-xs-2 {
    gap: 0.5rem !important;
  }
  .gap-xs-3 {
    gap: 1rem !important;
  }
  .gap-xs-4 {
    gap: 1.5rem !important;
  }
  .gap-xs-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 576px) {
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 0.25rem !important;
  }
  .gap-sm-2 {
    gap: 0.5rem !important;
  }
  .gap-sm-3 {
    gap: 1rem !important;
  }
  .gap-sm-4 {
    gap: 1.5rem !important;
  }
  .gap-sm-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 768px) {
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 0.25rem !important;
  }
  .gap-md-2 {
    gap: 0.5rem !important;
  }
  .gap-md-3 {
    gap: 1rem !important;
  }
  .gap-md-4 {
    gap: 1.5rem !important;
  }
  .gap-md-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 992px) {
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 0.25rem !important;
  }
  .gap-lg-2 {
    gap: 0.5rem !important;
  }
  .gap-lg-3 {
    gap: 1rem !important;
  }
  .gap-lg-4 {
    gap: 1.5rem !important;
  }
  .gap-lg-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 1200px) {
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 0.25rem !important;
  }
  .gap-xl-2 {
    gap: 0.5rem !important;
  }
  .gap-xl-3 {
    gap: 1rem !important;
  }
  .gap-xl-4 {
    gap: 1.5rem !important;
  }
  .gap-xl-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 1440px) {
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxl-3 {
    gap: 1rem !important;
  }
  .gap-xxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxl-5 {
    gap: 3rem !important;
  }
}
@media (min-width: 1680px) {
  .gap-xxxl-0 {
    gap: 0 !important;
  }
  .gap-xxxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxxl-3 {
    gap: 1rem !important;
  }
  .gap-xxxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxxl-5 {
    gap: 3rem !important;
  }
}
.order-first {
  order: -1 !important;
}

.order-last {
  order: 6 !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

@media (min-width: 0) {
  .order-xs-first {
    order: -1 !important;
  }
  .order-xs-last {
    order: 6 !important;
  }
  .order-xs-0 {
    order: 0 !important;
  }
  .order-xs-1 {
    order: 1 !important;
  }
  .order-xs-2 {
    order: 2 !important;
  }
  .order-xs-3 {
    order: 3 !important;
  }
  .order-xs-4 {
    order: 4 !important;
  }
  .order-xs-5 {
    order: 5 !important;
  }
}
@media (min-width: 576px) {
  .order-sm-first {
    order: -1 !important;
  }
  .order-sm-last {
    order: 6 !important;
  }
  .order-sm-0 {
    order: 0 !important;
  }
  .order-sm-1 {
    order: 1 !important;
  }
  .order-sm-2 {
    order: 2 !important;
  }
  .order-sm-3 {
    order: 3 !important;
  }
  .order-sm-4 {
    order: 4 !important;
  }
  .order-sm-5 {
    order: 5 !important;
  }
}
@media (min-width: 768px) {
  .order-md-first {
    order: -1 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
}
@media (min-width: 992px) {
  .order-lg-first {
    order: -1 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
}
@media (min-width: 1200px) {
  .order-xl-first {
    order: -1 !important;
  }
  .order-xl-last {
    order: 6 !important;
  }
  .order-xl-0 {
    order: 0 !important;
  }
  .order-xl-1 {
    order: 1 !important;
  }
  .order-xl-2 {
    order: 2 !important;
  }
  .order-xl-3 {
    order: 3 !important;
  }
  .order-xl-4 {
    order: 4 !important;
  }
  .order-xl-5 {
    order: 5 !important;
  }
}
@media (min-width: 1440px) {
  .order-xxl-first {
    order: -1 !important;
  }
  .order-xxl-last {
    order: 6 !important;
  }
  .order-xxl-0 {
    order: 0 !important;
  }
  .order-xxl-1 {
    order: 1 !important;
  }
  .order-xxl-2 {
    order: 2 !important;
  }
  .order-xxl-3 {
    order: 3 !important;
  }
  .order-xxl-4 {
    order: 4 !important;
  }
  .order-xxl-5 {
    order: 5 !important;
  }
}
@media (min-width: 1680px) {
  .order-xxxl-first {
    order: -1 !important;
  }
  .order-xxxl-last {
    order: 6 !important;
  }
  .order-xxxl-0 {
    order: 0 !important;
  }
  .order-xxxl-1 {
    order: 1 !important;
  }
  .order-xxxl-2 {
    order: 2 !important;
  }
  .order-xxxl-3 {
    order: 3 !important;
  }
  .order-xxxl-4 {
    order: 4 !important;
  }
  .order-xxxl-5 {
    order: 5 !important;
  }
}
.field_with_errors {
  display: contents;
}
.field_with_errors label {
  color: var(--la-color-red-700);
}
.field_with_errors .la-form__input,
.field_with_errors input[type=text],
.field_with_errors input[type=email],
.field_with_errors input[type=password],
.field_with_errors input[type=number],
.field_with_errors textarea,
.field_with_errors select {
  border-color: var(--la-color-red-500);
}
.field_with_errors .la-form__input:focus,
.field_with_errors input[type=text]:focus,
.field_with_errors input[type=email]:focus,
.field_with_errors input[type=password]:focus,
.field_with_errors input[type=number]:focus,
.field_with_errors textarea:focus,
.field_with_errors select:focus {
  border-color: var(--la-color-red-600);
}

.la-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.625rem 1.5rem;
  border-radius: 50rem;
  font-family: "Work Sans", "Helvetica", "sans-serif";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: 0.0625rem solid transparent;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.075);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.la-btn:focus, .la-btn:focus-visible {
  outline: none;
  border-color: #069393;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn:disabled, .la-btn--disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
}
.la-btn--sm {
  padding: 6px 16px;
  font-size: 0.875rem;
}
.la-btn--lg {
  padding: 12px 32px;
  font-size: 1.25rem;
}
.la-btn--full {
  width: 100%;
  justify-content: center;
}
.la-btn .la-icon {
  display: inline-block;
  vertical-align: middle;
  line-height: 0;
}
.la-btn--icon-right .la-icon {
  margin-right: 0;
  margin-left: 0.5rem;
}
.la-btn--icon-only {
  padding: 0.625rem;
}
.la-btn--icon-only .la-icon {
  margin-right: 0;
  margin-left: 0;
}
.la-btn--primary {
  background-color: #069393;
  color: #FFF;
  border: none;
}
.la-btn--primary:hover {
  background-color: #07B4B4;
  box-shadow: 0 0.125rem 0.375rem rgba(6, 147, 147, 0.2);
}
.la-btn--primary:active {
  background-color: #05686C;
  box-shadow: 0 0.0625rem 0.1875rem rgba(5, 104, 108, 0.2);
}
.la-btn--primary:focus, .la-btn--primary:focus-visible {
  border-color: #069393;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn--secondary {
  background-color: #FFF;
  border-color: #4F4F4F;
  color: #4F4F4F;
}
.la-btn--secondary:hover {
  background-color: #058C91;
  border-color: #058C91;
  color: #FFF;
}
.la-btn--secondary:active {
  background-color: #05686C;
  border-color: #05686C;
  color: #FFF;
}
.la-btn--secondary:focus, .la-btn--secondary:focus-visible {
  border-color: #05686C;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn--accent {
  background-color: #E25C3D;
  color: #FFF;
}
.la-btn--accent:hover {
  background-color: #C0472D;
  box-shadow: 0 0.125rem 0.375rem rgba(226, 92, 61, 0.2);
}
.la-btn--accent:active {
  background-color: #A02D14;
  box-shadow: 0 0.0625rem 0.1875rem rgba(160, 45, 20, 0.2);
}
.la-btn--accent:focus, .la-btn--accent:focus-visible {
  border-color: #E25C3D;
  box-shadow: 0 0 0 0.0625rem rgba(226, 92, 61, 0.5);
}
.la-btn--info {
  background-color: #4A7AD8;
  color: #FFF;
}
.la-btn--info:hover {
  background-color: #2B5CAA;
  box-shadow: 0 0.125rem 0.375rem rgba(74, 122, 216, 0.2);
}
.la-btn--info:active {
  background-color: #153670;
  box-shadow: 0 0.0625rem 0.1875rem rgba(21, 54, 112, 0.2);
}
.la-btn--info:focus, .la-btn--info:focus-visible {
  border-color: #4A7AD8;
  box-shadow: 0 0 0 0.0625rem rgba(74, 122, 216, 0.5);
}
.la-btn--gold {
  background-color: #F4B63E;
  color: #262626;
}
.la-btn--gold:hover {
  background-color: #DB9C24;
  box-shadow: 0 0.125rem 0.375rem rgba(244, 182, 62, 0.2);
}
.la-btn--gold:active {
  background-color: #9B6B12;
  box-shadow: 0 0.0625rem 0.1875rem rgba(155, 107, 18, 0.2);
}
.la-btn--gold:focus, .la-btn--gold:focus-visible {
  border-color: #F4B63E;
  box-shadow: 0 0 0 0.0625rem rgba(244, 182, 62, 0.5);
}
.la-btn--success {
  background-color: #069393;
  color: #FFF;
}
.la-btn--success:hover {
  background-color: #07B4B4;
  box-shadow: 0 0.125rem 0.375rem rgba(6, 147, 147, 0.2);
}
.la-btn--success:active {
  background-color: #033F3F;
  box-shadow: 0 0.0625rem 0.1875rem rgba(3, 63, 63, 0.2);
}
.la-btn--success:focus, .la-btn--success:focus-visible {
  border-color: #069393;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn--error {
  background-color: #E25C3D;
  color: #FFF;
}
.la-btn--error:hover {
  background-color: #C0472D;
  box-shadow: 0 0.125rem 0.375rem rgba(226, 92, 61, 0.2);
}
.la-btn--error:active {
  background-color: #A02D14;
  box-shadow: 0 0.0625rem 0.1875rem rgba(160, 45, 20, 0.2);
}
.la-btn--error:focus, .la-btn--error:focus-visible {
  border-color: #E25C3D;
  box-shadow: 0 0 0 0.0625rem rgba(226, 92, 61, 0.5);
}
.la-btn--gradient-brand {
  background-image: linear-gradient(135deg, #05686C 0%, #069393 100%);
  color: #FFF;
  border: none;
}
.la-btn--gradient-brand:hover {
  filter: brightness(1.1);
  box-shadow: 0 4px 8px rgba(5, 104, 108, 0.3);
}
.la-btn--gradient-brand:active {
  filter: brightness(0.95);
  box-shadow: 0 2px 4px rgba(5, 104, 108, 0.3);
}
.la-btn--gradient-brand:focus, .la-btn--gradient-brand:focus-visible {
  border-color: #069393;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn--gradient-accent {
  background-image: linear-gradient(to right, #E25C3D, #C0472D);
  color: #FFF;
  border: none;
}
.la-btn--gradient-accent:hover {
  box-shadow: 0 4px 8px rgba(226, 92, 61, 0.3);
}
.la-btn--gradient-accent:active {
  box-shadow: 0 2px 4px rgba(226, 92, 61, 0.3);
}
.la-btn--gradient-info {
  background-image: linear-gradient(to right, #4A7AD8, #2B5CAA);
  color: #FFF;
  border: none;
}
.la-btn--gradient-info:hover {
  box-shadow: 0 4px 8px rgba(74, 122, 216, 0.3);
}
.la-btn--gradient-info:active {
  box-shadow: 0 2px 4px rgba(74, 122, 216, 0.3);
}
.la-btn--gradient-gold {
  background-image: linear-gradient(to right, #DB9C24, #DB9C24);
  color: #FFF;
  border: none;
}
.la-btn--gradient-gold:hover {
  box-shadow: 0 4px 8px rgba(219, 156, 36, 0.3);
}
.la-btn--gradient-gold:active {
  box-shadow: 0 2px 4px rgba(219, 156, 36, 0.3);
}
.la-btn--gradient-gold:focus, .la-btn--gradient-gold:focus-visible {
  border-color: #F4B63E;
  box-shadow: 0 0 0 0.0625rem rgba(244, 182, 62, 0.5);
}
.la-btn--outline-primary {
  background-color: transparent;
  border-color: #069393;
  color: #069393;
}
.la-btn--outline-primary:hover {
  background-color: rgba(6, 147, 147, 0.05);
  color: #069393;
  transform: translateY(-1px);
}
.la-btn--outline-primary:active {
  background-color: rgba(6, 147, 147, 0.1);
  color: #05686C;
  transform: translateY(0);
}
.la-btn--outline-primary:focus, .la-btn--outline-primary:focus-visible {
  border-color: #069393;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn--outline-secondary {
  background-color: transparent;
  border-color: #4F4F4F;
  color: #4F4F4F;
}
.la-btn--outline-secondary:hover {
  background-color: rgba(5, 104, 108, 0.05);
  color: #05686C;
  transform: translateY(-1px);
}
.la-btn--outline-secondary:active {
  background-color: rgba(5, 104, 108, 0.1);
  color: #033F3F;
  transform: translateY(0);
}
.la-btn--outline-secondary:focus, .la-btn--outline-secondary:focus-visible {
  border-color: #05686C;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn--outline-accent {
  background-color: transparent;
  border-color: #E25C3D;
  color: #E25C3D;
}
.la-btn--outline-accent:hover {
  background-color: rgba(226, 92, 61, 0.05);
  color: #E25C3D;
  transform: translateY(-1px);
}
.la-btn--outline-accent:active {
  background-color: rgba(226, 92, 61, 0.1);
  color: #A02D14;
  transform: translateY(0);
}
.la-btn--outline-accent:focus, .la-btn--outline-accent:focus-visible {
  border-color: #E25C3D;
  box-shadow: 0 0 0 0.0625rem rgba(226, 92, 61, 0.5);
}
.la-btn--outline-info {
  background-color: transparent;
  border-color: #4A7AD8;
  color: #4A7AD8;
}
.la-btn--outline-info:hover {
  background-color: rgba(74, 122, 216, 0.05);
  color: #4A7AD8;
  transform: translateY(-1px);
}
.la-btn--outline-info:active {
  background-color: rgba(74, 122, 216, 0.1);
  color: #153670;
  transform: translateY(0);
}
.la-btn--outline-info:focus, .la-btn--outline-info:focus-visible {
  border-color: #4A7AD8;
  box-shadow: 0 0 0 0.0625rem rgba(74, 122, 216, 0.5);
}
.la-btn--outline-gold {
  background-color: transparent;
  border-color: #F4B63E;
  color: #F4B63E;
}
.la-btn--outline-gold:hover {
  background-color: rgba(244, 182, 62, 0.05);
  color: #F4B63E;
  transform: translateY(-1px);
}
.la-btn--outline-gold:active {
  background-color: rgba(244, 182, 62, 0.1);
  color: #9B6B12;
  transform: translateY(0);
}
.la-btn--outline-gold:focus, .la-btn--outline-gold:focus-visible {
  border-color: #F4B63E;
  box-shadow: 0 0 0 0.0625rem rgba(244, 182, 62, 0.5);
}
.la-btn--outline-success {
  background-color: transparent;
  border-color: #069393;
  color: #069393;
}
.la-btn--outline-success:hover {
  background-color: rgba(6, 147, 147, 0.05);
  color: #069393;
  transform: translateY(-1px);
}
.la-btn--outline-success:active {
  background-color: rgba(6, 147, 147, 0.1);
  color: #033F3F;
  transform: translateY(0);
}
.la-btn--outline-success:focus, .la-btn--outline-success:focus-visible {
  border-color: #069393;
  box-shadow: 0 0 0 0.0625rem rgba(6, 147, 147, 0.5);
}
.la-btn--text {
  background-color: transparent;
  border-color: transparent;
  color: #069393;
  padding: 8px 16px;
  box-shadow: none;
}
.la-btn--text:hover {
  background-color: rgba(6, 147, 147, 0.05);
  color: #07B4B4;
}
.la-btn--text:active {
  background-color: rgba(6, 147, 147, 0.1);
  color: #05686C;
}
.la-btn--text-accent {
  background-color: transparent;
  border-color: transparent;
  color: #E25C3D;
  padding: 8px 16px;
  box-shadow: none;
}
.la-btn--text-accent:hover {
  background-color: rgba(226, 92, 61, 0.05);
  color: #C0472D;
}

/*
 * Carousel Component
 *
 * Custom carousel component to replace Bootstrap's carousel
 * Uses semantic CSS selectors with 'la-' prefix (Little Adventures)
 * to avoid conflicts with Bootstrap during the transition period
 *
 * This file is designed to exactly replicate Bootstrap's carousel styling
 */
.la-carousel {
  position: relative;
}
.la-listing-card .la-card .la-carousel {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  overflow: hidden;
  margin-bottom: 0;
  height: 10.9375rem;
}
@media (min-width: 768px) {
  .la-listing-card .la-card .la-carousel {
    height: 10.9375rem;
  }
}

.la-carousel__container {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.la-carousel__item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  will-change: transform;
  display: none;
}
.la-carousel__item img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  margin: 0;
  padding: 0;
}
.la-carousel__item--active {
  display: block;
}

@keyframes to-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes to-right {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}
@keyframes come-right {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes come-left {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
.la-carousel__control {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #FFF;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
  cursor: pointer;
}
.la-carousel__control:hover, .la-carousel__control:focus {
  color: #FFF;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}
.la-carousel__control--prev {
  left: 0;
}
.la-carousel__control--next {
  right: 0;
}

.la-carousel__control-prev-icon,
.la-carousel__control-next-icon {
  display: inline-block;
  width: 1.625rem;
  height: 1.625rem;
  background-color: #FFF;
  border-radius: 50%;
  box-shadow: 0 0.25rem 0.5rem rgba(38, 38, 38, 0.1);
  background-size: 50%;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 0.15s ease;
}

.la-carousel:hover .la-carousel__control-prev-icon,
.la-carousel:hover .la-carousel__control-next-icon {
  opacity: 1;
}

.la-carousel__control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000000'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.la-carousel__control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000000'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.la-carousel__indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-right: 15%;
  margin-left: 15%;
  margin-bottom: 0.625rem;
}

.la-carousel__indicator {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 1.25rem;
  height: 0.1875rem;
  padding: 0;
  margin-right: 0.1875rem;
  margin-left: 0.1875rem;
  text-indent: -999px;
  cursor: pointer;
  background-color: #FFF;
  background-clip: padding-box;
  border: 0;
  border-top: none;
  border-bottom: none;
  border-radius: 0.5rem;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
.la-carousel__indicator--active {
  opacity: 1;
}

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

.la-listing-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.la-listing-card .la-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  border: none;
  box-shadow: none;
  overflow: hidden;
}
.la-listing-card .la-carousel {
  margin-bottom: 0;
  flex: 0 0 auto;
}
.la-listing-card .la-carousel__container {
  border-radius: 0.5rem;
  height: 100%;
}
.la-listing-card .la-carousel__item {
  height: 10.9375rem;
}
@media (min-width: 768px) {
  .la-listing-card .la-carousel__item {
    height: 10.9375rem;
  }
}
.la-listing-card .la-card__body {
  flex: 1 1 auto;
  padding: 1%;
  background: transparent;
  font-size: 0.75rem;
}
.la-listing-card .la-card__title {
  display: block;
  margin-bottom: 0;
  font-size: 0.625rem;
  font-weight: bold;
}
.la-listing-card .la-card__text {
  margin-bottom: 0;
  font-size: 12px;
}
.la-listing-card .la-card__link {
  color: inherit;
  text-decoration: none;
  font-weight: bold;
}
.la-listing-card .la-card__link:hover {
  text-decoration: underline;
}

@media (prefers-color-scheme: dark) {
  .la-carousel__control {
    color: #FFF;
  }
  .la-carousel__control:hover, .la-carousel__control:focus {
    color: #FFF;
  }
  .la-carousel__indicators .la-carousel__indicator {
    background-color: rgba(255, 255, 255, 0.5);
  }
  .la-carousel__indicators .la-carousel__indicator.la-carousel__indicator--active {
    background-color: #FFF;
  }
}
.carousel-image {
  display: block;
  width: 100%;
  height: 10.9375rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.25rem;
  box-shadow: 0 0.25rem 0.5rem rgba(38, 38, 38, 0.1);
}
.carousel-image[loading=lazy] {
  background: #FFF;
}

.la-carousel__item img[loading=lazy],
.la-carousel__image[loading=lazy] {
  background: #F9F9F9;
}

/* Components
 *
 * Custom components to replace Bootstrap components
 * Uses semantic CSS selectors with 'la-' prefix (Little Adventures)
 * to avoid conflicts with Bootstrap during the transition period
 */
.la-form__group {
  margin-bottom: 1rem;
}

.la-form__label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

.la-form__control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #4F4F4F;
  background-color: #FFF;
  background-clip: padding-box;
  border: 0.0625rem solid #F5F5F5;
  border-radius: 0.25rem;
  transition: border-color all 0.2s ease-in-out, box-shadow all 0.2s ease-in-out;
}
.la-form__control:focus {
  color: #4F4F4F;
  background-color: #FFF;
  border-color: rgb(9.5, 232.75, 232.75);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(6, 147, 147, 0.25);
}
.la-form__control::-moz-placeholder {
  color: #757575;
  opacity: 1;
}
.la-form__control::placeholder {
  color: #757575;
  opacity: 1;
}
.la-form__control:disabled, .la-form__control[readonly] {
  background-color: #F9F9F9;
  opacity: 1;
}

select.la-form__control:focus::-ms-value {
  color: #4F4F4F;
  background-color: #FFF;
}

.la-form__control--sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.la-form__control--lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.la-form__text {
  display: block;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #757575;
}

.la-form__check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.la-form__check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}
.la-form__check-input[disabled] ~ .la-form__check-label {
  color: #757575;
}

.la-form__check-label {
  margin-bottom: 0;
}

.la-form--inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.la-form--inline .la-form__check {
  width: auto;
}
.la-form--inline .la-form__group {
  margin-bottom: 0;
}
.la-form--inline .la-form__control {
  display: inline-block;
  width: auto;
  vertical-align: middle;
}
.la-form--inline .la-form__label {
  margin-bottom: 0;
  vertical-align: middle;
}
.la-form--inline .la-form__group,
.la-form--inline .la-form__control,
.la-form--inline .la-form__label,
.la-form--inline .la-form__check {
  margin-right: 0.5rem;
}

.la-alert {
  position: relative;
  padding: 1rem;
  margin-bottom: 1rem;
  border: 0.0625rem solid transparent;
  border-radius: 0.25rem;
}

.la-alert--primary {
  color: rgb(3.9, 95.55, 95.55);
  background-color: rgb(117.8, 249.4, 249.4);
  border-color: rgb(83.5, 248, 248);
}
.la-alert--primary hr {
  border-top-color: rgb(49.2, 246.6, 246.6);
}
.la-alert--primary .la-alert__link {
  color: rgb(3.3, 80.85, 80.85);
}

.la-alert--secondary {
  color: rgb(76.05, 76.05, 76.05);
  background-color: rgb(199.8, 199.8, 199.8);
  border-color: #bababa;
}
.la-alert--secondary hr {
  border-top-color: rgb(172.2, 172.2, 172.2);
}
.la-alert--secondary .la-alert__link {
  color: rgb(64.35, 64.35, 64.35);
}

.la-alert--success {
  color: rgb(3.9, 95.55, 95.55);
  background-color: rgb(117.8, 249.4, 249.4);
  border-color: rgb(83.5, 248, 248);
}
.la-alert--success hr {
  border-top-color: rgb(49.2, 246.6, 246.6);
}
.la-alert--success .la-alert__link {
  color: rgb(3.3, 80.85, 80.85);
}

.la-alert--danger {
  color: rgb(162.2901345291, 50.1928251121, 24.2598654709);
  background-color: rgb(243.4, 189.8, 177.4);
  border-color: rgb(240.5, 173.5, 158);
}
.la-alert--danger hr {
  border-top-color: rgb(237.6, 157.2, 138.6);
}
.la-alert--danger .la-alert__link {
  color: rgb(137.3224215247, 42.4708520179, 20.5275784753);
}

.la-alert--warning {
  color: rgb(188.175, 127.725, 10.725);
  background-color: rgb(250.6, 225.8, 177.8);
  border-color: rgb(249.5, 218.5, 158.5);
}
.la-alert--warning hr {
  border-top-color: rgb(248.4, 211.2, 139.2);
}
.la-alert--warning .la-alert__link {
  color: rgb(159.225, 108.075, 9.075);
}

.la-alert--info {
  color: rgb(33.4159090909, 74.5431818182, 155.0840909091);
  background-color: rgb(182.6, 201.8, 239.4);
  border-color: rgb(164.5, 188.5, 235.5);
}
.la-alert--info hr {
  border-top-color: rgb(146.4, 175.2, 231.6);
}
.la-alert--info .la-alert__link {
  color: rgb(28.275, 63.075, 131.225);
}

.la-alert--light {
  color: rgb(159.25, 159.25, 159.25);
  background-color: #fbfbfb;
  border-color: #fafafa;
}
.la-alert--light hr {
  border-top-color: #f9f9f9;
}
.la-alert--light .la-alert__link {
  color: rgb(134.75, 134.75, 134.75);
}

.la-alert--dark {
  color: rgb(140.6, 140.6, 140.6);
  background-color: rgb(71.1, 71.1, 71.1);
  border-color: #4f4f4f;
}
.la-alert--dark hr {
  border-top-color: rgb(96.6, 96.6, 96.6);
}
.la-alert--dark .la-alert__link {
  color: rgb(158.2, 158.2, 158.2);
}

.la-badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.2rem;
  transition: color all 0.2s ease-in-out, background-color all 0.2s ease-in-out, border-color all 0.2s ease-in-out, box-shadow all 0.2s ease-in-out;
}
.la-badge:empty {
  display: none;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--primary {
  color: #FFF;
  background-color: #069393;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--secondary {
  color: #FFF;
  background-color: #757575;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--success {
  color: #FFF;
  background-color: #069393;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--danger {
  color: #FFF;
  background-color: #E25C3D;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--warning {
  color: #262626;
  background-color: #F4B63E;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--info {
  color: #FFF;
  background-color: #4A7AD8;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--light {
  color: #262626;
  background-color: #F5F5F5;
}

/* stylelint-disable-next-line declaration-block-single-line-max-declarations */
.la-badge--dark {
  color: #FFF;
  background-color: #4F4F4F;
}

.la-badge--pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.la-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #FFF;
  background-clip: border-box;
  border: 0.0625rem solid rgba(38, 38, 38, 0.125);
  border-radius: 0.25rem;
}

.la-card__body {
  flex: 1 1 auto;
  padding: 1.25rem;
}

.la-card__title {
  margin-bottom: 0.75rem;
}

.la-card__subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.la-card__text:last-child {
  margin-bottom: 0;
}

.la-card__link:hover {
  text-decoration: none;
}
.la-card__link + .la-card__link {
  margin-left: 1rem;
}

.la-card__header {
  padding: 0.75rem 1rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 0.0625rem solid rgba(38, 38, 38, 0.125);
}
.la-card__header:first-child {
  border-radius: calc(0.25rem - 0.0625rem) calc(0.25rem - 0.0625rem) 0 0;
}

.la-card__footer {
  padding: 0.75rem 1rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 0.0625rem solid rgba(38, 38, 38, 0.125);
}
.la-card__footer:last-child {
  border-radius: 0 0 calc(0.25rem - 0.0625rem) calc(0.25rem - 0.0625rem);
}

.la-card__img {
  width: 100%;
  border-radius: calc(0.25rem - 0.0625rem) calc(0.25rem - 0.0625rem) 0 0;
}

.la-card__img--overlay {
  position: absolute;
  inset: 0;
  padding: 1.25rem;
}

.la-card__img--bottom {
  width: 100%;
  border-radius: 0 0 calc(0.25rem - 0.0625rem) calc(0.25rem - 0.0625rem);
}

.la-modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}
.la-modal.fade .la-modal__dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
.la-modal.show .la-modal__dialog {
  transform: none;
}

.la-modal__dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
@media (min-width: 576px) {
  .la-modal__dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
}

.la-modal__content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #FFF;
  background-clip: padding-box;
  border: 0.0625rem solid rgba(38, 38, 38, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.la-modal__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem;
  border-bottom: 0.0625rem solid #F5F5F5;
  border-top-left-radius: calc(0.3rem - 0.0625rem);
  border-top-right-radius: calc(0.3rem - 0.0625rem);
}

.la-modal__title {
  margin-bottom: 0;
  line-height: 1.5;
}

.la-modal__close {
  float: right;
  font-size: calc(1rem * 1.5);
  font-weight: 700;
  line-height: 1;
  color: #262626;
  text-shadow: 0 1px 0 #FFF;
  opacity: 0.5;
  background-color: transparent;
  border: 0;
  padding: 1rem;
  margin: calc(-1rem / 2) calc(-1rem / 2) calc(-1rem / 2) auto;
}
.la-modal__close:hover {
  color: #262626;
  text-decoration: none;
  opacity: 0.75;
}

.la-modal__body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.la-modal__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 0.0625rem solid #F5F5F5;
  border-bottom-right-radius: calc(0.3rem - 0.0625rem);
  border-bottom-left-radius: calc(0.3rem - 0.0625rem);
}
.la-modal__footer > :not(:first-child) {
  margin-left: 0.25rem;
}
.la-modal__footer > :not(:last-child) {
  margin-right: 0.25rem;
}

.la-modal__backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #262626;
}
.la-modal__backdrop.fade {
  opacity: 0;
}
.la-modal__backdrop.show {
  opacity: 0.5;
}

.la-nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.la-nav__link {
  display: block;
  padding: 0.5rem 1rem;
  color: #069393;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
}
.la-nav__link:hover, .la-nav__link:focus {
  color: rgb(5.4, 132.3, 132.3);
  text-decoration: none;
}
.la-nav__link.disabled {
  color: #757575;
  pointer-events: none;
  cursor: default;
}

.la-nav--tabs {
  border-bottom: 0.0625rem solid #F5F5F5;
}
.la-nav--tabs .la-nav__item {
  margin-bottom: -0.0625rem;
}
.la-nav--tabs .la-nav__link {
  border: 0.0625rem solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.la-nav--tabs .la-nav__link:hover, .la-nav--tabs .la-nav__link:focus {
  border-color: #F9F9F9 #F9F9F9 #F5F5F5;
}
.la-nav--tabs .la-nav__link.disabled {
  color: #757575;
  background-color: transparent;
  border-color: transparent;
}
.la-nav--tabs .la-nav__link.active, .la-nav__item.show .la-nav--tabs .la-nav__link {
  color: #4F4F4F;
  background-color: #FFF;
  border-color: #F5F5F5 #F5F5F5 #FFF;
}

.la-nav--pills .la-nav__link {
  border-radius: 0.25rem;
}
.la-nav--pills .la-nav__link.active,
.la-nav--pills .show > .la-nav__link {
  color: #FFF;
  background-color: #069393;
}

.la-tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  padding: 0.5rem;
  margin: 0;
  background-color: #262626;
  border-radius: 0.25rem;
  color: #FFF;
}

.la-tooltip .la-tooltip__arrow {
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
}

.la-tooltip .la-tooltip__arrow::before {
  content: "";
  position: absolute;
  border-color: transparent;
  border-style: solid;
}

.la-tooltip.bs-tooltip-top .la-tooltip__arrow {
  bottom: 0;
}

.la-tooltip.bs-tooltip-top .la-tooltip__arrow::before {
  margin-top: calc(-1rem * 0.375);
  border-width: 0.375rem 0.375rem 0;
  border-top-color: #262626;
}

.la-tooltip.bs-tooltip-end .la-tooltip__arrow {
  left: 0;
}

.la-tooltip.bs-tooltip-end .la-tooltip__arrow::before {
  margin-left: calc(-1rem * 0.375);
  border-width: 0.375rem 0 0.375rem 0.375rem;
  border-right-color: #262626;
}

.la-tooltip.bs-tooltip-bottom .la-tooltip__arrow {
  top: 0;
}

.la-tooltip.bs-tooltip-bottom .la-tooltip__arrow::before {
  margin-bottom: calc(-1rem * 0.375);
  border-width: 0 0.375rem 0.375rem;
  border-bottom-color: #262626;
}

.la-tooltip.bs-tooltip-start .la-tooltip__arrow {
  right: 0;
}

.la-tooltip.bs-tooltip-start .la-tooltip__arrow::before {
  margin-right: calc(-1rem * 0.375);
  border-width: 0.375rem 0.375rem 0.375rem 0;
  border-left-color: #262626;
}

/* Import required modules */
.la-button--link {
  padding: 0;
  margin-left: 0;
}

.main-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media (min-width: 768px) {
  .main-wrapper {
    flex-direction: row;
  }
}

.content-wrapper {
  flex-grow: 1;
  padding: 0;
  width: 100%;
  background-color: #F9F9F9; /* Set the light gray background (#F9F9F9) from our color system */
}

.home-page .content-wrapper {
  padding-top: calc(var(--la-navbar-height) - 3.5rem);
}
@media (min-width: 768px) {
  .home-page .content-wrapper {
    padding-top: calc(var(--la-navbar-height) - 3rem);
  }
}

.container {
  width: 100%;
  margin: 0 auto;
  padding: 0 0.75rem;
}
@media (min-width: 576px) {
  .container {
    padding: 0 1rem;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 60rem;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 75rem;
  }
}

.custom-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 0 0.5rem;
}
@media (min-width: 576px) {
  .custom-container {
    padding: 0 1rem;
  }
}

.la-search-weather-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  width: 95%;
  max-width: 50rem;
  min-width: 18.75rem;
  margin: 0.5rem auto 0.5rem;
  justify-content: center;
  gap: 0.5rem;
}
.la-search-weather-container > :not(.la-search-weather-container__divider) {
  flex: 1 1 auto;
  min-width: 0;
}
.la-search-weather-container .la-search-locked-preview {
  min-width: 18.75rem;
}
@media (max-width: 575px) {
  .la-search-weather-container {
    flex-direction: column;
  }
  .la-search-weather-container > :not(.la-search-weather-container__divider) {
    width: 100%;
    flex: 0 0 auto;
  }
}
@media (min-width: 576px) {
  .la-search-weather-container {
    flex-direction: row;
    gap: 1rem;
    width: 90%;
    justify-content: center;
    align-content: center;
  }
  .la-search-weather-container .custom-search-bar {
    flex: 1 1 18rem;
    max-width: 30rem;
  }
  .la-search-weather-container .la-search-locked-preview {
    flex: 1 1 18rem;
    max-width: 37.5rem;
  }
  .la-search-weather-container .la-weather-widget--expandable {
    flex: 0 0 auto;
    align-self: center;
  }
  .la-search-weather-container .la-weather-widget--expanded {
    flex: 1 1 16rem;
    max-width: 100%;
    align-self: center;
  }
  .la-search-weather-container .custom-search-bar:first-child:nth-last-child(2) {
    margin: 0;
    max-width: min(30rem, 90%);
  }
}
@media (min-width: 768px) {
  .la-search-weather-container {
    width: 85%;
    flex-wrap: nowrap;
  }
  .la-search-weather-container .custom-search-bar {
    flex: 1 1 20rem;
  }
  .la-search-weather-container .la-search-locked-preview {
    flex: 1 1 20rem;
    max-width: 37.5rem;
  }
  .la-search-weather-container .la-weather-widget--expanded {
    flex: 1 1 18rem;
    max-width: 25rem;
  }
}
@media (min-width: 1200px) {
  .la-search-weather-container {
    width: 70%;
  }
}

.la-search-weather-container__divider {
  width: 1px;
  height: 2.5rem;
  background-color: #BDBDBD;
  display: none;
  flex: 0 0 auto;
}
@media (min-width: 576px) {
  .la-search-weather-container__divider {
    display: block;
  }
}

.la-weather-widget__divider {
  width: 1px;
  height: 2.5rem;
  background-color: #BDBDBD;
  display: none;
}
@media (min-width: 576px) {
  .la-weather-widget__divider {
    display: block;
  }
}

.custom-search-bar {
  width: 100%;
  min-width: 18.75rem;
  margin: 0;
}
@media (min-width: 576px) {
  .custom-search-bar {
    flex: 1;
    max-width: 37.5rem;
  }
}
.custom-search-bar .search-bar-container {
  position: relative;
}
.custom-search-bar .search-bar-container .search-input-wrapper {
  position: relative;
}
.custom-search-bar .search-bar-container .search-input-wrapper input {
  width: 100%;
  padding: 1rem 4.5rem; /* Increased left padding for search button */
  margin: 0.5rem 0;
  box-sizing: border-box;
  border: 0.0625rem solid transparent;
  border-radius: 2rem;
  box-shadow: 0 0.125rem 0.3125rem 0.0625rem rgba(117, 117, 117, 0.78);
  background: #FFF;
  font-size: 1rem;
  height: 4rem; /* Fixed height to accommodate larger icons */
  text-indent: 0; /* Ensure text starts after the search icon */
}
.custom-search-bar .search-bar-container .search-input-wrapper input::-moz-placeholder {
  color: #757575;
  -moz-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.custom-search-bar .search-bar-container .search-input-wrapper input::placeholder {
  color: #757575;
  transition: opacity 0.2s ease;
}
.custom-search-bar .search-bar-container .search-input-wrapper input:hover {
  border: 0.0625rem solid #069393;
}
.custom-search-bar .search-bar-container .search-input-wrapper input:hover::-moz-placeholder {
  opacity: 0.8;
}
.custom-search-bar .search-bar-container .search-input-wrapper input:hover::placeholder {
  opacity: 0.8;
}
.custom-search-bar .search-bar-container .search-input-wrapper input:focus {
  outline: none;
  border: 0.0625rem solid #069393;
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.2);
}
.custom-search-bar .search-bar-container .search-input-wrapper input:focus::-moz-placeholder {
  opacity: 0.6;
}
.custom-search-bar .search-bar-container .search-input-wrapper input:focus::placeholder {
  opacity: 0.6;
}
.custom-search-bar .search-bar-container .search-input-wrapper .search-button {
  position: absolute;
  left: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  color: #FFF;
  background-color: #069393; /* Using brand teal color */
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.2);
  border: none;
  transition: background-color 0.2s ease, transform 0.2s ease;
  padding: 0; /* Remove padding to ensure icon is centered */
  z-index: 2; /* Ensure button is above the input */
  /* Style the search button icon using BEM component-specific class */
}
.custom-search-bar .search-bar-container .search-input-wrapper .search-button .search-button__icon {
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #FFF; /* Ensure icon is white */
  /* Target SVG and its children directly */
}
.custom-search-bar .search-bar-container .search-input-wrapper .search-button .search-button__icon svg, .custom-search-bar .search-bar-container .search-input-wrapper .search-button .search-button__icon svg * {
  color: #FFF;
  stroke: #FFF;
}
.custom-search-bar .search-bar-container .search-input-wrapper .search-button:hover {
  background-color: #07B4B4;
  transform: translateY(-50%) scale(1.05);
}
.custom-search-bar .search-bar-container .search-input-wrapper .search-button:active {
  background-color: #05686C;
  transform: translateY(-50%) scale(0.95);
}
.custom-search-bar .search-bar-container .search-input-wrapper .search-button:focus {
  outline: none;
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.3);
}
.custom-search-bar .search-bar-container .search-input-wrapper #reset-button {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  background-color: transparent;
  border: none;
  cursor: pointer;
  color: #757575;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  transition: color 0.2s ease, transform 0.2s ease;
  z-index: 2; /* Ensure button is above the input */
  /* Style the reset button icon using BEM component-specific class */
}
.custom-search-bar .search-bar-container .search-input-wrapper #reset-button .reset-button__icon {
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 1.5rem;
  width: 1.5rem;
  color: inherit; /* Inherit color from parent */
  /* Target SVG and its children directly */
}
.custom-search-bar .search-bar-container .search-input-wrapper #reset-button .reset-button__icon svg, .custom-search-bar .search-bar-container .search-input-wrapper #reset-button .reset-button__icon svg * {
  color: inherit;
  stroke: currentColor;
}
.custom-search-bar .search-bar-container .search-input-wrapper #reset-button:hover {
  color: #069393;
  transform: translateY(-50%) scale(1.05);
}
.custom-search-bar .search-bar-container .search-input-wrapper #reset-button:active {
  transform: translateY(-50%) scale(0.95);
}
.custom-search-bar .search-bar-container .search-input-wrapper #reset-button:focus {
  outline: none;
}

/* Remove conflicting styles for autocomplete */
/* These styles were overriding our search input styles */
/* All styling for #autocomplete is now handled in the .search-input-wrapper input block */
.listing-card {
  overflow: hidden;
  position: relative;
}

.card {
  border: none;
  box-shadow: none;
}

.la-card__body {
  font-size: 0.75rem;
  background: transparent;
  padding: 0.5rem;
}
@media (min-width: 576px) {
  .la-card__body {
    padding: 0.75rem;
  }
}

.la-card__title {
  font-weight: bold;
  font-size: 0.875rem;
  margin-bottom: 0.25rem;
}
@media (min-width: 576px) {
  .la-card__title {
    font-size: 1rem;
  }
}

.la-card__link {
  color: inherit;
  text-decoration: none;
  font-weight: bold;
}
.la-card__link:hover {
  text-decoration: underline;
}

.la-card__text {
  margin-bottom: 0;
}

.la-card__info-title {
  display: block;
  margin-bottom: 0;
  font-size: 0.625rem;
}

.la-card__info {
  display: block;
  margin-bottom: 0;
  font-size: 0.625rem;
}

.la-card__icon {
  width: 0.75rem;
  height: auto;
  vertical-align: middle;
}
@media (min-width: 576px) {
  .la-card__icon {
    width: 0.875rem;
  }
}

.la-carousel__item img {
  height: 9rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.5rem;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.1);
}
@media (min-width: 576px) {
  .la-carousel__item img {
    height: 10rem;
    box-shadow: 0 0.25rem 0.375rem rgba(38, 38, 38, 0.1);
  }
}
@media (min-width: 768px) {
  .la-carousel__item img {
    height: 10.9375rem;
    box-shadow: 0 0.25rem 0.5rem rgba(38, 38, 38, 0.1);
  }
}

.la-carousel__control-prev-icon,
.la-carousel__control-next-icon {
  background-size: 40%;
  background-position: center;
  opacity: 0;
  transition: opacity 0.15s ease;
}
@media (min-width: 768px) {
  .la-carousel__control-prev-icon,
  .la-carousel__control-next-icon {
    background-size: 50%;
  }
}

.la-carousel:hover .la-carousel__control-prev-icon,
.la-carousel:hover .la-carousel__control-next-icon {
  opacity: 1;
}

@media (hover: none) {
  .la-carousel .la-carousel__control-prev-icon,
  .la-carousel .la-carousel__control-next-icon {
    opacity: 0.7;
  }
}
.la-carousel__indicators {
  margin-bottom: 0.5rem;
}
@media (min-width: 576px) {
  .la-carousel__indicators {
    margin-bottom: 0.625rem;
  }
}

/* Admin Interface Styles
   Following Little Adventures Design System
   Using the Explorers Accessible color system for WCAG compliance */
/* Admin Container */
.admin-container {
  max-width: 80rem;
  margin: 2rem auto;
  padding: 1.5rem;
  background-color: #F9F9F9;
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.admin-container h1 {
  color: var(--la-base-darkest, #262626);
  font-size: 1.75rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--la-base-light, #F5F5F5);
}
.admin-container h2 {
  color: var(--la-base-dark, #4F4F4F);
  font-size: 1.5rem;
  font-weight: 500;
  margin-bottom: 1rem;
}
.admin-container p {
  color: var(--la-base-dark, #4F4F4F);
  margin-bottom: 1rem;
}

/* Admin Table Container (for horizontal scroll) */
.admin-table-container {
  width: 100%;
  overflow-x: auto;
  margin-bottom: 2rem;
  background-color: var(--la-base-lightest, #FFF);
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  -webkit-overflow-scrolling: touch;
}

/* Admin Table Styles */
.admin-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-bottom: 0;
  /* Responsive table */
}
.admin-table thead {
  background-color: var(--la-brand-lightest, #7CC8C8);
}
.admin-table thead th {
  padding: 0.5rem 0.75rem;
  text-align: left;
  font-weight: 600;
  font-size: 0.8125rem;
  color: var(--la-base-darkest, #262626);
  border-bottom: 2px solid var(--la-brand-light, #07B4B4);
  white-space: nowrap;
}
.admin-table tbody tr {
  transition: background-color 0.15s ease;
}
.admin-table tbody tr:hover {
  background-color: rgba(6, 147, 147, 0.05);
}
.admin-table tbody tr:not(:last-child) {
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
}
.admin-table tbody tr.admin-table__row--archived {
  background-color: rgba(249, 249, 249, 0.8);
}
.admin-table tbody tr.admin-table__row--archived:hover {
  background-color: rgba(249, 249, 249, 0.9);
}
.admin-table tbody tr.admin-table__row--archived td {
  color: var(--la-base-medium, #757575);
}
.admin-table tbody tr.admin-table__row--archived .la-badge {
  opacity: 0.9;
}
.admin-table tbody .admin-table__empty-row td {
  text-align: center;
  color: var(--la-base-medium, #757575);
  padding: 2rem 1rem;
  font-style: italic;
}
.admin-table tbody .admin-table__empty-row:hover {
  background-color: transparent;
}
.admin-table tbody td {
  padding: 0.5rem 0.75rem;
  color: var(--la-base-dark, #4F4F4F);
  vertical-align: middle;
  font-size: 0.8125rem;
}
.admin-table tbody td a {
  color: var(--la-brand-primary, #069393);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.15s ease;
}
.admin-table tbody td a:hover {
  color: var(--la-brand-dark, #05686C);
  text-decoration: underline;
}
.admin-table tbody td.admin-table__actions {
  text-align: right;
  white-space: nowrap;
}
.admin-table tbody td.admin-table__actions .la-btn + .la-btn {
  margin-left: 0.5rem;
}
.admin-table tbody td.admin-table__actions .inline-delete-form {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.admin-table thead {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}
.admin-table tbody,
.admin-table tr,
.admin-table td,
.admin-table th {
  display: block;
}
.admin-table tbody tr {
  background: var(--la-base-lightest, #FFF);
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 8px;
  margin-bottom: 0.75rem;
  box-shadow: 0 1px 2px rgba(38, 38, 38, 0.05);
}
.admin-table tbody td {
  display: grid;
  grid-template-columns: minmax(6rem, 8rem) 1fr;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  border: 0;
}
.admin-table tbody td::before {
  content: attr(data-label);
  font-weight: 600;
  color: var(--la-base-dark, #4F4F4F);
}
.admin-table td.admin-table__actions {
  padding-top: 0.5rem;
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
  text-align: left;
}
.admin-table td.admin-table__actions .la-btn {
  margin-left: 0;
}
.admin-table .admin-table__actions-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
}
.admin-table .admin-table__actions-group .inline-delete-form,
.admin-table .admin-table__actions-group .button_to {
  display: inline-flex;
  margin: 0;
  padding: 0;
}
@media (min-width: 768px) {
  .admin-table thead {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
    -webkit-clip-path: none;
            clip-path: none;
    border: 0;
    display: table-header-group;
  }
  .admin-table tbody {
    display: table-row-group;
  }
  .admin-table tr {
    display: table-row;
    margin-bottom: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .admin-table th,
  .admin-table td {
    display: table-cell;
  }
  .admin-table tbody td {
    display: table-cell;
    padding: 0.5rem 0.75rem;
    border: 0;
    font-size: 0.8125rem;
  }
  .admin-table tbody td::before {
    content: none;
  }
  .admin-table th.admin-table__col--actions {
    text-align: center;
  }
  .admin-table td.admin-table__actions {
    text-align: center;
    border-top: 0;
  }
  .admin-table td.admin-table__actions .admin-table__actions-group {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: nowrap;
  }
  .admin-table td.admin-table__actions .admin-table__actions-group > * {
    flex-shrink: 0;
  }
  .admin-table th.admin-table__col--id,
  .admin-table td.admin-table__col--id {
    width: 3rem;
    white-space: nowrap;
  }
  .admin-table th.admin-table__col--type,
  .admin-table td.admin-table__col--type {
    width: 6rem;
    white-space: nowrap;
  }
  .admin-table th.admin-table__col--name,
  .admin-table td.admin-table__col--name {
    max-width: 12rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .admin-table th.admin-table__col--submitter,
  .admin-table td.admin-table__col--submitter {
    max-width: 10rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .admin-table th.admin-table__col--location,
  .admin-table td.admin-table__col--location {
    max-width: 10rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .admin-table th.admin-table__col--created,
  .admin-table td.admin-table__col--created {
    width: 6.5rem;
    white-space: nowrap;
    font-size: 0.75rem;
  }
  .admin-table th.admin-table__col--images,
  .admin-table td.admin-table__col--images {
    text-align: center;
    white-space: nowrap;
    width: 4rem;
  }
  .admin-table th.admin-table__col--enriched,
  .admin-table td.admin-table__col--enriched {
    text-align: center;
    width: 6.5rem;
    font-size: 0.75rem;
    white-space: nowrap;
  }
  .admin-table th.admin-table__col--description,
  .admin-table td.admin-table__col--description,
  .admin-table th.admin-table__col--categories,
  .admin-table td.admin-table__col--categories,
  .admin-table th.admin-table__col--features,
  .admin-table td.admin-table__col--features {
    text-align: center;
    white-space: nowrap;
    width: 5rem;
  }
  .admin-table th.admin-table__col--review,
  .admin-table td.admin-table__col--review {
    text-align: center;
    white-space: nowrap;
    width: 4.5rem;
  }
  .admin-table th.admin-table__col--actions,
  .admin-table td.admin-table__col--actions {
    white-space: nowrap;
    width: 8rem;
  }
  .admin-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background-color: var(--la-brand-lightest, #7CC8C8);
  }
}
.admin-table .la-badge {
  font-size: 0.6875rem;
  padding: 0.125rem 0.375rem;
}
.admin-table .la-btn--sm {
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
}
.admin-table .la-btn--sm .la-admin-table__action-icon {
  width: 0.875rem;
  height: 0.875rem;
}
.admin-table .la-btn--sm span {
  display: none;
}
.admin-table .la-form--review-flag {
  display: flex;
  justify-content: center;
}
.admin-table .la-form--review-flag .la-form__check {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.admin-table .la-form--review-flag .la-form__check-input {
  width: 1rem;
  height: 1rem;
}
.admin-table .la-form--review-flag .la-form__check-label {
  font-size: 0.6875rem;
  margin: 0;
}

/* Admin Modal Styles */
.la-modal--admin .la-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.la-modal--admin .la-modal__header .la-modal__title {
  text-align: left;
  width: auto;
  margin-right: 1rem;
}
.la-modal--admin .la-modal__header .la-modal__header-actions,
.la-modal--admin .la-modal__header .la-modal__header-actions-group {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.la-modal--admin .la-modal__header .la-modal__header-actions .la-btn,
.la-modal--admin .la-modal__header .la-modal__header-actions-group .la-btn {
  margin: 0;
  font-size: 0.875rem;
  padding: 0.375rem 0.75rem;
}
.la-modal--admin .la-form__check-input {
  width: 0.75rem;
  height: 0.75rem;
}
.la-modal--admin .la-form__check-label {
  font-size: 0.675rem;
  display: block;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.la-modal--admin .la-form__input {
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
}
.la-modal--admin .la-btn {
  padding: 0.375rem 1rem;
  font-size: 0.875rem;
}

/* Admin Form Styles */
.admin-form {
  background-color: var(--la-base-lightest, #FFF);
  padding: 1.5rem;
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  margin-bottom: 2rem;
  position: sticky;
  top: 0;
  z-index: 2;
}
.admin-form .form-group {
  margin-bottom: 1.5rem;
}
.admin-form .form-group label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
  color: var(--la-base-darkest, #262626);
}
.admin-form .form-group .form-control {
  display: block;
  width: 100%;
  padding: 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--la-base-darkest, #262626);
  background-color: var(--la-base-lightest, #FFF);
  background-clip: padding-box;
  border: 1px solid var(--la-base-medium, #757575);
  border-radius: 8px;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.admin-form .form-group .form-control:focus {
  border-color: var(--la-brand-primary, #069393);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(6, 147, 147, 0.25);
}
.admin-form .form-group textarea.form-control {
  min-height: 100px;
  resize: vertical;
}
.admin-form .form-group select.form-control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23757575' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  padding-right: 2.5rem;
}
.admin-form .form-group-checkboxes {
  margin-bottom: 1.5rem;
}
.admin-form .form-group-checkboxes .checkbox-item {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
}
.admin-form .form-group-checkboxes .checkbox-item input[type=checkbox] {
  margin-right: 0.5rem;
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid var(--la-base-medium, #757575);
  border-radius: 4px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--la-base-lightest, #FFF);
  cursor: pointer;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
.admin-form .form-group-checkboxes .checkbox-item input[type=checkbox]:checked {
  background-color: var(--la-brand-primary, #069393);
  border-color: var(--la-brand-primary, #069393);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' viewBox='0 0 16 16'%3E%3Cpath d='M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px;
}
.admin-form .form-group-checkboxes .checkbox-item input[type=checkbox]:focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(6, 147, 147, 0.25);
}
.admin-form .form-group-checkboxes .checkbox-item label {
  display: inline;
  margin-bottom: 0;
  font-weight: 400;
}
.admin-form .form-text {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.875rem;
  color: var(--la-base-medium, #757575);
}
.admin-form .error-messages {
  padding: 1rem 1.25rem;
  margin-bottom: 1.5rem;
  border: 1px solid var(--la-danger-border, rgb(243.4, 189.8, 177.4));
  background-color: var(--la-danger-bg, rgb(250.45, 239.73, 237.25));
  color: var(--la-danger-text, #C0472D);
  border-radius: 8px;
}
.admin-form .error-messages h2 {
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--la-danger-text, #C0472D);
  margin-bottom: 0.5rem;
}
.admin-form .error-messages ul {
  list-style-position: inside;
  padding-left: 0;
  margin: 0;
}
.admin-form .error-messages li {
  margin-bottom: 0.25rem;
}
.admin-form .image-upload-container {
  margin-bottom: 1rem;
}
.admin-form .image-upload-field {
  margin-bottom: 0.5rem;
}
.admin-form .existing-images {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
}
.admin-form .existing-images h4 {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--la-base-darkest, #262626);
}
.admin-form .image-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  gap: 1rem;
}
.admin-form .image-item {
  position: relative;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 4px;
  overflow: hidden;
  padding: 0.25rem;
}
.admin-form .image-item .thumbnail {
  display: block;
  width: 100%;
  height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 0.5rem;
}
.admin-form .image-item .image-placeholder {
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--la-base-lighter, #F9F9F9);
  color: var(--la-base-medium, #757575);
  font-size: 0.8rem;
  text-align: center;
  margin-bottom: 0.5rem;
}
.admin-form .image-item .image-actions label {
  font-size: 0.8rem;
  display: flex;
  align-items: center;
}
.admin-form .image-item .image-actions input[type=checkbox] {
  margin-right: 0.3rem;
}
.admin-form .form-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1rem;
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
  flex-direction: column;
  align-items: stretch;
}
@media (min-width: 576px) {
  .admin-form .form-actions {
    flex-direction: row;
    align-items: center;
  }
}

/* Admin Form Three Column Layout */
.admin-form--three-column {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: start;
  max-width: 100%;
  overflow-x: hidden;
  /* Admin Form Image Preview Styles */
}
.admin-form--three-column .admin-form__column-header {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--la-base-light, #F5F5F5);
  color: var(--la-base-darker, #333);
}
.admin-form--three-column .admin-form__errors--full-width,
.admin-form--three-column .admin-form__actions--full-width {
  grid-column: 1/-1;
}
.admin-form--three-column .image-previews {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 1.5rem;
}
.admin-form--three-column .image-preview-item {
  text-align: center;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 4px;
  padding: 0.5rem;
  background-color: var(--la-base-lightest, #FFF);
}
.admin-form--three-column .admin-thumbnail {
  display: block;
  margin-bottom: 5px;
  max-width: 100px;
  max-height: 100px;
  -o-object-fit: contain;
     object-fit: contain;
}
.admin-form--three-column .admin-form__image-actions {
  margin-top: 0.5rem;
}
.admin-form--three-column .admin-form__column,
.admin-form--three-column .admin-form__errors--full-width,
.admin-form--three-column .admin-form__actions--full-width {
  grid-column: auto;
}
@media (min-width: 768px) {
  .admin-form--three-column {
    grid-template-columns: repeat(2, minmax(250px, 1fr));
  }
  .admin-form--three-column .admin-form__column--features {
    grid-column: 1/-1;
  }
}
@media (min-width: 1200px) {
  .admin-form--three-column {
    grid-template-columns: repeat(3, minmax(250px, 1fr));
  }
  .admin-form--three-column .admin-form__column--features {
    grid-column: auto;
  }
}

/* Checkbox Filter Styles */
.la-form__group--checkboxes {
  margin-bottom: 0.75rem;
}
.la-form__group--checkboxes .checkbox-group__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}
.la-form__group--checkboxes .checkbox-group__header .la-form__label {
  margin-bottom: 0;
  font-weight: 600;
  font-size: 0.9rem;
}
.la-form__group--checkboxes .checkbox-group__header .checkbox-filter__actions .la-btn--text {
  padding: 0.1rem 0.2rem;
  font-size: 0.8rem;
  color: var(--la-brand-primary, #069393);
}
.la-form__group--checkboxes .checkbox-group__header .checkbox-filter__actions .la-btn--text:hover {
  text-decoration: underline;
  background-color: transparent;
}
.la-form__group--checkboxes .checkbox-filter__input {
  margin-bottom: 0.5rem;
  font-size: 0.675rem;
  line-height: normal;
}
.la-form__group--checkboxes .checkboxes-container {
  max-height: 14rem;
  min-height: 12rem;
  overflow-y: auto;
  padding: 0.5rem;
  border: 1px solid var(--la-base-light, #F5F5F5);
  border-radius: 0.2rem;
  background-color: var(--la-base-lightest, #FFF);
  display: grid;
  grid-template-columns: 1fr;
  gap: 0 0.5rem;
}
@media (min-width: 576px) {
  .la-form__group--checkboxes .checkboxes-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
.la-form__group--checkboxes .checkboxes-container .la-form__check {
  margin-bottom: 0;
}

/* Admin Actions Bar */
.admin-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
}
.admin-actions .admin-actions-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.admin-actions .admin-actions-left h1 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--la-base-dark, #4F4F4F);
  line-height: 1.2;
  padding: 0;
  border: none;
}
.admin-actions .admin-actions-left h1::after {
  content: "";
  display: block;
  width: 2rem;
  height: 0.1875rem;
  margin-top: 0.25rem;
  background-color: var(--la-brand-primary, #069393);
  border-radius: 0.1875rem;
}
.admin-actions .admin-actions-right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  justify-content: flex-start;
}
.admin-actions .admin-actions-right .la-btn + .la-btn {
  margin-left: 0.5rem;
}
@media (min-width: 768px) {
  .admin-actions {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 1rem;
  }
  .admin-actions .admin-actions-right {
    width: auto;
    justify-content: flex-end;
  }
}

/* Admin Card */
.admin-card {
  background-color: var(--la-base-lightest, #FFF);
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}
.admin-card-header {
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
}
.admin-card-header h3 {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--la-base-darkest, #262626);
  margin: 0;
}
.admin-card-body {
  color: var(--la-base-dark, #4F4F4F);
}
.admin-card-footer {
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
}

/* Admin Grid */
.admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1.5rem;
  margin-bottom: 2rem;
}

/* Admin Pagination */
.admin-pagination {
  margin-top: 1rem;
  padding-top: 0.5rem;
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
  text-align: center;
}
.admin-pagination nav.pagy {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.admin-pagination nav.pagy a {
  color: var(--la-base-dark, #4F4F4F);
  text-decoration: none;
  padding: 0.25rem 0.375rem;
}
.admin-pagination nav.pagy a:hover {
  text-decoration: underline;
  color: var(--la-brand-primary, #069393);
}
.admin-pagination nav.pagy a.current,
.admin-pagination nav.pagy a[aria-current=page] {
  font-weight: 600;
  text-decoration: underline;
  color: var(--la-base-darkest, #262626);
  cursor: default;
}
.admin-pagination nav.pagy a[aria-disabled=true] {
  color: var(--la-base-medium, #757575);
  pointer-events: none;
  text-decoration: none;
}

/* Admin Search Form */
.admin-search {
  position: relative;
  width: 100%;
  max-width: 400px;
}
.admin-search .search-input {
  width: 100%;
  padding: 0.75rem 2.5rem 0.75rem 1rem;
  border: 1px solid var(--la-base-medium, #757575);
  border-radius: 100px;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--la-base-darkest, #262626);
  background-color: var(--la-base-lightest, #FFF);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.admin-search .search-input:focus {
  border-color: var(--la-brand-primary, #069393);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(6, 147, 147, 0.25);
}
.admin-search .search-button {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: inherit;
  opacity: 0.7;
  cursor: pointer;
  padding: 0;
  line-height: 1;
  transition: opacity 0.15s ease;
}
.admin-search .search-button svg {
  width: 1em;
  height: 1em;
  vertical-align: -0.125em;
}
.admin-search .search-button:hover, .admin-search .search-button:focus {
  opacity: 1;
  outline: none;
}

/* Admin Filters */
.admin-filters {
  background-color: var(--la-base-lightest, #FFF);
  border-radius: 8px;
  padding: 1rem;
  margin-bottom: 1.5rem;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  box-shadow: 0 1px 2px rgba(38, 38, 38, 0.05);
}
.admin-filters .la-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 0.75rem 1rem;
  align-items: end;
}
.admin-filters .la-form .la-form__group {
  margin-bottom: 0;
}
.admin-filters .la-form .la-form__actions {
  grid-column: 1/-1;
  display: flex;
  justify-content: flex-end;
  margin-top: 0;
  padding-top: 0;
}
.admin-filters .filters-title {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--la-base-darkest, #262626);
}
.admin-filters .filters-form {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1rem;
}
.admin-filters .filters-form .form-group {
  margin-bottom: 0;
}
.admin-filters .filters-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
}

/* Button Variants */
.la-btn--text-danger {
  color: var(--la-danger-medium, #E25C3D);
  background-color: transparent;
  border-color: transparent;
}
.la-btn--text-danger:hover, .la-btn--text-danger:focus {
  color: var(--la-danger-dark, #C0472D);
  background-color: rgba(241, 155, 133, 0.1);
  text-decoration: none;
}
.la-btn--text-danger:active {
  color: var(--la-danger-dark, #C0472D);
  background-color: rgba(241, 155, 133, 0.2);
}

/* Admin Tabs */
.admin-tabs {
  display: flex;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
  margin-bottom: 1.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-tabs .tab-item {
  padding: 0.75rem 1.25rem;
  color: var(--la-base-dark, #4F4F4F);
  text-decoration: none;
  white-space: nowrap;
  border-bottom: 3px solid transparent;
  transition: all 0.15s ease;
}
.admin-tabs .tab-item:hover {
  color: var(--la-brand-primary, #069393);
  border-bottom-color: var(--la-base-lighter, #F9F9F9);
}
.admin-tabs .tab-item.active {
  color: var(--la-brand-primary, #069393);
  border-bottom-color: var(--la-brand-primary, #069393);
  font-weight: 500;
}

/* Admin Empty State */
.admin-empty-state {
  text-align: center;
  padding: 3rem 1.5rem;
  background-color: var(--la-base-lightest, #FFF);
  border-radius: 8px;
  border: 1px dashed var(--la-base-lighter, #F9F9F9);
}
.admin-empty-state .empty-icon {
  font-size: 3rem;
  color: var(--la-base-light, #F5F5F5);
  margin-bottom: 1rem;
}
.admin-empty-state .empty-title {
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--la-base-dark, #4F4F4F);
  margin-bottom: 0.5rem;
}
.admin-empty-state .empty-description {
  color: var(--la-base-medium, #757575);
  margin-bottom: 1.5rem;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

/* Flash Messages Styling */
.la-flash-messages {
  position: fixed;
  top: 1rem;
  right: 1rem;
  z-index: 1050;
  width: calc(100% - 2.5rem);
  max-width: 400px;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.la-flash-message {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 1.25rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  border: 1px solid transparent;
}
.la-flash-message, .la-flash-message--notice {
  background-color: var(--la-info-bg, rgb(238.32, 242.16, 249.68));
  border-color: var(--la-info-border, rgb(182.6, 201.8, 239.4));
  color: var(--la-info-text, #2B5CAA);
}
.la-flash-message--alert, .la-flash-message--error {
  background-color: var(--la-danger-bg, rgb(250.45, 239.73, 237.25));
  border-color: var(--la-danger-border, rgb(243.4, 189.8, 177.4));
  color: var(--la-danger-text, #C0472D);
}
.la-flash-message--success {
  background-color: var(--la-success-bg, rgb(223.99, 250.31, 250.31));
  border-color: var(--la-success-border, rgb(117.8, 249.4, 249.4));
  color: var(--la-success-text, #05686C);
}
.la-flash-message__content {
  flex-grow: 1;
  margin-right: 1rem;
}
.la-flash-message__close {
  background: none;
  border: none;
  padding: 0.25rem;
  cursor: pointer;
  color: currentColor;
  opacity: 0.7;
  transition: opacity 0.2s ease;
}
.la-flash-message__close:hover {
  opacity: 1;
}
.la-flash-message__close svg {
  width: 16px;
  height: 16px;
}

.admin-submission__summary {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  margin-bottom: 1.5rem;
  color: var(--la-base-medium, #757575);
}

.admin-alert {
  border-radius: 12px;
  padding: 1.25rem;
  margin-bottom: 1.5rem;
  border: 1px solid var(--la-warning-light, #F9D48A);
  background: rgba(249, 212, 138, 0.18);
}

.admin-alert--info {
  border-color: var(--la-info-light, #8FABEE);
  background: rgba(143, 171, 238, 0.15);
}

.admin-submission__grid {
  display: grid;
  gap: 1.5rem;
  margin-top: 2rem;
}

@media (min-width: 992px) {
  .admin-submission__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.admin-definition-list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
}

.admin-definition-list__row {
  display: grid;
  gap: 0.25rem;
}

.admin-definition-list__row dt {
  font-weight: 600;
  color: var(--la-base-dark, #4F4F4F);
}

.admin-definition-list__row dd {
  margin: 0;
  color: var(--la-base-medium, #757575);
}

.admin-location-matches {
  margin-top: 1.5rem;
  display: grid;
  gap: 1rem;
}

.admin-location-options {
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 12px;
  padding: 1rem;
  display: grid;
  gap: 0.75rem;
}

.admin-location-option {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.admin-location-option__input {
  margin-top: 0.35rem;
}

.admin-location-option__content {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.admin-muted {
  color: var(--la-base-medium, #757575);
  font-size: 0.875rem;
}

.admin-approval-actions {
  margin-top: 1rem;
  display: flex;
  justify-content: flex-end;
}

.admin-chip-grid {
  display: grid;
  gap: 1rem;
}

.admin-chip-group {
  display: grid;
  gap: 0.5rem;
}

.admin-chip-group__label {
  font-weight: 600;
}

.admin-chip-group__values {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.admin-duplicate-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.75rem;
}

.admin-duplicate-list__item {
  display: grid;
  gap: 0.25rem;
  background: rgba(249, 212, 138, 0.12);
  border-radius: 10px;
  padding: 0.75rem 1rem;
}

.admin-duplicate-list__actions {
  margin-top: 0.25rem;
}

.admin-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 0.75rem;
}

.admin-gallery__image {
  width: 100%;
  height: 140px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
}

.admin-review-forms {
  display: grid;
  gap: 1.5rem;
  margin-top: 1.5rem;
}

@media (min-width: 992px) {
  .admin-review-forms {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.admin-review-forms__panel {
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 12px;
  padding: 1.5rem;
  background: var(--la-base-lightest, #FFF);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  transition: box-shadow 0.2s ease;
}
.admin-review-forms__panel:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.admin-review-forms__panel h2 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--la-base-darkest, #262626);
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
}
.admin-review-forms__panel .la-form__group {
  margin-bottom: 1rem;
}
.admin-review-forms__panel .la-btn {
  min-width: 180px;
}

/* Enhanced duplicate warnings card for edit_form */
.la-card--warning {
  border: 1px solid var(--la-warning-medium, rgb(248.4, 211.2, 139.2));
  background: linear-gradient(135deg, rgba(249, 212, 138, 0.08) 0%, rgba(249, 212, 138, 0.02) 100%);
  box-shadow: 0 2px 8px rgba(244, 182, 62, 0.12);
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.la-card--warning .la-card__body h2 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--la-warning-dark, #DB9C24);
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
}
.la-card--warning .la-card__body h2::before {
  content: "⚠️";
  font-size: 1.25rem;
}
.la-card--warning .la-card__body .admin-muted {
  color: var(--la-base-dark, #4F4F4F);
  margin-bottom: 1rem;
  font-size: 0.9375rem;
}

/* Improved duplicate list items */
.admin-duplicate-list__item {
  background: var(--la-base-lightest, #FFF);
  border: 1px solid var(--la-warning-light, rgb(252.6, 237.8, 208.2));
  border-left: 3px solid var(--la-warning-medium, #F4B63E);
  border-radius: 8px;
  padding: 1rem;
  gap: 0.5rem;
  transition: all 0.2s ease;
}
.admin-duplicate-list__item:hover {
  border-left-color: var(--la-warning-dark, #DB9C24);
  box-shadow: 0 2px 6px rgba(244, 182, 62, 0.15);
  transform: translateX(2px);
}
.admin-duplicate-list__item strong {
  color: var(--la-base-darkest, #262626);
  font-size: 1rem;
}
.admin-duplicate-list__item .admin-duplicate-list__actions {
  margin-top: 0.5rem;
}
.admin-duplicate-list__item .admin-duplicate-list__actions .la-btn {
  font-size: 0.8125rem;
  padding: 0.25rem 0.75rem;
}

/* Admin Bulk Actions */
.admin-bulk-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  background-color: var(--la-base-lightest, #FFF);
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 0.5rem;
}
.admin-bulk-actions__count {
  font-size: 0.875rem;
  color: var(--la-base-medium, #757575);
  min-width: 6rem;
}

/* Checkbox column styling */
.admin-table__col--checkbox {
  width: 2.5rem;
  text-align: center;
  padding: 0.5rem !important;
}
.admin-table__col--checkbox .la-form__check-input {
  margin: 0;
  cursor: pointer;
}

.favourites-page {
  padding: 1rem;
}

.la-venue-form [hidden] {
  display: none !important;
}

.admin-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 2rem 1.5rem;
  box-shadow: none;
}

.admin-actions {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
}
@media (min-width: 48rem) {
  .admin-actions {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 2rem;
  }
}

.admin-actions .admin-actions-left {
  align-items: flex-start;
}

@media (prefers-reduced-motion: reduce) {
  .la-venue-form * {
    animation: none !important;
    transition: none !important;
  }
}
.admin-actions-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.admin-actions-left h1 {
  font-size: 1.75rem;
  font-weight: 700;
  margin: 0;
  color: var(--la-base-darkest, #262626);
  letter-spacing: -0.02em;
  line-height: 1.2;
}
@media (min-width: 48rem) {
  .admin-actions-left h1 {
    font-size: 2.25rem;
  }
}

.admin-muted {
  font-size: 0.95rem;
  color: var(--la-base-medium, #757575);
  margin: 0;
  line-height: 1.5;
  max-width: 42rem;
}

.admin-actions-right {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.admin-actions-right .la-btn--text {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--la-success-medium, #069393);
  padding: 0.6rem 1.25rem;
  border-radius: 8px;
  transition: all 0.2s ease;
  border: 1px solid transparent;
}
.admin-actions-right .la-btn--text:hover {
  background-color: rgba(6, 147, 147, 0.08);
  border-color: rgba(6, 147, 147, 0.2);
  text-decoration: none;
}
.admin-actions-right .la-btn--text:active {
  background-color: rgba(6, 147, 147, 0.12);
}

.la-venue-form__category-grid .la-venue-form__photo-group {
  grid-column: 1/-1;
}

.la-venue-form {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  max-width: 1400px;
  margin: 0 auto;
}

.la-venue-form__type-selector {
  margin: 0;
  padding: 3rem 2rem;
  text-align: center;
  background: var(--la-base-lightest, #FFF);
  border-radius: 16px;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  box-shadow: 0 2px 8px rgba(79, 79, 79, 0.04);
  align-self: center;
  width: 100%;
}

.la-venue-form__type-selector-title {
  font-size: 1.75rem;
  font-weight: 700;
  margin: 0 0 0.75rem;
  color: var(--la-base-darkest, #262626);
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.la-venue-form__type-selector-help {
  font-size: 0.95rem;
  color: var(--la-base-medium, #757575);
  margin: 0 0 2rem;
  line-height: 1.5;
}

.la-venue-form__type-selector .la-form__group {
  max-width: 400px;
  margin: 0 auto;
  text-align: left;
}

.la-venue-form__type-selector .la-form__input {
  font-size: 1rem;
  padding: 0.75rem 1rem;
  cursor: pointer;
}

/* Scout Source Banner - displayed for AI-discovered events in admin */
.la-venue-form__scout-banner {
  max-width: 1000px;
  margin: 0 auto 1.5rem;
  padding: 1rem 1.5rem;
  background: linear-gradient(135deg, rgba(74, 122, 216, 0.08) 0%, rgba(74, 122, 216, 0.03) 100%);
  border: 1px solid rgba(74, 122, 216, 0.2);
  border-radius: 0.5rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
}
@media (max-width: 48rem) {
  .la-venue-form__scout-banner {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }
}

.la-venue-form__scout-banner-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}

.la-venue-form__scout-banner-icon {
  font-size: 1.25rem;
}

.la-venue-form__scout-banner-title {
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--la-info-dark, #2B5CAA);
}

.la-venue-form__scout-banner-source {
  font-size: 0.8rem;
  color: var(--la-base-medium, #757575);
  padding-left: 0.5rem;
  border-left: 1px solid var(--la-base-lighter, #F9F9F9);
}

.la-venue-form__scout-banner-links {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.la-venue-form__scout-banner-link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.35rem 0.75rem;
  background: var(--la-base-lightest, #fff);
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 0.25rem;
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--la-info-dark, #2B5CAA);
  text-decoration: none;
  transition: all 0.15s ease;
}
.la-venue-form__scout-banner-link:hover {
  background: var(--la-info-light, rgba(74, 122, 216, 0.1));
  border-color: var(--la-info-medium, #4A7AD8);
  text-decoration: none;
}

.la-venue-form__scout-banner-link-icon {
  font-size: 0.9rem;
}

.la-venue-form__scout-banner-meta {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-left: auto;
  font-size: 0.8rem;
  color: var(--la-base-dark, #4F4F4F);
}
@media (max-width: 48rem) {
  .la-venue-form__scout-banner-meta {
    margin-left: 0;
    width: 100%;
  }
}

.la-venue-form__scout-banner-meta-item {
  white-space: nowrap;
}
.la-venue-form__scout-banner-meta-item strong {
  color: var(--la-base-medium, #757575);
  font-weight: 500;
}

/* AI Enrichment Suggestions */
.la-venue-form__scout-banner-suggestions {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding-top: 0.75rem;
  margin-top: 0.75rem;
  border-top: 1px dashed rgba(74, 122, 216, 0.3);
}

.la-venue-form__scout-banner-suggestions-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--la-base-medium, #757575);
  margin-right: 0.25rem;
}

.la-venue-form__scout-banner-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}

.la-venue-form__scout-chip {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.625rem;
  border-radius: 1rem;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.2;
}

.la-venue-form__scout-chip--price {
  background: rgba(6, 147, 147, 0.15);
  color: var(--la-success-dark, #05686C);
  border: 1px solid rgba(6, 147, 147, 0.3);
}

.la-venue-form__scout-chip--type {
  background: rgba(244, 182, 62, 0.15);
  color: var(--la-warning-dark, #DB9C24);
  border: 1px solid rgba(244, 182, 62, 0.3);
}

.la-venue-form__scout-chip--age {
  background: rgba(74, 122, 216, 0.15);
  color: var(--la-info-dark, #2B5CAA);
  border: 1px solid rgba(74, 122, 216, 0.3);
}

.la-venue-form__scout-chip--amenity {
  background: rgba(6, 147, 147, 0.15);
  color: var(--la-brand-dark, #05686C);
  border: 1px solid rgba(6, 147, 147, 0.3);
}

.la-venue-form__scout-chip--access {
  background: rgba(226, 92, 61, 0.15);
  color: var(--la-danger-dark, #C0472D);
  border: 1px solid rgba(226, 92, 61, 0.3);
}

.la-venue-form__scout-chip--dietary {
  background: rgba(219, 156, 36, 0.15);
  color: var(--la-warning-darkest, #9B6B12);
  border: 1px solid rgba(219, 156, 36, 0.3);
}

.la-venue-form__scout-chip--location {
  background: rgba(43, 92, 170, 0.15);
  color: var(--la-brand-dark, #05686C);
  border: 1px solid rgba(43, 92, 170, 0.3);
  cursor: pointer;
  transition: all 0.2s ease;
}
.la-venue-form__scout-chip--location:hover {
  background: rgba(43, 92, 170, 0.25);
  border-color: rgba(43, 92, 170, 0.5);
}

.la-venue-form__scout-chip--applied {
  background: rgba(6, 147, 147, 0.2);
  color: var(--la-success-dark, #05686C);
  border-color: rgba(6, 147, 147, 0.4);
}

.la-venue-form__main-content {
  animation: fadeInUp 0.4s ease-out;
}

.la-venue-form__grid {
  display: grid;
  gap: 2.5rem;
  align-items: stretch;
}

.la-venue-form__column {
  display: grid;
  gap: 1.5rem;
  align-content: start;
  background: var(--la-base-lightest, #FFF);
  border-radius: 12px;
  padding: 1.75rem;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
}

.la-venue-form__column-title {
  font-size: 0.75rem;
  font-weight: 600;
  margin: 0 0 0.75rem;
  padding: 0;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--la-base-medium, #757575);
  border: none;
}

.la-venue-form__section-title {
  margin: 0 0 0.75rem;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--la-base-darkest, #262626);
  letter-spacing: -0.01em;
}

.la-venue-form__section-help {
  margin: -0.5rem 0 0.75rem;
  color: var(--la-base-medium, #757575);
  font-size: 0.8rem;
  line-height: 1.5;
}

.la-venue-form .la-form__input {
  font-size: 0.9rem;
  line-height: 1.4;
  padding: 0.6rem 0.75rem;
  min-height: 2.5rem;
  border: 1px solid var(--la-base-medium-light, #BDBDBD);
  border-radius: 10px;
  background: var(--la-base-lightest, #FFF);
  box-shadow: 0 1px 3px rgba(79, 79, 79, 0.04);
  transition: all 0.2s ease;
  font-weight: 500;
}
.la-venue-form .la-form__input:hover {
  border-color: var(--la-success-light, #07B4B4);
  box-shadow: 0 2px 6px rgba(6, 147, 147, 0.08);
}
.la-venue-form .la-form__input:focus {
  outline: none;
  border-color: var(--la-success-medium, #069393);
  box-shadow: 0 2px 8px rgba(6, 147, 147, 0.15), 0 0 0 3px rgba(6, 147, 147, 0.1);
}
.la-venue-form .la-form__input[type=datetime-local],
.la-venue-form .la-form__input[type=date],
.la-venue-form .la-form__input[type=time],
.la-venue-form .la-form__input[type=text][data-flatpickr-target] {
  min-height: 2.5rem;
  padding: 0.6rem 0.75rem;
  line-height: 1.4;
  border-radius: 10px;
  border: 1px solid var(--la-base-medium-light, #BDBDBD);
  background: var(--la-base-lightest, #FFF);
  box-shadow: 0 1px 3px rgba(79, 79, 79, 0.04);
  transition: all 0.2s ease;
  cursor: pointer;
  font-weight: 500;
}
.la-venue-form .la-form__input[type=datetime-local]:hover,
.la-venue-form .la-form__input[type=date]:hover,
.la-venue-form .la-form__input[type=time]:hover,
.la-venue-form .la-form__input[type=text][data-flatpickr-target]:hover {
  border-color: var(--la-success-light, #07B4B4);
  box-shadow: 0 2px 6px rgba(6, 147, 147, 0.08);
}
.la-venue-form .la-form__input[type=datetime-local]:focus,
.la-venue-form .la-form__input[type=date]:focus,
.la-venue-form .la-form__input[type=time]:focus,
.la-venue-form .la-form__input[type=text][data-flatpickr-target]:focus {
  outline: none;
  border-color: var(--la-success-medium, #069393);
  box-shadow: 0 2px 8px rgba(6, 147, 147, 0.15), 0 0 0 3px rgba(6, 147, 147, 0.1);
}
.la-venue-form .la-form__input[type=datetime-local]::-webkit-calendar-picker-indicator,
.la-venue-form .la-form__input[type=date]::-webkit-calendar-picker-indicator,
.la-venue-form .la-form__input[type=time]::-webkit-calendar-picker-indicator,
.la-venue-form .la-form__input[type=text][data-flatpickr-target]::-webkit-calendar-picker-indicator {
  cursor: pointer;
  opacity: 0.6;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
  filter: brightness(0) saturate(100%) invert(47%) sepia(12%) saturate(1000%) hue-rotate(120deg) brightness(95%) contrast(90%);
}
.la-venue-form .la-form__input[type=datetime-local]::-webkit-calendar-picker-indicator:hover,
.la-venue-form .la-form__input[type=date]::-webkit-calendar-picker-indicator:hover,
.la-venue-form .la-form__input[type=time]::-webkit-calendar-picker-indicator:hover,
.la-venue-form .la-form__input[type=text][data-flatpickr-target]::-webkit-calendar-picker-indicator:hover {
  opacity: 1;
  filter: brightness(0) saturate(100%) invert(58%) sepia(66%) saturate(450%) hue-rotate(120deg) brightness(92%) contrast(89%);
}
.la-venue-form textarea.la-form__input {
  min-height: 5.5rem;
  resize: vertical;
}
.la-venue-form select.la-form__input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2334A853' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  padding-right: 2.5rem;
  cursor: pointer;
}
.la-venue-form select.la-form__input:hover {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2334A853' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E");
}
.la-venue-form .la-form__label {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--la-base-darkest, #262626);
  margin-bottom: 0.375rem;
  letter-spacing: -0.01em;
}
.la-venue-form .la-form__help-text {
  font-size: 0.75rem;
  color: var(--la-base-medium, #757575);
  line-height: 1.5;
  margin-top: 0.375rem;
}
.la-venue-form .la-form__group {
  display: flex;
  flex-direction: column;
}

.la-venue-form__category-grid {
  display: grid;
  gap: 1.25rem;
}

.la-venue-form__photo-group {
  margin-top: 0.5rem;
}

.la-image-uploader.la-venue-form__uploader {
  display: grid;
  gap: 0.75rem;
  background: linear-gradient(135deg, rgba(6, 147, 147, 0.02) 0%, white 100%);
  border: 1px dashed var(--la-base-medium-light, #BDBDBD);
  border-radius: 10px;
  padding: 1.25rem;
  box-shadow: 0 1px 3px rgba(79, 79, 79, 0.04) inset;
  transition: all 0.2s ease;
}
.la-image-uploader.la-venue-form__uploader:hover {
  border-color: var(--la-success-light, #07B4B4);
  background: linear-gradient(135deg, rgba(6, 147, 147, 0.04) 0%, white 100%);
  box-shadow: 0 1px 4px rgba(6, 147, 147, 0.08) inset;
}

.la-venue-form__image-error {
  color: var(--la-danger-medium, #E25C3D);
  font-size: 0.8rem;
  margin: 0;
  padding: 0.5rem 0.75rem;
  background: rgba(241, 155, 133, 0.1);
  border-radius: 8px;
  border-left: 3px solid var(--la-danger-medium, #E25C3D);
  box-shadow: 0 1px 3px rgba(226, 92, 61, 0.1);
}

.la-venue-form__image-previews {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
  gap: 0.75rem;
}

.la-venue-form__matches {
  border: 1px dashed var(--la-base-lighter, #F9F9F9);
  border-radius: 12px;
  padding: 1rem;
  display: grid;
  gap: 0.75rem;
  background: var(--la-base-lightest, #FFF);
}

.la-venue-form__matches-help {
  margin: 0;
  color: var(--la-base-medium, #757575);
  font-size: 0.875rem;
}

.la-venue-form__matches-list {
  display: grid;
  gap: 0.75rem;
}

.la-venue-form__match-option {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 12px;
  background: var(--la-base-lightest, #FFF);
}
.la-venue-form__match-option:hover {
  border-color: var(--la-brand-light, #07B4B4);
}

.la-venue-form__match-option-input {
  margin-top: 0.3rem;
}

.la-venue-form__match-option-content {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.la-venue-form__actions {
  display: flex;
  justify-content: center;
  gap: 0.75rem;
  padding: 2.5rem 0 1.5rem;
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
}
.la-venue-form__actions .la-btn {
  padding: 0.75rem 2rem;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  border-radius: 10px;
  transition: all 0.2s ease;
  min-width: 180px;
}
.la-venue-form__actions .la-btn--primary {
  box-shadow: 0 2px 8px rgba(6, 147, 147, 0.15);
}
.la-venue-form__actions .la-btn--primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(6, 147, 147, 0.25);
}
.la-venue-form__actions .la-btn--primary:active {
  transform: translateY(0);
}
.la-venue-form__actions .la-btn--secondary:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}
.la-venue-form__actions .la-btn--secondary:active {
  transform: translateY(0);
}

.la-venue-form__column--primary {
  background: var(--la-base-lightest, #FFF);
  border-radius: 12px;
  padding: 1.75rem;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
}

.la-venue-form__contact-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  gap: 0.75rem;
  padding: 1rem;
  background: linear-gradient(135deg, rgba(249, 249, 249, 0.3) 0%, rgba(249, 249, 249, 0.1) 100%);
  border-radius: 10px;
  border: 1px dashed var(--la-base-medium-light, #BDBDBD);
}
.la-venue-form__contact-grid .la-form__group {
  margin: 0;
}

.la-venue-form__contact-full {
  grid-column: 1/-1;
}

.la-venue-form__event-toggle {
  margin-top: 0;
  padding: 0.75rem 1rem;
  background: linear-gradient(135deg, rgba(6, 147, 147, 0.04) 0%, rgba(249, 249, 249, 0.2) 100%);
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 10px;
  box-shadow: 0 1px 3px rgba(79, 79, 79, 0.04);
  transition: all 0.2s ease;
}
.la-venue-form__event-toggle:hover {
  border-color: var(--la-success-light, #07B4B4);
  background: linear-gradient(135deg, rgba(6, 147, 147, 0.06) 0%, rgba(249, 249, 249, 0.25) 100%);
}
.la-venue-form__event-toggle .la-form__check {
  margin: 0;
}
.la-venue-form__event-toggle .la-form__check-label {
  font-size: 0.85rem;
  font-weight: 500;
}

.la-venue-form__address-grid {
  display: grid;
  gap: 0.75rem;
}
.la-venue-form__address-grid .la-form__group {
  margin: 0;
}

.la-venue-form__address-full {
  grid-column: 1/-1;
}

@media (min-width: 40rem) {
  .la-venue-form__address-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .la-venue-form__address-grid .la-venue-form__address-full {
    grid-column: 1/-1;
  }
}
@media (min-width: 48rem) {
  .la-venue-form__grid {
    grid-template-columns: 1.2fr 1fr;
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
  }
  .la-venue-form__category-grid {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 75rem) {
  .la-venue-form__grid {
    grid-template-columns: 1.3fr 1fr;
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
.la-venue-form__category-group {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  align-content: start;
  animation: fadeInUp 0.3s ease-out;
}

.la-venue-form__category-group > .la-venue-form__section-title {
  grid-column: 1/-1;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
}

.la-venue-form__category-group > .la-form__group {
  grid-column: 1/-1;
}

@media (min-width: 48rem) {
  .la-venue-form__category-group {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .la-venue-form__category-group .la-venue-form__checkbox-group {
    width: 100%;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.la-venue-form__checkbox-group {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0;
}
.la-venue-form__checkbox-group .checkbox-group__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}
.la-venue-form__checkbox-group .checkbox-group__header .la-form__label {
  margin-bottom: 0;
  font-weight: 600;
  font-size: 0.85rem;
  color: var(--la-base-darkest, #262626);
}
.la-venue-form__checkbox-group .checkbox-group__header .checkbox-filter__actions {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.la-venue-form__checkbox-group .checkbox-group__header .checkbox-filter__actions .checkbox-filter__divider {
  color: var(--la-base-medium-light, #BDBDBD);
  font-size: 0.7rem;
}
.la-venue-form__checkbox-group .checkbox-group__header .checkbox-filter__actions .la-btn--text {
  padding: 0.2rem 0.35rem;
  font-size: 0.7rem;
  color: var(--la-success-medium, #069393);
  font-weight: 500;
}
.la-venue-form__checkbox-group .checkbox-group__header .checkbox-filter__actions .la-btn--text:hover {
  text-decoration: underline;
  background-color: rgba(6, 147, 147, 0.05);
  border-radius: 4px;
}
.la-venue-form__checkbox-group .checkbox-filter__input {
  margin-bottom: 0.5rem;
  font-size: 0.8rem;
  line-height: 1.4;
  border-radius: 6px;
}

.la-venue-form__checkboxes {
  max-height: 13rem;
  min-height: 10rem;
  overflow-y: auto;
  padding: 0.75rem;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(249, 249, 249, 0.2) 0%, white 100%);
  box-shadow: 0 1px 3px rgba(79, 79, 79, 0.04) inset;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.35rem 0.5rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.la-venue-form__checkboxes:hover {
  border-color: var(--la-success-light, #07B4B4);
}
.la-venue-form__checkboxes::-webkit-scrollbar {
  width: 6px;
}
.la-venue-form__checkboxes::-webkit-scrollbar-track {
  background: var(--la-base-lighter, #F9F9F9);
  border-radius: 3px;
}
.la-venue-form__checkboxes::-webkit-scrollbar-thumb {
  background: var(--la-base-medium-light, #BDBDBD);
  border-radius: 3px;
}
.la-venue-form__checkboxes::-webkit-scrollbar-thumb:hover {
  background: var(--la-base-medium, #757575);
}
@media (min-width: 48rem) {
  .la-venue-form__checkboxes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.la-venue-form__checkboxes .la-form__check {
  margin: 0;
  position: static;
  padding: 0.3rem 0.5rem 0.3rem 0.6rem;
  border-radius: 6px;
  transition: all 0.15s ease;
  display: flex;
  align-items: flex-start;
  gap: 0.45rem;
}
.la-venue-form__checkboxes .la-form__check:hover {
  background-color: rgba(6, 147, 147, 0.06);
  transform: translateX(2px);
}
.la-venue-form__checkboxes .la-form__check .la-form__check-label {
  font-size: 0.75rem;
  color: var(--la-base-dark, #4F4F4F);
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
  line-height: 1.2;
  padding-top: 0.05rem;
}
.la-venue-form__checkboxes .la-form__check-input {
  position: static;
  width: 0.85rem;
  height: 0.85rem;
  cursor: pointer;
  accent-color: var(--la-success-medium, #069393);
  flex-shrink: 0;
  margin: 0;
  margin-top: 0.05rem;
}

.vs-page {
  max-width: 1400px;
  margin: 0 auto;
  padding: 2rem 1.5rem 3rem;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

.vs-page__header {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
}
@media (min-width: 48rem) {
  .vs-page__header {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 2rem;
  }
}
.vs-page__header > div {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.vs-page__header .la-btn--primary.la-btn--lg {
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(6, 147, 147, 0.15);
  transition: all 0.2s ease;
  min-width: 260px;
}
.vs-page__header .la-btn--primary.la-btn--lg:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(6, 147, 147, 0.25);
}
.vs-page__header .la-btn--primary.la-btn--lg:active {
  transform: translateY(0);
}
@media (min-width: 48rem) {
  .vs-page__header .la-btn--primary.la-btn--lg {
    align-self: center;
  }
}

.vs-page__title {
  font-size: 1.75rem;
  font-weight: 700;
  margin: 0;
  color: var(--la-base-darkest, #262626);
  letter-spacing: -0.02em;
  line-height: 1.2;
}
@media (min-width: 48rem) {
  .vs-page__title {
    font-size: 2.25rem;
  }
}

.vs-page__summary {
  font-size: 0.95rem;
  color: var(--la-base-medium, #757575);
  margin: 0;
  line-height: 1.5;
  max-width: 42rem;
}

.vs-page__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  color: var(--la-base-medium, #757575);
}

.vs-page__type {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.vs-page__timestamp {
  font-size: 0.875rem;
}

.vs-form {
  display: block;
  background: var(--la-base-lightest, #FFF);
  border-radius: 16px;
  padding: 2rem;
  box-shadow: 0 12px 32px rgba(15, 20, 31, 0.08);
  border: 1px solid var(--la-base-lighter, #F9F9F9);
}

.vs-form__grid {
  display: grid;
  gap: 2rem;
}

@media (min-width: 992px) {
  .vs-form__grid {
    grid-template-columns: 2fr 1fr;
  }
}
.vs-form__section {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.vs-form__section + .vs-form__section {
  margin-top: 2rem;
}

.vs-form__section-title {
  font-size: 1.25rem;
  margin: 0;
  font-weight: 600;
}

.vs-form__two-column {
  display: grid;
  gap: 1rem;
}

@media (min-width: 640px) {
  .vs-form__two-column {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.vs-form__address-grid {
  display: grid;
  gap: 1rem;
}

.vs-form__address-full {
  grid-column: 1/-1;
}

@media (min-width: 640px) {
  .vs-form__address-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .vs-form__address-grid > .la-form__group:nth-child(3) {
    grid-column: 1;
  }
  .vs-form__address-grid > .la-form__group:nth-child(4) {
    grid-column: 2;
  }
  .vs-form__address-grid > .la-form__group:nth-child(5) {
    grid-column: 1;
  }
  .vs-form__address-grid > .la-form__group:nth-child(6) {
    grid-column: 2;
  }
}
.vs-form__match {
  background: var(--la-base-lightest, #FFF);
  border: 1px dashed var(--la-base-lighter, #F9F9F9);
  border-radius: 12px;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.vs-form__match-empty {
  margin: 0;
  color: var(--la-base-medium, #757575);
  font-size: 0.9rem;
}

.vs-form__image-error {
  color: var(--la-danger-medium, #E25C3D);
  font-size: 0.875rem;
  margin-top: 0.5rem;
}

.vs-form__preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 0.75rem;
}

.vs-form__preview-item {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
}

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

.vs-form__actions {
  margin-top: 2.5rem;
  display: flex;
  justify-content: flex-end;
}

.vs-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.vs-list__item {
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 14px;
  padding: 1.75rem;
  display: grid;
  gap: 1.25rem;
  background: var(--la-base-lightest, #FFF);
  transition: all 0.2s ease;
}
.vs-list__item:hover {
  border-color: var(--la-base-medium-light, #BDBDBD);
  box-shadow: 0 4px 12px rgba(79, 79, 79, 0.06);
  transform: translateY(-1px);
}
@media (min-width: 768px) {
  .vs-list__item {
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1.5rem;
  }
}

.vs-list__meta {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  font-size: 0.85rem;
}
@media (min-width: 768px) {
  .vs-list__meta {
    min-width: 140px;
  }
}

.vs-list__type {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--la-base-medium, #757575);
}

.vs-list__body {
  flex: 1;
}

.vs-list__title {
  margin: 0 0 0.5rem;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.3;
}
.vs-list__title a {
  color: var(--la-base-darkest, #262626);
  text-decoration: none;
  transition: color 0.2s ease;
}
.vs-list__title a:hover {
  color: var(--la-success-medium, #069393);
}

.vs-list__description {
  margin: 0;
  font-size: 0.9rem;
  color: var(--la-base-medium, #757575);
  line-height: 1.5;
}

@media (min-width: 768px) {
  .vs-list__aside {
    text-align: right;
  }
}

.vs-list__timestamp {
  margin: 0;
  font-size: 0.8rem;
  color: var(--la-base-medium, #757575);
  line-height: 1.4;
}

.vs-pagination {
  margin-top: 2rem;
  display: flex;
  justify-content: center;
}

.vs-empty {
  border: 2px dashed var(--la-base-lighter, #F9F9F9);
  border-radius: 16px;
  padding: 4rem 2rem;
  text-align: center;
  background: linear-gradient(135deg, rgba(249, 249, 249, 0.2) 0%, white 100%);
  display: grid;
  gap: 1.25rem;
  justify-items: center;
}

.vs-empty__icon {
  font-size: 3.5rem;
  margin: 0;
  line-height: 1;
}

.vs-empty__title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--la-base-darkest, #262626);
  letter-spacing: -0.01em;
}

.vs-empty__message {
  margin: 0 0 0.5rem;
  font-size: 0.95rem;
  color: var(--la-base-medium, #757575);
  line-height: 1.5;
  max-width: 32rem;
}

.vs-empty .la-btn--secondary {
  margin-top: 0.5rem;
  padding: 0.75rem 2rem;
  font-size: 0.95rem;
  font-weight: 600;
  border-radius: 10px;
  transition: all 0.2s ease;
}
.vs-empty .la-btn--secondary:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(79, 79, 79, 0.1);
}

.vs-panel {
  border-radius: 14px;
  padding: 1.5rem;
  border: 1px solid var(--la-warning-light, #F9D48A);
  background: rgba(249, 212, 138, 0.15);
}

.vs-panel--notice {
  border-color: var(--la-warning-medium, #F4B63E);
  background: rgba(249, 212, 138, 0.18);
}

.vs-panel__title {
  margin-top: 0;
  font-size: 1.2rem;
}

.vs-panel__body {
  margin: 0;
  color: var(--la-base-dark, #4F4F4F);
}

.vs-show__grid {
  display: grid;
  gap: 1.5rem;
}

@media (min-width: 992px) {
  .vs-show__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.vs-definition-list {
  margin: 0;
  display: grid;
  gap: 0.75rem;
}

.vs-definition-list__row {
  display: grid;
  gap: 0.25rem;
}

.vs-definition-list__row dt {
  font-weight: 600;
  color: var(--la-base-dark, #4F4F4F);
}

.vs-definition-list__row dd {
  margin: 0;
  color: var(--la-base-medium, #757575);
}

.vs-data-grid {
  display: grid;
  gap: 1rem;
}

.vs-data-grid__item {
  display: grid;
  gap: 0.5rem;
}

.vs-data-grid__label {
  font-weight: 600;
}

.vs-data-grid__values {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.vs-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 1rem;
}

.vs-gallery__item {
  border-radius: 14px;
  overflow: hidden;
  background: var(--la-base-lightest, #FFF);
  border: 1px solid var(--la-base-lighter, #F9F9F9);
}

.vs-gallery__image {
  width: 100%;
  height: 160px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.vs-data-grid__values .la-badge {
  font-size: 0.8rem;
}

.la-venue-form__selection-banner {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem 1.25rem;
  background: linear-gradient(135deg, rgba(6, 147, 147, 0.08) 0%, rgba(7, 180, 180, 0.04) 100%);
  border: 1px solid rgba(6, 147, 147, 0.3);
  border-radius: 12px;
  animation: slideInDown 0.4s ease-out;
}

.la-venue-form__selection-banner-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.la-venue-form__selection-banner-copy {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.la-venue-form__selection-banner-copy strong {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--la-base-darkest, #262626);
}

.la-venue-form__selection-banner-help {
  font-size: 0.85rem;
  color: var(--la-base-medium, #757575);
  line-height: 1.4;
}

.la-venue-form__checkmark {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: block;
  stroke-width: 2;
  stroke: var(--la-success-medium, #069393);
  stroke-miterlimit: 10;
  box-shadow: inset 0px 0px 0px var(--la-success-medium, #069393);
  animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both;
}

.la-venue-form__checkmark-circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: var(--la-success-medium, #069393);
  fill: #fff;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

.la-venue-form__checkmark-check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes scale {
  0%, 100% {
    transform: none;
  }
  50% {
    transform: scale3d(1.1, 1.1, 1);
  }
}
@keyframes fill {
  100% {
    box-shadow: inset 0px 0px 0px 30px var(--la-success-medium, #069393);
  }
}
@keyframes slideInDown {
  from {
    opacity: 0;
    transform: translateY(-0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.la-venue-form__errors {
  background: linear-gradient(135deg, rgba(226, 92, 61, 0.08) 0%, rgba(241, 155, 133, 0.04) 100%);
  border: 1px solid rgba(226, 92, 61, 0.3);
  border-left: 4px solid var(--la-danger-medium, #E25C3D);
  border-radius: 10px;
  padding: 1.25rem 1.5rem;
  margin-bottom: 1.5rem;
}
.la-venue-form__errors h2 {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--la-danger-dark, #C0472D);
  margin: 0 0 0.75rem;
}
.la-venue-form__errors ul {
  margin: 0;
  padding-left: 1.25rem;
}
.la-venue-form__errors ul li {
  font-size: 0.85rem;
  color: var(--la-danger-dark, #C0472D);
  margin-bottom: 0.35rem;
  line-height: 1.5;
}
.la-venue-form__errors ul li:last-child {
  margin-bottom: 0;
}

.listing-show-container {
  padding: 1.25rem 8.75rem;
}
.listing-show-container .carousel-item img {
  height: 10.9375rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.5rem rgba(38, 38, 38, 0.1);
}
.listing-show-container .carousel-control-prev-icon,
.listing-show-container .carousel-control-next-icon {
  background-color: #FFF;
  border-radius: 50%;
  box-shadow: 0 0.25rem 0.5rem rgba(38, 38, 38, 0.1);
  width: 1.25rem;
  height: 1.25rem;
  background-size: 50%;
  background-position: center;
  opacity: 0;
}
.listing-show-container .carousel-control-prev-icon:hover,
.listing-show-container .carousel-control-next-icon:hover {
  opacity: 0.9;
}
.listing-show-container .carousel {
  margin-bottom: 0.625rem;
  margin-top: 0.625rem;
}
.listing-show-container .carousel .carousel-inner {
  max-height: 37.5rem;
}
.listing-show-container .carousel .carousel-inner img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 19.375rem;
}
.listing-show-container .carousel-indicators [data-bs-target] {
  width: 1.25rem;
  border-top: none;
  border-bottom: none;
  border-radius: 0.5rem;
}
.listing-show-container .carousel-indicators li {
  list-style-type: none;
}
.listing-show-container hr {
  border-color: #757575;
  box-shadow: 0 1px 2px rgba(38, 38, 38, 0.3);
}
.listing-show-container .listing-header, .listing-show-container .listing-info {
  padding: 0.625rem;
  background-color: #F5F5F5;
  border-radius: 0.625rem;
  line-height: 1.25rem;
  position: relative;
}
.listing-show-container .listing-header h1, .listing-show-container .listing-info h1 {
  margin-bottom: 0;
  font-size: 1.7rem;
  font-weight: 600;
}
.listing-show-container .listing-header h2, .listing-show-container .listing-info h2 {
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 500;
}
.listing-show-container .listing-header p, .listing-show-container .listing-info p {
  font-size: 0.7rem;
  margin: 0.625rem;
}
.listing-show-container .btn {
  margin-top: 1.25rem;
}

.type-list-container {
  width: 50%;
  display: flex;
  align-items: flex-start;
  margin: 0.625rem;
}
.type-list-container .type-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.25rem;
  margin: 0;
  padding: 0;
  text-align: left;
  font-size: 0.6rem;
}
.type-list-container .type-list ::marker {
  color: #757575;
  box-shadow: 0 1px 2px rgba(38, 38, 38, 0.3);
}
.type-list-container .type-list li.list-item {
  position: relative;
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 1.5em;
}
.type-list-container .type-list li.list-item:hover .tooltip-text {
  top: 100%;
  opacity: 1;
  visibility: visible;
}
.type-list-container .type-list li.list-item .tooltip-text {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 60%;
  margin-top: 0.375rem;
  font-size: 0.5625rem;
  color: rgba(38, 38, 38, 0.78);
  width: -moz-max-content;
  width: max-content;
  max-width: 18.75rem;
  white-space: normal;
  transform: translateX(-50%);
  background-color: rgba(255, 255, 255, 0.94);
  padding: 0.0625rem 0.3125rem;
  border-radius: 3.125rem;
  box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(38, 38, 38, 0.07);
  transition: all 0.2s ease-in-out;
  z-index: 1;
}

.show-page-icon {
  width: 1.25rem;
  height: auto;
  vertical-align: middle;
  margin: auto;
}

.activity-details-title {
  position: relative; /* makes it the reference point for absolutely positioned children */
}

.listing-links {
  position: absolute; /* absolutely position the list */
  bottom: 0;
  right: 0;
  text-align: right;
  padding: 0.625rem;
}
.listing-links ul {
  margin-bottom: 0;
}

.listing-links-icons {
  display: inline-block;
  margin-left: 0.0625rem;
  margin-bottom: 0;
}

.listing-links-icons img {
  width: 0.875rem;
  height: auto;
  margin-bottom: 0;
}

.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(38, 38, 38, 0.5);
  z-index: 1000;
}
.modal .modal-content {
  position: relative;
  background-color: #FFF;
  margin: 10% auto;
  padding: 1rem;
  border-radius: 0.5rem;
  width: 95%;
  max-width: 31.25rem;
  box-shadow: 0 0.125rem 0.625rem rgba(38, 38, 38, 0.1);
}
@media (min-width: 576px) {
  .modal .modal-content {
    margin: 12% auto;
    padding: 1.25rem;
    width: 90%;
  }
}
@media (min-width: 768px) {
  .modal .modal-content {
    margin: 15% auto;
    padding: 1.5rem;
    width: 85%;
  }
}
.modal .modal-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}
.modal .modal-heading .modal-title {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0;
}
.modal .modal-heading .close-button {
  cursor: pointer;
  font-size: 1.5rem;
  line-height: 1;
  padding: 0.25rem;
}
.modal .modal-heading .close-button:hover {
  opacity: 0.7;
}
.modal .modal-input {
  width: 100%;
  padding: 0.75rem;
  margin-bottom: 1.5rem;
  border: 0.0625rem solid #F5F5F5;
  border-radius: 0.375rem;
  font-size: 1rem;
}
.modal .modal-input:focus {
  outline: none;
  border-color: #2B5CAA;
  box-shadow: 0 0 0 0.1875rem rgba(43, 92, 170, 0.1);
}
.modal .modal-buttons {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 0.5rem;
}
@media (min-width: 576px) {
  .modal .modal-buttons {
    flex-direction: row;
    justify-content: flex-end;
    gap: 0.75rem;
  }
}
.modal .modal-buttons button {
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
}
.modal .modal-buttons .modal-cancel-button {
  background-color: #F5F5F5;
  border: 0.0625rem solid #F5F5F5;
  color: #262626;
}
.modal .modal-buttons .modal-cancel-button:hover {
  background-color: rgb(232.75, 232.75, 232.75);
}
.modal .modal-buttons .modal-submit-button {
  background-color: #2B5CAA;
  border: none;
  color: #FFF;
}
.modal .modal-buttons .modal-submit-button:hover {
  background-color: rgb(38.7, 82.8, 153);
}

.la-admin-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-bottom: 1.5rem;
}
.la-admin-table__header {
  background-color: #F9F9F9;
  font-weight: 600;
}
.la-admin-table__row {
  transition: background-color 0.2s ease;
}
.la-admin-table__row:hover {
  background-color: rgba(249, 249, 249, 0.5);
}
.la-admin-table__action-icon {
  width: 1rem;
  height: 1rem;
  vertical-align: text-bottom;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.la-admin-table__action-icon:hover {
  transform: scale(1.1);
}
.la-admin-table__action-icon--edit {
  color: #2B5CAA;
}
.la-admin-table__action-icon--edit svg {
  fill: currentColor;
  stroke: none;
}
.la-admin-table__action-icon--view {
  color: #069393;
}
.la-admin-table__action-icon--view svg {
  fill: currentColor;
  stroke: none;
}
.la-admin-table__action-icon--delete {
  color: #E25C3D;
}
.la-admin-table__action-icon--delete svg {
  fill: currentColor;
  stroke: none;
}
.la-admin-table__action-icon--add {
  color: #069393;
}
.la-admin-table__action-icon--add svg {
  fill: currentColor;
  stroke: none;
}
.la-admin-table .la-admin-search__icon {
  width: 1.125rem;
  height: 1.125rem;
}
.la-admin-table .la-admin-search__icon--submit {
  color: #FFF;
}
.la-admin-table .la-admin-search__icon--reset {
  color: #4F4F4F;
}

/* Alert Component
---------------------------
A compact and organized alert component for system messages.
Follows BEM methodology with la- prefix.
*/
.la-alert {
  position: fixed;
  bottom: 1.25rem;
  left: 1rem;
  right: 1rem;
  z-index: 1050;
  width: auto;
  max-width: none;
  padding: 0.75rem;
  border: 0.0625rem solid transparent;
  border-radius: 0.3rem;
  background: #FFF;
  box-shadow: 0 0.25rem 0.375rem -0.0625rem rgba(38, 38, 38, 0.1), 0 0.125rem 0.25rem -0.0625rem rgba(38, 38, 38, 0.06);
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  transform-origin: bottom right;
  animation: alert-slide-in 0.2s ease-out;
  left: 1rem;
  right: 1rem;
  width: auto;
  max-width: none;
}
@media (min-width: 576px) {
  .la-alert {
    left: auto;
    right: 1.25rem;
    width: 20rem;
  }
}
@keyframes alert-slide-in {
  from {
    transform: translateY(100%) scale(0.95);
    opacity: 0;
  }
  to {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
}
.la-alert__content {
  flex: 1;
  display: flex;
  gap: 0.5rem;
  min-width: 0;
}
.la-alert__icon {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin-top: 0.125rem;
}
.la-alert__icon svg {
  fill: currentColor;
  stroke: none;
}
.la-alert__text {
  flex: 1;
  min-width: 0;
}
.la-alert__title {
  font-weight: 700;
  font-size: 0.875rem;
  margin: 0 0 0.125rem;
  color: inherit;
}
.la-alert__message {
  margin: 0;
  color: inherit;
  opacity: 0.9;
}
.la-alert .la-btn--close {
  flex-shrink: 0;
  padding: 0.125rem;
  margin: -0.125rem -0.25rem 0 0;
  background: transparent;
  border: none;
  color: inherit;
  opacity: 0.5;
  cursor: pointer;
  transition: opacity 0.15s linear;
}
.la-alert .la-btn--close:hover {
  opacity: 0.75;
}
.la-alert .la-btn--close svg {
  width: 0.875rem;
  height: 0.875rem;
}
.la-alert--success {
  background-color: rgb(230.5, 254, 254);
  border-color: #07B4B4;
  color: hsl(180, 92.1568627451%, -5%);
}
.la-alert--error {
  background-color: hsl(11.2727272727, 73.9910313901%, 121.2745098039%);
  border-color: #F19B85;
  color: rgb(94.3901345291, 29.1928251121, 14.1098654709);
}
.la-alert--warning {
  background-color: hsl(39.5604395604, 89.2156862745%, 125%);
  border-color: #F9D48A;
  color: rgb(120.625, 81.875, 6.875);
}
.la-alert--info {
  background-color: hsl(219.7183098592, 64.5454545455%, 121.862745098%);
  border-color: #8FABEE;
  color: rgb(19.7659090909, 44.0931818182, 91.7340909091);
}
.la-alert--fade-out {
  animation: alert-slide-out 0.2s ease-in forwards;
}
@keyframes alert-slide-out {
  to {
    transform: translateY(0.625rem) scale(0.95);
    opacity: 0;
  }
}
@media (min-width: 576px) {
  .la-alert {
    left: auto;
    right: auto;
    width: 350px;
    max-width: 100%;
  }
}

/* app/assets/stylesheets/components/_auth_form.scss */
.devise-auth-form {
  width: 95%;
  max-width: 25.625rem;
  margin: 3rem auto;
  padding: 1rem 1.25rem 3rem;
  background: #FFF;
  border: 0.0625rem solid #F5F5F5;
  border-radius: 0.75rem;
  font-size: 1rem;
  line-height: 1.3125rem;
  font-variant: normal;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.09);
  position: relative;
}
@media (min-width: 576px) {
  .devise-auth-form {
    margin: 5rem auto;
    padding: 1.25rem 2rem 4rem;
  }
}
@media (min-width: 768px) {
  .devise-auth-form {
    margin: 7.5rem auto;
    padding: 1.25rem 2.25rem 5rem;
  }
}

/* Style for header/logo */
.devise-header {
  text-align: center;
}

.devise-logo {
  display: block;
  margin: 0 auto 1.25rem; /* Centers the logo and adds some space below it (20px) */
  width: 6.5rem; /* Ensures the logo is responsive and fits its container */
  height: auto; /* Maintains aspect ratio */
}

.devise-form-inputs {
  margin-bottom: 1.25rem;
}
.devise-form-inputs .form-text {
  color: #069393;
  font-style: italic;
}

.devise-input {
  width: 100%;
  padding: 0.625rem;
  margin-bottom: 0.9375rem;
  border: 1px solid #F5F5F5;
  border-radius: 0.2rem;
  background-color: #FFF;
  text-overflow: ellipsis;
}

.devise-submit {
  width: 100%;
  padding: 0.625rem 0.9375rem;
  background-color: #069393;
  color: #FFF;
  border: none;
  border-radius: 50rem;
  margin-top: 4%;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

/* Hover state for the login button */
.devise-submit:hover {
  background-color: #07B4B4;
  color: #FFF;
}

/* Style for the divider */
.devise-signup-divider {
  border-top: 1px solid #F5F5F5;
  position: relative;
  margin-top: 10%;
  margin-bottom: 3%;
  height: 0.9375rem;
  text-align: center;
  font-size: 83.34%;
}

.devise-signup-divider .separator-text {
  background-color: #FFF;
  padding: 0 0.5em;
  position: relative;
  color: #757575;
  top: -0.8em;
}

/* Sign up button underneath the divider */
.devise-signup-button {
  display: block;
  width: 100%;
  padding: 0.625rem 0.9375rem;
  background-color: #FFF;
  color: #262626;
  border: 1px solid #F5F5F5;
  border-radius: 50rem;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

/* Hover state for the signup button */
.devise-signup-button:hover {
  background-color: #FFF;
  color: #07B4B4;
  border-color: #07B4B4;
}

.devise-password-recovery {
  text-align: center;
  margin-top: 0.9375rem;
}

.devise-recovery-link {
  color: #069393;
  text-decoration: none;
}

.devise-recovery-link:hover {
  color: #07B4B4;
}

/* app/assets/stylesheets/components/_auth_modal.scss */
/* Note: Google Fonts should be imported in the HTML head or in a dedicated fonts file */
.form-structor {
  background-color: #262626;
  border-radius: 0.9375rem;
  height: 30.3125rem;
  width: 21.875rem;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  overflow: hidden;
  z-index: 2000;
}
.form-structor::after {
  content: "";
  opacity: 0.6;
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 31.25rem;
  background-image: url("https://res.cloudinary.com/little-adventures/image/upload/v1707155753/LittleAdventures/Page%20Design/mxi4uwouzfn39qmi23jf.png");
}
.form-structor .signup {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 65%;
  z-index: 5;
  transition: all 0.3s ease;
}
.form-structor .signup.slide-up {
  top: 5%;
  transform: translate(-50%, 0%);
  transition: all 0.3s ease;
}
.form-structor .signup.slide-up .form-holder, .form-structor .signup.slide-up .submit-btn {
  opacity: 0;
  visibility: hidden;
}
.form-structor .signup.slide-up .form-title {
  font-size: 1em;
  cursor: pointer;
}
.form-structor .signup.slide-up .form-title span {
  margin-right: 0.3125rem;
  opacity: 1;
  visibility: visible;
  transition: all 0.3s ease;
}
.form-structor .signup .form-title {
  color: #FFF;
  font-size: 1.7em;
  text-align: center;
}
.form-structor .signup .form-title span {
  color: rgba(38, 38, 38, 0.4);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.form-structor .signup .form-holder {
  border-radius: 0.9375rem;
  background-color: #FFF;
  overflow: hidden;
  margin-top: 3.125rem;
  opacity: 1;
  visibility: visible;
  transition: all 0.3s ease;
}
.form-structor .signup .form-holder .input {
  border: 0;
  outline: none;
  box-shadow: none;
  display: block;
  height: 1.875rem;
  line-height: 1.875rem;
  padding: 0.5rem 0.9375rem;
  border-bottom: 1px solid #F5F5F5;
  width: 100%;
  font-size: 0.75rem;
}
.form-structor .signup .form-holder .input:last-child {
  border-bottom: 0;
}
.form-structor .signup .form-holder .input::-moz-placeholder {
  color: rgba(38, 38, 38, 0.4);
}
.form-structor .signup .form-holder .input::placeholder {
  color: rgba(38, 38, 38, 0.4);
}
.form-structor .signup .submit-btn {
  background-color: #069393;
  color: #FFF;
  border: 0;
  border-radius: 2.1875rem;
  display: block;
  margin: 0.9375rem auto;
  padding: 0.9375rem 2.8125rem;
  width: 100%;
  font-size: 1.0625rem;
  font-weight: bold;
  cursor: pointer;
  opacity: 0.9;
  visibility: visible;
  transition: all 0.3s ease;
}
.form-structor .signup .submit-btn:hover {
  transition: all 0.3s ease;
  background-color: #05686C;
}
.form-structor .login {
  position: absolute;
  inset: 20% 0 0;
  background-color: #FFF;
  z-index: 5;
  transition: all 0.3s ease;
}
.form-structor .login::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -1.25rem;
  transform: translate(-50%, 0);
  background-color: #FFF;
  width: 200%;
  height: 15.625rem;
  border-radius: 50%;
  z-index: 4;
  transition: all 0.3s ease;
}
.form-structor .login .center {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  z-index: 5;
  transition: all 0.3s ease;
}
.form-structor .login .center .form-title {
  color: #262626;
  font-size: 1.7em;
  text-align: center;
}
.form-structor .login .center .form-title span {
  color: rgba(38, 38, 38, 0.4);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.form-structor .login .center .form-holder {
  background-color: #FFF;
  margin-top: 1.25rem;
  opacity: 1;
  visibility: visible;
  transition: all 0.3s ease;
  width: 100%;
  height: auto;
}
.form-structor .login .center .form-holder .input {
  border: 0;
  outline: none;
  border-radius: 0.9375rem;
  box-shadow: none;
  display: block;
  height: 2.5rem;
  line-height: 2.5rem;
  margin: 0.3125rem auto;
  padding: 0.5rem 0.9375rem;
  width: 100%;
  font-size: 0.875rem;
}
.form-structor .login .center .form-holder .input:last-child {
  border-bottom: 0;
}
.form-structor .login .center .form-holder .input::-moz-placeholder {
  color: rgba(38, 38, 38, 0.4);
}
.form-structor .login .center .form-holder .input::placeholder {
  color: rgba(38, 38, 38, 0.4);
}
.form-structor .login .center .submit-btn {
  background-color: #069393;
  color: #FFF;
  border: 0;
  border-radius: 2.1875rem;
  display: block;
  margin: 0.9375rem auto;
  padding: 0.9375rem 2.8125rem;
  width: 100%;
  font-size: 1.0625rem;
  font-weight: bold;
  cursor: pointer;
  opacity: 0.6;
  visibility: visible;
  transition: all 0.3s ease;
}
.form-structor .login .center .submit-btn:hover {
  transition: all 0.3s ease;
  background-color: #05686C;
}
.form-structor .login.slide-up {
  top: 90%;
  transition: all 0.3s ease;
}
.form-structor .login.slide-up .center {
  top: 10%;
  transform: translate(-50%, 0%);
  transition: all 0.3s ease;
}
.form-structor .login.slide-up .form-holder, .form-structor .login.slide-up .submit-btn {
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.form-structor .login.slide-up .form-title {
  font-size: 1em;
  margin: 0;
  padding: 0;
  cursor: pointer;
  transition: all 0.3s ease;
}
.form-structor .login.slide-up .form-title span {
  margin-right: 0.3125rem;
  opacity: 1;
  visibility: visible;
  transition: all 0.3s ease;
}

.hidden {
  display: none;
}

/* Avatar Component
---------------------------
Avatar component for user profile images.
Follows BEM methodology with la- prefix.
*/
.la-avatar {
  width: 2.5rem;
  border-radius: 50%;
}
.la-avatar--large {
  width: 3.5rem;
  border-radius: 50%;
}
.la-avatar--bordered {
  border-radius: 50%;
  box-shadow: 0 0.0625rem 0.125rem rgba(38, 38, 38, 0.2);
  border: 0.0625rem solid #FFF;
}
.la-avatar--square {
  border-radius: 0;
  box-shadow: 0 0.0625rem 0.125rem rgba(38, 38, 38, 0.2);
  border: 0.0625rem solid #FFF;
}

.la-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.625rem 1.5rem;
  border-radius: 50rem;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: 0.0625rem solid transparent;
  box-shadow: 0 0.125rem 0.25rem rgba(117, 117, 117, 0.09);
  gap: 0.5rem;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.la-btn:hover {
  text-decoration: none;
}
.la-btn:focus, .la-btn:focus-visible {
  outline: none;
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.25);
}
.la-btn--outline-primary {
  background-color: transparent;
  color: var(--la-brand-primary, #069393);
  border: 0.0625rem solid var(--la-brand-primary, #069393);
}
.la-btn--outline-primary:hover {
  background-color: rgba(6, 147, 147, 0.05);
  color: var(--la-brand-hover, #07B4B4);
  border-color: var(--la-brand-hover, #07B4B4);
}
.la-btn--outline-primary:active {
  background-color: rgba(6, 147, 147, 0.1);
  color: var(--la-brand-dark, #05686C);
  border-color: var(--la-brand-dark, #05686C);
}
.la-btn--outline-accent {
  background-color: transparent;
  color: var(--la-accent, #E25C3D);
  border: 0.0625rem solid var(--la-accent, #E25C3D);
}
.la-btn--outline-accent:hover {
  background-color: rgba(226, 92, 61, 0.05);
  color: var(--la-accent-hover, #C0472D);
  border-color: var(--la-accent-hover, #C0472D);
}
.la-btn--outline-accent:active {
  background-color: rgba(226, 92, 61, 0.1);
  color: var(--la-accent-dark, #B73B37);
  border-color: var(--la-accent-dark, #B73B37);
}
.la-btn--text {
  background-color: transparent;
  color: var(--la-brand-primary, #069393);
  border: none;
  padding: 0.5rem 0.75rem;
  box-shadow: none;
}
.la-btn--text:hover {
  background-color: rgba(6, 147, 147, 0.05);
  color: var(--la-brand-hover, #07B4B4);
}
.la-btn--text:active {
  background-color: rgba(6, 147, 147, 0.1);
  color: var(--la-brand-dark, #05686C);
}
.la-btn--text-accent {
  background-color: transparent;
  color: var(--la-accent, #E25C3D);
  border: none;
  padding: 0.5rem 0.75rem;
  box-shadow: none;
}
.la-btn--text-accent:hover {
  background-color: rgba(226, 92, 61, 0.05);
  color: var(--la-accent-hover, #C0472D);
}
.la-btn--text-accent:active {
  background-color: rgba(226, 92, 61, 0.1);
  color: var(--la-accent-dark, #B73B37);
}
.la-btn--primary {
  background-color: var(--la-brand-primary, #069393);
  color: #FFF;
  border: none;
}
.la-btn--primary:hover {
  background-color: var(--la-brand-hover, #07B4B4);
  box-shadow: 0 0.125rem 0.375rem rgba(6, 147, 147, 0.2);
  color: #FFF;
  text-decoration: none;
}
.la-btn--primary:active {
  background-color: var(--la-brand-dark, #05686C);
  box-shadow: 0 0.0625rem 0.1875rem rgba(5, 104, 108, 0.2);
  color: #FFF;
}
.la-btn--primary:focus, .la-btn--primary:focus-visible {
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.25);
}
.la-btn--secondary {
  background-color: #FFF;
  border-color: var(--la-support-dark, #262626);
  color: var(--la-support-dark, #262626);
}
.la-btn--secondary:hover {
  background-color: var(--la-support-hover, #757575);
  border-color: var(--la-support-hover, #757575);
  color: #FFF;
}
.la-btn--secondary:active {
  background-color: var(--la-support-dark, #262626);
  border-color: var(--la-support-dark, #262626);
  color: #FFF;
}
.la-btn--secondary:focus, .la-btn--secondary:focus-visible {
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.25);
}
.la-btn--danger {
  background-color: var(--la-error, #E25C3D);
  color: #FFF;
  border: none;
}
.la-btn--danger:hover {
  background-color: var(--la-error-hover, #C0472D);
  box-shadow: 0 0.125rem 0.375rem rgba(226, 92, 61, 0.2);
}
.la-btn--danger:active {
  background-color: var(--la-error-dark, #C0472D);
  box-shadow: 0 0.0625rem 0.1875rem rgba(192, 71, 45, 0.2);
}
.la-btn--danger:focus, .la-btn--danger:focus-visible {
  border-color: var(--la-error, #E25C3D);
  box-shadow: 0 0 0 0.1875rem rgba(226, 92, 61, 0.25);
}
.la-btn--error {
  background-color: var(--la-error, #E25C3D);
  color: var(--la-white, #FFF);
  border: none;
}
.la-btn--error:hover {
  background-color: var(--la-error-hover, #C0472D);
  box-shadow: 0 0.125rem 0.375rem rgba(226, 92, 61, 0.2);
}
.la-btn--error:active {
  background-color: var(--la-error-dark, #C0472D);
  box-shadow: 0 0.0625rem 0.1875rem rgba(192, 71, 45, 0.2);
}
.la-btn--error:focus, .la-btn--error:focus-visible {
  outline: none;
  border-color: var(--la-error, #E25C3D);
  box-shadow: 0 0 0 0.1875rem rgba(226, 92, 61, 0.25);
}
.la-btn--success {
  background-color: var(--la-success, #069393);
  color: var(--la-white, #FFF);
  border: none;
}
.la-btn--success:hover {
  background-color: var(--la-success-hover, #07B4B4);
  box-shadow: 0 0.125rem 0.375rem rgba(6, 147, 147, 0.2);
  color: var(--la-white, #FFF);
  text-decoration: none;
}
.la-btn--success:active {
  background-color: var(--la-success-dark, #05686C);
  box-shadow: 0 0.0625rem 0.1875rem rgba(5, 104, 108, 0.2);
}
.la-btn--success:focus, .la-btn--success:focus-visible {
  outline: none;
  border-color: var(--la-success, #069393);
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.25);
}
.la-btn--warning {
  background-color: var(--la-warning, #F4B63E);
  color: var(--la-white, #FFF);
  border: none;
}
.la-btn--warning:hover {
  background-color: var(--la-warning-hover, #DB9C24);
  box-shadow: 0 0.125rem 0.375rem rgba(244, 182, 62, 0.2);
}
.la-btn--warning:active {
  background-color: var(--la-warning-dark, #DB9C24);
  box-shadow: 0 0.0625rem 0.1875rem rgba(219, 156, 36, 0.2);
}
.la-btn--warning:focus, .la-btn--warning:focus-visible {
  outline: none;
  border-color: var(--la-warning, #F4B63E);
  box-shadow: 0 0 0 0.1875rem rgba(244, 182, 62, 0.25);
}
.la-btn--ghost {
  background-color: transparent;
  color: var(--la-gray-700, #4F4F4F);
}
.la-btn--ghost:hover, .la-btn--ghost:focus {
  background-color: var(--la-gray-100, #F5F5F5);
}
.la-btn--ghost:active {
  background-color: var(--la-gray-200, #F5F5F5);
}
.la-btn--link {
  background-color: transparent;
  color: var(--la-brand-primary, #069393);
  padding: 0;
}
.la-btn--link:hover, .la-btn--link:focus {
  color: var(--la-brand-dark, #05686C);
  text-decoration: underline;
}
.la-btn--link:active {
  color: var(--la-brand-darker, #05686C);
}
.la-btn--sm {
  padding: 0.375rem 1rem;
  font-size: 0.875rem;
}
.la-btn--lg {
  padding: 0.75rem 2rem;
  font-size: 1.25rem;
}
.la-btn--full {
  width: 100%;
}
.la-btn--icon {
  padding: 0.5rem;
}
.la-btn--icon.la-btn--sm {
  padding: 0.25rem;
}
.la-btn--icon.la-btn--lg {
  padding: 0.75rem;
}
.la-btn--gradient-primary {
  background: linear-gradient(135deg, var(--la-brand-dark, #05686C) 0%, var(--la-brand-primary, #069393) 100%);
  color: #FFF;
  border: none;
}
.la-btn--gradient-primary:hover {
  background: linear-gradient(135deg, var(--la-brand-dark, #05686C) 0%, var(--la-brand-hover, #07B4B4) 100%);
  box-shadow: 0 0.125rem 0.375rem rgba(6, 147, 147, 0.2);
}
.la-btn--gradient-primary:active {
  background: linear-gradient(135deg, #05686C 0%, var(--la-brand-dark, #05686C) 100%);
  box-shadow: 0 0.0625rem 0.1875rem rgba(5, 104, 108, 0.2);
}
.la-btn--gradient-primary:focus, .la-btn--gradient-primary:focus-visible {
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.25);
}
.la-btn:disabled, .la-btn--disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
}
.la-btn__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.la-btn__icon svg {
  width: 1rem;
  height: 1rem;
}
.la-btn--auth-submit {
  width: 100%;
  padding: 0.625rem 0.9375rem;
  background-color: var(--la-brand-primary, #069393);
  color: #FFF;
  border: none;
  border-radius: 50rem;
  margin-top: 4%;
  cursor: pointer;
}
.la-btn--auth-submit:hover {
  background-color: var(--la-brand-hover, #07B4B4);
  box-shadow: 0 0.125rem 0.375rem rgba(6, 147, 147, 0.2);
}
.la-btn--auth-submit:active {
  background-color: var(--la-brand-dark, #05686C);
  box-shadow: 0 0.0625rem 0.1875rem rgba(5, 104, 108, 0.2);
}
.la-btn--auth-submit:focus, .la-btn--auth-submit:focus-visible {
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.25);
}
.la-btn--auth-signup {
  width: 100%;
  padding: 0.625rem 0.9375rem;
  background-color: #FFF;
  color: var(--la-gray-dark, #262626);
  border: 0.0625rem solid var(--la-gray-dark, #262626);
  border-radius: 50rem;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  text-align: center;
}
.la-btn--auth-signup:hover {
  background-color: var(--la-gray-medium, #757575);
  color: var(--la-gray-dark, #262626);
  border-color: var(--la-gray-medium, #757575);
  text-decoration: none;
}
.la-btn--auth-signup:focus, .la-btn--auth-signup:focus-visible {
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.25);
}

.la-btn-group {
  display: inline-flex;
}
.la-btn-group .la-btn {
  border-radius: 0;
}
.la-btn-group .la-btn:first-child {
  border-top-left-radius: 100px;
  border-bottom-left-radius: 100px;
}
.la-btn-group .la-btn:last-child {
  border-top-right-radius: 100px;
  border-bottom-right-radius: 100px;
}
.la-btn-group .la-btn:not(:first-child) {
  margin-left: -0.0625rem;
}
.la-btn-group .la-btn:focus, .la-btn-group .la-btn:focus-visible {
  position: relative;
  z-index: 1;
}

.la-card {
  margin: 0.625rem;
  background-color: var(--la-white, #FFF);
  border-radius: 0.75rem;
  box-shadow: 0 0.125rem 1.25rem rgba(38, 38, 38, 0.1);
  overflow: hidden;
  width: 18.75rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.la-card:hover {
  transform: translateY(-0.3125rem);
  box-shadow: 0 0.5rem 1.875rem rgba(38, 38, 38, 0.15);
}
.la-card__header {
  width: 100%;
  overflow: hidden;
}
.la-card__header img {
  width: 100%;
  height: 12.5rem;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease;
}
.la-card__header:hover img {
  transform: scale(1.05);
}
.la-card__action-icon {
  margin-right: 0.375rem;
  height: 1rem;
  width: 1rem;
  color: inherit;
  transition: transform 0.2s ease;
}
.la-card__action-icon:hover {
  transform: scale(1.1);
}
.la-card__action-icon--message {
  color: #FFF;
}
.la-card__action-icon--message svg {
  fill: currentColor;
  stroke: none;
}
.la-card__action-icon--remove {
  color: #FFF;
}
.la-card__action-icon--remove svg {
  fill: currentColor;
  stroke: none;
}
.la-card__action-icon--user-plus {
  color: #4F4F4F;
}
.la-card__action-icon--accept {
  color: #FFF;
}
.la-card__action-icon--accept svg {
  fill: currentColor;
  stroke: none;
}
.la-card__action-icon--reject {
  color: #FFF;
}
.la-card__action-icon--reject svg {
  fill: currentColor;
  stroke: none;
}
.la-card__action-icon--cancel {
  color: #4F4F4F;
}
.la-card__time-icon {
  margin-right: 0.25rem;
  height: 0.75rem;
  width: 0.75rem;
  color: #4F4F4F;
}
.la-card__header-text {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 0.625rem;
}
.la-card__time {
  font-size: 0.75rem;
  color: var(--la-gray-600, #4F4F4F);
  display: flex;
  align-items: center;
  gap: 0.3125rem;
}
.la-card__body {
  display: flex;
  flex-direction: column;
  padding: 1.25rem;
  min-height: 15.625rem;
}
.la-card__body .la-form {
  width: 100%;
  margin: 0;
}
.la-card__body .la-form .la-form__group:last-of-type {
  margin-bottom: 0;
}
.la-card__body .la-form .la-form__actions {
  margin-top: 1rem;
}
.la-card__title {
  margin: 0.625rem 0;
  font-family: var(--la-font-family-headers);
  font-weight: 600;
  font-size: 1.25rem;
  color: var(--la-base-darkest, #262626);
}
.la-card__text {
  font-size: 0.9rem;
  color: var(--la-gray-700, #4F4F4F);
  margin: 0 0 1.25rem;
  line-height: 1.5;
}
.la-card__tag {
  background: #F5F5F5;
  border-radius: 3.125rem;
  font-size: 0.75rem;
  margin: 0;
  color: #FFF;
  padding: 0.125rem 0.625rem;
  text-transform: uppercase;
  display: inline-block;
  font-weight: 500;
}
.la-card__tag--teal {
  background-color: var(--la-brand-primary, #069393);
}
.la-card__tag--purple {
  background-color: var(--la-info, #4A7AD8);
}
.la-card__tag--pink {
  background-color: var(--la-accent, #E25C3D);
}
.la-card__tag--warning {
  background-color: var(--la-warning, #F4B63E);
}
.la-card__tag--error {
  background-color: var(--la-danger, #E25C3D);
}
.la-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9375rem;
  margin-bottom: 1.25rem;
}
.la-card__meta-item {
  font-size: 0.8rem;
  color: var(--la-gray-600, #4F4F4F);
  display: flex;
  align-items: center;
  gap: 0.3125rem;
}
.la-card__meta-icon {
  height: 0.875rem;
  width: 0.875rem;
  margin-right: 0.25rem;
}
.la-card__meta-icon--location {
  color: #4F4F4F;
}
.la-card__meta-icon--duration {
  color: #4F4F4F;
}
.la-card__meta-icon--rating {
  color: #F4B63E;
}
.la-card__user {
  display: flex;
  align-items: center;
  margin-top: auto;
}
.la-card__user img {
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  margin-right: 0.625rem;
  -o-object-fit: cover;
     object-fit: cover;
}
.la-card__user--large img {
  width: 3.75rem;
  height: 3.75rem;
}
.la-card__user-info h5 {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 600;
}
.la-card__user-info small {
  color: var(--la-gray-600, #4F4F4F);
  font-size: 0.75rem;
}
.la-card__avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  margin-right: 0.625rem;
  overflow: hidden;
}
.la-card__user--large .la-card__avatar {
  width: 3.75rem;
  height: 3.75rem;
}
.la-card__avatar-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--la-brand-lightest, #7CC8C8);
  color: var(--la-base-darkest, #262626);
  font-weight: 600;
  font-size: 1.2rem;
  border-radius: 50%;
}
.la-card__user--large .la-card__avatar-placeholder {
  font-size: 1.5rem;
}
.la-card__placeholder {
  background: #F5F5F5;
  height: 12.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-card__message {
  background-color: var(--la-gray-100, #FFF);
  border-radius: 0.5rem;
  padding: 0.75rem;
  margin: 0.9375rem 0;
}
.la-card__message p {
  margin: 0;
  font-size: 0.9rem;
  color: var(--la-gray-700, #4F4F4F);
  font-style: italic;
}
.la-card__actions {
  padding: 0.75rem;
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}
.la-card__actions small {
  color: var(--la-gray-600, #4F4F4F);
  font-size: 0.75rem;
}
.la-card__link {
  color: var(--la-brand-primary, #069393);
  text-decoration: none;
  font-weight: 500;
  font-size: 0.9rem;
  margin-top: 0.9375rem;
  display: inline-block;
  transition: color 0.15s ease-in-out;
}
.la-card__link:hover {
  color: var(--la-brand-dark, #07B4B4);
  text-decoration: underline;
}
.la-card__footer {
  padding: 0.9375rem;
  background-color: var(--la-gray-100, #FFF);
  border-top: 1px solid var(--la-gray-200, #F9F9F9);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.la-card__info-icon {
  height: 1rem;
  width: 1rem;
  margin-right: 0.375rem;
  color: #4F4F4F;
}
.la-card__info-icon--location, .la-card__info-icon--pin {
  color: #4F4F4F;
}
.la-card__info-icon--duration {
  color: #4F4F4F;
}
.la-card__info-icon--activity {
  color: #069393;
}
.la-card__info-icon--price {
  color: #05686C;
}
.la-card__info-icon--food {
  color: #4A7AD8;
}
.la-card__info-icon--group {
  color: #2B5CAA;
}
.la-card__info-icon--home {
  color: #4F4F4F;
}
.la-card__stats-icon {
  height: 1rem;
  width: 1rem;
  margin-right: 0.375rem;
  color: #FFF;
}
.la-card__stats-icon--view, .la-card__stats-icon--message, .la-card__stats-icon--download {
  color: #FFF;
}
.la-card__detail-icon {
  height: 1rem;
  width: 1rem;
  margin-right: 0.375rem;
  color: inherit;
}
.la-card__detail-icon--duration {
  color: #4F4F4F;
}
.la-card__detail-icon--location {
  color: #4F4F4F;
}
.la-card__detail-icon--rating {
  color: #F4B63E;
}
.la-card--friend {
  width: 21.875rem;
}
.la-card--friend .la-card__body {
  min-height: auto;
  padding: 0.9375rem;
}
.la-card--friend .la-card__title {
  margin: 0 0 0.3125rem;
}
.la-card--friend .la-card__text {
  margin: 0 0 0.9375rem;
}
.la-card--friend-request {
  width: 21.875rem;
}
.la-card--friend-request .la-card__body {
  min-height: auto;
  padding: 0.9375rem;
}
.la-card--photo {
  width: 21.875rem;
  height: 31.25rem;
  position: relative;
  overflow: visible;
}
.la-card--photo .la-card__header {
  height: 100%;
  position: relative;
}
.la-card--photo .la-card__header img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.la-card--photo .la-card__stats {
  position: absolute;
  bottom: 20%;
  left: 0;
  right: 0;
  display: flex;
  align-items: flex-end;
  padding: 0.9375rem 1.875rem;
  color: #FFF;
  z-index: 2;
}
.la-card--photo .la-card__stats__meta {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0.3125rem;
}
.la-card--photo .la-card__stats__meta-item {
  display: flex;
  align-items: center;
  margin-right: 0.9375rem;
  font-size: 0.75rem;
  color: #757575;
}
.la-card--photo .la-card__stats__meta-item-icon {
  margin-right: 0.3125rem;
}
.la-card--photo .la-card__stats__meta-icon {
  margin-right: 0.3125rem;
  height: 0.875rem;
  width: 0.875rem;
}
.la-card--photo .la-card__stats__meta-icon--location {
  color: #4F4F4F;
}
.la-card--photo .la-card__stats__meta-icon--duration {
  color: #4F4F4F;
}
.la-card--photo .la-card__stats__meta-icon--rating {
  color: #F4B63E;
}
.la-card--photo .la-card__stats-item {
  margin-right: 1.25rem;
  display: flex;
  align-items: center;
  font-size: 0.9rem;
}
.la-card--photo .la-card__stats-item-icon {
  margin-right: 0.5rem;
  color: #FFF;
}
.la-card--photo .la-card__photographer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--la-gray-100, #FFF);
  display: flex;
  align-items: center;
  padding: 1.25rem;
  border-radius: 0 0 0.625rem 0.625rem;
  z-index: 1;
}
.la-card--photo .la-card__photographer img {
  width: 3.75rem;
  height: 3.75rem;
  border-radius: 50%;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: cover;
     object-fit: cover;
  margin-right: 0.9375rem;
}
.la-card--photo .la-card__photographer-info h3 {
  color: var(--la-base-darkest, #262626);
  font-size: 1.2rem;
  margin: 0 0 0.3125rem;
  font-weight: 600;
}
.la-card--photo .la-card__photographer-info p {
  color: var(--la-gray-600, #4F4F4F);
  font-size: 0.8rem;
  margin: 0;
}
.la-card--photo .la-card__photographer-info p b {
  font-style: italic;
}
.la-card--photo::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 70%;
  background: linear-gradient(to top, rgba(38, 38, 38, 0.7) 0%, rgba(38, 38, 38, 0) 100%);
  border-radius: 0 0 0.625rem 0.625rem;
  z-index: 1;
}
.la-card--blog {
  background-color: #FFF;
  box-shadow: 0 0 0 0.0625rem rgba(38, 38, 38, 0.05), 0 1.25rem 3.125rem 0 rgba(38, 38, 38, 0.1);
  border-radius: 0.9375rem;
  overflow: hidden;
  padding: 1.25rem;
  position: relative;
  transition: 0.15s ease-in;
  width: 25rem;
}
.la-card--blog:hover, .la-card--blog:focus-within {
  box-shadow: 0 0 0 2px var(--la-brand-primary, #069393), 0 10px 60px 0 rgba(38, 38, 38, 0.1);
  transform: translateY(-0.3125rem);
}
.la-card--blog .la-card__image {
  border-radius: 0.625rem;
  overflow: hidden;
  margin: -1.25rem -1.25rem 0;
}
.la-card--blog .la-card__image img {
  width: 100%;
  height: auto;
  display: block;
}
.la-card--blog .la-card__header {
  margin-top: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.la-card--blog .la-card__header a {
  font-weight: 600;
  font-size: 1.375rem;
  line-height: 1.25;
  padding-right: 1rem;
  text-decoration: none;
  color: var(--la-base-darkest, #262626);
  will-change: transform;
  position: relative;
}
.la-card--blog .la-card__header a::after {
  content: "";
  position: absolute;
  inset: 0;
}
.la-card--blog .la-card__icon-button {
  border: 0;
  background-color: #FFF;
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  font-size: 1.25rem;
  transition: 0.25s ease;
  box-shadow: 0 0 0 1px rgba(var(--la-black, #262626), 0.05), 0 0.1875rem 0.5rem 0 rgba(var(--la-black, #262626), 0.15);
  z-index: 1;
  cursor: pointer;
  color: var(--la-gray-500, #757575);
}
.la-card--blog .la-card__icon-button .la-icon {
  width: 1em;
  height: 1em;
}
.la-card--blog .la-card__icon-button:hover, .la-card--blog .la-card__icon-button:focus {
  background-color: var(--la-danger, #E25C3D);
  color: var(--la-white, #FFF);
}
.la-card--blog .la-card__footer {
  margin-top: 1.25rem;
  border-top: 1px solid var(--la-gray-200, #F9F9F9);
  padding-top: 1.25rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  background-color: transparent;
}
.la-card--blog .la-card__meta {
  display: flex;
  align-items: center;
  color: var(--la-gray-500, #757575);
  margin-bottom: 0;
}
.la-card--blog .la-card__meta:first-child::after {
  display: block;
  content: "";
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background-color: currentcolor;
  margin-left: 0.75rem;
  margin-right: 0.75rem;
}
.la-card--blog .la-card__meta .la-icon {
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  margin-right: 0.25em;
}
.la-card--listing {
  background-color: var(--la-white, #FFF);
  box-shadow: 0 0.0625rem 0.1875rem rgba(38, 38, 38, 0.12), 0 0.0625rem 0.125rem rgba(38, 38, 38, 0.24);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  width: 100%;
  min-width: 13.75rem;
  max-width: 20rem;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-self: center;
  overflow: visible;
}
.la-card--listing:hover {
  box-shadow: 0 0.5rem 1.875rem rgba(38, 38, 38, 0.15);
  transform: translateY(-0.25rem);
}
.la-card--listing .la-card__actions {
  position: absolute;
  top: -0.1rem;
  right: -0.1rem;
  z-index: 11;
  display: flex;
  gap: 0.5rem;
}
.la-card--listing .la-card__actions .la-card__featured-badge {
  position: relative;
  padding: 0.1875rem 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #FFF;
  text-shadow: 0 2px 4px rgba(38, 38, 38, 0.6);
  border-radius: 50rem;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  overflow: visible;
  transition: transform 0.2s ease-out;
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  border: 1px solid rgba(219, 156, 36, 0.4);
}
.la-card--listing .la-card__actions .la-card__featured-badge .la-glass-filter {
  background: rgba(219, 156, 36, 0.3);
  backdrop-filter: blur(10px) saturate(180%);
  -webkit-backdrop-filter: blur(10px) saturate(180%);
}
.la-card--listing .la-card__actions .la-card__featured-badge .la-glass-overlay {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.25) 0%, rgba(219, 156, 36, 0.2) 50%, rgba(255, 255, 255, 0.05) 100%);
}
.la-card--listing .la-card__actions .la-card__featured-badge .la-glass-specular {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.4) 0%, transparent 50%);
}
.la-card--listing .la-card__actions .la-card__featured-badge .la-glass-content {
  position: relative;
  padding: 0.1875rem 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #FFF;
  text-shadow: 0 2px 4px rgba(38, 38, 38, 0.6);
  letter-spacing: 0.0313rem;
}
.la-card--listing .la-card__actions .la-card__featured-badge::before {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  background: linear-gradient(135deg, rgba(219, 156, 36, 0.3) 0%, rgba(219, 156, 36, 0.1) 50%, rgba(219, 156, 36, 0.3) 100%);
  border-radius: 50rem;
  z-index: -1;
}
.la-card--listing .la-card__actions .la-card:hover .la-card__featured-badge {
  transform: scale(1.1);
}
.la-card--listing .la-card__actions .la-card:hover .la-card__sparkle {
  filter: blur(0.3px) brightness(1.2);
}
.la-card--listing .la-card__actions .la-card__sparkle {
  width: 1.5625rem;
  height: 1.5625rem;
  position: absolute;
  top: -0.8rem;
  right: -0.7rem;
  transform: rotate(-20deg);
  filter: blur(0.5px);
  z-index: 1;
}
.la-card--listing .la-card__actions .la-card__sparkle::before, .la-card--listing .la-card__actions .la-card__sparkle::after {
  content: "";
  position: absolute;
}
.la-card--listing .la-card__actions .la-card__sparkle::before {
  width: 1px;
  height: 100%;
  left: 0.75rem;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.8), transparent);
}
.la-card--listing .la-card__actions .la-card__sparkle::after {
  width: 100%;
  height: 1px;
  top: 0.75rem;
  background: linear-gradient(to left, transparent, rgba(255, 255, 255, 0.8), transparent);
}
.la-card--listing .la-card__actions .la-card__favourite-toggle {
  position: relative;
  width: 2rem;
  height: 2rem;
}
.la-card--listing .la-card__actions .la-card__favourite-toggle.la-glass-container {
  border-radius: 50%;
  overflow: visible;
}
.la-card--listing .la-card__actions .la-card__favourite-toggle.la-glass-container:hover .la-glass-overlay {
  background: rgba(255, 255, 255, 0.35);
}
.la-card--listing .la-card__actions .la-card__favourite-toggle.la-glass-container:hover .la-glass-specular {
  box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.9), inset 0 0 8px rgba(255, 255, 255, 0.9);
}
.la-card--listing .la-card__actions .la-card__favourite-toggle.la-glass-container:has(.is-favourited) .la-glass-overlay {
  background: rgba(255, 255, 255, 0.4);
}
.la-card--listing .la-card__actions .la-card__favourite-toggle .la-favourite-container, .la-card--listing .la-card__actions .la-card__favourite-toggle .la-favourite-form {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-card--listing .la-card__actions .la-card__favourite-toggle .la-favourite-button {
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 50%;
  transition: transform 0.2s ease;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-card--listing .la-card__actions .la-card__favourite-toggle .la-favourite-button .la-favourite-button__icon {
  width: 1.25rem;
  height: 1.25rem;
}
.la-card--listing .la-card__actions .la-card__favourite-toggle .la-favourite-button:hover {
  transform: scale(1.1);
}
.la-card--listing .la-card__actions .la-card__favourite-toggle .la-favourite-button:active {
  transform: scale(0.95);
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button-wrapper.la-glass-container {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button-wrapper.la-glass-container .la-glass-overlay {
  background: rgba(255, 255, 255, 0.25);
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button-wrapper.la-glass-container .la-glass-specular {
  box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.75), inset 0 0 5px rgba(255, 255, 255, 0.75);
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button-wrapper.la-glass-container:hover .la-glass-overlay {
  background: rgba(255, 255, 255, 0.35);
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button-wrapper.la-glass-container:hover .la-glass-specular {
  box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.9), inset 0 0 8px rgba(255, 255, 255, 0.9);
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button {
  background-color: transparent;
  padding: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease;
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button .la-card__action-icon {
  color: #4F4F4F;
  height: 1.25rem;
  width: 1.25rem;
  margin: 0;
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button:hover {
  transform: scale(1.1);
  background-color: transparent;
  box-shadow: none;
}
.la-card--listing .la-card__actions .la-card__add-to-collection-button:active {
  transform: scale(0.95);
}
.la-card--listing .la-card__visual-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 0.75rem;
  overflow: hidden;
}
.la-card--listing .la-card__image {
  height: 15rem;
  overflow: hidden;
  position: relative;
}
.la-card--listing .la-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.5s ease;
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit;
}
.la-card--listing .la-card__image:hover img {
  transform: scale(1.05);
}
.la-card--listing .la-card__image .la-carousel {
  height: 100%;
}
.la-card--listing .la-card__content {
  padding: 0.5rem 0.75rem;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  background-color: var(--la-base-lightest, #FFF);
}
.la-card--listing .la-card__title {
  font-size: 0.9375rem;
  line-height: 1.25;
  font-weight: 600;
  margin: 0 0 0.125rem;
  color: var(--la-base-darkest, #262626);
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
}
.la-card--listing .la-card__title:hover {
  color: var(--la-brand-primary, #069393);
  text-decoration: underline;
}
.la-card--listing .la-card__location {
  font-size: 0.8125rem;
  color: var(--la-gray-700, #4F4F4F);
  margin-bottom: 0.25rem;
  display: flex;
  align-items: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.la-card--listing .la-card__location .la-icon {
  color: var(--la-brand-primary, #069393);
  margin-right: 0.25rem;
}
.la-card--listing .la-card__details {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0.25rem;
  margin-top: 0.1rem;
  flex: 1;
  background-color: var(--la-base-lightest, #FFF);
}
.la-card--listing .la-card__details--journey {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-bottom: 0.125rem;
}
.la-card--listing .la-card__details--journey::after {
  content: "";
  display: block;
  width: 100%;
  border-bottom: 1px solid var(--la-gray-100, #F9F9F9);
  margin-top: 0.125rem;
}
.la-card--listing .la-card__detail {
  display: flex;
  align-items: center;
  font-size: 0.75rem;
  color: var(--la-gray-700, #4F4F4F);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-right: 0.5rem;
  margin-bottom: 0.25rem;
}
.la-card--listing .la-card__detail-icon {
  margin-right: 0.375rem;
  flex-shrink: 0;
  color: var(--la-brand-primary, #069393);
}
.la-card--listing .la-card__detail-icon--duration {
  color: var(--la-brand-primary, #069393);
  stroke: var(--la-brand-primary, #069393);
}
.la-card--listing .la-card__detail-icon--location {
  color: var(--la-brand-primary, #069393);
  stroke: var(--la-brand-primary, #069393);
}
.la-card--listing .la-card__detail--duration {
  font-weight: 500;
}
.la-card--listing .la-card__detail--distance {
  color: var(--la-gray-700, #4F4F4F);
  font-weight: 400;
}
.la-card--listing .la-card__detail--primary {
  color: var(--la-gray-600, #757575);
  font-weight: 500;
  flex-basis: 100%;
  margin-bottom: 0.375rem;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
.la-card--listing .la-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  margin-top: auto;
  max-width: 100%;
  border-top: 1px solid var(--la-gray-100, #F9F9F9);
  margin-top: 0.25rem;
}
.la-card--listing .la-card__tags::before {
  content: "Tags:";
  display: flex;
  align-items: center;
  width: 100%;
  font-size: 0.6875rem;
  font-weight: 500;
  color: var(--la-gray-700, #4F4F4F);
  margin-bottom: 0.125rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23069393' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z'%3E%3C/path%3E%3Cline x1='7' y1='7' x2='7.01' y2='7'%3E%3C/line%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 18px;
}
.la-card--listing .la-card__tag {
  font-size: 0.5rem;
  font-weight: 500;
  padding: 0.1875rem 0.4375rem;
  border-radius: 10px;
  background-color: var(--la-gray-100, #F9F9F9);
  color: var(--la-gray-700, #4F4F4F);
  display: inline-flex;
  align-items: center;
  letter-spacing: 0.01em;
  transition: all 0.2s ease;
  border: 1px solid var(--la-gray-200, #F5F5F5);
}
.la-card--listing .la-card__tag--price {
  background-color: var(--la-blue-50, #D4DEFA);
  color: var(--la-blue-600, #4A7AD8);
  border-color: var(--la-blue-100, #8FABEE);
  font-weight: 500;
}
.la-card--listing .la-card__category.la-glass-container {
  position: absolute;
  top: 1rem;
  left: 1rem;
  border-radius: 1.25rem;
  z-index: 1;
  color: var(--la-gray-800, #333);
}
.la-card--listing .la-card__category.la-glass-container .la-glass-overlay {
  background: rgba(255, 255, 255, 0.5);
}
.la-card--listing .la-card__category.la-glass-container .la-glass-content {
  padding: 0.1875rem 0.5rem;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.0313rem;
}
.la-card--form {
  width: 100%;
  max-width: 31.25rem;
  margin: 0 auto;
  box-shadow: 0 0.125rem 1.25rem rgba(38, 38, 38, 0.1);
}
.la-card--form .la-card__header {
  padding: 1.5rem 1.5rem 0;
  border-bottom: none;
  text-align: center;
}
.la-card--form .la-card__header .la-card__title {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
}
.la-card--form .la-card__header .la-card__subtitle {
  color: var(--la-base-dark, #4F4F4F);
  margin-bottom: 1rem;
}
.la-card--form .la-card__body {
  padding: 1.5rem;
}
.la-card--form .la-card__footer {
  padding: 1rem 1.5rem;
  background-color: var(--la-base-lightest, #FFF);
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
  text-align: center;
  font-size: 0.875rem;
}
.la-card--form .la-card__footer a {
  color: var(--la-brand-primary, #069393);
  text-decoration: none;
}
.la-card--form .la-card__footer a:hover {
  text-decoration: underline;
}
.la-card-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  max-width: 75rem;
  margin: 0 auto;
  padding: 20px;
}
@media (min-width: 768px) {
  .la-card-container {
    justify-content: flex-start;
  }
}

.la-empty-state {
  grid-column: 1/-1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 3rem 1rem;
  margin: 2rem 0;
  min-height: 10rem;
  border: 1px dashed #F5F5F5;
  border-radius: 0.3rem;
  background-color: rgba(255, 255, 255, 0.5);
}
.la-empty-state h3 {
  font-size: 1.75rem;
  color: #333;
  margin-top: 0;
  margin-bottom: 1rem;
}
.la-empty-state p {
  font-size: 1rem;
  color: #4F4F4F;
  margin-bottom: 0;
  max-width: 30rem;
  line-height: 1.5;
}

/* app/assets/stylesheets/components/_chat.scss
 *
 * Chat Component
 *
 * BEM Structure:
 * .chat-container - Main wrapper
 * .chat-row - Flex row container
 * .chat-sidebar - Left sidebar with conversations list
 * .chat-sidebar__header - Sidebar header
 * .chat-sidebar__search - Search area
 * .chat-sidebar__list - Conversations list
 * .chat-conversation - Individual conversation in sidebar
 * .chat-conversation__avatar - User avatar in conversation list
 * .chat-conversation__content - Text content in conversation list
 * .chat-conversation__name - Username in conversation list
 * .chat-conversation__preview - Message preview in conversation list
 * .chat-conversation__time - Timestamp in conversation list
 * .chat-main - Right side with active conversation
 * .chat-main__header - Chat header with user info
 * .chat-main__messages - Messages container
 * .chat-main__footer - Input area
 * .chat-main__input - Message input field
 * .chat-main__send - Send button
 * .chat-main__empty - Empty state when no conversation selected
 */
.chat-container {
  width: 100%;
  height: calc(100vh - var(--la-navbar-height));
  display: flex;
  overflow: hidden;
  background-color: #FFF;
}

.chat-row {
  display: flex;
  height: 100%;
  width: 100%;
}

/* === CONVERSATIONS SIDEBAR === */
.chat-sidebar {
  flex: 0 0 20rem;
  background-color: #F5F5F5;
  border-right: 0.0625rem solid #F5F5F5;
  display: flex;
  flex-direction: column;
  height: 100%;
  max-height: 100%;
}

.chat-sidebar__header {
  height: 5rem;
  padding: 1.25rem;
  border-bottom: 0.0625rem solid #F5F5F5;
  position: sticky;
  top: 0;
  background-color: #F5F5F5;
  z-index: 10;
}

.chat-sidebar__search {
  padding: 0.9375rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.chat-sidebar__searchbar {
  height: 2.5rem;
  background-color: #FFF;
  width: 100%;
  padding: 0 0.9375rem;
  border-radius: 1.25rem;
  border: 0.0625rem solid #F5F5F5;
  display: flex;
  align-items: center;
  box-shadow: 0 0.125rem 0.3125rem rgba(38, 38, 38, 0.05);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.chat-sidebar__searchbar:focus-within {
  border-color: #069393;
  box-shadow: 0 0.125rem 0.5rem rgba(6, 147, 147, 0.15);
}

.la-chat__search-icon {
  width: 1rem;
  height: 1rem;
  color: #757575;
  margin-right: 0.5rem;
  transition: color 0.2s ease, transform 0.2s ease;
}
.la-chat__search-icon svg {
  stroke: currentColor;
  stroke-width: 2px;
  fill: none;
}
.la-chat__search-icon--sidebar {
  color: #757575;
}
.la-chat__search-icon--sidebar:hover {
  color: #069393;
  transform: scale(1.1);
}

.chat-sidebar__search-input {
  margin-left: 0.625rem;
  height: 2.375rem;
  width: 100%;
  border: none;
  font-family: Montserrat, sans-serif;
}
.chat-sidebar__search-input:focus {
  outline: none;
}

.chat-sidebar__list {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  flex: 1;
  min-height: 0;
}

.chat-conversation {
  padding: 0.9375rem 1.25rem;
  cursor: pointer;
  border-bottom: 0.0625rem solid #F5F5F5;
  display: flex;
  align-items: center;
  transition: background-color 0.2s ease;
  position: relative;
  text-decoration: none;
}
.chat-conversation:hover {
  background-color: #F5F5F5; /* Light Gray from style guide */
}
.chat-conversation--active {
  background-color: #F5F5F5;
}
.chat-conversation--active::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 0.25rem;
  background-color: #069393;
}

.chat-conversation__avatar {
  width: 2.8125rem;
  height: 2.8125rem;
  border-radius: 50%;
  overflow: visible; /* Changed from hidden to allow badge to overflow */
  flex-shrink: 0;
  position: relative;
}

.chat-conversation__avatar-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.chat-conversation__avatar-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F9F9F9;
  color: #4F4F4F;
  font-weight: 600;
  border: 1px solid #BDBDBD;
  border-radius: 50%;
}

.chat-conversation__status {
  position: relative;
  top: 1.875rem;
  left: 2.1875rem;
  width: 0.8125rem;
  height: 0.8125rem;
  background-color: #069393;
  border-radius: 0.8125rem;
  border: 0.1875rem solid #FFF;
}

/* Badge for unread message count */
.chat-conversation__badge {
  position: absolute;
  top: -0.3125rem;
  right: -0.3125rem;
  min-width: 1.125rem;
  height: 1.125rem;
  background-color: #F4B63E;
  color: #262626;
  border-radius: 0.5625rem;
  font-size: 0.6875rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.3125rem;
  box-shadow: 0 0.0625rem 0.1875rem rgba(38, 38, 38, 0.2);
  border: 0.0938rem solid #FFF;
  z-index: 2;
}

.chat-conversation__content {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-left: 0.9375rem;
}

.chat-conversation__name {
  margin: 0;
  font-family: Montserrat, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: #262626;
}
.chat-conversation__name--unread {
  font-weight: 700;
  color: #262626;
}

.chat-conversation__preview {
  margin: 0.25rem 0 0;
  font-family: Montserrat, sans-serif;
  font-size: 0.8125rem;
  color: #757575;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 11.25rem;
}

.chat-conversation__time {
  margin-left: auto;
  font-family: Montserrat, sans-serif;
  font-size: 0.6875rem;
  color: #757575;
  min-width: 2.8125rem;
  text-align: right;
}

/* === CHAT MAIN AREA === */
.chat-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  background-color: #FFF;
  max-height: 100%; /* Ensure it doesn't exceed container height */
  overflow: hidden; /* Hide overflow but allow children to scroll */
}

.chat-main__header {
  height: 5rem;
  padding: 1.25rem;
  border-bottom: 0.0625rem solid #F5F5F5;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.chat-main__user {
  display: flex;
  align-items: center;
}

.chat-main__avatar {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.chat-main__avatar-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.chat-main__avatar-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F5F5F5;
  color: #4F4F4F;
  font-weight: 600;
}

.chat-main__username {
  margin: 0 0 0 0.9375rem;
  font-family: Montserrat, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: #262626;
}

.chat-main__actions {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
}

.la-chat__action-icon {
  color: #757575;
  width: 1.25rem;
  height: 1.25rem;
  cursor: pointer;
  transition: color 0.2s ease, transform 0.2s ease;
}
.la-chat__action-icon:hover {
  color: #069393;
  transform: scale(1.1);
}
.la-chat__action-icon--settings {
  color: #4F4F4F;
}
.la-chat__action-icon--notification {
  color: #4F4F4F;
}
.la-chat__action-icon--video {
  color: #069393;
}
.la-chat__action-icon--call {
  color: #069393;
}
.la-chat__main-action-icon {
  color: #757575;
  width: 1.25rem;
  height: 1.25rem;
  cursor: pointer;
  transition: color 0.2s ease;
}
.la-chat__main-action-icon svg {
  stroke: currentColor;
  stroke-width: 2px;
  fill: none;
}
.la-chat__main-action-icon:hover {
  color: #069393;
}
.la-chat__main-action-icon--more {
  color: #4F4F4F;
}
.la-chat__main-action-icon--more:hover {
  color: #069393;
}
.la-chat__main-action-icon--settings {
  color: #4F4F4F;
}
.la-chat__main-action-icon--notification {
  color: #4F4F4F;
}
.la-chat__main-action-icon--video {
  color: #069393;
}
.la-chat__main-action-icon--call {
  color: #069393;
}

.chat-main__messages {
  padding: 1.25rem;
  overflow-y: auto;
  flex: 1;
  background-color: #F5F5F5;
  display: flex;
  flex-direction: column;
  min-height: 0; /* Critical for flexbox scrolling */
}

.chat-main__footer {
  padding: 0.9375rem 1.25rem;
  display: flex;
  align-items: flex-start; /* Align to top to allow for expansion */
  background-color: #FFF;
  border-top: 0.0625rem solid #F5F5F5;
  flex-shrink: 0; /* Prevent footer from shrinking */
  max-height: 15rem; /* Maximum height before scrolling */
  overflow: hidden; /* Hide overflow */
  transition: height 0.1s ease-out;
}

/* Removed emoji button styling as requested */
/* Custom message form styles */
.la-form--message {
  width: 100%;
}

.la-form__group--message {
  position: relative;
  width: 100%;
}

/* Override default textarea styles from _form.scss */
/* Message input styles - with higher specificity to override _form.scss */
.la-form.la-form--message textarea.la-form__input.la-form__input--message {
  /* Size constraints */
  min-height: 1.5rem;
  height: auto;
  max-height: 13rem;
  resize: none;
  /* Core styles */
  display: block;
  width: 100%;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 0.9375rem;
  line-height: 1.5;
  /* Visual styles */
  border: none;
  border-radius: 1.25rem;
  padding: 0.625rem 3.125rem 0.625rem 0.9375rem;
  background-color: #F9F9F9;
  /* Behavior */
  white-space: pre-wrap;
  word-wrap: break-word;
  transition: height 0.1s ease;
  overflow-y: hidden;
}
.la-form.la-form--message textarea.la-form__input.la-form__input--message:focus {
  outline: none;
  background-color: #FFF;
  box-shadow: 0 0 0 2px rgba(6, 147, 147, 0.2);
}

.la-btn--send {
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #069393;
  transition: color 0.2s ease;
}
.la-btn--send:hover {
  color: #05686C;
}

.la-chat__empty-icon {
  width: 3rem;
  height: 3rem;
  color: #F9F9F9;
  margin-bottom: 1.25rem;
  transition: color 0.2s ease, transform 0.2s ease;
}
.la-chat__empty-icon svg {
  stroke: currentColor;
  stroke-width: 2px;
  fill: none;
}
.la-chat__empty-icon:hover {
  color: #757575;
  transform: scale(1.05);
}
.la-chat__send-icon {
  color: #FFF;
  background-color: #069393;
  padding: 1rem;
  border-radius: 50%;
  font-size: 1.125rem;
  transition: background-color 0.2s ease, transform 0.2s ease;
}
.la-chat__send-icon svg {
  fill: currentColor;
  stroke: none;
}
.la-chat__send-icon:hover {
  background-color: #05686C;
  transform: scale(1.05);
}

.chat-main__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: #757575;
  text-align: center;
  padding: 3.125rem 0;
}

.chat-main__empty-text {
  margin: 0.625rem 0;
  font-size: 1rem;
}

/* Mobile responsiveness */
@media (width <= 768px) {
  .chat-container {
    height: calc(100vh - var(--la-navbar-height));
    flex-direction: column;
  }
  .chat-row {
    flex-direction: column;
  }
  .chat-sidebar {
    flex: 0 0 auto;
    max-height: 40vh;
    width: 100%;
    border-right: none;
    border-bottom: 0.0625rem solid #F5F5F5;
  }
  .chat-main {
    flex: 1;
    width: 100%;
  }
}
/* app/assets/stylesheets/components/_form.scss */
/* Base Form Styles - Following Explorers Design System */
.la-form {
  width: 100%;
  max-width: 100%;
  margin-bottom: var(--space-lg, 1rem);
  font-size: 1rem;
  line-height: 1.5;
  font-family: var(--body-font, "Work Sans", Helvetica, sans-serif);
}
.la-form--auth {
  max-width: 25.625rem;
  margin: 7.5rem auto;
  padding: 1.25rem 2.25rem 5rem;
  background: var(--la-base-lightest, #FFF);
  border: 0.0625rem solid #F9F9F9;
  border-radius: 0.75rem;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.09);
  position: relative;
}
.la-form--inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.la-form--inline .la-form__group {
  margin-right: 1rem;
  margin-bottom: 0;
}
.la-form--horizontal {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 768px) {
  .la-form--horizontal {
    grid-template-columns: 1fr 2fr;
  }
}
.la-form--horizontal .la-form__label {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

/* Form Group */
.la-form__group {
  margin-bottom: 1rem;
  width: 100%;
}

/* Form Label */
.la-form__label {
  display: inline-block;
  margin-bottom: var(--space-sm, 0.5rem);
  font-weight: 500;
  font-family: var(--headers-font, "Nunito", Helvetica, sans-serif);
  color: var(--la-base-dark, #4F4F4F);
}
.la-form__label--required::after {
  content: "*";
  color: var(--la-danger, #E25C3D);
  margin-left: var(--space-xs, 0.25rem);
}
.la-form__label--floating {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  padding: 1rem 0.75rem;
  pointer-events: none;
  border: 0.0625rem solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
.la-form__input:not(:-moz-placeholder-shown) ~ .la-form__label--floating {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
  color: var(--la-brand-primary, #069393); /* Change color on focus/input */
}
.la-form__input:focus ~ .la-form__label--floating, .la-form__input:not(:placeholder-shown) ~ .la-form__label--floating {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
  color: var(--la-brand-primary, #069393); /* Change color on focus/input */
}

/* Form Input */
.la-form__input {
  display: block;
  width: 100%;
  padding: 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--la-base-darkest, #262626);
  background-color: var(--la-base-lightest, #FFF);
  background-clip: padding-box;
  border: 0.0625rem solid var(--la-base-medium, #757575);
  border-radius: 0.5rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.la-form__input:focus {
  color: var(--la-base-darkest, #262626);
  background-color: var(--la-base-lightest, #FFF);
  border-color: var(--la-brand-primary, #069393);
  outline: 0;
  /* Enhanced focus state with Amazon-style focus ring */
  box-shadow: 0 0 0 0.0625rem var(--la-brand-primary, #069393), 0 0 0 0.25rem rgba(6, 147, 147, 0.25);
}
.la-form__input--error {
  border-color: var(--la-danger, #E25C3D);
}
.la-form__input--error:focus {
  border-color: var(--la-danger, #E25C3D);
  box-shadow: 0 0 0 0.25rem rgba(226, 92, 61, 0.25);
}
.la-form__input--success {
  border-color: var(--la-success, #069393);
}
.la-form__input--success:focus {
  border-color: var(--la-success, #069393);
  box-shadow: 0 0 0 0.25rem rgba(6, 147, 147, 0.25);
}
.la-form__input--lg {
  padding: 0.875rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.5rem;
}
.la-form__input--sm {
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  border-radius: 0.5rem;
}
.la-form__input--rounded {
  border-radius: 6.25rem;
}
.la-form__input[type=datetime-local], .la-form__input[type=date], .la-form__input[type=time] {
  min-height: 3rem;
  padding: 0.75rem;
  line-height: 1.5;
}

/* Input group with left icon */
.la-form__input-group {
  position: relative;
}
.la-form__input-group .la-form__input-group-text {
  position: absolute;
  top: 50%;
  left: 0.75rem;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  color: var(--la-base-medium, #757575);
}
.la-form__input-group .la-form__input-group-text svg {
  width: 1rem;
  height: 1rem;
}
.la-form__input-group .la-form__input-group-text svg, .la-form__input-group .la-form__input-group-text svg * {
  fill: none;
  stroke: currentColor;
}
.la-form__input-group .la-form__input {
  padding-left: 2.25rem;
  padding-right: 2.25rem;
}
.la-form__input-group .la-form__clear-btn {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  padding: 0;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--la-base-medium, #757575);
  cursor: pointer;
  transition: color 0.15s ease;
}
.la-form__input-group .la-form__clear-btn svg, .la-form__input-group .la-form__clear-btn svg * {
  width: 1rem;
  height: 1rem;
  stroke: currentColor;
  color: currentColor;
}
.la-form__input-group .la-form__clear-btn:hover {
  color: var(--la-brand-primary, #069393);
}
.la-form__input-group .la-form__clear-btn:focus {
  outline: none;
}
.la-form__input-group .la-form__input:-moz-placeholder-shown ~ .la-form__clear-btn {
  display: none;
}
.la-form__input-group .la-form__input:placeholder-shown ~ .la-form__clear-btn {
  display: none;
}

/* Text area specific styles */
textarea.la-form__input {
  min-height: 6.25rem;
  resize: vertical;
}

/* Select specific styles */
select.la-form__input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23262626' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 1rem 0.75rem;
  padding-right: 2.5rem;
}

/* Form Select (class-based variant used in admin filters) */
.la-form__select {
  display: block;
  width: 100%;
  padding: 0.625rem 2.5rem 0.625rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--la-base-darkest, #262626);
  background-color: var(--la-base-lightest, #FFF);
  border: 0.0625rem solid var(--la-base-medium, #757575);
  border-radius: 0.5rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23262626' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 1rem 0.75rem;
}
.la-form__select:focus {
  color: var(--la-base-darkest, #262626);
  background-color: var(--la-base-lightest, #FFF);
  border-color: var(--la-brand-primary, #069393);
  outline: 0;
  box-shadow: 0 0 0 0.0625rem var(--la-brand-primary, #069393), 0 0 0 0.25rem rgba(6, 147, 147, 0.25);
}

/* Checkbox and Radio styles */
.la-form__check {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
}
.la-form__check-input {
  width: 1rem;
  height: 1rem;
  margin-right: 0.5rem;
}
.la-form__check-input:checked {
  background-color: var(--la-brand-primary, #069393);
  border-color: var(--la-brand-primary, #069393);
}
.la-form__check-input:focus {
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.0625rem var(--la-brand-primary, #069393), 0 0 0 0.25rem rgba(6, 147, 147, 0.25);
}
.la-form__check-label {
  margin-bottom: 0;
}

/* Switch toggle */
.la-form__switch {
  position: relative;
  display: inline-block;
  width: 3rem;
  height: 1.5rem;
}
.la-form__switch-input {
  opacity: 0;
  width: 0;
  height: 0;
}
.la-form__switch-input:checked + .la-form__switch-slider {
  background-color: var(--la-brand-primary, #069393);
}
.la-form__switch-input:checked + .la-form__switch-slider::before {
  transform: translateX(1.5rem);
}
.la-form__switch-input:focus + .la-form__switch-slider {
  box-shadow: 0 0 0 0.25rem rgba(6, 147, 147, 0.25);
  border: 1px solid var(--la-brand-primary, #069393); /* Amazon-style focus ring */
}
.la-form__switch-slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background-color: #F5F5F5;
  transition: 0.4s;
  border-radius: 1.5rem;
}
.la-form__switch-slider::before {
  position: absolute;
  content: "";
  height: 1.25rem;
  width: 1.25rem;
  left: 0.125rem;
  bottom: 0.125rem;
  background-color: #FFF;
  transition: 0.4s;
  border-radius: 50%;
}

/* Form Text (help text, error messages) */
.la-form__text {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.875rem;
}
.la-form__text--muted {
  color: var(--la-base-dark, #4F4F4F);
}
.la-form__text--error {
  color: var(--la-danger, #E25C3D);
}
.la-form__text--success {
  color: var(--la-success, #069393);
}

/* Form Row for multiple inputs in a line */
.la-form__row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  /* Responsive form row that stacks on mobile */
}
.la-form__row .la-form__group {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  flex: 1 0 0%;
}
.la-form__row--responsive {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}
.la-form__row--responsive .la-form__group {
  flex: 1 0 0%;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  flex: 0 0 100%;
  max-width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 576px) {
  .la-form__row--responsive .la-form__group {
    flex: 1 0 0%;
    max-width: none;
    margin-bottom: 0;
  }
}

/* Form actions (buttons area) */
.la-form__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: var(--space-xl, 1.5rem);
  margin-bottom: var(--space-lg, 1rem);
  /* Responsive actions that stack on mobile */
}
.la-form__actions--end {
  justify-content: flex-end;
}
.la-form__actions--center {
  justify-content: center;
}
.la-form__actions--between {
  justify-content: space-between;
}
.la-form__actions--responsive {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
.la-form__actions--responsive .la-btn {
  width: 100%;
  margin-bottom: 0.5rem;
}
@media (min-width: 576px) {
  .la-form__actions--responsive {
    flex-direction: row;
  }
  .la-form__actions--responsive .la-btn {
    width: auto;
    margin-bottom: 0;
  }
}

/* Form divider with text - matching devise-signup-divider style */
.la-form__divider {
  border-top: 1px solid #F5F5F5;
  position: relative;
  margin-top: 10%;
  margin-bottom: 3%;
  height: 15px;
  text-align: center;
  font-size: 83.34%;
}
.la-form__divider-text {
  background-color: #FFF;
  padding: 0 0.5em;
  position: relative;
  color: #757575;
  top: -0.8em;
}

/* Form header with logo */
.la-form__header {
  text-align: center;
  margin-bottom: 1.5rem;
}
.la-form__header .la-form__logo {
  display: block;
  margin: 0 auto 1.25rem;
  width: 16rem;
  height: auto;
  max-width: 100%;
}
.la-form__header .la-form__title {
  font-size: 1.5rem;
  font-weight: 600;
  font-family: var(--headers-font, "Nunito", Helvetica, sans-serif);
  color: var(--la-base-darkest, #262626);
  margin-bottom: var(--space-sm, 0.5rem);
}
.la-form__header .la-form__subtitle {
  font-size: 1rem;
  color: var(--la-base-dark, #4F4F4F);
}

/* File Upload Styling */
.la-form__file-wrapper {
  position: relative;
}

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

.la-form__file-custom {
  display: flex;
  border: 1px solid var(--la-base-medium, #757575);
  border-radius: 8px;
  overflow: hidden;
}
.la-form__file-custom .la-form__file-text {
  flex-grow: 1;
  padding: 0.75rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.la-form__file-custom .la-form__file-button {
  padding: 0.75rem 1rem;
  background-color: var(--la-brand-primary, #069393);
  color: #FFF;
  cursor: pointer;
}

.la-form__file:focus ~ .la-form__file-custom {
  border-color: var(--la-brand-primary, #069393);
  box-shadow: 0 0 0 0.0625rem var(--la-brand-primary, #069393), 0 0 0 0.25rem rgba(6, 147, 147, 0.25);
}

/* Form with Icons Styling */
.la-form__group--with-icon {
  position: relative;
}

.la-form__input-wrapper {
  position: relative;
}

.la-form__input--with-icon {
  padding-left: 2.5rem;
}

.la-form__icon {
  position: absolute;
  left: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.25rem;
  height: 1.25rem;
  pointer-events: none;
  color: var(--la-base-medium, #757575);
}
.la-form__icon--search {
  left: auto;
  right: 0.75rem;
  color: var(--la-base-dark, #4F4F4F);
}
.la-form__icon--user {
  color: var(--la-brand-primary, #069393);
}
.la-form__icon--mail {
  color: var(--la-info, #4A7AD8);
}
.la-form__icon--lock {
  color: var(--la-warning, #F4B63E);
}

/* Search Form Styling */
.la-form--search {
  position: relative;
}
.la-form--search .la-form__input {
  padding-right: 2.5rem;
}
.la-form--search .la-form__icon {
  left: auto;
  right: 0.75rem;
}
.la-form--search .la-form__input-group-text {
  color: var(--la-base-dark, #4F4F4F);
}

.la-form__icon-button {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.la-form__icon-toggle {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--la-base-medium, #757575);
}
.la-form__icon-toggle--eye {
  color: var(--la-base-dark, #4F4F4F);
}
.la-form__icon-toggle--eye:hover {
  color: var(--la-brand-primary, #069393);
}

/* Form footer */
.la-form__footer {
  text-align: center;
  margin-top: 1.5rem;
  font-size: 0.875rem;
  color: #757575;
}
.la-form__footer a {
  color: var(--la-brand-primary, #069393);
  text-decoration: none;
}
.la-form__footer a:hover {
  color: var(--la-brand-dark, #05686C);
  text-decoration: underline;
}

/* Button styles - consolidated system */
/* Legacy Devise auth form button styles - maintained for backward compatibility */
.devise-submit {
  width: 100%;
  padding: 10px 15px;
  background-color: var(--la-brand-primary, #069393);
  color: #FFF;
  border: none;
  border-radius: 100px;
  margin-top: 4%;
  cursor: pointer;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
.devise-submit:hover {
  background-color: var(--la-brand-dark, #05686C);
}

.devise-signup-button {
  display: block;
  width: 100%;
  padding: 10px 15px;
  background-color: #FFF;
  color: #262626;
  border: 1px solid #F5F5F5;
  border-radius: 100px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
.devise-signup-button:hover {
  background-color: #FFF;
  color: var(--la-brand-dark, #05686C);
  border-color: var(--la-brand-dark, #05686C);
}

.devise-signup-divider {
  border-top: 1px solid #F5F5F5;
  position: relative;
  margin-top: 10%;
  margin-bottom: 3%;
  height: 15px;
  text-align: center;
  font-size: 83.34%;
}
.devise-signup-divider .separator-text {
  background-color: #FFF;
  padding: 0 0.5em;
  position: relative;
  color: #757575;
  top: -0.8em;
}

/* Migration note: The above styles are maintained for backward compatibility.
   New implementations should use the consolidated la-btn system below. */
/* Mobile-first responsive styles */
.la-form--auth {
  padding: 15px 20px 60px;
  margin: 80px auto;
}
@media (min-width: 576px) {
  .la-form--auth {
    padding: 1.25rem 2.25rem 5rem;
    margin: 7.5rem auto;
  }
}

.la-form__row {
  flex-direction: column;
}
.la-form__row .la-form__group {
  flex: 0 0 100%;
}
@media (min-width: 576px) {
  .la-form__row {
    flex-direction: row;
  }
  .la-form__row .la-form__group {
    flex: 1 0 0%;
  }
}

legend ~ div.form-check:first-of-type {
  clear: left;
}

.friend-card {
  background: #FFF;
  border-radius: 0.75rem;
  padding: 0.75rem;
  transition: all 0.3s ease-out;
  border: 0.0625rem solid #F5F5F5;
}
@media (min-width: 576px) {
  .friend-card {
    padding: 1rem;
  }
}
.friend-card__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
@media (min-width: 576px) {
  .friend-card__content {
    gap: 1rem;
  }
}
.friend-card__user {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media (min-width: 576px) {
  .friend-card__user {
    gap: 1rem;
  }
}
.friend-card__avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  overflow: hidden;
}
@media (min-width: 576px) {
  .friend-card__avatar {
    width: 3rem;
    height: 3rem;
  }
}
.friend-card__avatar-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.friend-card__avatar-placeholder {
  width: 100%;
  height: 100%;
  background: #F5F5F5;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  color: #757575;
}
.friend-card__name {
  font-size: 1rem;
  font-weight: 500;
  color: #262626;
  margin: 0;
}
.friend-card__remove-button {
  background: none;
  border: none;
  color: #E25C3D;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: all 0.2s;
}
.friend-card__remove-button:hover {
  background: rgba(226, 92, 61, 0.1);
}
.friend-card.removing {
  opacity: 0;
  transform: translateX(-10px);
}

/* Basic resets & utility */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* 
 * Note: Global styles like body background should be defined in the design system, 
 * not in component-specific stylesheets. The page background is now set in _bootstrap_variables.scss
 */
.friendship-center {
  font-family: var(--la-body-font, "Work Sans", "Helvetica", "sans-serif");
  color: var(--la-base-dark, #4F4F4F);
}

a, button {
  text-decoration: none;
  cursor: pointer;
}

/* Shared classes (mimic Tailwind utilities) */
.flex-1 {
  flex: 1;
}

.w-100 {
  width: 100%;
}

/* Container for the entire page content */
.friendships-center {
  width: 100%;
  max-width: 72rem; /* ~ 'max-w-6xl' in Tailwind */
  margin: 0 auto;
  padding: 1.5rem;
  background: #FFF;
  border-radius: 0.375rem;
}
.friendships-center__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
}
.friendships-center__header-content .page-title {
  font-size: 1.875rem;
  font-weight: 700;
  color: #262626;
  margin-bottom: 0.25rem;
}
.friendships-center__header-content .page-subtitle {
  font-size: 0.875rem;
  color: #757575;
}
.friendships-center .add-friend-button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

/* Tabs styling using our design system */
.tabs {
  position: relative;
}
.tabs__nav {
  display: inline-flex;
  height: 3rem;
  align-items: center;
  background-color: var(--la-base-lightest, #FFF);
  padding: 0.25rem;
  border-radius: var(--la-border-radius, 0.25rem);
  margin-bottom: 2rem;
}
.tabs__nav-item {
  padding: 0.5rem 1rem;
  border-radius: var(--la-border-radius-sm, 0.2rem);
  color: var(--la-base-dark, #4F4F4F);
  font-weight: var(--la-font-weight-medium, 500);
  transition: all 0.2s ease-in-out;
  background-color: transparent;
  border: none;
  margin-right: 0.25rem;
}
.tabs__nav-item.active {
  background-color: var(--la-white, #FFF);
  color: var(--la-primary, #069393);
}
.tabs__nav-item:hover:not(.active) {
  background-color: var(--la-base-lighter, #F9F9F9);
  color: var(--la-base-darker, #333);
}
.tabs__content {
  display: none;
}
.tabs__content.active {
  display: block;
}

/* Cards Grid Layout (friends & requests) */
.cards-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .cards-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Spacing helper for requests content */
.space-y-8 > * + * {
  margin-top: 2rem;
}

/* Section headings inside requests */
.section-header {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

/* Card styles (shared) */
.card {
  background: #FFF;
  border-radius: 0.375rem;
  border: 0.0625rem solid #F5F5F5;
  box-shadow: 0 0.0625rem 0.1875rem rgba(38, 38, 38, 0.05);
  transition: box-shadow 0.2s ease;
}
.card:hover {
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.1);
}
.card .card-header {
  padding: 1rem;
  border-bottom: 0.0625rem solid #F5F5F5;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.card .card-content {
  padding: 1rem;
}

/* Friend Card specifics */
.friend-card {
  /* Header styles are inherited from the card component */
  /* Dropdown actions (3-dot menu) */
}
.friend-card__user {
  display: flex;
  align-items: center;
}
.friend-card__avatar {
  position: relative;
  width: 3rem;
  height: 3rem;
}
.friend-card__avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  background-color: #FFF;
}
.friend-card__avatar-placeholder {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #D4DEFA;
  color: #4A7AD8;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 0.875rem;
  text-transform: uppercase;
}
.friend-card__status {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0.75rem;
  height: 0.75rem;
  border: 0.125rem solid #FFF;
  border-radius: 624.9375rem;
}
.friend-card__status.online {
  background-color: #069393;
}
.friend-card__status.offline {
  background-color: #757575;
}
.friend-card__info {
  margin-left: 0.75rem;
}
.friend-card__name {
  font-size: 1.125rem;
  font-weight: 500;
  color: #333;
  margin-bottom: 0.25rem;
}
.friend-card__last-active, .friend-card__mutual-friends, .friend-card__time {
  font-size: 0.875rem;
  color: #4F4F4F;
  display: flex;
  align-items: center;
}
.friend-card__last-active i, .friend-card__mutual-friends i, .friend-card__time i {
  font-size: 0.75rem;
  margin-right: 0.375rem;
}
.friend-card__footer {
  border-top: 0.0625rem solid #F9F9F9;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.friend-card__stat {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.875rem;
  color: #4F4F4F;
}
.friend-card__stat i {
  font-size: 1rem;
  color: #757575;
}
.friend-card__actions {
  position: relative;
}
.friend-card__menu-button {
  background: none;
  border: none;
  padding: 0.5rem;
  color: #4F4F4F;
  transition: color 0.2s ease;
}
.friend-card__menu-button:hover {
  color: #333;
}
.friend-card__dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  background-color: #FFF;
  border-radius: 0.5rem;
  box-shadow: 0 0.125rem 0.375rem rgba(38, 38, 38, 0.1);
  min-width: 12rem;
  z-index: 10;
}
.friend-card__dropdown.active {
  display: block;
}
.friend-card__dropdown-item {
  display: flex;
  align-items: center;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
  color: #333;
  width: 100%;
  border: none;
  background: none;
  text-align: left;
}
.friend-card__dropdown-item i {
  margin-right: 0.75rem;
}
.friend-card__dropdown-item:hover {
  background-color: #FFF;
}
.friend-card__dropdown-item--danger {
  color: #E25C3D;
}
.friend-card__dropdown-item--danger:hover {
  background-color: #F19B85;
}

/* Request Cards layout overrides */
.request-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.request-actions {
  margin-top: 1rem;
  display: flex;
  gap: 0.5rem;
}

/* Button styling handled by _buttons.scss */
.request-actions .la-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.5rem 1rem;
  border: none;
  border-radius: 0.25rem;
  gap: 0.375rem;
}
.request-actions .la-btn.btn-primary {
  background: #2B5CAA;
  color: #FFF;
}
.request-actions .la-btn.btn-primary:hover {
  background: #2B5CAA;
}
.request-actions .la-btn.btn-success {
  background-color: #07B4B4;
  color: #05686C;
  border: 0.0625rem solid #069393;
}
.request-actions .la-btn.btn-success:hover {
  background-color: #7CC8C8;
}
.request-actions .la-btn.btn-danger {
  background-color: #F19B85;
  color: #C0472D;
  border: 1px solid #E25C3D;
}
.request-actions .la-btn.btn-danger:hover {
  background-color: #F19B85;
}
.request-actions .la-btn.btn-outline-danger {
  background-color: #FFF;
  color: #C0472D;
  border: 1px solid #E25C3D;
}
.request-actions .la-btn.btn-outline-danger:hover {
  background-color: #F19B85;
}

/* Icon Component
 *
 * BEM Structure:
 * .la-icon - Base component for all SVG icons
 * .la-icon--{name} - Specific icon variant (e.g., la-icon--search)
 * .la-icon--{size} - Size variant (e.g., la-icon--sm, la-icon--lg)
 * .la-icon--interactive - Adds hover and active states
 * .la-icon--{state} - State variants (e.g., la-icon--active, la-icon--disabled)
 *
 * Accessibility:
 * - Decorative icons should have aria-hidden="true"
 * - Functional icons should have aria-label or aria-labelledby
 */
.la-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  vertical-align: middle;
  transition: transform 0.2s ease, color 0.2s ease;
}
.la-icon svg {
  width: 100%;
  height: 100%;
  stroke-width: 2;
  stroke: currentColor;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.la-icon--xs {
  width: 0.75rem;
  height: 0.75rem;
}
.la-icon--sm {
  width: 1rem;
  height: 1rem;
}
.la-icon--md {
  width: 1.25rem;
  height: 1.25rem;
}
.la-icon--lg {
  width: 1.5rem;
  height: 1.5rem;
}
.la-icon--xl {
  width: 2rem;
  height: 2rem;
}
.la-icon--interactive {
  cursor: pointer;
}
.la-icon--interactive:hover {
  transform: scale(1.1);
  color: #069393;
}
.la-icon--interactive:active {
  transform: scale(0.95);
}
.la-icon--active {
  color: #069393;
}
.la-icon--disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.la-icon--primary {
  color: #069393;
}
.la-icon--secondary {
  color: #4F4F4F;
}
.la-icon--white {
  color: #FFF;
}
.la-icon--light {
  color: #F5F5F5;
}
.la-icon--success {
  color: #069393;
}
.la-icon--warning {
  color: #F4B63E;
}
.la-icon--danger {
  color: #E25C3D;
}
.la-icon--info {
  color: #4A7AD8;
}
.la-icon--dark {
  color: #333;
}
.la-icon--filled svg {
  fill: currentColor;
}

/* Migration Complete
 *
 * All legacy icon usages have been successfully migrated to the BEM-based svg_icon helper
 * with component-specific classes. The old .icon class has been completely removed.
 *
 * Key points for icon usage:
 * 1. Always use the svg_icon helper: svg_icon("icon-name", component_class: "component-specific-classes")
 * 2. Apply fill/stroke styles according to the icon's purpose:
 *    - Filled icons for primary actions and status indicators
 *    - Outline icons for secondary actions and UI navigation
 * 3. Use component-specific BEM classes for sizing and positioning
 *
 * For full documentation, see docs/icon_system_usage.md
 */
/* app/assets/stylesheets/components/_image_uploader.scss */
.la-image-uploader {
  margin-bottom: 1.5rem;
}
.la-image-uploader__dropzone {
  border: 2px dashed var(--la-base-light, #F5F5F5);
  border-radius: 0.25rem;
  padding: 1.5rem;
  text-align: center;
  background-color: var(--la-base-lightest, #FFF);
  transition: all 0.2s ease;
  cursor: pointer;
  position: relative;
  min-height: 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.la-image-uploader__dropzone:hover, .la-image-uploader__dropzone--dragover {
  border-color: var(--la-brand-primary, #069393);
  background-color: rgb(241.9625, 250.1875, 250.1875);
}
.la-image-uploader__dropzone--dragover {
  border-style: solid;
}
.la-image-uploader__dropzone__icon {
  font-size: 2rem;
  color: var(--la-brand-primary, #069393);
  margin-bottom: 0.75rem;
}
.la-image-uploader__dropzone__text {
  color: var(--la-base-dark, #4F4F4F);
  margin-bottom: 0.5rem;
  font-weight: 500;
}
.la-image-uploader__dropzone__subtext {
  color: var(--la-base-medium, #757575);
  font-size: 0.875rem;
}
.la-image-uploader__dropzone__input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.la-image-uploader__preview-container {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1rem;
}
.la-image-uploader__preview-item {
  position: relative;
  width: 120px;
  border: 1px solid var(--la-base-light, #F5F5F5);
  border-radius: 0.2rem;
  padding: 0.5rem;
  background-color: var(--la-base-lightest, #FFF);
  transition: all 0.2s ease;
}
.la-image-uploader__preview-item:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.la-image-uploader__preview-item:hover .la-image-uploader__remove-btn {
  opacity: 1;
}
.la-image-uploader__preview-image {
  width: 100%;
  height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: calc(0.2rem - 2px);
  margin-bottom: 0.5rem;
}
.la-image-uploader__remove-btn {
  position: absolute;
  top: -0.5rem;
  right: -0.5rem;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: var(--la-danger-medium, #E25C3D);
  color: var(--la-white, #FFF);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.2s ease, background-color 0.2s ease;
  font-size: 0.75rem;
}
.la-image-uploader__remove-btn:hover {
  background-color: var(--la-danger-dark, #C0472D);
}
.la-image-uploader__filename {
  font-size: 0.75rem;
  color: var(--la-base-medium, #757575);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
}
.la-image-uploader__progress {
  height: 4px;
  width: 100%;
  background-color: var(--la-base-lightest, #FFF);
  border-radius: 2px;
  margin-top: 0.5rem;
  overflow: hidden;
}
.la-image-uploader__progress-bar {
  height: 100%;
  background-color: var(--la-brand-primary, #069393);
  width: 0;
  transition: width 0.3s ease;
}
.la-image-uploader__error {
  color: var(--la-danger-medium, #E25C3D);
  font-size: 0.875rem;
  margin-top: 0.5rem;
}
.la-image-uploader__existing-images {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 0.5rem;
  margin-bottom: 1.5rem;
}
.la-image-uploader__existing-images .la-image-uploader__preview-item {
  width: 116px;
  padding: 0.5rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  box-sizing: border-box;
  height: auto;
}
.la-image-uploader__existing-images .la-image-uploader__image-wrapper {
  width: 100px;
  height: 80px;
  margin: 0 auto 0.5rem auto;
  border-radius: 0.15rem;
  overflow: hidden;
}
.la-image-uploader__existing-images .la-image-uploader__image-wrapper .la-image-uploader__preview-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  margin-bottom: 0;
}
.la-image-uploader__existing-images .la-image-uploader__controls {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  margin-bottom: 0.25rem;
  font-size: 0.75rem;
}
.la-image-uploader__existing-images .la-image-uploader__controls .la-image-uploader__delete-checkbox {
  display: flex;
  align-items: center;
  cursor: pointer;
  color: var(--la-base-dark, #4F4F4F);
  padding: 0.15rem 0;
}
.la-image-uploader__existing-images .la-image-uploader__controls .la-image-uploader__delete-checkbox input[type=checkbox] {
  margin-right: 0.35rem;
  accent-color: var(--la-danger-medium, #E25C3D);
  transform: scale(0.9);
  cursor: pointer;
  vertical-align: middle;
}
.la-image-uploader__existing-images .la-image-uploader__controls .la-image-uploader__delete-checkbox span:hover {
  text-decoration: underline;
  color: var(--la-danger-medium, #E25C3D);
}
.la-image-uploader__existing-images .la-image-uploader__filename {
  font-size: 0.75rem;
  color: var(--la-base-medium, #757575);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  width: 100%;
}

.la-image--error {
  border: 1px solid var(--la-danger-light, #F19B85);
  background-color: var(--la-base-lightest, #FFF);
}

.la-image-uploader__server-errors {
  margin-bottom: 1rem;
}
.la-image-uploader__server-error {
  background-color: var(--la-danger-lightest, #FADDDB);
  border-radius: 4px;
  color: var(--la-danger-dark, #C0472D);
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
  padding: 0.75rem 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.la-image-uploader__server-error::before {
  content: "⚠️";
  font-size: 1rem;
}
.la-image-uploader--has-error .la-image-uploader__dropzone {
  border: 2px dashed var(--la-danger-medium, #E25C3D);
  background-color: var(--la-danger-lightest, #FADDDB);
}

.la-location-autocomplete {
  margin-bottom: 1.5rem;
}
.la-location-autocomplete__toggle-container {
  display: flex;
  align-items: center;
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}
.la-location-autocomplete__nested-fields {
  border: 1px solid #BDBDBD;
  border-radius: 0.5rem;
  padding: 1.25rem;
  margin-top: 1rem;
  background-color: #F9F9F9;
}
.la-location-autocomplete__nested-fields.hidden {
  display: none;
}
.la-location-autocomplete__nested-header {
  display: flex;
  align-items: center;
  margin-bottom: 1.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #F5F5F5;
}
.la-location-autocomplete__nested-title {
  font-size: 1rem;
  font-weight: 600;
  color: #069393;
  margin: 0;
}
.la-location-autocomplete__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1rem;
}
.la-location-autocomplete__grid-col {
  flex: 1 1 calc(50% - 0.5rem);
  min-width: 250px;
}
.la-location-autocomplete .pac-container {
  border-radius: 0.375rem;
  border: 1px solid #BDBDBD;
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  font-family: "Work Sans", "Helvetica", "sans-serif";
  margin-top: 0.25rem;
  z-index: 2000;
}
.la-location-autocomplete .pac-container::after {
  display: none;
}
.la-location-autocomplete .pac-item {
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  cursor: pointer;
}
.la-location-autocomplete .pac-item:hover {
  background-color: #F9F9F9;
}
.la-location-autocomplete .pac-item-query {
  font-size: 0.875rem;
  color: #262626;
}
.la-location-autocomplete .pac-matched {
  font-weight: 600;
  color: #069393;
}
.la-location-autocomplete .la-form__input--disabled {
  background-color: #F5F5F5;
  cursor: not-allowed;
}

.la-form__header-with-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}
.la-form__header-with-actions .la-form__label {
  margin-bottom: 0;
}

.la-form__help-text {
  font-size: 0.75rem;
  color: #757575;
  margin-top: 0.25rem;
  margin-bottom: 0.5rem;
}

.la-location-dropdown {
  position: relative;
  width: 100%;
  z-index: 1000;
}
.la-location-dropdown__search-container {
  margin-bottom: 1rem;
}
.la-location-dropdown__input-wrapper {
  position: relative;
}
.la-location-dropdown__results {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: #ffffff;
  border-radius: 0 0 0.375rem 0.375rem;
  border: 1px solid #BDBDBD;
  border-top: none;
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  max-height: 18.75rem;
  overflow-y: auto;
  z-index: 1001;
  display: none;
}
.la-location-dropdown__results--visible {
  display: block;
}
.la-location-dropdown__section {
  padding: 0.5rem 0;
  border-bottom: 1px solid #F5F5F5;
}
.la-location-dropdown__section:last-child {
  border-bottom: none;
}
.la-location-dropdown__section-title {
  font-size: 0.75rem;
  font-weight: 600;
  color: #757575;
  padding: 0.25rem 0.75rem;
  text-transform: uppercase;
}
.la-location-dropdown__item {
  padding: 0.5rem 0.75rem;
  cursor: pointer;
  transition: background-color 0.2s;
}
.la-location-dropdown__item:hover, .la-location-dropdown__item:focus {
  background-color: #F9F9F9;
}
.la-location-dropdown__item-name {
  font-size: 0.875rem;
  font-weight: 500;
  color: #262626;
}
.la-location-dropdown__item-address {
  font-size: 0.75rem;
  color: #4F4F4F;
  margin-top: 0.125rem;
}
.la-location-dropdown__manual-option {
  padding: 0.75rem;
  border-top: 1px solid #F5F5F5;
  color: #069393;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-location-dropdown__manual-option:hover {
  background-color: #F9F9F9;
}
.la-location-dropdown__loading, .la-location-dropdown__no-results {
  padding: 0.75rem;
  text-align: center;
  color: #757575;
  font-size: 0.875rem;
}
.la-location-dropdown__manual-form {
  margin-top: 0.75rem;
  padding: 1rem;
  border: 1px solid #BDBDBD;
  border-radius: 0.375rem;
  background-color: #F9F9F9;
}
.la-location-dropdown__manual-form.hidden {
  display: none;
}
.la-location-dropdown__manual-form .la-form__group {
  margin-bottom: 1rem;
}
.la-location-dropdown__manual-form .la-form__label {
  font-weight: 600;
}
.la-location-dropdown__field {
  margin-bottom: 0.75rem;
}
.la-location-dropdown__field:last-child {
  margin-bottom: 0;
}
.la-location-dropdown__field label {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  color: #4F4F4F;
  margin-bottom: 0.25rem;
}
.la-location-dropdown__actions {
  margin-top: 1rem;
  display: flex;
  justify-content: flex-end;
}
.la-location-dropdown .la-form__input--disabled {
  background-color: #F5F5F5;
  cursor: not-allowed;
}

/* Listings Grid Error Component
---------------------------
A component for displaying error messages in the listings grid.
Follows BEM methodology with la- prefix.
*/
.la-listings-error {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 2rem;
  margin: 1.5rem auto;
  max-width: 30rem;
  background-color: hsl(11.2727272727, 73.9910313901%, 121.2745098039%);
  border: 0.0625rem solid #F19B85;
  border-radius: 0.3rem;
  color: rgb(94.3901345291, 29.1928251121, 14.1098654709);
}
.la-listings-error__icon {
  margin-bottom: 1rem;
}
.la-listings-error__icon svg {
  width: 3rem;
  height: 3rem;
  color: #E25C3D;
}
.la-listings-error__content {
  width: 100%;
}
.la-listings-error__title {
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0 0 0.75rem;
  color: inherit;
}
.la-listings-error__details {
  margin: 0 0 1.5rem;
  font-size: 0.875rem;
  opacity: 0.9;
}
.la-listings-error__button {
  margin-top: 1rem;
}
@media (width <= 640px) {
  .la-listings-error {
    padding: 1.5rem;
    margin: 1rem 0.75rem;
  }
}

/* app/assets/stylesheets/components/_message.scss
 *
 * Message Component
 *
 * BEM Structure:
 * .message - Base component
 * .message__content - Container for message content
 * .message__avatar - User avatar for received messages
 * .message__bubble - Message bubble containing text
 * .message__text - Actual message text
 * .message__footer - Container for timestamp
 * .message__timestamp - Time display
 * .message__actions - Edit/delete actions
 * .message__edit-form - Form for editing messages
 *
 * Modifiers:
 * .message--sent - Styling for sent messages
 * .message--received - Styling for received messages
 * .message--editing - State when message is being edited
 */
.message {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.25rem;
  max-width: 80%;
  width: auto;
  position: relative;
}
.message--sent {
  align-self: flex-end;
}
.message--sent:hover .message__actions, .message--sent:focus-within .message__actions, .message--sent.show-actions .message__actions {
  display: flex;
  opacity: 1;
  visibility: visible;
}
.message--sent .message__bubble {
  background-color: #069393;
  color: #FFF;
  border-bottom-right-radius: 0.25rem;
}
.message--sent .message__timestamp {
  color: rgba(255, 255, 255, 0.6);
}
.message--received {
  align-self: flex-start;
}
.message--received .message__bubble {
  background-color: #F5F5F5;
  color: #262626;
  border-bottom-left-radius: 0.25rem;
  margin-left: 0.75rem;
}
.message--received .message__timestamp {
  color: rgba(117, 117, 117, 0.6);
}
.message--received .message__footer {
  justify-content: flex-start;
}

.message__content {
  display: flex;
  width: 100%;
  position: relative;
}

.message__avatar {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  place-self: flex-start;
}
.message__avatar-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.message__avatar-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F5F5F5;
  color: #069393;
  font-weight: 600;
}

.message__bubble {
  padding: 0.75rem 0.9375rem;
  border-radius: 1.125rem;
  font-size: 0.875rem;
  box-shadow: 0 0.0625rem 0.125rem rgba(38, 38, 38, 0.05);
  display: flex;
  flex-direction: column;
  min-width: -moz-fit-content;
  min-width: fit-content;
  max-width: 100%;
  width: auto;
}
.message__bubble:hover .message__timestamp {
  opacity: 0.8;
}

.message__text {
  margin-bottom: 0.25rem;
  word-wrap: break-word;
}

.message__footer {
  display: flex;
  justify-content: flex-end;
  font-size: 0.6875rem;
  margin-top: 0.125rem;
}

.message__timestamp {
  font-size: 0.5625rem;
  opacity: 0.6;
  font-weight: 300;
  letter-spacing: 0.02em;
  transition: opacity 0.2s ease;
}

.message__edited {
  font-size: 0.6875rem;
  color: #757575;
  margin-left: 0.25rem;
  font-style: italic;
}

.message__actions {
  display: flex;
  position: absolute;
  right: 0;
  bottom: -1.875rem;
  background-color: #FFF;
  border-radius: 0.75rem;
  box-shadow: 0 0.125rem 0.5rem rgba(38, 38, 38, 0.1);
  padding: 0.125rem;
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0s linear 0.2s;
  transition-delay: 0.3s; /* Add delay before hiding */
  /* Ensure actions stay visible when hovering over them */
}
.message__actions:hover {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
}
.message__actions:hover, .message__actions:focus-within {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
}

.message__action-btn {
  background: none;
  border: none;
  color: #757575;
  cursor: pointer;
  padding: 0.25rem 0.375rem;
  margin: 0;
  transition: color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.message__action-btn:hover {
  color: #069393;
}

.message__action-icon {
  width: 1rem;
  height: 1rem;
}

.message__edit-form {
  width: auto;
  max-width: 100%;
  padding: 0;
  margin: 0;
  position: relative;
  display: inline-block;
  align-self: flex-end;
}

.message__edit-form-inner {
  display: flex;
  flex-flow: column wrap;
  align-content: flex-end;
  width: 100%;
}

.message__edit-input {
  padding: 0.75rem 0.9375rem;
  border: 0.0625rem solid #F5F5F5;
  border-radius: 1.125rem;
  font-size: 0.875rem;
  width: 100%;
  min-width: -moz-fit-content;
  min-width: fit-content;
  background-color: #FFF;
  min-height: 2.5rem;
  resize: none;
  overflow: hidden;
  box-shadow: 0 0.0625rem 0.125rem rgba(38, 38, 38, 0.05);
  box-sizing: border-box;
  transition: height 0.1s ease, width 0.1s ease, border-color 0.2s ease;
  margin-bottom: 0.5rem;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.message__edit-input:focus {
  outline: none;
  border-color: #069393;
  box-shadow: 0 0 0 2px rgba(6, 147, 147, 0.2);
}

.message__edit-buttons {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 0.25rem;
}

.message__edit-icon {
  width: 0.875rem;
  height: 0.875rem;
}

.message__edit-save {
  background-color: #069393;
  color: #FFF;
  border: none;
  border-radius: 0.25rem;
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.message__edit-save:hover {
  background-color: #05686C;
}

.message__edit-cancel {
  background: none;
  border: none;
  color: #757575;
  text-decoration: none;
  font-size: 0.75rem;
  padding: 0.25rem 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.message__edit-cancel:hover {
  color: #262626;
}

.hidden {
  display: none !important;
}

#textarea-measure {
  position: absolute;
  visibility: hidden;
  height: auto;
  width: auto;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: hidden;
  padding: 0.75rem 0.9375rem;
  font-size: 0.875rem;
  top: -9999px;
  left: -9999px;
  font-family: inherit;
  max-width: none;
}

.message-date-header {
  display: flex;
  justify-content: center;
  margin: 1.25rem 0 0.625rem;
  position: relative;
  z-index: 1;
}
.message-date-header::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 0.0625rem;
  background-color: #F5F5F5;
  z-index: -1;
}
.message-date-header span {
  background-color: #F5F5F5;
  color: #757575;
  font-size: 0.75rem;
  padding: 0.25rem 0.75rem;
  border-radius: 0.75rem;
  font-weight: 500;
  box-shadow: 0 0.0625rem 0.1875rem rgba(38, 38, 38, 0.05);
}

body.la-modal-open {
  overflow: hidden;
  padding-right: var(--space-md, 0.75rem);
}
body.la-modal-open::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.la-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1050;
  overflow: hidden;
  outline: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s cubic-bezier(0.19, 1, 0.22, 1), visibility 0.35s cubic-bezier(0.19, 1, 0.22, 1);
  display: flex;
  align-items: center;
  justify-content: center;
  will-change: opacity, visibility;
}
.la-modal.active {
  opacity: 1;
  visibility: visible;
}
.la-modal[aria-hidden=false] {
  pointer-events: auto;
}
.la-modal[aria-hidden=true] {
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
  .la-modal {
    transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
  }
}

.la-modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(38, 38, 38, 0.6);
  z-index: 1040;
  opacity: 0;
  transition: opacity 0.45s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-backdrop-filter: blur(0.125rem);
          backdrop-filter: blur(0.125rem);
  will-change: opacity;
}
.la-modal__overlay.active {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .la-modal__overlay {
    transition: opacity 0.2s ease-out;
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
  }
}

.la-modal__dialog {
  position: relative;
  width: auto;
  margin: var(--space-xl, 1.5rem);
  max-width: 25.625rem;
  pointer-events: none;
  transform: translateY(-3.125rem) scale(0.95);
  z-index: 1050;
  will-change: transform;
  opacity: 0;
  transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.35s cubic-bezier(0.19, 1, 0.22, 1);
  margin: var(--space-lg, 1rem);
  max-width: calc(100% - var(--space-xl, 2rem));
}
.la-modal.active .la-modal__dialog {
  transform: translateY(0) scale(1);
  opacity: 1;
}
@media (min-width: 576px) {
  .la-modal__dialog {
    margin: var(--space-xl, 1.5rem);
    max-width: 25.625rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .la-modal__dialog {
    transform: translateY(0) scale(0.98);
    transition: transform 0.1s linear;
  }
  .la-modal.active .la-modal__dialog {
    transform: translateY(0) scale(1);
  }
}
.la-modal__dialog:focus {
  outline: none;
}
.la-modal__dialog:focus-visible {
  box-shadow: 0 0 0 0.25rem var(--la-brand-light, #07B4B4);
}

.la-modal--sm .la-modal__dialog {
  max-width: 18.75rem;
}

.la-modal--lg .la-modal__dialog {
  max-width: 50rem;
}

.la-modal--xl .la-modal__dialog {
  max-width: 71.25rem;
}

.la-modal--wide .la-modal__dialog {
  width: 80%;
  max-width: 80%;
}

.la-modal--form-compact .la-modal__dialog {
  max-width: 25rem;
}
.la-modal--form-compact .la-modal__content {
  border-radius: 1.5rem;
  box-shadow: 0 0.625rem 1.875rem rgba(38, 38, 38, 0.15);
}
.la-modal--form-compact .la-modal__header {
  padding: 1.5rem 1.5rem 1.25rem;
  border-bottom: none;
}
.la-modal--form-compact .la-modal__title {
  font-size: 1.5rem;
  font-weight: 600;
  text-align: left;
}
.la-modal--form-compact .la-modal__body {
  padding: 0 1.5rem 1.5rem;
}

.la-modal__content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: var(--la-base-lightest, #FFF);
  background-clip: padding-box;
  border-radius: 0.75rem;
  border: 0.0625rem solid #757575;
  outline: 0;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.09);
  overflow: hidden;
  font-size: 1rem;
  line-height: 1.3125rem;
}
@media (forced-colors: active) {
  .la-modal__content {
    border: 0.125rem solid ButtonText;
  }
}
.la-modal__content:focus {
  outline: none;
}
.la-modal__content:focus-visible {
  box-shadow: 0 0 0 0.25rem var(--la-brand-light, #07B4B4);
}

.la-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-lg, 1rem) var(--space-lg, 1rem) var(--space-md, 0.75rem);
  border-bottom: 0.0625rem solid var(--la-base-medium, #757575);
  background-color: #FFF;
  color: var(--la-base-darkest, #262626);
  text-align: center;
}

.la-modal__title {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: 700;
  font-family: var(--la-headers-font, nunito, "Helvetica", "sans-serif");
  color: var(--la-base-darkest, #262626);
  flex-grow: 1;
  margin-right: var(--space-md, 0.75rem);
}

.la-modal__header-actions,
.la-modal__header-actions-group {
  display: flex;
  align-items: center;
  gap: var(--space-sm, 0.5rem);
}

.la-modal__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  background-color: transparent;
  border: 0;
  border-radius: 50%;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
  color: var(--la-base-dark, #4F4F4F);
  cursor: pointer;
  transition: color 0.2s ease, transform 0.2s cubic-bezier(0.19, 1, 0.22, 1), background-color 0.2s ease;
  z-index: 10;
}
.la-modal__close:hover {
  color: #E25C3D;
  transform: scale(1.05) rotate(90deg);
  background-color: rgba(226, 92, 61, 0.05);
}
.la-modal__close:focus {
  outline: none;
  box-shadow: 0 0 0 0.125rem rgba(226, 92, 61, 0.3);
}
.la-modal__close svg {
  width: 1rem;
  height: 1rem;
  stroke: currentcolor;
  stroke-width: 0.1875rem;
  transition: transform 0.2s cubic-bezier(0.19, 1, 0.22, 1);
}

.la-modal--upgrade .la-modal__overlay {
  background: rgba(17, 24, 39, 0.6);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}
.la-modal--upgrade .la-modal__dialog {
  max-width: 31.25rem;
}
@media (max-width: 576px) {
  .la-modal--upgrade .la-modal__dialog {
    margin: 1rem;
    max-width: calc(100% - 2rem);
  }
}
.la-modal--upgrade .la-modal__content {
  background: #FFF;
  border-radius: 1rem;
  padding: 2.5rem;
  box-shadow: 0 1rem 3rem rgba(38, 38, 38, 0.175);
  text-align: center;
  position: relative;
}
.la-modal--upgrade .la-modal__header {
  position: absolute;
  top: 1rem;
  right: 1rem;
  padding: 0;
  border-bottom: none;
}
.la-modal--upgrade .la-modal__close {
  background: transparent;
  border: none;
  font-size: 2rem;
  color: #9ca3af;
  cursor: pointer;
  line-height: 1;
  transition: color 0.2s ease;
  width: auto;
  height: auto;
  padding: 0;
}
.la-modal--upgrade .la-modal__close:hover {
  color: #1f2937;
  background: transparent;
  transform: none;
}
.la-modal--upgrade .la-modal__body {
  padding: 0;
  text-align: center;
}

.la-upgrade-modal__icon {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}
.la-upgrade-modal__icon-svg {
  width: 3.5rem;
  height: 3.5rem;
  color: #069393;
}
.la-upgrade-modal__title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 0.75rem 0;
  color: #262626;
  line-height: 1.2;
}
@media (max-width: 576px) {
  .la-upgrade-modal__title {
    font-size: 1.5rem;
  }
}
.la-upgrade-modal__description {
  font-size: 1rem;
  color: #757575;
  margin: 0 0 1.5rem 0;
  line-height: 1.5;
}
.la-upgrade-modal__features {
  margin-bottom: 2rem;
  display: inline-block;
  text-align: left;
}
.la-upgrade-modal__features ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.la-upgrade-modal__feature-item {
  margin-bottom: 0.75rem;
  font-weight: 500;
  color: #262626;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.la-upgrade-modal__feature-item:last-child {
  margin-bottom: 0;
}
.la-upgrade-modal__feature-icon {
  width: 1.5rem;
  height: 1.5rem;
  color: #069393;
  flex-shrink: 0;
}
.la-upgrade-modal__actions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.la-upgrade-modal__trial-countdown {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  margin: 1.5rem 0;
  background: linear-gradient(135deg, rgba(6, 147, 147, 0.05), rgba(6, 147, 147, 0.1));
  border: 1px solid rgba(6, 147, 147, 0.2);
  border-radius: 0.75rem;
  text-decoration: none;
  transition: all 0.3s ease;
}
.la-upgrade-modal__trial-countdown:hover {
  background: linear-gradient(135deg, rgba(6, 147, 147, 0.08), rgba(6, 147, 147, 0.15));
  border-color: rgba(6, 147, 147, 0.3);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(6, 147, 147, 0.15);
}
.la-upgrade-modal__trial-countdown-inner {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
}
.la-upgrade-modal__trial-icon {
  width: 1.5rem;
  height: 1.5rem;
  color: #069393;
}
.la-upgrade-modal__trial-text {
  flex: 1;
  color: #4F4F4F;
  font-size: 0.95rem;
}
.la-upgrade-modal__trial-text strong {
  color: #069393;
  font-weight: 600;
}
.la-upgrade-modal__trial-arrow {
  width: 1.25rem;
  height: 1.25rem;
  color: #069393;
}
.la-upgrade-modal__social-proof {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin: 1.5rem 0 0;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(117, 117, 117, 0.3);
}
.la-upgrade-modal__avatars {
  display: flex;
  margin-right: 0.25rem;
}
.la-upgrade-modal__avatar {
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #069393, #07B4B4);
  color: #FFF;
  font-size: 0.875rem;
  font-weight: 600;
  border-radius: 50%;
  border: 2px solid #FFF;
  margin-left: -0.5rem;
}
.la-upgrade-modal__avatar:first-child {
  margin-left: 0;
}
.la-upgrade-modal__avatar:last-child {
  background: rgba(117, 117, 117, 0.1);
  color: #4F4F4F;
}
.la-upgrade-modal__social-text {
  color: #262626;
  font-size: 0.875rem;
}

@media (prefers-reduced-motion: reduce) {
  .la-upgrade-modal__button--primary:hover {
    transform: none;
  }
}
.la-modal__body {
  position: relative;
  flex: 1 1 auto;
  padding: 1.25rem 2.25rem;
  overflow-y: auto;
  max-height: calc(100vh - 220px);
  color: var(--la-base-dark, #4F4F4F);
  font-family: var(--la-body-font, "Work Sans", "Helvetica", "sans-serif");
  line-height: 1.5;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: var(--la-brand-light, #07B4B4) var(--la-base-light, #F5F5F5);
}
.la-modal__body::-webkit-scrollbar {
  width: 0.5rem;
}
.la-modal__body::-webkit-scrollbar-track {
  background: var(--la-base-light, #F5F5F5);
  border-radius: 0.25rem;
}
.la-modal__body::-webkit-scrollbar-thumb {
  background-color: var(--la-brand-light, #07B4B4);
  border-radius: 0.25rem;
}
.la-modal__body *:first-child {
  margin-top: 0;
}
.la-modal__body *:last-child {
  margin-bottom: 0;
}

.la-modal__footer {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-md, 0.75rem);
  padding: var(--space-md, 0.75rem) var(--space-lg, 1rem) var(--space-lg, 1rem);
  border-top: 1px solid var(--la-base-medium, #757575);
  background-color: #FFF;
}
.la-modal__footer .la-btn {
  min-width: 7.5rem;
  border-radius: 6.25rem;
  margin: 0;
}
.la-modal__footer .la-btn--outline-accent {
  background-color: #FFF;
  color: #E25C3D;
  border: 1px solid #E25C3D;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
  order: 1;
}
.la-modal__footer .la-btn--outline-accent:hover {
  background-color: rgba(226, 92, 61, 0.05);
  color: rgb(205.3094170404, 63.4977578475, 30.6905829596);
  border-color: rgb(205.3094170404, 63.4977578475, 30.6905829596);
}
.la-modal__footer .la-btn--outline-accent:focus {
  box-shadow: 0 0 0 0.1rem rgba(226, 92, 61, 0.5);
}
.la-modal__footer .la-btn--outline-accent:active {
  background-color: rgba(226, 92, 61, 0.1);
  color: rgb(183.1255605381, 56.6367713004, 27.3744394619);
}
.la-modal__footer .la-btn--primary,
.la-modal__footer .la-btn--auth-submit,
.la-modal__footer .la-btn--success {
  background-color: #069393;
  color: #FFF;
  border: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
  order: 2;
}
.la-modal__footer .la-btn--primary:hover,
.la-modal__footer .la-btn--auth-submit:hover,
.la-modal__footer .la-btn--success:hover {
  background-color: #07B4B4;
  color: #FFF;
}

.la-modal--centered .la-modal__dialog {
  display: flex;
  align-items: center;
  min-height: calc(100% - 3.5rem);
}

.la-modal--fullheight .la-modal__dialog {
  height: 100%;
  margin: 0;
  max-width: 100%;
}
.la-modal--fullheight .la-modal__dialog .la-modal__content {
  height: 100%;
  border: 0;
  border-radius: 0;
}

@media (prefers-reduced-motion: reduce) {
  .la-modal--slide-up .la-modal__dialog,
  .la-modal--slide-down .la-modal__dialog,
  .la-modal--zoom .la-modal__dialog,
  .la-modal--fade .la-modal__dialog {
    transform: translateY(0) scale(0.98);
    transition: transform 0.1s linear, opacity 0.1s linear;
  }
  .la-modal.active .la-modal--slide-up .la-modal__dialog,
  .la-modal.active .la-modal--slide-down .la-modal__dialog,
  .la-modal.active .la-modal--zoom .la-modal__dialog,
  .la-modal.active .la-modal--fade .la-modal__dialog {
    transform: translateY(0) scale(1);
  }
}
.la-modal__body turbo-frame {
  display: block;
  min-height: 5rem;
}
.la-modal__body turbo-frame.turbo-frame-loading {
  position: relative;
}
.la-modal__body turbo-frame.turbo-frame-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2rem;
  height: 2rem;
  margin-top: -1rem;
  margin-left: -1rem;
  border-radius: 50%;
  border: 0.25rem solid var(--la-base-medium, #757575);
  border-top-color: var(--la-brand-primary, #069393);
  animation: la-modal-spinner 0.8s linear infinite;
}

@keyframes la-modal-spinner {
  to {
    transform: rotate(360deg);
  }
}
.la-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

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

.la-sort-component {
  position: relative;
  font-family: "Work Sans", "Helvetica", "sans-serif";
}
.la-sort-component__native-select-wrapper {
  display: block;
  position: relative;
  border-radius: 0.75rem;
  width: 100%;
}
@media (min-width: 768px) {
  .la-sort-component__native-select-wrapper {
    display: none;
  }
}
.la-sort-component__native-select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #FFF;
  border: 1px solid #F5F5F5;
  border-radius: 0.75rem;
  padding: 0.75rem 2.5rem 0.75rem 1rem;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 500;
  color: #262626;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  box-shadow: 0 1px 3px rgba(38, 38, 38, 0.05);
}
.la-sort-component__native-select:hover {
  border-color: #069393;
  background-color: #F9F9F9;
}
.la-sort-component__native-select:focus {
  outline: none;
  border-color: #069393;
  box-shadow: 0 0 0 3px rgba(6, 147, 147, 0.15);
}
.la-sort-component__native-select:active {
  border-color: #069393;
  background-color: rgba(124, 200, 200, 0.1);
}
.la-sort-component__native-select option {
  padding: 0.75rem 1rem;
  font-weight: 500;
  font-size: 0.875rem;
  background-color: #FFF;
  color: #262626;
}
.la-sort-component__native-select option:checked {
  background-color: rgba(124, 200, 200, 0.1);
  color: #069393;
  font-weight: 600;
}
.la-sort-component__native-select option:hover {
  background-color: #F9F9F9;
}
.la-sort-component__native-select-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%) rotate(90deg);
  pointer-events: none;
  color: #BDBDBD;
  height: 1.25rem;
  width: 1.25rem;
  transition: transform 0.2s ease-in-out, color 0.2s ease-in-out;
}
.la-sort-component__native-select:focus + .la-sort-component__native-select-icon {
  color: #069393;
}
.la-sort-component__desktop-wrapper {
  display: none;
}
@media (min-width: 768px) {
  .la-sort-component__desktop-wrapper {
    display: block;
  }
}
.la-sort-component__button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background-color: #FFF;
  border: 1px solid #F5F5F5;
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  box-shadow: 0 1px 3px rgba(38, 38, 38, 0.05);
}
.la-sort-component__button:hover {
  border-color: #069393;
  background-color: #F9F9F9;
}
.la-sort-component__button:focus {
  outline: none;
  border-color: #069393;
  box-shadow: 0 0 0 3px rgba(6, 147, 147, 0.15);
}
.la-sort-component__button-label {
  font-size: 0.875rem;
  font-weight: 500;
  color: #757575;
}
.la-sort-component__button-value {
  font-size: 0.875rem;
  font-weight: 600;
  color: #262626;
}
.la-sort-component__button-icon {
  color: #BDBDBD;
  transition: transform 0.2s ease-in-out;
  transform: rotate(90deg);
}
.la-sort-component__button-icon--rotated {
  transform: rotate(-90deg);
  color: #069393;
}
.la-sort-component__dropdown {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  background-color: #FFF;
  border-radius: 1rem;
  box-shadow: 0 10px 30px rgba(38, 38, 38, 0.15);
  border: 1px solid #F5F5F5;
  z-index: 9999;
  min-width: 220px;
  opacity: 0;
  transform: translateY(-10px);
  visibility: hidden;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out, visibility 0.2s;
  overflow: hidden;
}
.la-sort-component__dropdown--visible {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
}
.la-sort-component__dropdown ul {
  list-style: none;
  margin: 0;
  padding: 0.5rem;
  max-height: 300px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #F5F5F5 transparent;
}
.la-sort-component__dropdown ul::-webkit-scrollbar {
  width: 0.35rem;
  background-color: transparent;
}
.la-sort-component__dropdown ul::-webkit-scrollbar-thumb {
  background-color: #F5F5F5;
  border-radius: 0.5rem;
  opacity: 0.75;
}
.la-sort-component__dropdown ul::-webkit-scrollbar-track {
  background-color: transparent;
  margin: 0.25rem;
}
.la-sort-component__dropdown-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  text-decoration: none;
  color: #262626;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  margin-bottom: 0.125rem;
}
.la-sort-component__dropdown-item:hover, .la-sort-component__dropdown-item:focus {
  background-color: #F9F9F9;
  outline: none;
}
.la-sort-component__dropdown-item:focus {
  box-shadow: 0 0 0 2px rgba(6, 147, 147, 0.2);
}
.la-sort-component__dropdown-item:active {
  background-color: rgba(124, 200, 200, 0.3);
}
.la-sort-component__dropdown-item--selected {
  font-weight: 600;
  color: #069393;
  background-color: rgba(124, 200, 200, 0.1);
}
.la-sort-component__dropdown-item--selected:hover {
  background-color: rgba(124, 200, 200, 0.2);
}
.la-sort-component__dropdown-check-icon {
  color: #069393;
  height: 1.125rem;
  width: 1.125rem;
  margin-left: 0.5rem;
}

.la-filters-and-sort-container {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  gap: 0.75rem;
  width: 95%;
  margin: 1rem auto;
  max-width: 45rem;
  min-width: 18.75rem;
}
.la-filters-and-sort-container .la-quick-filter-bar {
  flex: none;
  max-width: none;
  width: 100%;
}
.la-filters-and-sort-container turbo-frame {
  display: block;
  width: 100%;
}
.la-filters-and-sort-container .la-sort-component {
  flex-shrink: 0;
  width: 100%;
  margin-top: 0.25rem;
}
@media (min-width: 768px) {
  .la-filters-and-sort-container {
    width: 65%;
  }
}
@media (min-width: 1200px) {
  .la-filters-and-sort-container {
    width: 70%;
  }
}
@media (min-width: 576px) {
  .la-filters-and-sort-container {
    flex-direction: row;
    align-items: center;
    width: 90%;
    margin: 1.5rem auto;
    margin-bottom: 0;
  }
  .la-filters-and-sort-container .la-quick-filter-bar {
    flex: 1;
  }
  .la-filters-and-sort-container .la-sort-component {
    margin-top: 0;
    width: auto;
  }
}
@media (min-width: 576px) {
  .la-filters-and-sort-container {
    gap: 1.5rem;
    width: 70%;
  }
}
@media (min-width: 768px) {
  .la-filters-and-sort-container {
    width: 65%;
  }
}

.search-input-wrapper {
  position: relative;
}

.search-icon {
  position: absolute;
  top: 50%;
  left: 0.625rem;
  transform: translateY(-50%);
  pointer-events: none;
}

.user-avatar {
  position: relative;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}
.user-avatar__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  background-color: #F5F5F5;
  -o-object-position: center;
     object-position: center;
}
.user-avatar__placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #8FABEE 0%, #F5F5F5 100%);
  color: #2B5CAA;
  font-weight: 600;
  font-size: 1rem;
  text-transform: uppercase;
}
.user-avatar__status {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  border: 0.125rem solid #FFF;
}
.user-avatar__status.online {
  background-color: #069393;
}
.user-avatar__status.offline {
  background-color: #757575;
}
.user-avatar--sm {
  width: 2rem;
  height: 2rem;
}
.user-avatar--sm .user-avatar__placeholder {
  font-size: 0.75rem;
}
.user-avatar--sm .user-avatar__status {
  width: 0.5rem;
  height: 0.5rem;
}
.user-avatar--lg {
  width: 4rem;
  height: 4rem;
}
.user-avatar--lg .user-avatar__placeholder {
  font-size: 1.25rem;
}

.la-weather-widget {
  width: 50%;
  max-width: 960px;
  margin: 0 auto;
  padding: 1rem 0 1rem;
  border-top: 1px solid rgba(38, 38, 38, 0.1);
  font-family: "Work Sans", "Helvetica", "sans-serif";
}
.la-weather-widget__title {
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 1rem;
  color: #262626;
  text-align: left;
}
.la-weather-widget__container {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.la-weather-widget__content-wrapper {
  display: flex;
  align-items: stretch;
  width: 100%;
  min-height: 8rem;
  height: 100%;
}
.la-weather-widget__header-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-right: 2rem;
  flex: 0 0 auto;
  height: 100%;
  min-height: inherit;
}
.la-weather-widget__current {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  flex: 0 0 auto;
  width: 100%;
}
.la-weather-widget__current-icon {
  margin-right: 0.75rem;
}
.la-weather-widget__current-icon .la-weather-icon {
  width: 3.125rem;
  height: 3.125rem;
  stroke: #069393;
}
.la-weather-widget__current-details {
  display: flex;
  flex-direction: column;
}
.la-weather-widget__current-temp {
  font-size: 2rem;
  font-weight: 300;
  line-height: 1;
  color: #262626;
}
.la-weather-widget__temp-unit {
  font-size: 1.125rem;
  font-weight: normal;
  vertical-align: super;
  color: #262626;
}
.la-weather-widget__current-condition {
  font-size: 0.875rem;
  color: #757575;
  margin-top: 0.25rem;
}
.la-weather-widget__current-wind, .la-weather-widget__current-detail {
  font-size: 0.75rem;
  color: rgb(142.5, 142.5, 142.5);
  margin-top: 0.125rem;
}
.la-weather-widget__current-wind-direction {
  margin-left: 0.5rem;
}
.la-weather-widget__forecast {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.5rem;
  justify-items: center;
  align-items: center;
  align-content: center;
  flex: 1 1 auto;
  height: 100%;
  min-height: inherit;
  border-left: 1px solid #F5F5F5;
  padding-left: 1.5rem;
  margin-left: 0.5rem;
}
.la-weather-widget__forecast-day {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.la-weather-widget__day-name {
  font-size: 0.75rem;
  font-weight: 500;
  margin-bottom: 0.375rem;
  text-align: center;
  color: #262626;
}
.la-weather-widget__day-icon {
  margin-bottom: 0.5rem;
}
.la-weather-widget__day-icon .la-weather-icon {
  width: 1.5rem;
  height: 1.5rem;
  stroke: #069393;
}
.la-weather-widget__temp-bar-container {
  width: 0.375rem;
  height: 5rem;
  background-color: transparent;
  border-radius: 0.2rem;
  position: relative;
  margin-inline: auto;
  display: grid;
  place-items: center;
}
.la-weather-widget__temp-bar {
  width: 100%;
  background-color: #069393;
  border-radius: 0.2rem;
  /* height is still injected inline from ERB */
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.la-weather-widget__temp-high, .la-weather-widget__temp-low {
  font-size: 0.625rem;
  text-align: center;
  font-weight: 500;
  color: #757575;
}
.la-weather-widget__content-wrapper {
  flex-direction: column;
  align-items: center;
}
.la-weather-widget__current {
  margin-right: 0;
  margin-bottom: 1.5rem;
  width: 100%;
}
.la-weather-widget__forecast {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  gap: 0.25rem;
  border-left: none;
  padding-left: 0;
  margin-left: 0;
}
.la-weather-widget__temp-bar-container {
  height: 3.75rem;
}
.la-weather-widget__forecast-day {
  max-width: 2.5rem;
}
.la-weather-widget__forecast-day .la-weather-widget__day-icon .la-weather-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.la-weather-widget__forecast-day .la-weather-widget__day-name {
  font-size: 0.6875rem;
}
.la-weather-widget__forecast-day .la-weather-widget__temp-high,
.la-weather-widget__forecast-day .la-weather-widget__temp-low {
  font-size: 0.5625rem;
}
@media (min-width: 576px) {
  .la-weather-widget__content-wrapper {
    flex-direction: row;
    align-items: stretch;
  }
  .la-weather-widget__current {
    margin-right: 2rem;
    margin-bottom: 0;
    width: auto;
  }
  .la-weather-widget__forecast {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    justify-items: center;
    align-items: center;
    align-content: center;
    gap: 0.5rem;
    border-left: 1px solid #F5F5F5;
    padding-left: 1.5rem;
    margin-left: 0.5rem;
  }
  .la-weather-widget__forecast-day {
    max-width: none;
  }
  .la-weather-widget__forecast-day .la-weather-widget__day-icon .la-weather-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .la-weather-widget__forecast-day .la-weather-widget__day-name {
    font-size: 0.75rem;
  }
  .la-weather-widget__forecast-day .la-weather-widget__temp-high,
  .la-weather-widget__forecast-day .la-weather-widget__temp-low {
    font-size: 0.625rem;
  }
}

.la-weather-widget--compact {
  width: 100%;
  max-width: 960px;
  margin: 1.5rem auto;
  font-family: "Work Sans", "Helvetica", "sans-serif";
  overflow: hidden;
}
.la-weather-widget__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid rgba(38, 38, 38, 0.05);
}
.la-weather-widget__location {
  font-size: 0.875rem;
  color: #262626;
}
.la-weather-widget__condition-summary {
  font-size: 0.75rem;
  color: #757575;
}
.la-weather-widget__content {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
}
.la-weather-widget__current-compact {
  display: flex;
  align-items: center;
  margin-right: 1.5rem;
}
.la-weather-widget__current-icon-large {
  margin-right: 0.5rem;
}
.la-weather-widget__current-icon-large .la-weather-icon {
  width: 2.625rem;
  height: 2.625rem;
  stroke: #069393;
}
.la-weather-widget__current-temp-compact {
  font-size: 1.75rem;
  font-weight: 700;
  color: #262626;
}
.la-weather-widget__divider {
  width: 1px;
  height: 2.5rem;
  background-color: rgba(38, 38, 38, 0.05);
  margin-right: 1.5rem;
}
.la-weather-widget__forecast-compact {
  display: flex;
  flex-grow: 1;
  justify-content: space-between;
}
.la-weather-widget__forecast-day-compact {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.la-weather-widget__day-name-compact {
  font-size: 0.75rem;
  font-weight: 500;
  color: #262626;
  margin-bottom: 0.25rem;
}
.la-weather-widget__day-icon-compact {
  margin: 0.25rem 0;
}
.la-weather-widget__day-icon-compact .la-weather-icon {
  width: 1.25rem;
  height: 1.25rem;
  stroke: #069393;
}
.la-weather-widget__temp-range-compact {
  display: flex;
  align-items: center;
  font-size: 0.675rem;
}
.la-weather-widget__temp-high-compact {
  font-size: 0.675rem;
  font-weight: 500;
  color: #262626;
}
.la-weather-widget__temp-separator {
  margin: 0 0.1rem;
  color: rgb(144.6, 144.6, 144.6);
}
.la-weather-widget__temp-low-compact {
  font-size: 0.5rem;
  color: #757575;
}
@media (width <= 576px) {
  .la-weather-widget__header {
    flex-direction: column;
    align-items: flex-start;
  }
  .la-weather-widget__location {
    margin-bottom: 0.25rem;
  }
  .la-weather-widget__content {
    flex-direction: column;
    align-items: flex-start;
  }
  .la-weather-widget__current-compact {
    margin-right: 0;
    margin-bottom: 0.75rem;
    width: 100%;
  }
  .la-weather-widget__divider {
    display: none;
  }
  .la-weather-widget__forecast-compact {
    width: 100%;
    padding-top: 0.5rem;
  }
  .la-weather-widget__day-icon-compact .la-weather-icon {
    width: 1.125rem;
    height: 1.125rem;
  }
}

.la-weather-widget--expandable {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 100vw;
  height: 4rem;
  font-family: "Work Sans", "Helvetica", "sans-serif";
  background-color: #FFF;
  border: 0.0625rem solid transparent;
  border-radius: 2rem;
  box-shadow: 0 0.125rem 0.3125rem 0.0625rem rgba(117, 117, 117, 0.78);
  overflow: hidden;
  cursor: pointer;
  transition: height 0.3s ease-in-out, border 0.2s ease, box-shadow 0.2s ease;
  margin: 1rem 0;
  padding: 0 1rem;
  justify-content: center;
}
@media (min-width: 576px) {
  .la-weather-widget--expandable {
    width: auto;
    min-width: 11rem;
    transition: width 0.3s ease-in-out, border 0.2s ease, box-shadow 0.2s ease;
    margin: 0;
    padding: 0;
  }
}
.la-weather-widget--expandable:hover {
  border: 0.0625rem solid #069393;
}
.la-weather-widget--expandable:active {
  box-shadow: 0 0 0 0.1875rem rgba(6, 147, 147, 0.2);
}
.la-weather-widget--expanded {
  width: 100%;
  max-width: 100vw;
  flex-direction: column;
  height: auto;
  align-items: stretch;
  padding: 0.5rem 1rem;
  justify-content: space-evenly;
}
@media (min-width: 576px) {
  .la-weather-widget--expanded {
    width: auto;
    min-width: 18rem;
    max-width: 25rem;
    flex-direction: row;
    height: 4rem;
    align-items: center;
    padding: 0 0.75rem;
  }
}
@media (min-width: 768px) {
  .la-weather-widget--expanded {
    min-width: 22rem;
    max-width: 27rem;
    padding: 0 0.5rem;
  }
}
@media (min-width: 992px) {
  .la-weather-widget--expanded {
    padding: 0 0.25rem;
  }
}
.la-weather-widget__current-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  gap: 0.5rem;
  border-bottom: 1px solid rgba(38, 38, 38, 0.05);
}
@media (min-width: 576px) {
  .la-weather-widget__current-section {
    border-bottom: none;
  }
}
.la-weather-widget--expanded .la-weather-widget__current-section {
  gap: 0;
}
.la-weather-widget__current-icon-small {
  margin-right: 0.75rem;
  flex-shrink: 0;
}
.la-weather-widget__current-icon-small .la-weather-widget__icon {
  width: 2rem;
  height: 2rem;
  stroke: #069393;
  margin: 0;
}
.la-weather-widget__icon {
  width: 2rem;
  height: 2rem;
  stroke: #069393;
  stroke-width: 1.5;
  margin: 0;
}
.la-weather-widget__icon--sun {
  color: #F4B63E;
}
.la-weather-widget__icon--cloud {
  color: #757575;
}
.la-weather-widget__icon--rain {
  color: #4A7AD8;
}
.la-weather-widget__icon--storm {
  color: #2B5CAA;
}
.la-weather-widget__icon--snow {
  color: #8FABEE;
}
.la-weather-widget__icon--fog {
  color: #757575;
}
.la-weather-widget__icon--default {
  color: #757575;
}
.la-weather-widget__current-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1;
  min-width: 0;
}
.la-weather-widget__current-temp-small {
  font-size: 1rem;
  font-weight: 700;
  color: #262626;
  line-height: 1.2;
  padding-top: 1rem;
}
.la-weather-widget__current-location-small {
  font-size: 0.75rem;
  color: #262626;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 6rem;
}
.la-weather-widget--expanded .la-weather-widget__current-location-small {
  max-width: 12rem;
}
@media (min-width: 576px) {
  .la-weather-widget__current-location-small {
    max-width: 4rem;
  }
  .la-weather-widget--expanded .la-weather-widget__current-location-small {
    max-width: 6rem;
  }
}
.la-weather-widget__current-condition-small {
  font-size: 0.675rem;
  color: #757575;
  padding-bottom: 1rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 6rem;
}
.la-weather-widget--expanded .la-weather-widget__current-condition-small {
  max-width: 12rem;
}
@media (min-width: 576px) {
  .la-weather-widget__current-condition-small {
    max-width: 4rem;
  }
  .la-weather-widget--expanded .la-weather-widget__current-condition-small {
    max-width: 6rem;
  }
}
.la-weather-widget__toggle-icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.la-weather-widget__toggle-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #757575;
  transition: transform 0.3s ease-in-out;
  stroke-width: 2.5;
}
.la-weather-widget__toggle-icon--expanded {
  transform: rotate(180deg);
}
.la-weather-widget--unavailable {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4rem;
  height: 4rem;
  padding: 0 1rem;
}
@media (min-width: 576px) {
  .la-weather-widget--unavailable {
    min-width: 11rem;
    padding: 0;
  }
}
.la-weather-widget__unavailable-content {
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-weather-widget--unavailable .la-weather-widget__unavailable-icon, .la-weather-widget--unavailable .la-weather-widget__unavailable-icon, .la-weather-widget__unavailable-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
}
.la-weather-widget--unavailable .la-weather-widget__unavailable-icon svg, .la-weather-widget--unavailable .la-weather-widget__unavailable-icon .la-icon, .la-weather-widget--unavailable .la-weather-widget__unavailable-icon svg, .la-weather-widget--unavailable .la-weather-widget__unavailable-icon .la-icon, .la-weather-widget__unavailable-icon svg, .la-weather-widget__unavailable-icon .la-icon {
  width: 2rem;
  height: 2rem;
  stroke: #069393;
  stroke-width: 2;
  opacity: 0.9;
  margin: 0;
}
.la-weather-widget__upgrade-prompt {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 4rem;
  padding: 0.75rem 1rem;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
  border-radius: 0.25rem;
}
.la-weather-widget__upgrade-prompt:hover {
  background: rgba(6, 147, 147, 0.05);
  transform: translateY(-1px);
}
.la-weather-widget__upgrade-prompt:focus {
  outline: 2px solid #069393;
  outline-offset: 2px;
}
.la-weather-widget__upgrade-content {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.la-weather-widget__upgrade-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.la-weather-widget__upgrade-icon svg, .la-weather-widget__upgrade-icon .la-icon {
  width: 1.5rem;
  height: 1.5rem;
  stroke: #069393;
  fill: none;
  stroke-width: 2;
}
.la-weather-widget__upgrade-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.125rem;
}
.la-weather-widget__upgrade-title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #262626;
  line-height: 1.2;
}
.la-weather-widget__upgrade-subtitle {
  font-size: 0.75rem;
  font-weight: 400;
  color: #069393;
  line-height: 1.2;
}
.la-weather-widget__upgrade-sparkle {
  width: 1rem;
  height: 1rem;
  opacity: 0.7;
}
.la-weather-widget__upgrade-sparkle svg, .la-weather-widget__upgrade-sparkle .la-icon {
  width: 1rem;
  height: 1rem;
  fill: #069393;
  stroke: none;
}
.la-weather-widget__upgrade-sparkle svg {
  width: 2rem;
  height: 2rem;
  stroke: #069393;
  stroke-width: 2;
}
.la-weather-widget__upgrade-sparkle:is(svg) {
  width: 2rem;
  height: 2rem;
  stroke: #069393;
  stroke-width: 2;
  opacity: 0.9;
}
.la-weather-widget__fallback-notice {
  font-size: 0.675rem;
  color: #757575;
  text-align: center;
  padding: 0.25rem 0;
}
.la-weather-widget__forecast-section {
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  padding: 0.5rem;
  width: 0;
  opacity: 0;
  overflow: hidden;
  transition: opacity 0.3s ease-in-out, width 0.3s ease-in-out;
}
.la-weather-widget--expanded .la-weather-widget__forecast-section {
  width: 100%;
  opacity: 1;
  justify-content: space-between;
  padding: 0;
}
@media (min-width: 576px) {
  .la-weather-widget--expanded .la-weather-widget__forecast-section {
    flex: 1 1 auto;
    width: auto;
    padding: 0;
  }
}
@media (min-width: 768px) {
  .la-weather-widget--expanded .la-weather-widget__forecast-section {
    padding: 0;
  }
}
.la-weather-widget__forecast-day-small {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 0.125rem;
  flex: 0 0 auto;
}
@media (min-width: 576px) {
  .la-weather-widget__forecast-day-small {
    margin: 0 0.25rem;
  }
}
@media (min-width: 768px) {
  .la-weather-widget__forecast-day-small {
    margin: 0 0.375rem;
  }
}
.la-weather-widget__day-name-small {
  font-size: 0.675rem;
  font-weight: 500;
  color: #262626;
  padding-top: 0.2rem;
}
.la-weather-widget__day-icon-small {
  margin: 0;
  margin-top: -0.2rem;
}
.la-weather-widget__day-icon-small .la-weather-widget__icon {
  width: 1rem;
  height: 1rem;
  stroke: #069393;
  margin: 0;
}
.la-weather-widget__temp-small {
  font-size: 0.675rem;
  color: #262626;
}

:root {
  --la-navbar-height: 6.5rem;
  --la-navbar-height-scrolled: 5.5rem;
  --la-navbar-z-index: 1000;
  --la-navbar-dropdown-z-index: 1002;
  --la-navbar-overlay-z-index: 1001;
}

.la-navbar-wrapper {
  position: relative;
  width: 100%;
  z-index: var(--la-navbar-z-index);
  font-family: -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.la-navbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--la-navbar-height);
  z-index: var(--la-navbar-overlay-z-index);
  transition: height 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
  background-color: transparent;
}

.la-navbar--scrolled {
  background-color: #FFF;
  height: var(--la-navbar-height-scrolled);
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.075);
}

.la-navbar__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  max-width: 80rem;
  margin: 0 auto;
  padding: 0.25rem 1.5rem 0 1.5rem;
}

.la-navbar__logo {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #4F4F4F;
  transition: color 0.2s ease;
}
.la-navbar__logo:hover {
  color: #069393;
  text-decoration: none;
}

.la-navbar__logo-image {
  height: 6rem;
  width: auto;
  transition: height 0.3s ease;
}

.la-navbar--scrolled .la-navbar__logo-image {
  height: 5rem;
}

.la-navbar__logo-text {
  margin-left: 0.75rem;
  font-size: 1.25rem;
  font-weight: 500;
  color: #4F4F4F;
  display: none;
  transition: color 0.2s ease;
}
.la-navbar__logo:hover .la-navbar__logo-text {
  color: #069393;
}
@media (min-width: 576px) {
  .la-navbar__logo-text {
    display: inline;
  }
}

.la-navbar__actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.la-navbar__icon-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  color: #757575;
  border-radius: 50%;
  transition: all 0.2s ease;
  text-decoration: none;
}

.la-navbar__icon {
  width: 1.5rem;
  height: 1.5rem;
}

.la-navbar__icon-button:hover {
  color: #069393;
  background-color: #F5F5F5;
}

.la-navbar__notification-badge {
  position: absolute;
  top: 0.125rem;
  right: 0.125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  height: 1.25rem;
  background-color: #E25C3D;
  color: #FFF;
  font-size: 0.7rem;
  font-weight: 600;
  border-radius: 0.625rem;
  padding: 0 0.3125rem;
  border: 0.125rem solid #FFF;
}

.la-navbar--scrolled .la-navbar__notification-badge {
  border-color: #FFF;
}

.la-navbar__menu-container {
  position: relative;
}

.la-navbar__menu-toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background-color: #05686C;
  color: #FFF;
  border: none;
  border-radius: 1.5rem;
  padding: 0.6rem 1.2rem;
  font-weight: 600;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: all 0.2s ease;
  text-transform: uppercase;
  min-width: 6.25rem;
  justify-content: center;
  overflow: hidden;
}

.la-navbar__menu-toggle--active,
.la-navbar__menu-toggle:hover {
  background-color: #069393;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.15);
}

@keyframes la-fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -1rem, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.la-navbar__menu-toggle-text {
  display: inline-block;
  position: relative;
}

.la-text-animate {
  animation: la-fadeInDown 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.la-navbar__menu-icon {
  margin-left: 0.5rem;
  height: 1.25rem;
  width: 1.25rem;
  stroke: #FFF;
  transition: transform 0.2s ease;
}

.la-navbar__menu-toggle--active .la-navbar__menu-icon {
  transform: scale(0.9);
}

.la-dropdown-menu {
  position: absolute;
  top: calc(100% + 0.75rem);
  right: 0;
  width: 18.75rem;
  background-color: #FFF;
  border-radius: 0.75rem;
  box-shadow: 0 1rem 3rem rgba(38, 38, 38, 0.175);
  overflow: hidden;
  transform-origin: top right;
  transform: scale(0.95) translateY(-0.625rem);
  opacity: 0;
  visibility: hidden;
  transition: transform 0.3s ease, opacity 0.3s ease, visibility 0s 0.3s;
  z-index: var(--la-navbar-dropdown-z-index);
}

.la-dropdown-menu--open {
  transform: scale(1) translateY(0);
  opacity: 1;
  visibility: visible;
  transition: transform 0.3s ease, opacity 0.3s ease, visibility 0s;
}

.la-dropdown-menu__content {
  padding: 0.5rem 0;
}

.la-dropdown-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.la-dropdown-menu__item {
  margin: 0;
  padding: 0;
}

.la-dropdown-menu__item:last-child .la-dropdown-menu__link {
  border-bottom: none;
}

.la-dropdown-menu__item--separator {
  margin-top: 0.5rem;
  padding-top: 0.5rem;
  border-top: 0.0625rem solid #F5F5F5;
}

.la-dropdown-menu__link {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.5rem;
  color: #4F4F4F;
  text-decoration: none;
  font-size: 1.15rem;
  font-weight: 500;
  transition: color 0.2s ease;
  border-bottom: 0.0625rem solid #F5F5F5;
  position: relative;
}

.la-dropdown-menu__link .la-dropdown-menu__indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease, opacity 0.2s ease;
  opacity: 0;
  transform: translateX(-0.3125rem);
  margin-right: 0.5rem;
  width: 1rem;
  height: 1rem;
}

.la-dropdown-menu__indicator-icon {
  width: 100%;
  height: 100%;
  stroke: none;
  fill: #069393;
}

.la-dropdown-menu__link:hover .la-dropdown-menu__indicator,
.la-dropdown-menu__link--active .la-dropdown-menu__indicator {
  opacity: 1;
  transform: translateX(0);
}

.la-dropdown-menu__link:hover {
  color: #069393;
  text-decoration: none;
}

.la-dropdown-menu__link--active {
  color: #069393;
  font-weight: 600;
  background-color: #F5F5F5;
}

.la-dropdown-menu__link-wrapper {
  width: 100%;
}
.la-dropdown-menu__link-wrapper form {
  width: 100%;
  margin: 0;
  padding: 0;
}

.la-dropdown-menu__link--logout {
  color: #E25C3D;
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  font-family: inherit;
  font-size: 1.15rem;
  font-weight: 500;
  padding: 1rem 1.5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 1rem;
  transition: color 0.2s ease;
  border-bottom: 0.0625rem solid #F5F5F5;
}

.la-dropdown-menu__link--logout .la-dropdown-menu__indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease, opacity 0.2s ease;
  opacity: 0;
  transform: translateX(-0.3125rem);
  margin-right: 0.5rem;
  width: 1rem;
  height: 1rem;
}

.la-dropdown-menu__link--logout .la-dropdown-menu__indicator-icon {
  width: 100%;
  height: 100%;
  stroke: none;
  fill: #E25C3D;
}

.la-dropdown-menu__link--logout:hover {
  color: #C0472D;
  text-decoration: none;
}

.la-dropdown-menu__link--logout:hover .la-dropdown-menu__indicator {
  color: #C0472D;
  opacity: 1;
  transform: translateX(0);
}

.la-dropdown-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  z-index: var(--la-navbar-z-index);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0s 0.3s, -webkit-backdrop-filter 0.3s ease;
  transition: opacity 0.3s ease, visibility 0s 0.3s, backdrop-filter 0.3s ease;
  transition: opacity 0.3s ease, visibility 0s 0.3s, backdrop-filter 0.3s ease, -webkit-backdrop-filter 0.3s ease;
}

.la-dropdown-overlay--visible {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0s, -webkit-backdrop-filter 0.3s ease;
  transition: opacity 0.3s ease, visibility 0s, backdrop-filter 0.3s ease;
  transition: opacity 0.3s ease, visibility 0s, backdrop-filter 0.3s ease, -webkit-backdrop-filter 0.3s ease;
}

@media (min-width: 768px) {
  .la-navbar__container {
    padding: 0 2rem;
  }
  .la-dropdown-menu {
    width: 20rem;
  }
  .la-dropdown-menu__link {
    font-size: 1.25rem;
    padding: 1.15rem 2rem;
  }
  .la-dropdown-menu__link .la-dropdown-menu__indicator {
    font-size: 1.5rem;
  }
}
@media (min-width: 992px) {
  .la-navbar__container {
    padding: 0 3rem;
  }
}
.la-opening-hours {
  padding: 1rem 1.5rem;
  font-size: 0.875rem;
}
.la-opening-hours__status {
  display: flex;
  align-items: center;
  margin-bottom: 0.75rem;
  padding: 0.375rem 0;
}
.la-opening-hours__status-indicator {
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  margin-right: 0.375rem;
}
.la-opening-hours__status-indicator--open {
  background-color: #069393;
}
.la-opening-hours__status-indicator--closed {
  background-color: #F19B85;
}
.la-opening-hours__status-text {
  font-weight: 500;
  font-size: 0.875rem;
}
.la-opening-hours__today-hours {
  margin-left: 0.25rem;
  font-weight: normal;
  color: #757575;
  font-size: 0.875rem;
}
.la-opening-hours__schedule {
  border-top: 1px solid #BDBDBD;
  padding-top: 0.5rem;
  margin-top: 0.375rem;
}
.la-opening-hours__day {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.375rem;
  padding: 0.25rem 0;
}
.la-opening-hours__day:last-child {
  margin-bottom: 0;
}
.la-opening-hours__day--today {
  font-weight: 500;
  background-color: #F5F5F5;
  border-radius: 0.25rem;
  padding: 0.25rem 0.375rem;
  margin: 0 -0.375rem 0.375rem -0.375rem;
}
.la-opening-hours__day-name {
  width: 35%;
  padding-right: 0.75rem;
}
.la-opening-hours__day-hours {
  width: 60%;
  text-align: right;
}
.la-opening-hours--manual .la-opening-hours__content {
  display: flex;
  align-items: center;
}
.la-opening-hours--manual .la-opening-hours__icon {
  margin-right: 0.75rem;
  color: var(--color-text-secondary);
}
.la-opening-hours--manual .la-opening-hours__info {
  display: flex;
  flex-direction: column;
}
.la-opening-hours--manual .la-opening-hours__time {
  font-weight: 500;
}
.la-opening-hours--manual .la-opening-hours__note {
  font-size: 0.875rem;
  color: var(--color-text-secondary);
  margin-top: 0.25rem;
}

.la-quick-filters-container {
  display: flex;
  align-items: center;
  width: 90%;
  max-width: 50rem;
  min-width: 18.75rem;
  margin: 0.5rem auto 0.5rem;
  justify-content: center;
}
@media (min-width: 768px) {
  .la-quick-filters-container {
    width: 85%;
  }
}
@media (min-width: 1200px) {
  .la-quick-filters-container {
    width: 70%;
  }
}

.la-quick-filter-bar {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  margin: 0;
}
.la-quick-filter-bar__container {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0.5rem 0;
  padding-bottom: 0.75rem;
  margin-bottom: -0.25rem;
  scroll-behavior: smooth;
  flex-grow: 1;
  scrollbar-width: thin;
  scrollbar-color: #BDBDBD transparent;
  white-space: nowrap;
}
.la-quick-filter-bar__container::-webkit-scrollbar {
  height: 0.25rem;
  opacity: 0;
}
.la-quick-filter-bar__container::-webkit-scrollbar-track {
  background: transparent;
}
.la-quick-filter-bar__container::-webkit-scrollbar-thumb {
  background-color: #BDBDBD;
  border-radius: 9999px;
  opacity: 0.5;
}
.la-quick-filter-bar__container:not(:hover)::-webkit-scrollbar-thumb {
  background: transparent;
}
.la-quick-filter-bar__container:not(:hover) {
  scrollbar-color: transparent transparent;
}
.la-quick-filter-bar__scroll-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #FFF;
  border: 1px solid #BDBDBD;
  cursor: pointer;
  flex-shrink: 0;
  z-index: 2;
  transition: all 0.2s ease;
}
.la-quick-filter-bar__scroll-button:first-child {
  margin-right: 0.5rem;
}
.la-quick-filter-bar__scroll-button:last-child {
  margin-left: 0.5rem;
}
.la-quick-filter-bar__scroll-button:hover:not(:disabled) {
  background-color: #F5F5F5;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.la-quick-filter-bar__scroll-button:active:not(:disabled) {
  transform: scale(0.95);
}
.la-quick-filter-bar__scroll-button:disabled, .la-quick-filter-bar__scroll-button--disabled {
  opacity: 0.4;
  cursor: not-allowed;
  background-color: #F5F5F5;
}
.la-quick-filter-bar__scroll-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #4F4F4F;
}

.la-quick-filter-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 0.5rem;
  border-radius: 0.75rem;
  background-color: #F5F5F5;
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  color: #4F4F4F;
  min-width: 4.5rem;
  gap: 0.25rem;
  white-space: nowrap;
}
.la-quick-filter-button:hover {
  background-color: rgb(237.35, 237.35, 237.35);
}
.la-quick-filter-button--active {
  background-color: rgba(6, 147, 147, 0.15);
  color: #069393;
  font-weight: 500;
  position: relative;
  box-shadow: 0 2px 8px rgba(6, 147, 147, 0.1);
}
.la-quick-filter-button--active::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 50%;
  transform: translateX(-50%);
  width: 40%;
  height: 2px;
  background-color: #069393;
  border-radius: 9999px;
}
.la-quick-filter-button--active:hover {
  background-color: rgba(6, 147, 147, 0.2);
}
.la-quick-filter-button--active-nearby {
  background-color: rgb(237.35, 237.35, 237.35);
  color: #262626;
  font-weight: 600;
  border: 0.0625rem solid #069393;
}
.la-quick-filter-button--active-nearby:hover, .la-quick-filter-button--active-nearby:focus {
  box-shadow: 0 0 0 0.125rem rgba(6, 147, 147, 0.25);
}
.la-quick-filter-button__icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.25rem;
  height: 1.75rem;
}
.la-quick-filter-button__icon {
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  stroke-width: 1.5;
}
.la-quick-filter-button--active .la-quick-filter-button__icon {
  color: #069393;
  stroke-width: 2;
}
.la-quick-filter-button__label {
  font-size: 0.6875rem;
  text-align: center;
  font-weight: 400;
}
.la-quick-filter-button--active .la-quick-filter-button__label {
  color: #069393;
  font-weight: 500;
}

@media (max-width: 576px) {
  .la-quick-filters-container {
    flex-direction: row;
    gap: 0.25rem;
  }
  .la-quick-filter-bar {
    width: 100%;
  }
  .la-quick-filter-bar__container {
    gap: 0.5rem;
    padding: 0.25rem 0;
    overflow-x: auto;
    flex-wrap: nowrap;
  }
  .la-quick-filter-bar__scroll-button {
    width: 1.75rem;
    height: 1.75rem;
  }
  .la-quick-filter-bar__scroll-button:first-child {
    margin-right: 0.25rem;
  }
  .la-quick-filter-bar__scroll-button:last-child {
    margin-left: 0.25rem;
  }
  .la-quick-filter-bar__scroll-icon {
    width: 1rem;
    height: 1rem;
  }
  .la-quick-filter-button {
    min-width: 4rem;
    padding: 0.5rem 0.25rem;
  }
  .la-quick-filter-button__icon-wrapper {
    height: 1.5rem;
  }
  .la-quick-filter-button__icon {
    width: 1.375rem;
    height: 1.375rem;
  }
  .la-quick-filter-button__label {
    font-size: 0.625rem;
  }
}
@media (min-width: 576px) and (max-width: 768px) {
  .la-quick-filter-bar__container {
    gap: 0.75rem;
    padding: 0.375rem 0;
  }
  .la-quick-filter-bar__scroll-button {
    width: 1.875rem;
    height: 1.875rem;
  }
  .la-quick-filter-bar__scroll-button:first-child {
    margin-right: 0.375rem;
  }
  .la-quick-filter-bar__scroll-button:last-child {
    margin-left: 0.375rem;
  }
  .la-quick-filter-bar__scroll-button .la-quick-filter-bar__scroll-icon {
    width: 1.125rem;
    height: 1.125rem;
  }
  .la-quick-filter-button {
    min-width: 4.25rem;
    padding: 0.625rem 0.375rem;
  }
  .la-quick-filter-button__icon-wrapper {
    height: 1.625rem;
  }
  .la-quick-filter-button__icon {
    width: 1.4375rem;
    height: 1.4375rem;
  }
  .la-quick-filter-button__label {
    font-size: 0.65625rem;
  }
}
@media (min-width: 768px) {
  .la-quick-filter-bar__container {
    gap: 1rem;
    padding: 0.5rem 0;
  }
  .la-quick-filter-bar__scroll-button {
    width: 2rem;
    height: 2rem;
  }
  .la-quick-filter-bar__scroll-button:first-child {
    margin-right: 0.5rem;
  }
  .la-quick-filter-bar__scroll-button:last-child {
    margin-left: 0.5rem;
  }
  .la-quick-filter-bar__scroll-button .la-quick-filter-bar__scroll-icon {
    width: 1.25rem;
    height: 1.25rem;
  }
  .la-quick-filter-button {
    min-width: 4.5rem;
    padding: 0.75rem 0.5rem;
  }
  .la-quick-filter-button__icon-wrapper {
    height: 1.75rem;
  }
  .la-quick-filter-button__icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .la-quick-filter-button__label {
    font-size: 0.6875rem;
  }
}
@keyframes shine-skeleton {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
.la-skeleton-shape {
  background-color: #F9F9F9;
  border-radius: 0.25rem;
  position: relative;
  overflow: hidden;
  background-image: linear-gradient(90deg, #FFF 0%, rgba(249, 249, 249, 0.5) 20%, rgba(245, 245, 245, 0.8) 60%, #FFF 100%);
  background-size: 200% 100%;
}

.la-skeleton-shape--circle {
  border-radius: 50%;
}

.la-skeleton-shape--line {
  height: 0.75em;
  width: 100%;
}

.la-quick-filter-bar--skeleton .la-quick-filter-bar__scroll-button--skeleton {
  width: 2rem;
  height: 2rem;
  background-color: #FFF;
  border: 1px solid #BDBDBD;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-quick-filter-bar--skeleton .la-quick-filter-bar__scroll-button--skeleton .la-skeleton-shape--circle {
  width: 1.25rem;
  height: 1.25rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-bar__scroll-button--skeleton.la-quick-filter-bar__scroll-button--left-skeleton {
  margin-right: 0.5rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-bar__scroll-button--skeleton.la-quick-filter-bar__scroll-button--right-skeleton {
  margin-left: 0.5rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-bar__container--skeleton {
  gap: 1rem;
  padding: 0.5rem 0;
  padding-bottom: 0.75rem;
  margin-bottom: -0.25rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 0.5rem;
  border-radius: 0.75rem;
  background-color: #F5F5F5;
  min-width: 4.5rem;
  gap: 0.25rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton .la-quick-filter-button__icon-wrapper--skeleton {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.25rem;
  height: 1.75rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton .la-quick-filter-button__icon-wrapper--skeleton .la-skeleton-shape--circle {
  width: 1.5rem;
  height: 1.5rem;
  animation: shine-skeleton 1.5s linear infinite;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton .la-quick-filter-button__label--skeleton {
  width: 80%;
  margin: 0 auto;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton .la-quick-filter-button__label--skeleton .la-skeleton-shape--line {
  height: 0.6875rem;
  border-radius: 4px;
  animation: shine-skeleton 1.5s linear infinite;
}

.la-quick-filter-bar--skeleton .la-quick-filter-bar__container--skeleton {
  gap: 0.5rem;
  padding: 0.25rem 0;
}
.la-quick-filter-bar--skeleton .la-quick-filter-bar__scroll-button--skeleton {
  width: 1.75rem;
  height: 1.75rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-bar__scroll-button--skeleton .la-skeleton-shape--circle {
  width: 1.125rem;
  height: 1.125rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton {
  min-width: 4rem;
  padding: 0.5rem 0.25rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton .la-quick-filter-button__icon-wrapper--skeleton {
  height: 1.5rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton .la-quick-filter-button__icon-wrapper--skeleton .la-skeleton-shape--circle {
  width: 1.375rem;
  height: 1.375rem;
}
.la-quick-filter-bar--skeleton .la-quick-filter-button--skeleton .la-quick-filter-button__label--skeleton .la-skeleton-shape--line {
  height: 0.625rem;
}

.lottie-weather-icon {
  display: block;
  margin: 0 auto;
}
.lottie-weather-icon svg {
  display: none;
}

.la-weather-widget__icon--current lottie-player {
  width: 2.5rem;
  height: 2.5rem;
}

.la-weather-widget__icon lottie-player {
  width: 1.75rem;
  height: 1.75rem;
}

@media (width <= 768px) {
  .la-weather-widget__icon--current lottie-player {
    width: 2rem;
    height: 2rem;
  }
  .la-weather-widget__icon lottie-player {
    width: 1.5rem;
    height: 1.5rem;
  }
}
lottie-player:not(:defined) svg {
  display: block;
  width: 100%;
  height: 100%;
}

.la-favourite-container {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.la-favourite-container__canvas {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 250px;
  height: 250px;
  pointer-events: none;
  z-index: 10;
}

.la-favourite-button {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  padding: 0.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.la-favourite-button.was-favourited {
  animation: heart-deflate 0.3s ease-out;
}
.la-favourite-button:active {
  transform: scale(0.9);
}

.la-favourite-button__icon {
  width: 28px;
  height: 28px;
  stroke: #4F4F4F;
  stroke-width: 2;
  fill: #f8fafc;
  transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}

.la-favourite-button.is-favourited .la-favourite-button__icon {
  stroke: none;
  fill: url(#heart-gradient);
  animation: heart-pop 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes heart-deflate {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes heart-pop {
  0% {
    transform: scale(1);
  }
  20% {
    transform: scale(0.95) rotate(-3deg);
  } /* Anticipation */
  50% {
    transform: scale(1.3) rotate(5deg);
  } /* Pop */
  80% {
    transform: scale(1.1) rotate(-2deg);
  } /* Settle */
  100% {
    transform: scale(1);
  }
}
.la-card-listing-grid {
  display: grid;
  gap: 1.5rem;
  margin-bottom: 3rem;
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 768px) {
  .la-card-listing-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .la-card-listing-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1200px) {
  .la-card-listing-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1440px) {
  .la-card-listing-grid {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (min-width: 1680px) {
  .la-card-listing-grid {
    grid-template-columns: repeat(6, 1fr);
  }
}

.end-of-results-indicator {
  padding: 4rem 2rem;
  width: 100%;
  text-align: center;
  color: #777;
  font-style: italic;
}

.la-collections-section {
  padding-top: 2rem;
  border-top: 1px solid #BDBDBD;
}
.la-collections-section__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}
.la-collections-section__placeholder {
  color: #757575;
}

.la-collections-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 640px) {
  .la-collections-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .la-collections-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1024px) {
  .la-collections-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.la-favourites-page__controls {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.la-favourites-page__controls .la-form--search {
  flex-grow: 1;
  max-width: 50%;
  margin: 0;
}
.la-favourites-page__controls .la-favourites-page__filter-buttons {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}
.la-favourites-page__controls .la-favourites-page__filter-buttons .la-btn {
  display: inline-flex;
  align-items: center;
}
.la-favourites-page__controls .la-favourites-page__filter-buttons .la-btn.active {
  background-color: #069393;
  color: #FFF;
  border-color: #069393;
}
.la-favourites-page__controls .la-favourites-page__filter-buttons .la-btn.active .la-btn__count {
  background-color: rgba(0, 0, 0, 0.2);
  color: #FFF;
}
.la-favourites-page__controls .la-favourites-page__filter-buttons .la-btn__count {
  display: inline-block;
  padding: 0.125rem 0.5rem;
  margin-left: 0.5rem;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  border-radius: 10em;
  background-color: #F5F5F5;
  color: #4F4F4F;
  transition: all 0.2s ease-in-out;
}

.la-empty-state {
  text-align: center;
  padding: 2rem 1rem;
  border: 1px dashed #BDBDBD;
  border-radius: 0.5rem;
  background-color: #F9F9F9;
  margin: 1rem 0;
}
.la-empty-state h3 {
  font-family: nunito, "Helvetica", "sans-serif";
  font-size: 1.5rem;
  color: #4F4F4F;
  margin-bottom: 0.5rem;
}
.la-empty-state p {
  color: #757575;
  max-width: 45ch;
  margin-left: auto;
  margin-right: auto;
}

.la-add-to-collection-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1050;
  align-items: center;
  justify-content: center;
}
.la-add-to-collection-modal.is-visible {
  display: flex;
}
.la-add-to-collection-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(38, 38, 38, 0.4);
  cursor: pointer;
}
.la-add-to-collection-modal__content {
  background-color: #FFF;
  border-radius: 1.5rem;
  padding: 1.5rem;
  width: 90%;
  max-width: 25rem;
  z-index: 1051;
  display: flex;
  flex-direction: column;
  box-shadow: 0 10px 30px rgba(38, 38, 38, 0.15);
}
.la-add-to-collection-modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.25rem;
}
.la-add-to-collection-modal__title {
  font-family: nunito, "Helvetica", "sans-serif";
  font-size: 1.5rem;
  font-weight: 600;
  color: #262626;
  margin: 0;
}
.la-add-to-collection-modal__description {
  padding: 0 1.5rem 1rem;
  margin-top: -0.5rem;
}
.la-add-to-collection-modal__description p {
  color: #757575;
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0;
}
.la-add-to-collection-modal__close-button {
  color: #BDBDBD;
  padding: 0.25rem;
}
.la-add-to-collection-modal__close-button:hover {
  color: #262626;
}
.la-add-to-collection-modal__body {
  display: flex;
  flex-direction: column;
}
.la-add-to-collection-modal__listing-preview {
  display: none;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem;
  border-radius: 0.75rem;
  background-color: #F9F9F9;
}
.la-add-to-collection-modal__listing-preview.is-visible {
  display: flex;
}
.la-add-to-collection-modal__listing-image {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.375rem;
  -o-object-fit: cover;
     object-fit: cover;
  background-color: #F5F5F5;
}
.la-add-to-collection-modal__listing-name {
  font-weight: 600;
  color: #262626;
  margin: 0;
  font-size: 1rem;
  text-decoration: none;
}
.la-add-to-collection-modal__listing-name:hover {
  color: #069393;
  text-decoration: underline;
}
.la-add-to-collection-modal__listing-name h3 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}
.la-add-to-collection-modal__listing-subtext {
  color: #757575;
  font-size: 0.875rem;
  margin: 0;
}
.la-add-to-collection-modal__listing-details {
  flex: 1;
}
.la-add-to-collection-modal__divider {
  display: none;
}
.la-add-to-collection-modal__collections-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-height: 12.5rem;
  overflow-y: auto;
  padding-right: 0.25rem;
  scrollbar-width: thin;
  scrollbar-color: #F5F5F5 transparent;
}
.la-add-to-collection-modal__collections-list::-webkit-scrollbar {
  width: 0.35rem;
  background-color: transparent;
}
.la-add-to-collection-modal__collections-list::-webkit-scrollbar-thumb {
  background-color: #F5F5F5;
  border-radius: 0.5rem;
  opacity: 0.75;
}
.la-add-to-collection-modal__collections-list::-webkit-scrollbar-track {
  background-color: transparent;
  margin: 0.25rem;
}
.la-add-to-collection-modal__collection-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  background-color: #FFF;
  transition: background-color 0.2s ease;
}
.la-add-to-collection-modal__collection-item.contains-current-listing {
  background-color: rgba(124, 200, 200, 0.1);
}
.la-add-to-collection-modal__collection-item.contains-current-listing:hover {
  background-color: rgba(124, 200, 200, 0.2);
}
.la-add-to-collection-modal__collection-item:hover {
  background-color: #F9F9F9;
}
.la-add-to-collection-modal__collection-item .la-btn--add,
.la-add-to-collection-modal__collection-item .la-btn--remove {
  border-radius: 0.375rem;
  padding: 0.25rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
}
.la-add-to-collection-modal__collection-item .la-btn--add {
  background-color: #7CC8C8;
  color: #069393;
  transition: background-color 0.2s;
  border: none;
  box-shadow: none;
}
.la-add-to-collection-modal__collection-item .la-btn--add:hover {
  background-color: rgb(116.8161290323, 196.9838709677, 196.9838709677);
}
.la-add-to-collection-modal__collection-item .la-btn--remove {
  background-color: #FADDDB;
  color: #E25C3D;
  transition: background-color 0.2s;
  border: none;
  box-shadow: none;
}
.la-add-to-collection-modal__collection-item .la-btn--remove:hover {
  background-color: rgb(248.756097561, 212.5414634146, 210.043902439);
}
.la-add-to-collection-modal__collection-name {
  font-weight: 600;
  color: #262626;
  font-size: 1rem;
}
.la-add-to-collection-modal__create-form-input-group {
  display: flex;
  border-radius: 0.5rem;
  background-color: #FFF;
  margin: 0.75rem 0rem;
}
.la-add-to-collection-modal__input-wrapper {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
}
.la-add-to-collection-modal__input-wrapper .la-form__input {
  width: 100%;
  border-radius: 0.75rem;
  padding: 0.625rem 1rem;
  padding-right: 3rem;
  border: 1px solid #F5F5F5;
}
.la-add-to-collection-modal__input-wrapper .la-form__input.is-invalid {
  border-color: #E25C3D;
}
.la-add-to-collection-modal__input-wrapper .la-btn--icon {
  position: absolute;
  right: 0.375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  min-width: 2rem;
  background-color: #069393;
}
.la-add-to-collection-modal__submit-icon {
  height: 1.25rem;
  width: 1.25rem;
  color: currentColor;
}
.la-add-to-collection-modal__footer {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 1.5rem;
  padding-top: 0.5rem;
  border-top: none;
}
.la-add-to-collection-modal__footer .la-btn--secondary {
  background-color: transparent;
  color: #262626;
  border: none;
  font-weight: 500;
  border-radius: 0.5rem;
  padding: 0.5rem 1rem;
  box-shadow: none;
}
.la-add-to-collection-modal__footer .la-btn--secondary:hover {
  background-color: #F9F9F9;
}
.la-add-to-collection-modal__footer .la-btn--primary {
  background-color: #069393;
  color: #FFF;
  border: none;
  font-weight: 500;
  border-radius: 0.5rem;
  padding: 0.5rem 1rem;
  box-shadow: none;
}
.la-add-to-collection-modal__footer .la-btn--primary:hover {
  background-color: rgb(5, 122.5, 122.5);
}
.la-add-to-collection-modal__empty-message {
  text-align: center;
  color: #757575;
  font-style: italic;
  padding: 2rem 1rem;
}
.la-add-to-collection-modal .la-form__group {
  margin-bottom: 1rem;
}
.la-add-to-collection-modal .la-form__label {
  display: block;
  font-weight: 500;
  color: #262626;
  margin-bottom: 0.5rem;
  font-size: 0.875rem;
}
.la-add-to-collection-modal .la-form__input {
  width: 100%;
  padding: 0.625rem 1rem;
  border: 1px solid #F5F5F5;
  border-radius: 0.5rem;
  font-size: 1rem;
  transition: border-color 0.2s ease-in-out;
}
.la-add-to-collection-modal .la-form__input:focus {
  outline: none;
  border-color: #069393;
}
.la-add-to-collection-modal .la-form__input--textarea {
  resize: vertical;
  min-height: 4rem;
}
.la-add-to-collection-modal .la-form__error {
  color: #E25C3D;
  font-size: 0.875rem;
  margin-top: 0.25rem;
}
.la-add-to-collection-modal__loading-state {
  text-align: center;
  padding: 2rem 0;
  color: #757575;
}
.la-add-to-collection-modal__loading-state .la-spinner {
  margin: 0 auto 1rem;
}

.la-inline-form {
  display: inline-block;
  margin: 0;
  padding: 0;
}

.la-add-to-collection-modal--collection-details .la-add-to-collection-modal__listing-preview {
  display: flex;
  gap: 0.75rem;
  padding: 0.5rem;
  background-color: transparent;
}
.la-add-to-collection-modal--collection-details .la-add-to-collection-modal__listing-preview:hover {
  background-color: #F9F9F9;
  cursor: pointer;
}
.la-add-to-collection-modal--collection-details .la-add-to-collection-modal__listing-image {
  width: 3rem;
  height: 3rem;
}
.la-add-to-collection-modal--collection-details .la-add-to-collection-modal__listing-name {
  font-size: 0.9375rem;
}
.la-add-to-collection-modal--collection-details .la-add-to-collection-modal__listing-subtext {
  font-size: 0.8125rem;
}
.la-add-to-collection-modal--collection-details .la-add-to-collection-modal__collection-item {
  gap: 0.75rem;
  padding: 0.25rem 0.75rem;
}

.la-collections-section {
  margin-top: 2rem;
}
.la-collections-section__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}
.la-collections-section__title {
  margin: 0;
}
.la-collections-section__placeholder {
  color: #757575;
  text-align: center;
  padding: 2rem 0;
}

.la-collections-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem;
}
@media (min-width: 576px) {
  .la-collections-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .la-collections-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 992px) {
  .la-collections-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.la-collection-card {
  position: relative;
  background-color: #FFF;
  border: 0.0625rem solid #F5F5F5;
  border-radius: 0.5rem;
  padding: 1.25rem;
  transition: all 0.2s ease-in-out;
}
.la-collection-card:hover {
  border-color: #069393;
  box-shadow: 0 0.25rem 0.75rem rgba(38, 38, 38, 0.1);
}
.la-collection-card:hover .la-collection-card__actions {
  opacity: 1;
  visibility: visible;
}
.la-collection-card__link {
  text-decoration: none;
  color: inherit;
  display: block;
}
.la-collection-card__content {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.la-collection-card__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  background-color: #7CC8C8;
  color: #069393;
  border-radius: 0.5rem;
}
.la-collection-card__icon svg {
  width: 1.5rem;
  height: 1.5rem;
}
.la-collection-card__details {
  flex: 1;
}
.la-collection-card__title {
  margin: 0;
  font-weight: 600;
  color: #262626;
  font-size: 1rem;
  line-height: 1.5;
}
.la-collection-card__description {
  margin: 0.25rem 0;
  font-size: 0.875rem;
  color: #757575;
  line-height: 1.4;
}
.la-collection-card__count {
  margin: 0.25rem 0 0;
  font-size: 0.875rem;
  color: #757575;
}
.la-collection-card__actions {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  display: flex;
  gap: 0.25rem;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
.la-collection-card__action-btn {
  width: 2rem;
  height: 2rem;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFF;
  border: 1px solid #F5F5F5;
  border-radius: 0.375rem;
  transition: all 0.2s ease-in-out;
}
.la-collection-card__action-btn:hover {
  background-color: #FFF;
  border-color: #BDBDBD;
}
.la-collection-card__action-btn--delete:hover {
  background-color: #FADDDB;
  border-color: #F19B85;
  color: #E25C3D;
}
.la-collection-card__action-icon {
  width: 1rem;
  height: 1rem;
}

.la-glass-container {
  position: relative;
  display: flex;
  align-items: center;
  background: transparent;
  border-radius: 50rem;
  overflow: hidden;
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.1);
  color: var(--la-text, #ffffff);
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 2.2);
}
.la-glass-container--rounded {
  border-radius: 3rem;
}
.la-glass-container--small {
  padding: 0.5rem;
}
.la-glass-container--medium {
  padding: 0.75rem;
}
.la-glass-container--large {
  padding: 1rem;
}

.la-glass-filter,
.la-glass-overlay,
.la-glass-specular {
  position: absolute;
  inset: 0;
  border-radius: inherit;
}

.la-glass-filter {
  z-index: 0;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.la-glass-overlay {
  z-index: 1;
  background: rgba(255, 255, 255, 0.25);
}

.la-glass-specular {
  z-index: 2;
  box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.75), inset 0 0 5px rgba(255, 255, 255, 0.75);
}

.la-glass-content {
  position: relative;
  z-index: 3;
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
}
.la-glass-content--alone {
  padding: 0.5rem;
}

.flatpickr-calendar {
  box-shadow: 0 4px 16px rgba(79, 79, 79, 0.1), 0 2px 8px rgba(6, 147, 147, 0.06);
  border-radius: 12px;
  font-family: "Work Sans", "Helvetica", "sans-serif";
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  padding: 1rem;
  background: var(--la-base-lightest, #FFF);
  min-width: 380px;
  width: auto;
  max-width: 92vw;
  overflow: visible;
}

.flatpickr-months .flatpickr-prev-month {
  left: 0.5rem;
}

.flatpickr-months .flatpickr-next-month {
  right: 0.5rem;
}

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

.flatpickr-months {
  padding: 0 0 1rem 0;
  margin-bottom: 0.75rem;
  border-bottom: 1px solid var(--la-base-lighter, #F9F9F9);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.5rem;
}

.flatpickr-month {
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 auto;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  padding: 0.5rem;
  border-radius: 6px;
  transition: background-color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2rem;
  width: 2rem;
  position: absolute;
  top: 0;
  margin-top: 0;
}
.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg {
  width: 12px;
  height: 12px;
  fill: #757575;
  transition: fill 0.2s ease;
}
.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  background-color: rgba(6, 147, 147, 0.08);
}
.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
  fill: #069393;
}

.flatpickr-calendar.hasTime {
  padding-bottom: 1rem;
}

.flatpickr-current-month {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0;
  height: auto;
}
.flatpickr-current-month .flatpickr-monthDropdown-months {
  font-size: 0.95rem;
  font-weight: 600;
  color: #262626;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  background: var(--la-base-lightest, #FFF);
  padding: 0.35rem 0.75rem;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
  background-color: rgba(6, 147, 147, 0.06);
  border-color: var(--la-success-light, #07B4B4);
}
.flatpickr-current-month .flatpickr-monthDropdown-months:focus {
  outline: none;
  border-color: #069393;
  box-shadow: 0 0 0 3px rgba(6, 147, 147, 0.1);
}
.flatpickr-current-month .numInputWrapper {
  position: relative;
  width: 4.5rem;
  height: 2rem;
  display: inline-block;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 8px;
  background: var(--la-base-lightest, #FFF);
  overflow: hidden;
  transition: all 0.2s ease;
}
.flatpickr-current-month .numInputWrapper:hover {
  background-color: rgba(6, 147, 147, 0.04);
  border-color: var(--la-success-light, #07B4B4);
}
.flatpickr-current-month .numInputWrapper:focus-within {
  background-color: rgba(6, 147, 147, 0.06);
  border-color: #069393;
  box-shadow: 0 0 0 3px rgba(6, 147, 147, 0.1);
}
.flatpickr-current-month .numInputWrapper .numInput {
  font-size: 0.95rem;
  font-weight: 600;
  color: #262626;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0 0.5rem;
  padding-right: 1.3rem;
  text-align: center;
  line-height: 2rem;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
  -webkit-appearance: textfield;
          appearance: textfield;
  -moz-appearance: textfield;
}
.flatpickr-current-month .numInputWrapper .arrowUp,
.flatpickr-current-month .numInputWrapper .arrowDown {
  display: grid;
  place-items: center;
  position: absolute;
  right: 0.35rem;
  width: 0.75rem;
  height: 0.75rem;
  margin: 0;
  padding: 0;
  background: transparent !important;
  border: 0;
  opacity: 0.9;
  cursor: pointer;
}
.flatpickr-current-month .numInputWrapper .arrowUp::after,
.flatpickr-current-month .numInputWrapper .arrowDown::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 0.35rem solid transparent;
  border-right: 0.35rem solid transparent;
}
.flatpickr-current-month .numInputWrapper .arrowUp {
  top: 0.15rem;
}
.flatpickr-current-month .numInputWrapper .arrowUp::after {
  border-bottom: 0.4rem solid #757575;
}
.flatpickr-current-month .numInputWrapper .arrowDown {
  bottom: 0.15rem;
}
.flatpickr-current-month .numInputWrapper .arrowDown::after {
  border-top: 0.4rem solid #757575;
}

.flatpickr-weekdays {
  margin: 0 0 0.5rem 0;
  height: auto;
}

.flatpickr-weekday {
  font-weight: 600;
  color: #757575;
}

.dayContainer {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  padding: 0;
}

.flatpickr-day {
  border-radius: 6px;
  transition: background-color 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, transform 0.12s ease;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
  caret-color: transparent;
  cursor: pointer;
  box-sizing: border-box;
  border: 1px solid transparent;
  margin-top: 0.15rem;
  margin-bottom: 0.15rem;
  -webkit-tap-highlight-color: transparent;
}
.flatpickr-day:hover {
  background-color: rgba(6, 147, 147, 0.08);
  transform: scale(0.97);
}
.flatpickr-day:focus {
  outline: 2px solid rgba(6, 147, 147, 0.35);
  outline-offset: 2px;
}
.flatpickr-day.selected {
  background-color: #069393 !important;
  border-color: transparent !important;
  color: white !important;
  box-shadow: 0 2px 5px rgba(6, 147, 147, 0.16);
  transform: scale(0.94);
}
.flatpickr-day.today {
  background-color: rgba(6, 147, 147, 0.06);
  box-shadow: inset 0 -2px 0 rgba(6, 147, 147, 0.45);
}
.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay {
  color: #BDBDBD;
}

.flatpickr-input,
.flatpickr-input.flatpickr-alt-input {
  background-color: var(--la-base-lightest, #FFF) !important;
  border: 1px solid var(--la-base-medium-light, #BDBDBD);
  border-radius: 10px;
  padding: 0.6rem 0.75rem;
  line-height: 1.4;
  box-shadow: 0 1px 3px rgba(79, 79, 79, 0.04);
  transition: all 0.2s ease;
  font-weight: 500;
}
.flatpickr-input:hover,
.flatpickr-input.flatpickr-alt-input:hover {
  border-color: var(--la-success-light, #07B4B4);
  box-shadow: 0 2px 6px rgba(6, 147, 147, 0.08);
}
.flatpickr-input:focus,
.flatpickr-input.flatpickr-alt-input:focus {
  outline: none;
  border-color: var(--la-success-medium, #069393);
  box-shadow: 0 2px 8px rgba(6, 147, 147, 0.15), 0 0 0 3px rgba(6, 147, 147, 0.1);
}

.flatpickr-time {
  border-top: 1px solid var(--la-base-lighter, #F9F9F9);
  margin-top: 1rem;
  padding: 1.25rem 1rem 1rem 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  height: auto;
  max-height: none;
  min-height: 3rem;
}
.flatpickr-time .numInputWrapper {
  flex: 0 0 auto;
  position: relative;
  width: calc(4ch + 2.4rem);
  --fp-arrow-size: 12px;
  --fp-arrow-gap: 6px;
  --fp-arrow-right: 8px;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  border-radius: 8px;
  background: var(--la-base-lightest, #FFF);
  overflow: hidden;
  transition: all 0.2s ease;
}
.flatpickr-time .numInputWrapper:hover {
  background-color: rgba(6, 147, 147, 0.04);
  border-color: var(--la-success-light, #07B4B4);
}
.flatpickr-time .numInputWrapper:focus-within {
  background-color: rgba(6, 147, 147, 0.06);
  border-color: #069393;
  box-shadow: 0 0 0 3px rgba(6, 147, 147, 0.1);
}
.flatpickr-time .numInputWrapper input {
  font-weight: 500;
  color: #262626;
  font-size: 1.1rem;
  background: transparent;
  padding: 0.5rem 0.4rem;
  padding-right: 2.2rem;
  border-radius: 0;
  border: 0;
  background: transparent;
  background-clip: padding-box;
  transition: all 0.2s ease;
  text-align: center;
  width: 100%;
  height: 2.5rem;
  line-height: 2.5rem;
  box-sizing: border-box;
  display: block;
  -webkit-appearance: textfield;
          appearance: textfield;
  -moz-appearance: textfield;
}
.flatpickr-time .numInputWrapper input::-webkit-outer-spin-button, .flatpickr-time .numInputWrapper input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.flatpickr-time .numInputWrapper input:focus {
  outline: none;
  box-shadow: none;
}
.flatpickr-time .numInputWrapper .arrowUp,
.flatpickr-time .numInputWrapper .arrowDown {
  display: grid;
  place-items: center;
  position: absolute;
  right: var(--fp-arrow-right);
  width: var(--fp-arrow-size);
  height: var(--fp-arrow-size);
  margin: 0;
  padding: 0;
  z-index: 1;
  opacity: 0.85;
  transition: opacity 0.15s ease;
  cursor: pointer;
  background: transparent !important;
  border: 0;
}
.flatpickr-time .numInputWrapper .arrowUp::after,
.flatpickr-time .numInputWrapper .arrowDown::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
}
.flatpickr-time .numInputWrapper .arrowUp::after {
  border-bottom: 6px solid #757575;
}
.flatpickr-time .numInputWrapper .arrowDown::after {
  border-top: 6px solid #757575;
}
.flatpickr-time .numInputWrapper .arrowUp {
  top: calc(50% - var(--fp-arrow-gap) / 2 - var(--fp-arrow-size));
}
.flatpickr-time .numInputWrapper .arrowDown {
  top: calc(50% + var(--fp-arrow-gap) / 2);
}
.flatpickr-time .flatpickr-time-separator {
  font-weight: 600;
  color: #757575;
  font-size: 1.25rem;
  line-height: 1;
  padding: 0 0.25rem;
  display: inline-flex;
  align-items: center;
  height: 2.5rem;
}
.flatpickr-time .flatpickr-am-pm {
  font-weight: 600;
  font-size: 1rem;
  padding: 0.5rem 0.75rem;
  border-radius: 8px;
  border: 1px solid var(--la-base-lighter, #F9F9F9);
  background: var(--la-base-lightest, #FFF);
  transition: all 0.2s ease;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #262626;
  min-width: 3rem;
  height: 2.5rem;
  flex: 0 0 auto;
  white-space: nowrap;
  line-height: 1;
  box-sizing: border-box;
}
.flatpickr-time .flatpickr-am-pm:hover {
  background-color: rgba(6, 147, 147, 0.08);
  border-color: #069393;
  color: #069393;
}
.flatpickr-time .flatpickr-am-pm:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(6, 147, 147, 0.1);
}

.la-subscription-page {
  min-height: 100vh;
}
.la-subscription-page__header {
  text-align: center;
  margin-bottom: 3rem;
}
@media (max-width: 768px) {
  .la-subscription-page__header {
    margin-bottom: 2rem;
  }
}
.la-subscription-page__title {
  font-size: 2.5rem;
  font-weight: 800;
  color: #262626;
  margin: 0 0 1rem 0;
  letter-spacing: -0.02em;
}
@media (max-width: 768px) {
  .la-subscription-page__title {
    font-size: 2rem;
  }
}
.la-subscription-page__subtitle {
  font-size: 1.125rem;
  color: #757575;
  margin: 0 0 0.75rem 0;
  line-height: 1.6;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.la-subscription-page__trial-line {
  font-size: 0.9375rem;
  color: #069393;
  font-weight: 500;
  margin: 0;
}
.la-subscription-page__plans {
  margin-bottom: 3rem;
}
.la-subscription-page__plans--with-founder .la-subscription-page__plans-row {
  max-width: 1000px;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
@media (max-width: 900px) {
  .la-subscription-page__plans--with-founder .la-subscription-page__plans-row {
    grid-template-columns: 1fr;
    max-width: 360px;
  }
}
.la-subscription-page__plans--with-founder .la-subscription-page__plan {
  padding: 1.25rem;
}
.la-subscription-page__plans--with-founder .la-subscription-page__plan-amount {
  font-size: 1.75rem;
}
.la-subscription-page__plans--with-founder .la-subscription-page__plan-features {
  font-size: 0.8125rem;
}
.la-subscription-page__plans--with-founder .la-subscription-page__plan-features li {
  padding: 0.375rem 0;
}
.la-subscription-page__plans--with-founder .la-subscription-page__plan-button {
  padding: 0.625rem 1rem;
  font-size: 0.875rem;
}
.la-subscription-page__plans-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  max-width: 900px;
  margin: 0 auto;
}
.la-subscription-page__plans-row--three {
  max-width: 1100px;
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 900px) {
  .la-subscription-page__plans-row--three {
    grid-template-columns: 1fr;
    max-width: 400px;
  }
}
.la-subscription-page__plan {
  background: white;
  border: 2px solid #F5F5F5;
  border-radius: 1rem;
  padding: 2rem;
  position: relative;
  transition: all 0.3s ease;
  overflow: hidden;
}
.la-subscription-page__plan:hover {
  border-color: #07B4B4;
  box-shadow: 0 8px 30px rgba(59, 130, 246, 0.12);
  transform: translateY(-2px);
}
.la-subscription-page__plan--popular {
  border-color: #069393;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.02) 0%, white 100%);
}
.la-subscription-page__plan--popular:hover {
  box-shadow: 0 12px 40px rgba(59, 130, 246, 0.2);
}
.la-subscription-page__plan--current {
  border-color: #07B4B4;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.02) 0%, white 100%);
}
.la-subscription-page__plan--current:hover {
  border-color: #07B4B4;
  box-shadow: 0 8px 30px rgba(34, 197, 94, 0.12);
}
.la-subscription-page__plan--founder {
  background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  border-color: rgba(99, 102, 241, 0.3);
}
.la-subscription-page__plan--founder:hover {
  border-color: rgba(99, 102, 241, 0.5);
  box-shadow: 0 12px 40px rgba(99, 102, 241, 0.2);
}
.la-subscription-page__plan--founder .la-subscription-page__plan-name,
.la-subscription-page__plan--founder .la-subscription-page__plan-amount {
  color: #f8fafc;
}
.la-subscription-page__plan--founder .la-subscription-page__plan-period,
.la-subscription-page__plan--founder .la-subscription-page__plan-billing-note {
  color: #94a3b8;
}
.la-subscription-page__plan--founder .la-subscription-page__plan-features {
  background: rgba(148, 163, 184, 0.08);
  border-color: rgba(148, 163, 184, 0.1);
}
.la-subscription-page__plan--founder .la-subscription-page__plan-features li {
  color: #cbd5e1;
}
.la-subscription-page__plan--founder .la-subscription-page__plan-features li::before {
  background: #6366f1;
}
.la-subscription-page__plan--founder .la-subscription-page__plan-features li:not(:last-child) {
  border-bottom-color: rgba(148, 163, 184, 0.1);
}
.la-subscription-page__plan-badge {
  position: absolute;
  top: -1px;
  right: 1.5rem;
  background: #069393;
  color: white;
  padding: 0.5rem 1rem;
  border-radius: 0 0 0.5rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.la-subscription-page__plan-badge--current {
  background: #069393;
}
.la-subscription-page__plan-badge--founder {
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
}
.la-subscription-page__plan-header {
  margin-bottom: 1.5rem;
}
.la-subscription-page__plan-name {
  font-size: 1.25rem;
  font-weight: 700;
  color: #262626;
  margin: 0 0 0.5rem 0;
}
.la-subscription-page__plan-billing {
  color: #757575;
  font-size: 0.875rem;
  font-weight: 500;
}
.la-subscription-page__plan-billing-note {
  font-size: 0.875rem;
  color: #757575;
  margin: 0 0 1rem 0;
  line-height: 1.5;
}
.la-subscription-page__plan-price {
  margin-bottom: 1.5rem;
  display: flex;
  align-items: baseline;
  gap: 0.25rem;
}
.la-subscription-page__plan-amount {
  font-size: 3rem;
  font-weight: 800;
  color: #262626;
  line-height: 1;
}
.la-subscription-page__plan-period {
  font-size: 1.125rem;
  color: #757575;
  font-weight: 500;
}
.la-subscription-page__plan-savings {
  display: inline-block;
  background: white;
  color: #05686C;
  border: 1px solid #07B4B4;
  padding: 0.375rem 0.75rem;
  border-radius: 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
}
.la-subscription-page__plan-features {
  list-style: none;
  padding: 1.25rem;
  margin: 1rem 0;
  background: #F9F9F9;
  border-radius: 0.75rem;
  border: 1px solid #F5F5F5;
}
.la-subscription-page__plan-features--short {
  padding: 1rem;
  margin: 0.75rem 0 1.5rem 0;
}
.la-subscription-page__plan-features--short li {
  padding: 0.5rem 0;
  font-size: 0.8125rem;
}
.la-subscription-page__plan-features li {
  display: flex;
  align-items: center;
  padding: 0.75rem 0;
  font-size: 0.875rem;
  color: #4F4F4F;
  line-height: 1.4;
}
.la-subscription-page__plan-features li:not(:last-child) {
  border-bottom: 1px solid #F5F5F5;
}
.la-subscription-page__plan-features li::before {
  content: "✓";
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  background: #069393;
  color: white;
  border-radius: 50%;
  text-align: center;
  line-height: 1.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  margin-right: 0.75rem;
  flex-shrink: 0;
}
.la-subscription-page__features {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid #F5F5F5;
}
.la-subscription-page__features-title {
  font-size: 1.125rem;
  font-weight: 600;
  color: #262626;
  text-align: center;
  margin: 0 0 1rem 0;
}
.la-subscription-page__features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin: 1.5rem auto 3rem auto;
  max-width: 1100px;
}
@media (max-width: 900px) {
  .la-subscription-page__features-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .la-subscription-page__features-grid {
    grid-template-columns: 1fr;
  }
}
.la-subscription-page__feature {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem;
  background: white;
  border-radius: 0.5rem;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
  transition: all 0.2s ease;
}
.la-subscription-page__feature:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.la-subscription-page__feature-icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #7CC8C8;
  border-radius: 0.5rem;
}
.la-subscription-page__feature-svg {
  width: 1.125rem;
  height: 1.125rem;
  color: #069393;
}
.la-subscription-page__feature-content {
  flex: 1;
}
.la-subscription-page__feature-content h4 {
  font-size: 0.875rem;
  font-weight: 600;
  color: #262626;
  margin: 0 0 0.25rem 0;
}
.la-subscription-page__feature-content p {
  font-size: 0.8125rem;
  color: #757575;
  margin: 0;
  line-height: 1.5;
}
.la-subscription-page__trial-notice {
  text-align: center;
  max-width: 600px;
  margin: 2rem auto;
  padding: 1.5rem 2rem;
  background: white;
  border-radius: 0.75rem;
  border: 1px solid #07B4B4;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.la-subscription-page__trial-notice p {
  margin: 0;
  font-size: 1rem;
  color: #05686C;
  line-height: 1.6;
}
.la-subscription-page__trial-notice p strong {
  color: #069393;
  font-weight: 600;
}
.la-subscription-page__founder-section {
  margin-top: 3rem;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.la-subscription-page__founder-divider {
  display: flex;
  align-items: center;
  margin-bottom: 2rem;
}
.la-subscription-page__founder-divider::before, .la-subscription-page__founder-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, #F5F5F5, transparent);
}
.la-subscription-page__founder-divider span {
  padding: 0 1.5rem;
  color: #757575;
  font-size: 0.8125rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  white-space: nowrap;
}
.la-subscription-page__founder-card {
  position: relative;
  background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  border: 1px solid rgba(148, 163, 184, 0.15);
  border-radius: 1.25rem;
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(255, 255, 255, 0.05) inset;
  transition: all 0.3s ease;
}
.la-subscription-page__founder-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #6366f1, #8b5cf6, #a855f7);
}
.la-subscription-page__founder-card::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(ellipse at top right, rgba(99, 102, 241, 0.1) 0%, transparent 50%);
  pointer-events: none;
}
.la-subscription-page__founder-card:hover {
  transform: translateY(-4px);
  border-color: rgba(148, 163, 184, 0.25);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(255, 255, 255, 0.08) inset, 0 0 60px rgba(99, 102, 241, 0.15);
}
.la-subscription-page__founder-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  position: absolute;
  top: 1rem;
  right: 1rem;
}
@media (max-width: 480px) {
  .la-subscription-page__founder-badges {
    position: relative;
    top: auto;
    right: auto;
    padding: 1rem 1rem 0 1rem;
    justify-content: center;
  }
}
.la-subscription-page__founder-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  color: white;
  padding: 0.5rem 1rem;
  border-radius: 2rem;
  font-size: 0.7rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  box-shadow: 0 2px 12px rgba(99, 102, 241, 0.4);
}
.la-subscription-page__founder-badge--secondary {
  background: rgba(148, 163, 184, 0.1);
  color: #94a3b8;
  box-shadow: none;
  border: 1px solid rgba(148, 163, 184, 0.2);
}
.la-subscription-page__founder-content {
  padding: 2.5rem;
  padding-top: 3.5rem;
}
@media (max-width: 480px) {
  .la-subscription-page__founder-content {
    padding-top: 1.5rem;
  }
}
.la-subscription-page__founder-header {
  margin-bottom: 1.5rem;
}
.la-subscription-page__founder-title {
  font-size: 1.75rem;
  font-weight: 800;
  color: #f8fafc;
  margin: 0 0 0.5rem 0;
  letter-spacing: -0.02em;
}
.la-subscription-page__founder-tagline {
  font-size: 1.125rem;
  color: #94a3b8;
  margin: 0;
  font-weight: 500;
}
.la-subscription-page__founder-price {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  margin-bottom: 2rem;
}
.la-subscription-page__founder-amount {
  font-size: 3.5rem;
  font-weight: 800;
  color: #f8fafc;
  line-height: 1;
  letter-spacing: -0.02em;
}
.la-subscription-page__founder-period {
  font-size: 1.25rem;
  color: #94a3b8;
  font-weight: 600;
}
.la-subscription-page__founder-benefits {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem 0;
}
.la-subscription-page__founder-benefits li {
  position: relative;
  padding: 0.625rem 0 0.625rem 1.5rem;
  font-size: 0.9375rem;
  color: #cbd5e1;
  line-height: 1.5;
}
.la-subscription-page__founder-benefits li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.875rem;
  width: 6px;
  height: 6px;
  background: #6366f1;
  border-radius: 50%;
}
.la-subscription-page__founder-action {
  margin-bottom: 1rem;
}
.la-subscription-page__founder-button {
  display: block;
  width: 100%;
  padding: 1.125rem 2rem;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  color: white;
  border: none;
  border-radius: 0.75rem;
  font-size: 1.125rem;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 16px rgba(99, 102, 241, 0.4);
}
.la-subscription-page__founder-button:hover {
  background: linear-gradient(135deg, #4f46e5, #7c3aed);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(99, 102, 241, 0.5);
}
.la-subscription-page__founder-button:active {
  transform: translateY(0);
}
.la-subscription-page__founder-note {
  font-size: 0.8125rem;
  color: #64748b;
  text-align: center;
  margin: 0;
  line-height: 1.5;
}
.la-subscription-page__plan-button {
  display: block;
  width: 100%;
  padding: 1rem 1.5rem;
  background: #069393;
  color: white;
  border: none;
  border-radius: 0.75rem;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
  transition: all 0.2s ease;
  cursor: pointer;
}
.la-subscription-page__plan-button:hover {
  background: #05686C;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}
.la-subscription-page__plan-button--current {
  background: #7CC8C8;
  color: #05686C;
  cursor: default;
}
.la-subscription-page__plan-button--current:hover {
  background: #7CC8C8;
  transform: none;
  box-shadow: none;
}
.la-subscription-page__plan-button--founder {
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
}
.la-subscription-page__plan-button--founder:hover {
  background: linear-gradient(135deg, #4f46e5, #7c3aed);
  box-shadow: 0 4px 16px rgba(99, 102, 241, 0.4);
}
.la-subscription-page__actions {
  margin-top: 2rem;
  display: flex;
  gap: 1rem;
  justify-content: center;
}
@media (max-width: 640px) {
  .la-subscription-page__actions {
    flex-direction: column;
  }
}
.la-subscription-page__action-button {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
  margin-right: 1rem;
  transition: all 0.2s ease;
  border: 1px solid transparent;
  cursor: pointer;
}
.la-subscription-page__action-button--primary {
  background: #069393;
  color: white;
}
.la-subscription-page__action-button--primary:hover {
  background: #05686C;
}
.la-subscription-page__action-button--secondary {
  background: white;
  color: #4F4F4F;
  border-color: #F5F5F5;
}
.la-subscription-page__action-button--secondary:hover {
  background: #FFF;
}
.la-subscription-page__action-button--danger {
  background: #E25C3D;
  color: white;
}
.la-subscription-page__action-button--danger:hover {
  background: #C0472D;
}

.la-subscription-banner {
  padding: 1rem 1.5rem;
  margin-bottom: 2rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  border: 1px solid #F5F5F5;
  background-color: white;
}
.la-subscription-banner--trial {
  border-color: #07B4B4;
  color: #4F4F4F;
}
.la-subscription-banner--trial strong {
  color: #069393;
  font-weight: 600;
}
.la-subscription-banner--error {
  background-color: rgba(239, 68, 68, 0.1);
  color: #C0472D;
  border-left: 4px solid #E25C3D;
}
.la-subscription-banner--canceled {
  background-color: rgba(156, 163, 175, 0.1);
  color: #4F4F4F;
  border-left: 4px solid #757575;
}

.la-subscription-section {
  margin: 2rem 0;
}

.la-current-plan {
  background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  border-radius: 1rem;
  padding: 1.5rem 2rem;
  margin: 1.5rem 0 2rem;
}
.la-current-plan__main {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}
@media (max-width: 640px) {
  .la-current-plan__main {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
}
.la-current-plan__info {
  flex: 1;
}
.la-current-plan__status {
  margin-bottom: 0.5rem;
}
.la-current-plan__badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border-radius: 2rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: rgba(148, 163, 184, 0.2);
  color: #94a3b8;
}
.la-current-plan__badge--active {
  background: rgba(34, 197, 94, 0.15);
  color: #4ade80;
}
.la-current-plan__badge--trial {
  background: rgba(59, 130, 246, 0.15);
  color: #60a5fa;
}
.la-current-plan__badge--lifetime {
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.2), rgba(139, 92, 246, 0.2));
  color: #a5b4fc;
}
.la-current-plan__badge--canceled {
  background: rgba(239, 68, 68, 0.15);
  color: #f87171;
}
.la-current-plan__badge--error {
  background: rgba(245, 158, 11, 0.15);
  color: #fbbf24;
}
.la-current-plan__name {
  font-size: 1.5rem;
  font-weight: 700;
  color: #f8fafc;
  margin: 0 0 0.25rem;
  line-height: 1.2;
}
@media (max-width: 640px) {
  .la-current-plan__name {
    font-size: 1.25rem;
  }
}
.la-current-plan__price {
  font-size: 1rem;
  color: #94a3b8;
  margin: 0;
}
.la-current-plan__price--lifetime {
  color: #a5b4fc;
}
.la-current-plan__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.75rem;
}
@media (max-width: 640px) {
  .la-current-plan__meta {
    align-items: flex-start;
    width: 100%;
  }
}
.la-current-plan__next-billing {
  text-align: right;
}
@media (max-width: 640px) {
  .la-current-plan__next-billing {
    text-align: left;
  }
}
.la-current-plan__meta-label {
  display: block;
  font-size: 0.75rem;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.la-current-plan__meta-value {
  display: block;
  font-size: 0.9375rem;
  color: #e2e8f0;
  font-weight: 500;
}
.la-current-plan__action {
  display: inline-block;
  padding: 0.5rem 1rem;
  background: rgba(255, 255, 255, 0.1);
  color: #e2e8f0;
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: none;
  border-radius: 0.5rem;
  transition: all 0.2s ease;
}
.la-current-plan__action:hover {
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
}
@media (max-width: 640px) {
  .la-current-plan__action {
    width: 100%;
    text-align: center;
  }
}

.la-subscription-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.la-subscription-toolbar__right {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.la-subscription-toolbar__link {
  font-size: 0.875rem;
  color: #757575;
  text-decoration: none;
  transition: color 0.2s ease;
}
.la-subscription-toolbar__link:hover {
  color: #069393;
}

.la-segment-control {
  display: inline-flex;
  border: 1px solid #F5F5F5;
  border-radius: 0.5rem;
  overflow: hidden;
}
.la-segment-control__item {
  display: inline-block;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  color: #4F4F4F;
  text-decoration: none;
  background: white;
  border-right: 1px solid #F5F5F5;
}
.la-segment-control__item:last-child {
  border-right: 0;
}
.la-segment-control__item.is-active {
  background: #069393;
  color: white;
}

.la-search-form {
  display: flex;
  align-items: center;
}
.la-search-form__input {
  padding: 0.5rem 0.75rem;
  border: 1px solid #F5F5F5;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  min-width: 14rem;
}

.la-summary-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1rem;
}

.la-summary-card {
  background: white;
  border: 1px solid #F5F5F5;
  border-radius: 0.75rem;
  padding: 1rem 1.25rem;
}
.la-summary-card__label {
  font-size: 0.75rem;
  color: #757575;
  margin-bottom: 0.25rem;
}
.la-summary-card__value {
  font-size: 1.125rem;
  font-weight: 700;
  color: #262626;
}

.la-subscription-table {
  overflow-x: auto;
}
.la-subscription-table table {
  width: 100%;
  border-collapse: collapse;
  background: white;
  border: 1px solid #F5F5F5;
  border-radius: 0.5rem;
}
.la-subscription-table th,
.la-subscription-table td {
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #F5F5F5;
  text-align: left;
  font-size: 0.875rem;
}
.la-subscription-table thead th {
  background: #F9F9F9;
  color: #4F4F4F;
  font-weight: 600;
}
.la-subscription-table tbody tr:hover {
  background: #F9F9F9;
}
.la-subscription-table .la-link {
  color: #069393;
  text-decoration: none;
}
.la-subscription-table .la-link:hover {
  text-decoration: underline;
}

.la-status {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 600;
  background: #F9F9F9;
  color: #4F4F4F;
}
.la-status--paid, .la-status--success {
  background: rgba(34, 197, 94, 0.12);
  color: #05686C;
}
.la-status--processing {
  background: rgba(245, 158, 11, 0.12);
  color: #92400e;
}
.la-status--open, .la-status--draft {
  background: rgba(59, 130, 246, 0.12);
  color: #05686C;
}
.la-status--void, .la-status--uncollectible, .la-status--failed {
  background: rgba(239, 68, 68, 0.12);
  color: #C0472D;
}

.la-horizontal-carousel, .la-weekly-picks, .la-editors-picks {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.la-horizontal-carousel__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 0.125rem;
  padding: 0;
}
.la-horizontal-carousel__title {
  font-size: 1.125rem;
  font-weight: 500;
  color: #595959;
  margin: 0;
  line-height: 1.25;
  letter-spacing: -0.01em;
  padding: 0;
}
.la-horizontal-carousel__header-actions {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.la-horizontal-carousel__nav-buttons {
  display: flex;
  gap: 0.5rem;
}
.la-horizontal-carousel__carousel {
  position: relative;
}
.la-horizontal-carousel__carousel-wrapper {
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0.5rem 0;
  margin: 0 -1rem;
  padding: 0 1rem;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scroll-padding: 1rem;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.la-horizontal-carousel__carousel-wrapper::-webkit-scrollbar {
  display: none;
}
.la-horizontal-carousel__bar {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  margin: 0;
}
.la-horizontal-carousel__container {
  --gap: 1rem;
  --visible: 1;
  display: flex;
  gap: var(--gap);
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0.5rem 0;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scroll-padding: 1rem;
  scrollbar-gutter: stable;
  flex-grow: 1;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.la-horizontal-carousel__container::-webkit-scrollbar {
  display: none;
}
@media (min-width: 36rem) {
  .la-horizontal-carousel__container {
    --visible: 2;
  }
}
@media (min-width: 48rem) {
  .la-horizontal-carousel__container {
    --gap: 1.5rem;
  }
}
@media (min-width: 56rem) {
  .la-horizontal-carousel__container {
    --visible: 3;
  }
}
@media (min-width: 80rem) {
  .la-horizontal-carousel__container {
    --visible: 4;
  }
}
@media (min-width: 96rem) {
  .la-horizontal-carousel__container {
    --visible: 5;
  }
}
@media (min-width: 112rem) {
  .la-horizontal-carousel__container {
    --visible: 6;
  }
}
@media (min-width: 120rem) {
  .la-horizontal-carousel__container {
    --visible: 7;
  }
}
@media (min-width: 134rem) {
  .la-horizontal-carousel__container {
    --visible: 8;
  }
}
.la-horizontal-carousel__card-item {
  flex: 1 0 calc((100% - (var(--visible) - 1) * var(--gap)) / var(--visible));
  min-width: 15rem;
  box-sizing: border-box;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  transition: transform 0.2s ease;
}
@media (min-width: 48rem) {
  .la-horizontal-carousel__card-item {
    min-width: 17.5rem;
  }
}
.la-horizontal-carousel__card-item:hover {
  transform: translateY(-0.125rem);
}
.la-horizontal-carousel__card-item .la-card {
  height: 100%;
  width: 100%;
  margin: 0;
  background-color: #FFF;
  border: 1px solid #BDBDBD;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.1);
  transition: all 0.3s ease;
}
.la-horizontal-carousel__card-item .la-card:hover {
  box-shadow: 0 0.25rem 0.75rem rgba(38, 38, 38, 0.15);
}
.la-horizontal-carousel__scroll-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #FFF;
  border: 1px solid #BDBDBD;
  cursor: pointer;
  flex-shrink: 0;
  z-index: 2;
  transition: all 0.2s ease;
}
.la-horizontal-carousel__scroll-button:hover {
  background-color: #F5F5F5;
  border-color: #069393;
  box-shadow: 0 0.125rem 0.25rem rgba(6, 147, 147, 0.15);
}
.la-horizontal-carousel__scroll-button:active {
  transform: scale(0.95);
}
.la-horizontal-carousel__scroll-button--header {
  width: 2rem;
  height: 2rem;
  background-color: #FFF;
  border: 1px solid #BDBDBD;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.1);
}
.la-horizontal-carousel__scroll-button--header:hover {
  background-color: #F9F9F9;
  border-color: #757575;
  box-shadow: 0 0.25rem 0.5rem rgba(38, 38, 38, 0.15);
}
.la-horizontal-carousel__scroll-button--header:disabled, .la-horizontal-carousel__scroll-button--header--disabled {
  background-color: #F9F9F9;
  border-color: #F5F5F5;
  cursor: not-allowed;
  opacity: 0.6;
}
.la-horizontal-carousel__scroll-button--header:disabled .la-horizontal-carousel__scroll-icon, .la-horizontal-carousel__scroll-button--header--disabled .la-horizontal-carousel__scroll-icon {
  color: #BDBDBD;
}
.la-horizontal-carousel__scroll-button--header:disabled:hover, .la-horizontal-carousel__scroll-button--header--disabled:hover {
  background-color: #F9F9F9;
  border-color: #F5F5F5;
  box-shadow: 0 0.125rem 0.25rem rgba(38, 38, 38, 0.1);
}
.la-horizontal-carousel__scroll-icon {
  width: 1rem;
  height: 1rem;
  color: #4F4F4F;
  transition: color 0.2s ease;
}
.la-horizontal-carousel__scroll-button:hover .la-horizontal-carousel__scroll-icon {
  color: #069393;
}
.la-horizontal-carousel__scroll-button--header .la-horizontal-carousel__scroll-icon {
  color: #262626;
}
.la-horizontal-carousel__scroll-button--header:hover .la-horizontal-carousel__scroll-button--header .la-horizontal-carousel__scroll-icon {
  color: #262626;
}
.la-horizontal-carousel__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 4rem 2rem;
  background: #F9F9F9;
  border-radius: 0.25rem;
  margin-top: 1rem;
}
.la-horizontal-carousel__empty-icon {
  margin-bottom: 1rem;
}
.la-horizontal-carousel__empty-text {
  font-size: 1rem;
  color: #757575;
  margin: 0;
  line-height: 1.5;
}
.la-horizontal-carousel__compass-icon {
  width: 2.5rem;
  height: 2.5rem;
  color: #BDBDBD;
}
.la-horizontal-carousel__empty-title {
  margin: 0 0 0.5rem 0;
  font-size: 1.75rem;
  font-weight: 600;
  color: #262626;
}
.la-horizontal-carousel__empty-subtitle {
  margin: 0 0 1.5rem 0;
  font-size: 1rem;
  color: #757575;
  max-width: 28rem;
  line-height: 1.5;
}
.la-horizontal-carousel__empty-actions {
  display: flex;
  justify-content: center;
}

.la-editors-picks {
  margin-bottom: 0.5rem;
}

.la-guest-conversion-banner {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.03) 0%, white 100%);
  border: 2px solid #07B4B4;
  border-radius: 1.25rem;
  padding: 1.5rem 1.25rem;
  margin: 2rem 0;
  text-align: center;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(59, 130, 246, 0.08);
  transition: all 0.3s ease;
  min-height: 24rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.la-guest-conversion-banner::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(59, 130, 246, 0.02) 0%, transparent 70%);
  animation: pulse 6s ease-in-out infinite;
  pointer-events: none;
}
.la-guest-conversion-banner__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  margin: 0.5rem 0 0.75rem;
  padding: 0;
  list-style: none;
}
@media (max-width: 640px) {
  .la-guest-conversion-banner__chips {
    gap: 0.375rem;
  }
}
.la-guest-conversion-banner__chip {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.5rem;
  border-radius: 999rem;
  background: #7CC8C8;
  border: 0.0625rem solid #07B4B4;
  color: #05686C;
  font-size: 0.75rem;
  line-height: 1;
  white-space: nowrap;
}
.la-guest-conversion-banner:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(59, 130, 246, 0.12);
  border-color: #069393;
}
.la-guest-conversion-banner__content {
  position: relative;
  z-index: 1;
  max-width: 600px;
  margin: 0 auto;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 1rem;
}
.la-guest-conversion-banner__headline {
  font-size: 1.75rem;
  font-weight: 800;
  color: #262626;
  margin: 0 0 0.5rem 0;
  letter-spacing: -0.025em;
  line-height: 1.2;
}
@media (max-width: 768px) {
  .la-guest-conversion-banner__headline {
    font-size: 1.5rem;
  }
}
@media (max-width: 480px) {
  .la-guest-conversion-banner__headline {
    font-size: 1.25rem;
  }
}
.la-guest-conversion-banner__subheadline {
  font-size: 0.9rem;
  color: #757575;
  margin: 0 0 1rem 0;
  line-height: 1.4;
  font-weight: 500;
}
@media (max-width: 768px) {
  .la-guest-conversion-banner__subheadline {
    font-size: 0.85rem;
  }
}
.la-guest-conversion-banner__stats {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  margin: 1rem 0;
}
@media (max-width: 640px) {
  .la-guest-conversion-banner__stats {
    flex-direction: row;
    gap: 1rem;
  }
}
.la-guest-conversion-banner__stat {
  text-align: center;
}
.la-guest-conversion-banner__stat-number {
  display: block;
  font-size: 1.5rem;
  font-weight: 800;
  color: #069393;
  line-height: 1;
  margin-bottom: 0.125rem;
}
@media (max-width: 768px) {
  .la-guest-conversion-banner__stat-number {
    font-size: 1.25rem;
  }
}
.la-guest-conversion-banner__stat-label {
  font-size: 0.75rem;
  color: #757575;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.la-guest-conversion-banner__benefits {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
  margin: 1rem 0;
  text-align: left;
  flex: initial;
}
@media (max-width: 640px) {
  .la-guest-conversion-banner__benefits {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 0.5rem;
  }
}
.la-guest-conversion-banner__benefit {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem;
  background: white;
  border-radius: 0.5rem;
  border: 1px solid #F5F5F5;
  transition: all 0.2s ease;
}
.la-guest-conversion-banner__benefit:hover {
  border-color: #07B4B4;
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.08);
}
@media (max-width: 640px) {
  .la-guest-conversion-banner__benefit {
    justify-content: center;
    padding: 0.5rem;
  }
}
.la-guest-conversion-banner__benefit-icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  background: #7CC8C8;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #05686C;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 0;
}
.la-guest-conversion-banner__benefit-icon > .la-icon {
  width: 1rem;
  height: 1rem;
}
.la-guest-conversion-banner__benefit-icon svg {
  display: block;
}
.la-guest-conversion-banner__benefit-text {
  font-size: 0.75rem;
  color: #4F4F4F;
  font-weight: 500;
  margin: 0;
  line-height: 1.3;
}
.la-guest-conversion-banner__cta {
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
}
.la-guest-conversion-banner__cta .la-guest-conversion-banner__trust {
  flex-basis: 100%;
  order: 3;
  text-align: center;
  margin-top: 0.25rem;
}
.la-guest-conversion-banner__cta-button {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  background: #069393;
  color: white;
  border: 0.0625rem solid transparent;
  border-radius: 0.5rem;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
  transition: all 0.2s ease;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.2);
  margin-bottom: 0.75rem;
}
.la-guest-conversion-banner__cta-button:hover {
  background: #07B4B4;
  color: #FFF;
  border-color: transparent;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
  text-decoration: none;
}
.la-guest-conversion-banner__cta-button:active {
  transform: translateY(0);
}
.la-guest-conversion-banner__cta-button:focus, .la-guest-conversion-banner__cta-button:focus-visible {
  outline: 0.15rem solid #069393;
  outline-offset: 0.15rem;
  text-decoration: none;
  color: white;
}
.la-guest-conversion-banner__cta-button--secondary {
  background: transparent;
  color: #069393;
  border: 0.0625rem solid #069393;
  box-shadow: none;
  margin-bottom: 0.75rem;
}
.la-guest-conversion-banner__cta-button--secondary:hover {
  background: #FFF;
  color: #05686C;
  border-color: #05686C;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
  text-decoration: none;
}
.la-guest-conversion-banner__cta-button--secondary:focus, .la-guest-conversion-banner__cta-button--secondary:focus-visible {
  outline: 0.15rem solid #069393;
  outline-offset: 0.15rem;
}
.la-guest-conversion-banner__trust {
  margin-top: 0.5rem;
  font-size: 0.75rem;
  color: #757575;
}
.la-guest-conversion-banner__trust-highlight {
  color: #05686C;
  font-weight: 600;
}
.la-guest-conversion-banner__urgency {
  margin-top: 1rem;
  padding: 0.75rem 1.25rem;
  background: rgba(251, 191, 36, 0.1);
  border: 1px solid rgba(251, 191, 36, 0.3);
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  color: #92400e;
  font-weight: 500;
  display: inline-block;
}

.la-guest-conversion-banner--preview {
  padding: 2rem;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.02) 0%, white 100%);
}
.la-guest-conversion-banner--preview .la-guest-conversion-banner__content {
  max-width: 800px;
}
.la-guest-conversion-banner--preview::after {
  content: "";
  position: absolute;
  bottom: -100px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 200px;
  background: linear-gradient(45deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.1) 75%, transparent 75%);
  background-size: 40px 40px;
  filter: blur(3px);
  border-radius: 0.75rem;
  opacity: 0.3;
  pointer-events: none;
}

@keyframes pulse {
  0%, 100% {
    opacity: 0.1;
    transform: scale(1);
  }
  50% {
    opacity: 0.2;
    transform: scale(1.05);
  }
}
@media (max-width: 768px) {
  .la-guest-conversion-banner {
    padding: 2rem 1.5rem;
    margin: 1.5rem 0;
    min-height: auto;
  }
  .la-guest-conversion-banner__stats {
    gap: 1.5rem;
  }
  .la-guest-conversion-banner__benefits {
    gap: 0.75rem;
  }
  .la-guest-conversion-banner__cta-button {
    font-size: 1rem;
    padding: 0.875rem 1.75rem;
  }
}
@media (max-width: 480px) {
  .la-guest-conversion-banner {
    padding: 1.5rem 1rem;
    border-radius: 1rem;
  }
  .la-guest-conversion-banner__benefits {
    margin: 1.5rem 0;
  }
}
.la-locked {
  position: relative;
}
.la-locked::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(245, 245, 245, 0.4);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.la-locked__arrow {
  width: 0.875rem;
  height: 0.875rem;
  color: #FFF;
}
.la-locked .la-locked__blurred {
  filter: blur(1.5px);
  opacity: 0.8;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
}
.la-locked__overlay {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.65);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  border: 0.0625rem dashed #BDBDBD;
  z-index: 10;
  cursor: pointer;
  transition: all 0.3s ease;
}
.la-locked__overlay:hover {
  background: rgba(255, 255, 255, 0.75);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
.la-locked__panel {
  position: absolute;
  left: 50%;
  bottom: 0.75rem;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: #FFF;
  color: #262626;
  border: 0.0625rem solid #BDBDBD;
  border-radius: 1rem;
  padding: 0.5rem 0.75rem;
  box-shadow: 0 0.25rem 0.75rem rgba(38, 38, 38, 0.08);
  z-index: 11;
}
.la-locked__icon {
  width: 1rem;
  height: 1rem;
  color: #757575;
}
.la-locked__text {
  font-size: 0.875rem;
  color: #4F4F4F;
  margin-right: 0.25rem;
}
.la-locked:has(.la-locked__overlay)::after {
  opacity: 1;
}

.la-content-preview {
  position: relative;
  overflow: hidden;
}
.la-content-preview--blurred .la-content-preview__content {
  filter: blur(4px);
  opacity: 0.7;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
}
.la-content-preview__content {
  transition: filter 0.3s ease, opacity 0.3s ease;
}
.la-content-preview__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.95) 100%);
  z-index: 5;
  cursor: pointer;
  transition: all 0.3s ease;
}
.la-content-preview__overlay:hover {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.85) 50%, rgba(255, 255, 255, 0.98) 100%);
}
.la-content-preview__overlay:hover .la-content-preview__lock-icon {
  transform: scale(1.1);
}
.la-content-preview__lock-icon {
  width: 2.5rem;
  height: 2.5rem;
  color: #069393;
  margin-bottom: 0.75rem;
  transition: transform 0.3s ease;
}
.la-content-preview__title {
  font-size: 1.125rem;
  font-weight: 600;
  color: #4F4F4F;
  margin-bottom: 0.5rem;
}
.la-content-preview__subtitle {
  font-size: 0.875rem;
  color: #757575;
  margin-bottom: 1rem;
}

.la-locked-messaging .la-locked__panel {
  bottom: 1rem;
  background: linear-gradient(135deg, #FFF, rgba(6, 147, 147, 0.05));
}

.la-locked-weather .la-locked__overlay {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.8) 100%);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
}

.la-locked-duration .la-locked__overlay {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.8) 100%);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}

.la-locked-distance .la-locked__overlay {
  background: radial-gradient(circle at center, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.7) 100%);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}

.la-locked--inline {
  display: inline-flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  max-width: 100%;
  gap: 0.25rem;
  white-space: nowrap;
}
.la-locked--inline::after {
  opacity: 0 !important;
}
.la-locked--inline .la-locked__overlay {
  position: absolute;
  inset: 0;
  border-radius: 0.5rem;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.4) 0%, rgba(6, 147, 147, 0.15) 100%);
  border: 0.0625rem solid rgba(6, 147, 147, 0.2);
  -webkit-backdrop-filter: blur(0.5px);
          backdrop-filter: blur(0.5px);
  transition: all 0.2s ease;
}
.la-locked--inline .la-locked__overlay:hover {
  background: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, rgba(6, 147, 147, 0.25) 100%);
  border-color: rgba(6, 147, 147, 0.3);
}
.la-locked--inline .la-locked__panel {
  position: relative;
  transform: none;
  left: auto;
  bottom: auto;
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
  z-index: 12;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  pointer-events: none;
}
.la-locked--inline .la-locked__text {
  display: none;
}
.la-locked--inline .la-locked__cta {
  position: absolute !important;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
  pointer-events: auto;
}
.la-locked--inline .la-locked__icon {
  width: 0.75rem;
  height: 0.75rem;
  color: #069393;
  flex-shrink: 0;
  margin-left: 0.125rem;
}

.la-journey-locked {
  display: block;
  width: 100%;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s ease;
}
.la-journey-locked:hover {
  transform: translateY(-1px);
}
.la-journey-locked:hover .la-journey-locked__content {
  box-shadow: 0 0.5rem 1.5rem rgba(6, 147, 147, 0.2);
}
@media (hover: none) and (pointer: coarse) {
  .la-journey-locked:hover {
    transform: none;
  }
  .la-journey-locked:hover .la-journey-locked__content {
    box-shadow: none;
  }
}
.la-journey-locked:focus-visible {
  outline: 2px solid #069393;
  outline-offset: 2px;
}
@media (hover: none) and (pointer: coarse) {
  .la-journey-locked:active {
    transform: scale(0.98);
    transition: transform 0.1s ease;
  }
}
.la-journey-locked__content {
  display: flex;
  flex-direction: column;
  border-radius: 0.75rem;
  overflow: hidden;
  background: linear-gradient(to right, #FFF 0%, rgba(6, 147, 147, 0.1) 100%);
  border: 0.0625rem solid rgba(6, 147, 147, 0.15);
  transition: box-shadow 0.2s ease;
}
.la-journey-locked__details {
  display: flex;
  align-items: center;
  padding: 0.5rem 0.75rem;
  gap: 0.5rem;
}
@media (min-width: 576px) {
  .la-journey-locked__details {
    padding: 0.5rem 0.875rem;
    gap: 0.75rem;
  }
}
.la-journey-locked__details-group {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex: 1;
}
@media (min-width: 576px) {
  .la-journey-locked__details-group {
    gap: 0.75rem;
  }
}
.la-journey-locked__detail {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.la-journey-locked__icon {
  width: 0.75rem;
  height: 0.75rem;
  color: #757575;
  flex-shrink: 0;
}
@media (min-width: 576px) {
  .la-journey-locked__icon {
    width: 0.875rem;
    height: 0.875rem;
  }
}
.la-journey-locked__text {
  font-size: 0.6875rem;
  font-weight: 500;
  color: #262626;
  white-space: nowrap;
}
@media (min-width: 576px) {
  .la-journey-locked__text {
    font-size: 0.75rem;
  }
}
.la-journey-locked__text.la-locked__blurred {
  filter: blur(1.5px);
  opacity: 0.8;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
}
.la-journey-locked__lock-icon {
  width: 0.75rem;
  height: 0.75rem;
  color: #069393;
  flex-shrink: 0;
}
.la-journey-locked__banner {
  background-color: #069393;
  color: #FFF;
  padding: 0 1.1rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 0.65rem;
  font-weight: 500;
  gap: 0.25rem;
  flex: 0 0 35%;
  height: 35%;
  min-height: 1.5rem;
  width: 100%;
}
@media (max-width: 480px) {
  .la-journey-locked__banner {
    padding: 0 1rem;
    font-size: 0.6rem;
    gap: 0.375rem;
  }
}
.la-journey-locked__cta {
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
  flex: 1 1 auto;
}
.la-journey-locked__arrow {
  width: 0.875rem;
  height: 0.875rem;
  stroke: currentColor;
  stroke-width: 2;
  flex-shrink: 0;
}

.la-search-locked-preview {
  display: block;
  width: 100%;
  min-width: 18.75rem;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s ease;
  margin: 0.5rem 0;
}
@media (min-width: 576px) {
  .la-search-locked-preview {
    flex: 1;
    max-width: 37.5rem;
  }
}
.la-search-locked-preview:hover {
  transform: translateY(-1px);
}
.la-search-locked-preview:hover .la-search-locked-preview__content {
  box-shadow: 0 0.125rem 0.3125rem 0.0625rem rgba(117, 117, 117, 0.78);
  border-color: #069393;
}
@media (hover: none) and (pointer: coarse) {
  .la-search-locked-preview:hover {
    transform: none;
  }
  .la-search-locked-preview:hover .la-search-locked-preview__content {
    box-shadow: none;
  }
}
.la-search-locked-preview:focus-visible {
  outline: 2px solid #069393;
  outline-offset: 2px;
}
@media (hover: none) and (pointer: coarse) {
  .la-search-locked-preview:active {
    transform: scale(0.98);
    transition: transform 0.1s ease;
  }
}
.la-search-locked-preview__content {
  display: flex;
  flex-direction: column;
  height: 4rem;
  border-radius: 2rem;
  overflow: hidden;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.95) 0%, rgba(6, 147, 147, 0.1) 100%);
  border: 0.0625rem solid rgba(6, 147, 147, 0.15);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  box-sizing: border-box;
  box-shadow: 0 0.125rem 0.3125rem 0.0625rem rgba(117, 117, 117, 0.78);
}
.la-search-locked-preview__input-area {
  display: flex;
  align-items: center;
  padding: 0 2rem;
  flex: 0 0 65%;
  box-sizing: border-box;
  position: relative;
}
.la-search-locked-preview__placeholder {
  font-size: 1rem;
  color: #757575;
  filter: blur(1px);
  opacity: 0.7;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
  flex: 1;
}
.la-search-locked-preview__search-icon {
  width: 1rem;
  height: 1rem;
  color: #757575;
  flex-shrink: 0;
  margin-right: 0.5rem;
}
.la-search-locked-preview__lock-icon {
  width: 1rem;
  height: 1rem;
  color: #4F4F4F;
  flex-shrink: 0;
  margin-left: 0.5rem;
}
.la-search-locked-preview__banner {
  background-color: #069393;
  color: #FFF;
  padding: 0 1.1rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 0.65rem;
  font-weight: 500;
  gap: 0.25rem;
  flex: 0 0 35%;
  min-height: 1.5rem;
}
@media (max-width: 480px) {
  .la-search-locked-preview__banner {
    padding: 0 1rem;
    font-size: 0.6rem;
    gap: 0.375rem;
  }
}
.la-search-locked-preview__banner .la-search-locked-preview__arrow {
  width: 0.875rem;
  height: 0.875rem;
  stroke-width: 2;
}
.la-search-locked-preview__cta {
  font-size: 0.65rem;
  font-weight: 500;
  line-height: 0.2;
}
.la-search-locked-preview__arrow {
  width: 0.875rem;
  height: 0.875rem;
  stroke: currentColor;
  stroke-width: 2;
  flex-shrink: 0;
}
.la-search-locked-preview__arrow.la-icon {
  width: 0.875rem;
  height: 0.875rem;
}
.la-search-locked-preview__arrow.la-icon svg {
  width: 100%;
  height: 100%;
  stroke-width: 2;
}

.la-card__detail-text--locked {
  color: #757575;
  font-style: italic;
}

.custom-search-bar {
  min-height: 5rem;
  margin: 0.5rem 0;
}

.la-default-location-banner {
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  right: 1rem;
  z-index: 1050;
  background: #FFF;
  color: #262626;
  border: 0.0625rem solid #F5F5F5;
  border-radius: 0.3rem;
  box-shadow: 0 0.25rem 0.375rem -0.0625rem rgba(38, 38, 38, 0.1), 0 0.125rem 0.25rem -0.0625rem rgba(38, 38, 38, 0.06);
  padding: 0.75rem 0.75rem 0.75rem 0.875rem;
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.la-default-location-banner--hidden {
  display: none;
}
@media (min-width: 576px) {
  .la-default-location-banner {
    left: auto;
    right: 1.25rem;
    width: 22rem;
  }
}
.la-default-location-banner__content {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
  min-width: 0;
}
.la-default-location-banner__title {
  margin: 0;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: inherit;
}
.la-default-location-banner__message {
  margin: 0;
  font-size: 0.875rem;
  color: #4F4F4F;
  line-height: 1.25rem;
}
.la-default-location-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.la-default-location-banner__actions .la-btn.la-btn--sm {
  padding: 0.5rem 0.875rem;
  font-size: 0.875rem;
}
.la-default-location-banner__close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  background: transparent;
  border: none;
  padding: 0.25rem;
  color: inherit;
  opacity: 0.55;
  cursor: pointer;
  transition: opacity 0.15s linear;
}
.la-default-location-banner__close:hover {
  opacity: 0.8;
}
.la-default-location-banner__close svg {
  width: 0.875rem;
  height: 0.875rem;
}
.la-default-location-banner--fade-out {
  animation: la-default-location-banner-fade-out 0.2s ease-in forwards;
}

@keyframes la-default-location-banner-fade-out {
  to {
    transform: translateY(0.625rem) scale(0.98);
    opacity: 0;
  }
}
.la-default-location-banner-inline {
  position: relative;
  width: 100%;
  margin: 1rem 0;
  padding: 1.125rem 2.75rem 1.125rem 1.25rem;
  border-radius: 0.75rem;
  border: 0.0625rem solid #07B4B4;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.03) 0%, #FFF 100%);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.04);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.25rem;
  overflow: visible;
}
.la-default-location-banner-inline::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 0.0625rem;
  background: linear-gradient(90deg, #069393 0%, #F4835E 16%, #F8F2DC 32%, #B8E0DB 50%, #07B4B4 68%, #05686C 84%, #069393 100%);
  background-size: 300% 100%;
  pointer-events: none;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: la-default-location-banner-inline-border 6s ease-in-out infinite;
}
.la-default-location-banner-inline--compact {
  margin: 0.5rem 0;
}
.la-default-location-banner-inline--hidden {
  display: none;
}
.la-default-location-banner-inline--fade-out {
  animation: la-default-location-banner-inline-fade-out 0.2s ease-in forwards;
}
.la-default-location-banner-inline__helper-info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0;
  color: #4F4F4F;
  opacity: 0.85;
  cursor: help;
  transition: opacity 0.15s linear;
}
.la-default-location-banner-inline__helper-info:hover, .la-default-location-banner-inline__helper-info:focus {
  opacity: 1;
  color: #05686C;
  outline: none;
}
.la-default-location-banner-inline__helper-info-icon {
  width: 0.875rem;
  height: 0.875rem;
  display: block;
}
.la-default-location-banner-inline__helper-info.la-default-location-banner-inline__helper--hidden {
  display: none;
}
.la-default-location-banner-inline__body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
}
.la-default-location-banner-inline__lead {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}
.la-default-location-banner-inline__icon {
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #7CC8C8;
  border: 0.0625rem solid #07B4B4;
  color: #05686C;
}
.la-default-location-banner-inline__icon svg {
  width: 1rem;
  height: 1rem;
  display: block;
}
.la-default-location-banner-inline__text {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  white-space: nowrap;
  overflow: visible;
  text-overflow: initial;
}
.la-default-location-banner-inline__title {
  margin: 0;
  font-weight: 600;
  font-size: 0.875rem;
  color: #262626;
  white-space: nowrap;
}
.la-default-location-banner-inline__message {
  margin: 0;
  font-size: 0.875rem;
  color: #4F4F4F;
  line-height: 1.25rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.la-default-location-banner-inline__helper-inline {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin-left: 0.25rem;
  flex-shrink: 0;
}
.la-default-location-banner-inline__actions {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.la-default-location-banner-inline__actions .la-btn.la-btn--sm {
  padding: 0.5rem 0.875rem;
  font-size: 0.875rem;
}
.la-default-location-banner-inline__helper-popover {
  position: absolute;
  top: calc(100% + 0.25rem);
  left: 0;
  min-width: 18rem;
  max-width: 32rem;
  width: auto;
  padding: 0.75rem 0.875rem;
  border-radius: 0.5rem;
  border: 0.0625rem solid #F5F5F5;
  background: #FFF;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.08);
  color: #4F4F4F;
  font-size: 0.875rem;
  line-height: 1.25rem;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.la-default-location-banner-inline__helper-popover::before {
  content: "";
  position: absolute;
  top: -0.375rem;
  left: 0.75rem;
  width: 0;
  height: 0;
  border-left: 0.375rem solid transparent;
  border-right: 0.375rem solid transparent;
  border-bottom: 0.375rem solid #FFF;
  filter: drop-shadow(0 -1px 0 #F5F5F5);
}
.la-default-location-banner-inline__helper-popover--hidden {
  display: none;
}
.la-default-location-banner-inline__close {
  position: absolute;
  top: 0.05rem;
  right: 0.05rem;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 50%;
  color: #4F4F4F;
  opacity: 0;
  pointer-events: none;
  cursor: pointer;
  transition: opacity 0.15s linear;
}
.la-default-location-banner-inline__close:hover, .la-default-location-banner-inline__close:focus {
  opacity: 1;
  background: #FFF;
  outline: none;
}
.la-default-location-banner-inline__close svg {
  width: 0.9rem;
  height: 0.9rem;
}
.la-default-location-banner-inline:hover .la-default-location-banner-inline__close, .la-default-location-banner-inline:focus-within .la-default-location-banner-inline__close {
  opacity: 0.7;
  pointer-events: auto;
}
@media (hover: none) {
  .la-default-location-banner-inline__close {
    opacity: 0.7;
    pointer-events: auto;
  }
}
@media (max-width: 768px) {
  .la-default-location-banner-inline__body {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }
  .la-default-location-banner-inline__lead {
    align-items: flex-start;
  }
  .la-default-location-banner-inline__actions {
    justify-content: flex-start;
  }
}

@keyframes la-default-location-banner-inline-fade-out {
  to {
    transform: translateY(0.5rem) scale(0.98);
    opacity: 0;
  }
}
@keyframes la-default-location-banner-inline-border {
  0% {
    background-position: 0% 0;
  }
  50% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .la-default-location-banner-inline::before {
    animation: none;
    background-position: 50% 0;
  }
}
.la-venue-submission-banner {
  position: relative;
  width: 100%;
  margin: 1rem 0;
  padding: 1.125rem 2.75rem 1.125rem 1.25rem;
  border-radius: 0.75rem;
  border: 0.0625rem solid rgba(6, 147, 147, 0.2);
  background: linear-gradient(135deg, rgba(7, 180, 180, 0.05) 0%, #FFF 100%);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.04);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.25rem;
  overflow: visible;
}
.la-venue-submission-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 0.0625rem;
  background: linear-gradient(90deg, #069393 0%, #07B4B4 25%, #05686C 50%, #07B4B4 75%, #069393 100%);
  background-size: 300% 100%;
  pointer-events: none;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: la-venue-submission-banner-border 6s ease-in-out infinite;
}
.la-venue-submission-banner--hidden {
  display: none;
}
.la-venue-submission-banner--fade-out {
  animation: la-venue-submission-banner-fade-out 0.2s ease-in forwards;
}

.la-venue-submission-banner__body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
}

.la-venue-submission-banner__lead {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}

.la-venue-submission-banner__icon {
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(7, 180, 180, 0.15);
  border: 0.0625rem solid rgba(6, 147, 147, 0.3);
  color: #05686C;
}
.la-venue-submission-banner__icon svg {
  width: 1rem;
  height: 1rem;
  display: block;
}

.la-venue-submission-banner__text {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  white-space: nowrap;
  overflow: visible;
  text-overflow: initial;
}

.la-venue-submission-banner__title {
  margin: 0;
  font-weight: 600;
  font-size: 0.875rem;
  color: #262626;
  white-space: nowrap;
}

.la-venue-submission-banner__message {
  margin: 0;
  font-size: 0.875rem;
  color: #4F4F4F;
  line-height: 1.25rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.la-venue-submission-banner__actions {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.la-venue-submission-banner__actions .la-btn.la-btn--sm {
  padding: 0.5rem 0.875rem;
  font-size: 0.875rem;
}

.la-venue-submission-banner__close {
  position: absolute;
  top: 0.05rem;
  right: 0.05rem;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 50%;
  color: #4F4F4F;
  opacity: 0;
  pointer-events: none;
  cursor: pointer;
  transition: opacity 0.15s linear;
}
.la-venue-submission-banner__close:hover, .la-venue-submission-banner__close:focus {
  opacity: 1;
  background: #FFF;
  outline: none;
}
.la-venue-submission-banner__close svg {
  width: 0.9rem;
  height: 0.9rem;
}

.la-venue-submission-banner:hover .la-venue-submission-banner__close,
.la-venue-submission-banner:focus-within .la-venue-submission-banner__close {
  opacity: 0.7;
  pointer-events: auto;
}

@media (hover: none) {
  .la-venue-submission-banner__close {
    opacity: 0.7;
    pointer-events: auto;
  }
}
@media (max-width: 768px) {
  .la-venue-submission-banner__body {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }
  .la-venue-submission-banner__lead {
    align-items: flex-start;
  }
  .la-venue-submission-banner__actions {
    justify-content: flex-start;
  }
  .la-venue-submission-banner__text {
    white-space: normal;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }
  .la-venue-submission-banner__title,
  .la-venue-submission-banner__message {
    white-space: normal;
  }
}
@keyframes la-venue-submission-banner-fade-out {
  to {
    transform: translateY(0.5rem) scale(0.98);
    opacity: 0;
  }
}
@keyframes la-venue-submission-banner-border {
  0% {
    background-position: 0% 0;
  }
  50% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .la-venue-submission-banner::before {
    animation: none;
    background-position: 50% 0;
  }
}
.la-skeleton-card__image, .la-skeleton-card__category, .la-skeleton-card__title, .la-skeleton-card__location, .la-skeleton-card__detail, .la-skeleton-card__tag {
  background: linear-gradient(90deg, #FFF 0%, rgba(249, 249, 249, 0.5) 20%, rgba(245, 245, 245, 0.8) 60%, #FFF 100%);
  background-size: 200% 100%;
  background-repeat: no-repeat;
  animation: shine-skeleton 1.5s linear infinite;
}
.la-skeleton-card__image {
  position: relative;
  border-radius: 0.5rem;
}
.la-skeleton-card__category {
  width: 5rem;
  height: 1.5rem;
  border: none;
}
.la-skeleton-card__title {
  width: 80%;
  height: 1.5rem;
  margin-bottom: 0.75rem;
  border-radius: 0.5rem;
}
.la-skeleton-card__location {
  width: 60%;
  height: 1rem;
  margin-bottom: 1.25rem;
  border-radius: 0.5rem;
}
.la-skeleton-card__detail {
  width: 100%;
  height: 1rem;
  border-radius: 0.5rem;
}
.la-skeleton-card__tag {
  width: 4rem;
  height: 1.5rem;
  margin: 0 0.5rem 0.5rem 0;
  border: none;
  color: transparent !important;
  background-color: transparent !important;
}

.la-spinner-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 4rem;
  padding: 0.5rem;
}

.la-spinner {
  width: 2.5rem;
  padding: 0.3rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #069393;
  --_m:
    conic-gradient(#0000 10%,#000),
    linear-gradient(#000 0 0) content-box;
  -webkit-mask: var(--_m);
  mask: var(--_m);
  -webkit-mask-composite: source-out;
  mask-composite: subtract;
  animation: la-spinner-rotate 1s infinite linear;
}

@keyframes la-spinner-rotate {
  to {
    transform: rotate(1turn);
  }
}
@keyframes shine-skeleton {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
.la-sort-component--skeleton {
  width: 100%;
}
.la-sort-component__native-select-wrapper--skeleton {
  display: flex;
  align-items: center;
  position: relative;
  height: 2.5rem;
  padding: 0 1rem;
  border-radius: 0.5rem;
  width: 100%;
  max-width: 12rem;
  margin-left: auto;
}
@media (min-width: 768px) {
  .la-sort-component__native-select-wrapper--skeleton {
    display: none;
  }
}
.la-sort-component__native-select--skeleton {
  background: linear-gradient(90deg, #FFF 0%, rgba(249, 249, 249, 0.5) 20%, rgba(245, 245, 245, 0.8) 60%, #FFF 100%);
  background-size: 200% 100%;
  background-repeat: no-repeat;
  animation: shine-skeleton 1.5s linear infinite;
  width: 100%;
  height: 1.5rem;
  border-radius: 0.5rem;
}
.la-sort-component__desktop-wrapper--skeleton {
  display: none;
}
@media (min-width: 768px) {
  .la-sort-component__desktop-wrapper--skeleton {
    display: block;
  }
}
.la-sort-component__button--skeleton {
  display: flex;
  align-items: center;
  height: 2.5rem;
  padding: 0 1rem;
  border-radius: 0.5rem;
  width: 100%;
  max-width: 12rem;
  margin-left: auto;
}
.la-sort-component__button-label--skeleton, .la-sort-component__button-value--skeleton {
  background: linear-gradient(90deg, #FFF 0%, rgba(249, 249, 249, 0.5) 20%, rgba(245, 245, 245, 0.8) 60%, #FFF 100%);
  background-size: 200% 100%;
  background-repeat: no-repeat;
  animation: shine-skeleton 1.5s linear infinite;
  height: 1rem;
  border-radius: 0.5rem;
}
.la-sort-component__button-label--skeleton {
  width: 3.5rem;
  margin-right: 0.5rem;
}
.la-sort-component__button-value--skeleton {
  width: 5rem;
}

/**
 * Skip Links for Accessibility
 * ============================
 *
 * Hidden by default, visible on focus for keyboard navigation
 */
.la-skip-links {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  --la-skip-links-z-index: 1103;
  z-index: var(--la-skip-links-z-index);
}

.la-skip-link {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  background-color: #262626;
  color: #FFF;
  padding: 0.75rem 1.5rem;
  text-decoration: none;
  font-weight: 600;
  border-radius: 0 0 0.25rem 0.25rem;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.la-skip-link:focus {
  position: fixed;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  overflow: visible;
  display: inline-block;
  margin: 0.5rem;
  outline: 2px solid #069393;
  outline-offset: 2px;
  z-index: var(--la-skip-links-z-index);
}
.la-skip-link:hover {
  background-color: #069393;
  color: #FFF;
}

/**
 * Listing Show Page Grid Layout System
 * ====================================
 *
 * This component implements a responsive CSS Grid layout for listing show pages.
 * The layout transforms from a single-column mobile layout to a 3-column, 5-row
 * desktop layout with explicit grid placement.
 *
 * Layout Structure:
 * ----------------
 * Mobile (< 768px):     Single column stack
 * Desktop (>= 768px):   3-column, 5-row grid
 *
 * Grid Areas (Desktop):
 * --------------------
 * ┌─────────────────────────────────────────────────────────────────────────────┐
 * │                                         │                                     │
 * │  Main Content (About)                   │  Amenities                          │
 * │  Columns 1-2, Rows 1-2                 │  Column 3, Row 1                    │
 * │                                         │                                     │
 * ├─────────────────────────────────────────┼─────────────────────────────────────┤
 * │                                         │                                     │
 * │  (Main Content continues)               │  Food Options                       │
 * │                                         │  Column 3, Row 2                    │
 * │                                         │                                     │
 * ├─────────────────────────────────────────┼─────────────────────────────────────┤
 * │                                         │                                     │
 * │  Opening Hours                          │  Accessibility                      │
 * │  Columns 1-2, Row 3                    │  Column 3, Row 3                    │
 * │                                         │                                     │
 * ├─────────────────────────────────────────┼─────────────────────────────────────┤
 * │                                         │                                     │
 * │  Weather                                │  Location                           │
 * │  Columns 1-2, Rows 4-5                 │  Column 3, Rows 4-5                │
 * │                                         │                                     │
 * └─────────────────────────────────────────┴─────────────────────────────────────┘
 *
 * RTL Layout Support:
 * ------------------
 * For right-to-left languages, the grid layout is mirrored:
 * - Sidebar moves to the left (column 1)
 * - Main content moves to the right (columns 2-3)
 * - Text alignment and icon positioning are adjusted
 * - Carousel controls are flipped
 *
 * Browser Support:
 * ---------------
 * - Modern browsers: Full CSS Grid support with gap property
 * - IE11/Edge Legacy: CSS Grid support with grid-gap fallback
 * - Older browsers: Flexbox fallback with margin-based spacing
 * - RTL Support: All major browsers with dir="rtl" attribute
 *
 * Responsive Breakpoints:
 * ----------------------
 * - xs: 0px      (mobile)
 * - sm: 576px    (small tablets)
 * - md: 768px    (tablets - grid layout activates)
 * - lg: 992px    (desktop)
 * - xl: 1200px   (large desktop)
 * - xxl: 1440px  (extra large desktop)
 *
 * Implementation Notes:
 * --------------------
 * 1. Mobile-first approach with progressive enhancement
 * 2. Explicit grid placement using grid-column and grid-row
 * 3. Standardized gap system for consistent spacing
 * 4. Comprehensive fallbacks for older browsers
 * 5. Proper handling of overflow and text wrapping
 * 6. RTL language support with mirrored layouts
 */
.la-listing-show-page {
  padding: 1.5rem 1rem;
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  /**
  * Main Content Grid Container
  * ===========================
  *
  * This is the primary grid container that houses all content cards.
  * It uses a mobile-first approach with progressive enhancement:
  *
  * 1. Mobile: Single column flexbox layout (fallback)
  * 2. Desktop: 3-column, 5-row CSS Grid layout
  *
  * The implementation prioritizes accessibility and browser compatibility
  * with comprehensive fallbacks for older browsers.
  */
  /**
  * Content Cards
  * =============
  *
  * Individual content cards that are placed within the grid.
  * Each card has a specific modifier class that determines its
  * grid placement in the desktop layout:
  *
  * - main-content: Spans 2x2 (columns 1-2, rows 1-2)
  * - opening-hours: Spans 2x1 (columns 1-2, row 3)
  * - weather: Spans 2x2 (columns 1-2, rows 4-5)
  * - amenities: Spans 1x1 (column 3, row 1)
  * - food-options: Spans 1x1 (column 3, row 2)
  * - accessibility: Spans 1x1 (column 3, row 3)
  * - location: Spans 1x2 (column 3, rows 4-5)
  */
  /**
   * List Components
   * ===============
   *
   * These components render lists of features (amenities, dietary options,
   * accessibility features) within the sidebar cards. They use a consistent
   * grid pattern:
   *
   * - Mobile: Single column
   * - Small screens+: Two columns
   * - Standardized gap system for consistent spacing
   * - Comprehensive fallbacks for older browsers
   */
}
@media (min-width: 576px) {
  .la-listing-show-page {
    padding: 1.5rem 2rem;
  }
}
@media (min-width: 992px) {
  .la-listing-show-page {
    padding: 1.5rem 3rem;
  }
}
.la-listing-show-page__back-nav {
  margin-bottom: 1rem;
}
.la-listing-show-page__back-link {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  text-align: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
}
.la-listing-show-page__back-link .la-listing-show-page__back-icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.375rem;
  color: #069393;
}
[dir=rtl] .la-listing-show-page__back-link .la-listing-show-page__back-icon {
  margin-right: 0;
  margin-left: 0.375rem;
  transform: scaleX(-1);
}
.la-listing-show-page__gallery {
  background-color: #F5F5F5;
  min-height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .la-listing-show-page__gallery {
    min-height: 350px;
    margin-bottom: 2rem;
  }
}
@media (min-width: 992px) {
  .la-listing-show-page__gallery {
    min-height: 400px;
  }
}
.la-listing-show-page__gallery-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: inherit;
}
.la-listing-show-page__content-grid {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.la-listing-show-page__content-grid > * {
  margin-bottom: 1.5rem;
}
.la-listing-show-page__content-grid > *:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .la-listing-show-page__content-grid {
    flex-direction: row;
    flex-wrap: wrap;
    margin-right: calc(-1 * 1.5rem / 2);
    margin-left: calc(-1 * 1.5rem / 2);
  }
  .la-listing-show-page__content-grid > * {
    padding-right: calc(1.5rem / 2);
    padding-left: calc(1.5rem / 2);
    margin-bottom: 1.5rem;
  }
}
@supports (display: grid) {
  .la-listing-show-page__content-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: 1fr;
    margin-right: 0;
    margin-left: 0;
  }
  .la-listing-show-page__content-grid > * {
    margin-bottom: 0;
    padding-right: 0;
    padding-left: 0;
  }
  @media (min-width: 768px) {
    .la-listing-show-page__content-grid {
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(5, min-content);
      gap: 1.5rem;
    }
  }
}
@supports (display: grid) and (not (gap: 1rem)) {
  .la-listing-show-page__content-grid {
    grid-gap: 1.5rem;
  }
  @media (min-width: 768px) {
    .la-listing-show-page__content-grid {
      grid-gap: 1.5rem;
    }
  }
}
.la-listing-show-page__card {
  background-color: #FFF;
  border-radius: 0.5rem;
  padding: 1.5rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  transition: box-shadow 0.3s;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.la-listing-show-page__card:hover {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08);
}
@media (min-width: 768px) {
  .la-listing-show-page__card--main-content, .la-listing-show-page__card--opening-hours, .la-listing-show-page__card--weather {
    width: calc(66.666% - 1.5rem / 2);
  }
  .la-listing-show-page__card--amenities, .la-listing-show-page__card--food-options, .la-listing-show-page__card--accessibility, .la-listing-show-page__card--location {
    width: calc(33.333% - 1.5rem / 2);
  }
}
@supports (display: grid) {
  @media (min-width: 768px) {
    .la-listing-show-page__card {
      width: auto;
    }
  }
}
@media (min-width: 768px) {
  .la-listing-show-page__card--main-content {
    grid-column: 1/3;
    grid-row: 1/3;
  }
  [dir=rtl] .la-listing-show-page__card--main-content {
    grid-column: 2/4;
  }
}
@media (min-width: 768px) {
  .la-listing-show-page__card--opening-hours {
    grid-column: 1/3;
    grid-row: 3/4;
  }
  [dir=rtl] .la-listing-show-page__card--opening-hours {
    grid-column: 2/4;
  }
}
@media (min-width: 768px) {
  .la-listing-show-page__card--weather {
    grid-column: 1/3;
    grid-row: 4/6;
    display: flex;
    flex-direction: column;
  }
  [dir=rtl] .la-listing-show-page__card--weather {
    grid-column: 2/4;
  }
}
@media (min-width: 768px) {
  .la-listing-show-page__card--amenities {
    grid-column: 3/4;
    grid-row: 1/2;
  }
  [dir=rtl] .la-listing-show-page__card--amenities {
    grid-column: 1/2;
  }
}
@media (min-width: 768px) {
  .la-listing-show-page__card--food-options {
    grid-column: 3/4;
    grid-row: 2/3;
  }
  [dir=rtl] .la-listing-show-page__card--food-options {
    grid-column: 1/2;
  }
}
@media (min-width: 768px) {
  .la-listing-show-page__card--accessibility {
    grid-column: 3/4;
    grid-row: 3/4;
  }
  [dir=rtl] .la-listing-show-page__card--accessibility {
    grid-column: 1/2;
  }
}
@media (min-width: 768px) {
  .la-listing-show-page__card--location {
    grid-column: 3/4;
    grid-row: 4/6;
    display: flex;
    flex-direction: column;
  }
  [dir=rtl] .la-listing-show-page__card--location {
    grid-column: 1/2;
  }
}
.la-listing-show-page__title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #262626;
  margin-bottom: 1rem;
  line-height: 1.2;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #F5F5F5;
}
.la-listing-show-page__title--compact {
  font-size: 1.125rem;
  font-weight: 600;
  color: #262626;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #F5F5F5;
}
.la-listing-show-page .la-listing-carousel {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: #FFF;
  border-radius: 0.5rem;
  overflow: hidden;
  min-width: 0;
}
.la-listing-show-page .la-listing-carousel__main {
  position: relative;
  width: 100%;
  height: 18rem;
  overflow: hidden;
}
@media (min-width: 576px) {
  .la-listing-show-page .la-listing-carousel__main {
    height: 22rem;
  }
}
@media (min-width: 768px) {
  .la-listing-show-page .la-listing-carousel__main {
    height: 26rem;
  }
}
@media (min-width: 992px) {
  .la-listing-show-page .la-listing-carousel__main {
    height: 30rem;
  }
}
.la-listing-show-page .la-listing-carousel__counter {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  background-color: rgba(38, 38, 38, 0.7);
  color: #FFF;
  padding: 0.375rem 1rem;
  border-radius: 9999px;
  font-size: 0.8125rem;
  font-weight: 500;
  z-index: 10;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
.la-listing-show-page .la-listing-carousel__control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
  background-color: rgba(255, 255, 255, 0.9);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  transition: all 0.2s ease-in-out;
  margin: 0;
}
.la-listing-show-page .la-listing-carousel__control-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #262626;
  margin: 0;
}
.la-listing-show-page .la-listing-carousel__control:hover {
  background-color: #F5F5F5;
}
.la-listing-show-page .la-listing-carousel__control--prev {
  left: 1rem;
}
[dir=rtl] .la-listing-show-page .la-listing-carousel__control--prev {
  left: auto;
  right: 1rem;
}
.la-listing-show-page .la-listing-carousel__control--next {
  right: 1rem;
}
[dir=rtl] .la-listing-show-page .la-listing-carousel__control--next {
  right: auto;
  left: 1rem;
}
.no-js .la-listing-show-page .la-listing-carousel__control {
  display: none;
}
.la-listing-show-page .la-listing-carousel__fallback-nav {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  display: flex;
  gap: 0.5rem;
  z-index: 10;
}
.la-listing-show-page .la-listing-carousel__fallback-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background-color: rgba(38, 38, 38, 0.7);
  color: #FFF;
  text-decoration: none;
  border-radius: 50%;
  font-size: 0.875rem;
  font-weight: 500;
  transition: background-color 0.2s;
}
.la-listing-show-page .la-listing-carousel__fallback-link:hover {
  background-color: rgba(38, 38, 38, 0.9);
}
.la-listing-show-page .la-listing-carousel__fallback-link:focus {
  outline: 2px solid #069393;
  outline-offset: 2px;
}
.la-listing-show-page .la-listing-carousel__fallback-grid {
  display: none;
  padding: 1rem;
  background-color: #FFF;
}
.no-js .la-listing-show-page .la-listing-carousel__fallback-grid {
  display: block;
}
.la-listing-show-page .la-listing-carousel__fallback-title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #262626;
  margin-bottom: 1rem;
  text-align: center;
}
.la-listing-show-page .la-listing-carousel__fallback-images {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
  max-height: 400px;
  overflow-y: auto;
}
.la-listing-show-page .la-listing-carousel__fallback-image {
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.la-listing-show-page .la-listing-carousel__fallback-image img {
  width: 100%;
  height: auto;
  display: block;
}
.la-listing-show-page .la-listing-carousel__thumbnails {
  display: flex;
  padding: 0.5rem;
  background-color: #FFF;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.la-listing-show-page .la-listing-carousel__thumbnails::-webkit-scrollbar {
  display: none;
}
.no-js .la-listing-show-page .la-listing-carousel__thumbnails {
  display: none;
}
.la-listing-show-page .la-listing-carousel__thumbnail {
  flex: 0 0 auto;
  width: 6rem;
  height: 4rem;
  margin: 0 0.25rem;
  border-radius: 0.25rem;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.7;
  transition: opacity 0.2s, transform 0.2s, box-shadow 0.2s;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  position: relative;
}
.la-listing-show-page .la-listing-carousel__thumbnail:hover {
  opacity: 0.9;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
.la-listing-show-page .la-listing-carousel__thumbnail--active {
  opacity: 1;
  box-shadow: 0 0 0 2px #069393, 0 2px 4px rgba(0, 0, 0, 0.1);
}
.la-listing-show-page .la-listing-carousel__thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.la-listing-show-page .la-listing-carousel__thumbnail-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
}
.no-js .la-listing-show-page .la-listing-carousel__thumbnail-link {
  display: block;
}
.la-listing-show-page .la-listing-carousel__thumbnail-link img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.la-listing-show-page .la-listing-carousel .la-carousel__container {
  height: 100%;
}
.no-js .la-listing-show-page .la-listing-carousel .la-carousel__container {
  scroll-behavior: smooth;
}
.la-listing-show-page .la-listing-carousel .la-carousel__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease;
}
.la-listing-show-page .la-listing-carousel .la-carousel__item img:hover {
  transform: scale(1.02);
}
.no-js .la-listing-show-page .la-listing-carousel .la-carousel__item {
  display: block !important;
  position: static !important;
  margin-bottom: 1rem;
}
.no-js .la-listing-show-page .la-listing-carousel .la-carousel__item:last-child {
  margin-bottom: 0;
}
.la-listing-show-page__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1rem;
  flex-wrap: wrap;
  flex-direction: column;
}
.la-listing-show-page__header .la-listing-show-page__actions {
  margin-top: 0.75rem;
  align-self: flex-end;
}
[dir=rtl] .la-listing-show-page__header .la-listing-show-page__actions {
  align-self: flex-start;
}
@media (min-width: 576px) {
  .la-listing-show-page__header {
    flex-direction: row;
  }
  .la-listing-show-page__header .la-listing-show-page__actions {
    margin-top: 0;
    align-self: auto;
  }
}
.la-listing-show-page__name {
  font-size: 2.5rem;
  font-weight: 700;
  color: #262626;
  margin-bottom: 0;
  line-height: 1.2;
  flex: 1;
  min-width: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.la-listing-show-page__actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}
.la-listing-show-page__actions .la-btn--icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  transition: background-color 0.2s, transform 0.2s;
}
.la-listing-show-page__actions .la-btn--icon:hover {
  transform: translateY(-2px);
}
.la-listing-show-page__actions .la-btn--icon .la-listing-show-page__action-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #4F4F4F;
}
.la-listing-show-page__actions .la-btn--icon .la-listing-show-page__action-icon--favorite {
  stroke: currentColor;
  fill: transparent;
}
.la-listing-show-page__actions .la-btn--icon .la-listing-show-page__action-icon--favorite[data-active=true], .la-listing-show-page__actions .la-btn--icon .la-listing-show-page__action-icon--favorite.is-active {
  color: #E25C3D;
  fill: #E25C3D;
  stroke: #E25C3D;
}
.la-listing-show-page__actions .la-btn--icon .la-listing-show-page__action-icon--favorite:hover {
  color: #E25C3D;
}
.la-listing-show-page__actions .la-btn--icon .la-listing-show-page__action-icon--share:hover {
  color: #069393;
}
.la-listing-show-page__actions .la-btn--icon.la-favorite-toggle[data-active=true] .la-icon, .la-listing-show-page__actions .la-btn--icon.la-favorite-toggle.is-active .la-icon {
  color: #E25C3D;
  fill: #E25C3D;
}
.la-listing-show-page__actions .la-btn--icon.la-favorite-toggle:hover .la-icon {
  color: #E25C3D;
}
.la-listing-show-page__actions .la-favorite-toggle.active {
  background-color: rgb(245.8968609865, 203.8340807175, 194.1031390135);
  color: #E25C3D;
}
.la-listing-show-page__actions .la-favorite-toggle.active .la-icon {
  fill: currentColor;
}
.la-listing-show-page__share-fallback {
  display: none;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1rem;
  background-color: #F5F5F5;
  border-radius: 0.5rem;
  margin-top: 0.5rem;
}
.no-js .la-listing-show-page__share-fallback {
  display: flex;
}
.la-listing-show-page__share-text {
  font-size: 0.875rem;
  font-weight: 500;
  color: #262626;
}
.la-listing-show-page__share-links {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.la-listing-show-page__share-links .la-btn {
  font-size: 0.75rem;
  padding: 0.375rem 0.75rem;
}
.la-listing-show-page__rating-location {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem calc(1.5rem / 1.5);
  margin-bottom: 1rem;
  font-size: 0.875rem;
  min-width: 0;
}
.la-listing-show-page__rating {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  font-weight: 600;
  color: #262626;
}
.la-listing-show-page__rating-icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.25rem;
  color: #F4B63E;
}
[dir=rtl] .la-listing-show-page__rating-icon {
  margin-right: 0;
  margin-left: 0.25rem;
}
.la-listing-show-page__rating-icon svg {
  fill: currentColor;
  stroke: none;
}
.la-listing-show-page__rating-score {
  font-weight: 600;
  color: #262626;
  margin-right: 0.25rem;
}
.la-listing-show-page__rating-count {
  color: #757575;
}
.la-listing-show-page__location {
  display: flex;
  align-items: center;
  color: #757575;
  min-width: 0;
}
.la-listing-show-page__location-icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.25rem;
  color: #069393;
  flex-shrink: 0;
}
[dir=rtl] .la-listing-show-page__location-icon {
  margin-right: 0;
  margin-left: 0.25rem;
}
.la-listing-show-page__location span {
  flex: 1;
  min-width: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.la-listing-show-page__website, .la-listing-show-page__phone {
  display: flex;
  align-items: center;
  font-size: inherit;
  min-width: 0;
  flex-wrap: wrap;
}
.la-listing-show-page__website-icon, .la-listing-show-page__phone-icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.375rem;
  flex-shrink: 0;
}
.la-listing-show-page__website-icon {
  color: #069393;
}
.la-listing-show-page__phone-icon {
  color: #069393;
}
[dir=rtl] .la-listing-show-page__website-icon, [dir=rtl] .la-listing-show-page__phone-icon {
  margin-right: 0;
  margin-left: 0.375rem;
}
.la-listing-show-page__contact-link {
  color: #262626;
  text-decoration: none;
  transition: color 0.2s ease;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-all;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.la-listing-show-page__contact-link:hover {
  color: #05686C;
  text-decoration: underline;
}
.la-listing-show-page__quick-info {
  margin-bottom: 1.5rem;
  min-width: 0;
}
.la-listing-show-page__quick-info__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  min-width: 0;
}
@media (min-width: 576px) {
  .la-listing-show-page__quick-info__badges {
    gap: 0.75rem;
  }
}
.la-listing-show-page__info-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  transition: transform 0.2s, box-shadow 0.2s;
  flex-shrink: 0;
  max-width: 100%;
}
.la-listing-show-page__info-badge:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.la-listing-show-page__info-badge--age-group {
  background-color: rgba(226, 92, 61, 0.1);
  color: #C0472D;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.la-listing-show-page__info-badge--price-range {
  background-color: rgba(6, 147, 147, 0.1);
  color: #05686C;
}
.la-listing-show-page__info-badge--duration {
  background-color: rgba(226, 92, 61, 0.1);
  color: rgb(205.3094170404, 63.4977578475, 30.6905829596);
}
.la-listing-show-page__info-badge--activity-type {
  background-color: rgba(74, 122, 216, 0.1);
  color: #2B5CAA;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.la-listing-show-page__info-badge--accommodation-type {
  background-color: rgba(6, 147, 147, 0.1);
  color: #05686C;
}
.la-listing-show-page__info-badge--dietary-option {
  background-color: rgba(244, 182, 62, 0.1);
  color: #DB9C24;
}
.la-listing-show-page__info-badge--event-type {
  background-color: rgba(74, 122, 216, 0.1);
  color: #2B5CAA;
}
.la-listing-show-page__info-badge .la-icon {
  margin-right: 0.375rem;
  width: 1rem;
  height: 1rem;
}
[dir=rtl] .la-listing-show-page__info-badge .la-icon {
  margin-right: 0;
  margin-left: 0.375rem;
}
.la-listing-show-page__about {
  margin-bottom: 0;
}
.la-listing-show-page__about .la-listing-show-page__description {
  color: #4F4F4F;
  line-height: 1.6;
  font-size: 1rem;
}
.la-listing-show-page__about .la-listing-show-page__description p {
  margin-bottom: 1rem;
}
.la-listing-show-page__about .la-listing-show-page__description p:last-child {
  margin-bottom: 0;
}
.la-listing-show-page__description {
  font-size: 1rem;
  line-height: 1.5;
  color: #4F4F4F;
  line-height: 1.6;
}
.la-listing-show-page__description-content {
  display: flex;
  flex-direction: column;
}
.la-listing-show-page__description-paragraph {
  margin-bottom: 1rem;
}
.la-listing-show-page__description-paragraph:last-child {
  margin-bottom: 0;
}
.la-listing-show-page__section-content {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.la-listing-show-page__section-content .la-weather-widget {
  width: 100%;
  padding: 0.5rem;
  height: auto;
  border: none;
  box-shadow: none;
  border-radius: 0.5rem;
}
.la-listing-show-page__section-content .la-weather-widget__content-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: auto;
}
.la-listing-show-page__section-content .la-weather-widget__header-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  padding-bottom: 1rem;
}
.la-listing-show-page__section-content .la-weather-widget__forecast {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 100%;
  justify-content: space-around;
  align-items: center;
  gap: 0.5rem;
  overflow-x: auto;
}
@media (min-width: 768px) {
  .la-listing-show-page__section-content .la-weather-widget__content-wrapper {
    flex-direction: row;
    min-height: 8rem;
  }
  .la-listing-show-page__section-content .la-weather-widget__header-section {
    min-height: 8rem;
    padding-bottom: 0;
    flex: 0 0 auto;
  }
  .la-listing-show-page__section-content .la-weather-widget__forecast {
    flex: 1;
    min-height: 8rem;
    overflow-x: visible;
  }
}
.la-listing-show-page .la-amenities-list {
  display: grid;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  list-style: none;
  padding: 0;
  margin: 0;
  grid-template-columns: 1fr;
  gap: 0.75rem;
}
@media (min-width: 576px) {
  .la-listing-show-page .la-amenities-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
  }
}
@supports not (display: grid) {
  .la-listing-show-page .la-amenities-list {
    display: flex;
    flex-direction: column;
  }
  @media (min-width: 576px) {
    .la-listing-show-page .la-amenities-list {
      flex-direction: row;
      flex-wrap: wrap;
    }
  }
}
.la-listing-show-page .la-amenities-list__item {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  transition: transform 0.2s, color 0.2s;
  color: #4F4F4F;
  min-width: 0;
}
.la-listing-show-page .la-amenities-list__item:hover {
  transform: translateX(2px);
  color: #333;
}
@supports not (display: grid) {
  .la-listing-show-page .la-amenities-list__item {
    margin-bottom: 0.75rem;
  }
  @media (min-width: 576px) {
    .la-listing-show-page .la-amenities-list__item {
      width: calc(50% - 0.75rem / 2);
      margin-right: 0.75rem;
    }
    .la-listing-show-page .la-amenities-list__item:nth-child(2n) {
      margin-right: 0;
    }
  }
}
.la-listing-show-page .la-amenities-list__item-dot {
  width: 0.5rem;
  height: 0.5rem;
  background-color: #069393;
  margin-right: 0.5rem;
  flex-shrink: 0;
  transition: transform 0.2s, background-color 0.2s;
  position: relative;
  border-radius: 9999px;
}
[dir=rtl] .la-listing-show-page .la-amenities-list__item-dot {
  margin-right: 0;
  margin-left: 0.5rem;
}
.la-listing-show-page .la-amenities-list__item-dot::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
  height: 60%;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: inherit;
}
.la-listing-show-page .la-amenities-list__item-dot:hover {
  transform: scale(1.2);
  background-color: #046262;
}
.la-listing-show-page .la-dietary-list {
  display: grid;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  list-style: none;
  padding: 0;
  margin: 0;
  grid-template-columns: 1fr;
  gap: 0.75rem;
}
@media (min-width: 576px) {
  .la-listing-show-page .la-dietary-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
  }
}
@supports not (display: grid) {
  .la-listing-show-page .la-dietary-list {
    display: flex;
    flex-direction: column;
  }
  @media (min-width: 576px) {
    .la-listing-show-page .la-dietary-list {
      flex-direction: row;
      flex-wrap: wrap;
    }
  }
}
.la-listing-show-page .la-dietary-list__item {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  transition: transform 0.2s, color 0.2s;
  color: #4F4F4F;
  min-width: 0;
}
.la-listing-show-page .la-dietary-list__item:hover {
  transform: translateX(2px);
  color: #333;
}
@supports not (display: grid) {
  .la-listing-show-page .la-dietary-list__item {
    margin-bottom: 0.75rem;
  }
  @media (min-width: 576px) {
    .la-listing-show-page .la-dietary-list__item {
      width: calc(50% - 0.75rem / 2);
      margin-right: 0.75rem;
    }
    .la-listing-show-page .la-dietary-list__item:nth-child(2n) {
      margin-right: 0;
    }
  }
}
.la-listing-show-page .la-dietary-list__item-dot {
  width: 0.5rem;
  height: 0.5rem;
  background-color: #069393;
  margin-right: 0.5rem;
  flex-shrink: 0;
  transition: transform 0.2s, background-color 0.2s;
  position: relative;
  border-radius: 0.125rem;
}
[dir=rtl] .la-listing-show-page .la-dietary-list__item-dot {
  margin-right: 0;
  margin-left: 0.5rem;
}
.la-listing-show-page .la-dietary-list__item-dot::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
  height: 60%;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: inherit;
}
.la-listing-show-page .la-dietary-list__item-dot:hover {
  transform: scale(1.2);
  background-color: #046262;
}
.la-listing-show-page .la-accessibility-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  gap: 0.75rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.la-listing-show-page .la-accessibility-list__item {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  transition: transform 0.2s, color 0.2s;
  color: #4F4F4F;
  min-width: 0;
}
.la-listing-show-page .la-accessibility-list__item:hover {
  transform: translateX(2px);
  color: #333;
}
.la-listing-show-page .la-accessibility-list__item-dot {
  width: 0.5rem;
  height: 0.5rem;
  background-color: #2B5CAA;
  margin-right: 0.5rem;
  flex-shrink: 0;
  transition: transform 0.2s, background-color 0.2s;
  position: relative;
  border-radius: 0;
  transform: rotate(45deg);
  margin-right: 0.625rem;
}
[dir=rtl] .la-listing-show-page .la-accessibility-list__item-dot {
  margin-right: 0;
  margin-left: 0.5rem;
}
[dir=rtl] .la-listing-show-page .la-accessibility-list__item-dot {
  margin-right: 0;
  margin-left: 0.625rem;
}
.la-listing-show-page .la-accessibility-list__item-dot::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
  height: 60%;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: inherit;
}
.la-listing-show-page .la-accessibility-list__item-dot:hover {
  transform: scale(1.2) rotate(45deg);
  background-color: rgb(32.7042253521, 69.9718309859, 129.2957746479);
}

.la-static-map {
  position: relative;
  width: 100%;
  flex: 1;
  min-height: 12rem;
  border-radius: 0.5rem;
  overflow: hidden;
  margin-bottom: 1rem;
}
.la-static-map__frame {
  border: none;
  width: 100%;
  height: 100%;
  transition: opacity 0.2s;
  border-radius: 0.5rem;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.la-static-map__frame:hover {
  opacity: 0.95;
}
.la-static-map__attribution {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  z-index: 10;
  transition: background-color 0.2s;
}
.la-static-map__attribution:hover {
  background-color: #FFF;
}
.la-static-map__link {
  color: #069393;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.la-static-map__link-icon {
  height: 0.875rem;
  width: 0.875rem;
  color: #069393;
  transition: transform 0.2s ease, color 0.2s ease;
}
.la-static-map__link-icon svg {
  stroke: currentColor;
  stroke-width: 2px;
  fill: none;
}
.la-static-map__link:hover .la-static-map__link-icon {
  transform: scale(1.1);
}
.la-static-map__link:hover {
  color: #05686C;
  text-decoration: underline;
}
.la-static-map--placeholder {
  background-color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-static-map__no-location {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #757575;
}
.la-static-map__no-location .la-icon {
  margin-bottom: 0.5rem;
}
.la-static-map__no-location p {
  margin: 0;
  font-size: 0.875rem;
}
.la-static-map__directions {
  margin-bottom: 1rem;
  width: 100%;
}
.la-static-map__directions-icon {
  height: 1rem;
  width: 1rem;
  margin-right: 0.5rem;
  color: #069393;
  transition: transform 0.2s ease, color 0.2s ease;
}
.la-static-map__directions-icon svg {
  stroke: currentColor;
  stroke-width: 2px;
  fill: none;
}
.la-static-map__directions-button:hover .la-static-map__directions-icon {
  transform: scale(1.1);
}
.la-static-map__directions-button {
  width: 100%;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  height: auto;
  text-align: center;
  justify-content: center;
}
.la-static-map__directions-text {
  display: inline-block;
}

.content-wrapper {
  padding-top: var(--la-navbar-height);
  width: 100%;
  height: auto;
  min-height: auto;
  transition: padding-top 0.3s ease;
  overflow: visible;
}
@media (min-width: 768px) {
  .content-wrapper {
    min-height: 100vh;
    overflow-x: hidden;
    position: relative;
  }
}

.la-navbar--scrolled + .content-wrapper {
  padding-top: var(--la-navbar-height-scrolled);
}

.la-container {
  padding: 0 0.9375rem;
}

.la-carousel__item img {
  height: 13rem;
  -o-object-fit: cover;
     object-fit: cover;
}

.la-type-list-container {
  padding: 0.625rem;
}

.la-premium-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1050;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.25s, opacity 0.25s ease-in-out;
}
.la-premium-modal.is-visible {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
}
.la-premium-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(38, 38, 38, 0.6);
  cursor: pointer;
}
.la-premium-modal__content {
  position: relative;
  background-color: #FFF;
  border-radius: 0.3rem;
  box-shadow: 0 0.5rem 1rem rgba(38, 38, 38, 0.15);
  width: 90%;
  max-width: 480px;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.la-premium-modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #BDBDBD;
}
.la-premium-modal__title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #262626;
  margin: 0;
}
.la-premium-modal__close-button {
  color: #757575;
}
.la-premium-modal__close-button:hover {
  color: #262626;
}
.la-premium-modal__close-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.la-premium-modal__body {
  padding: 1.5rem;
  overflow-y: auto;
}
.la-premium-modal__banner {
  text-align: center;
  margin-bottom: 2rem;
}
.la-premium-modal__banner h4 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #262626;
  margin: 0.5rem 0;
}
.la-premium-modal__banner p {
  font-size: 1rem;
  color: #757575;
  margin: 0;
}
.la-premium-modal__banner-icon {
  width: 6rem;
  height: 6rem;
  margin-bottom: 1rem;
  color: #069393;
}
.la-premium-modal__features-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.la-premium-modal__feature-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}
.la-premium-modal__feature-icon {
  width: 2rem;
  height: 2rem;
  color: #069393;
  flex-shrink: 0;
  margin-top: 0.25rem;
}
.la-premium-modal__feature-text h5 {
  font-size: 1rem;
  font-weight: 600;
  color: #262626;
  margin: 0 0 0.25rem;
}
.la-premium-modal__feature-text p {
  font-size: 0.875rem;
  color: #757575;
  margin: 0;
  line-height: 1.5;
}
.la-premium-modal__footer {
  padding: 1.5rem;
  border-top: 1px solid #BDBDBD;
  background-color: #F9F9F9;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.la-weather-card {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s ease;
  min-height: 2.75rem;
}
.la-weather-card:hover {
  transform: translateY(-1px);
}
@media (hover: none) and (pointer: coarse) {
  .la-weather-card:hover {
    transform: none;
  }
}
.la-weather-card:focus-visible {
  outline: 2px solid #069393;
  outline-offset: 2px;
}
@media (hover: none) and (pointer: coarse) {
  .la-weather-card:active {
    transform: scale(0.98);
    transition: transform 0.1s ease;
  }
}
.la-weather-card__content {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 2rem;
  overflow: hidden;
  background: linear-gradient(to right, #FFF 0%, rgba(6, 147, 147, 0.1) 100%);
}
.la-weather-card__preview {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2rem;
  flex: 1;
  min-height: 0;
}
@media (max-width: 480px) {
  .la-weather-card__preview {
    margin: 0 1rem;
    gap: 0.75rem;
  }
}
.la-weather-card__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.la-weather-card__temp-location {
  font-size: 0.875rem;
  font-weight: 700;
  color: #262626;
  line-height: 1;
  white-space: nowrap;
}
@media (max-width: 480px) {
  .la-weather-card__temp-location {
    font-size: 0.8125rem;
  }
}
.la-weather-card__condition {
  font-size: 0.75rem;
  color: #757575;
  line-height: 0.8;
  white-space: nowrap;
}
@media (max-width: 480px) {
  .la-weather-card__condition {
    font-size: 0.6875rem;
    margin-top: 0.125rem;
  }
}
.la-weather-card__lock-icon {
  width: 1rem;
  height: 1rem;
  color: #4F4F4F;
  flex-shrink: 0;
}
.la-weather-card__footer {
  background-color: #069393;
  color: #FFF;
  padding: 0rem 1.1rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 0.65rem;
  font-weight: 500;
  width: 100%;
  height: 35%;
  gap: 0.5rem;
}
@media (max-width: 480px) {
  .la-weather-card__footer {
    padding: 0rem 1rem;
    font-size: 0.6rem;
    gap: 0.375rem;
    min-height: 1.5rem;
  }
}
.la-weather-card__cta {
  line-height: 0.2;
}
.la-weather-card__arrow {
  width: 0.875rem;
  height: 0.875rem;
  stroke: currentColor;
  stroke-width: 2;
}
.la-weather-card__temp-location--blurred, .la-weather-card__condition--blurred {
  filter: blur(1.5px);
  opacity: 0.8;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  position: relative;
}

.la-weekly-picks {
  margin-bottom: 0;
  margin-top: 0.5rem;
}

.la-card__weekly-badge {
  position: relative;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease-out;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.la-card__weekly-badge .la-glass-filter {
  background: rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.la-card__weekly-badge .la-glass-overlay {
  background: rgba(255, 255, 255, 0.2);
}
.la-card__weekly-badge .la-glass-content {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}

.la-card:hover .la-card__weekly-badge {
  transform: scale(1.1);
}

.la-card:hover .la-card__weekly-icon {
  filter: drop-shadow(0 2px 4px rgba(234, 88, 12, 0.5));
}

.la-card__weekly-icon {
  width: 1rem;
  height: 1rem;
  color: #ea580c;
  filter: drop-shadow(0 1px 2px rgba(234, 88, 12, 0.3));
}

dotlottie-wc,
lottie-player {
  display: block;
  min-height: 2rem;
  min-width: 2rem;
  aspect-ratio: 1;
}
dotlottie-wc:not([data-loaded=true]),
lottie-player:not([data-loaded=true]) {
  background: #F9F9F9;
  border-radius: 0.2rem;
  position: relative;
}
dotlottie-wc:not([data-loaded=true])::before,
lottie-player:not([data-loaded=true])::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1rem;
  height: 1rem;
  border: 2px solid #BDBDBD;
  border-top: 2px solid #069393;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

input[type=date]:not(.flatpickr-input),
.flatpickr:not(.flatpickr-input),
[data-flatpickr]:not(.flatpickr-input) {
  padding-right: 2.5rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23666' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1H2zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 1rem;
}

[data-auth-required]:not([data-auth-loaded=true]),
[data-bs-toggle=modal][data-bs-target="#authModal"]:not([data-auth-loaded=true]) {
  min-height: 2.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@keyframes spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
.la-weather-widget[data-loading=true] {
  background: #F9F9F9;
  border-radius: 0.25rem;
  position: relative;
  min-height: 3rem;
}
.la-weather-widget[data-loading=true]::before {
  content: "Loading weather data...";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #757575;
  font-size: 0.875rem;
}

.la-horizontal-carousel__container {
  min-height: 20rem;
}
.la-horizontal-carousel__container:empty {
  background: #F9F9F9;
  border-radius: 0.25rem;
  position: relative;
}
.la-horizontal-carousel__container:empty::before {
  content: "Loading content...";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #757575;
  font-size: 0.875rem;
}

[data-turbo-frame] {
  min-height: 2rem;
}
[data-turbo-frame][data-loading=true] {
  position: relative;
}
[data-turbo-frame][data-loading=true]::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, transparent, rgba(189, 189, 189, 0.2), transparent);
  animation: shimmer 1.5s infinite;
}

@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
@media (max-width: 48rem) {
  .la-horizontal-carousel__container {
    min-height: 18rem;
  }
  dotlottie-wc,
  lottie-player {
    min-height: 1.5rem;
    min-width: 1.5rem;
  }
}
.content-wrapper {
  padding-top: var(--la-navbar-height);
  width: 100%;
  min-height: 100vh;
  transition: padding-top 0.3s ease;
  overflow-x: hidden;
  position: relative;
}

.la-navbar--scrolled + .content-wrapper {
  padding-top: var(--la-navbar-height-scrolled);
}
