

*, *::before, *::after { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--websly-color-surface);
  color: var(--websly-color-text);
  font-family: var(--websly-font-body);
  font-size: var(--websly-text-base);
  line-height: var(--websly-leading-normal);
  -webkit-font-smoothing: antialiased;
  
  transition: background-color 320ms ease, color 320ms ease;
}

img, image-slot { max-width: 100%; display: block; }
a { color: var(--websly-color-link); }


.la-figure { font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1; }


.la-reg {
  font-size: 0.4em;
  vertical-align: 0.95em;
  letter-spacing: 0;
  line-height: 0;
}

.la-visually-hidden {
  position: absolute; width: 1px; height: 1px;
  margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}



.websly-section {
  padding-top: clamp(3.25rem, 8vw, 5.5rem);
  padding-bottom: clamp(3.25rem, 8vw, 5.5rem);
  scroll-margin-top: 80px;
}

[data-websly-section="trust-strip"] { padding-bottom: clamp(2.25rem, 4vw, 3.5rem); }

.la-container {
  max-width: var(--websly-container-max);
  margin: 0 auto;
  padding: 0 var(--websly-space-md);
  scroll-margin-top: 104px;
}
.la-container--narrow { max-width: var(--websly-container-narrow); }

@media (min-width: 37.5rem) {
  .la-container { padding: 0 var(--websly-space-lg); }
}



.la-eyebrow {
  display: block;
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--websly-color-link);
  font-weight: 600;
  margin: 0 0 var(--websly-space-sm);
}

.la-h2 {
  font-family: var(--websly-font-heading);
  font-weight: var(--websly-font-weight-heading);
  font-size: clamp(1.9rem, 6.4vw, 2.75rem);
  line-height: 1.1;
  letter-spacing: -0.005em;
  color: var(--websly-color-text);
  margin: 0 0 var(--websly-space-md);
}

.la-section-head {
  max-width: var(--websly-container-narrow);
  margin: 0 auto clamp(2.25rem, 5vw, 4rem);
  text-align: center;
}
.la-section-head .la-h2 { margin-bottom: 0; }
.la-section-head .la-flourish,
.la-section-head .la-crown--head { margin: 0 auto var(--websly-space-md); }




.la-flourish, .la-crown-rule { display: block; height: auto; overflow: visible; }
.la-flourish { width: 148px; }
.la-crown-rule { width: 224px; }
.la-flourish path, .la-crown-rule path {
  fill: none;
  stroke: var(--websly-color-secondary);
  stroke-width: 1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.la-flourish path { vector-effect: non-scaling-stroke; }
.la-crown-divider { display: flex; justify-content: center; }
.la-crown-rule path { transition: stroke-dashoffset 900ms ease-out; }

.la-crown {
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1;
  stroke-linecap: round;
  stroke-linejoin: round;
  color: var(--websly-color-secondary);
}
.la-crown path, .la-crown circle { vector-effect: non-scaling-stroke; }
.la-crown--inline {
  display: inline-block;
  width: 19px; height: 19px;
  flex: none;
  vertical-align: -4px;
  margin-right: 0.6em;
  color: var(--websly-color-link);
}
.la-crown--head { width: 30px; height: 30px; }
.la-crown--feature { width: 26px; height: 26px; }
.la-crown--panel { width: 34px; height: 34px; color: var(--websly-color-accent); }

@media (min-width: 56.25rem) {
  .la-flourish { width: 172px; }
  .la-crown-rule { width: 268px; }
}


.la-rule-flourish {
  display: flex;
  align-items: center;
  gap: var(--websly-space-md);
  margin: var(--websly-space-md) 0 var(--websly-space-lg);
}
.la-rule-flourish::before, .la-rule-flourish::after {
  content: "";
  flex: 1 1 0;
  height: 1px;
  background: var(--websly-color-accent);
}
.la-rule-flourish .la-flourish { flex: none; width: 132px; }
@media (min-width: 56.25rem) { .la-rule-flourish .la-flourish { width: 158px; } }


.la-ornate { position: relative; --la-orn: var(--websly-color-accent); }
.la-ornate--gold { --la-orn: var(--websly-color-secondary); }
.la-ornate::before {
  content: "";
  position: absolute;
  inset: 7px;
  pointer-events: none;
  background:
    linear-gradient(var(--la-orn), var(--la-orn)) left 0    top 0/20px 1px no-repeat,
    linear-gradient(var(--la-orn), var(--la-orn)) left 0    top 0/1px 20px no-repeat,
    linear-gradient(var(--la-orn), var(--la-orn)) right 0   top 0/20px 1px no-repeat,
    linear-gradient(var(--la-orn), var(--la-orn)) right 0   top 0/1px 20px no-repeat,
    linear-gradient(var(--la-orn), var(--la-orn)) left 0  bottom 0/20px 1px no-repeat,
    linear-gradient(var(--la-orn), var(--la-orn)) left 0  bottom 0/1px 20px no-repeat,
    linear-gradient(var(--la-orn), var(--la-orn)) right 0 bottom 0/20px 1px no-repeat,
    linear-gradient(var(--la-orn), var(--la-orn)) right 0 bottom 0/1px 20px no-repeat;
}


.la-frame { position: relative; padding: 12px; }
.la-frame::before, .la-frame::after,
.la-frame__media::before, .la-frame__media::after {
  content: "";
  position: absolute;
  width: 26px;
  height: 26px;
  border: 1px solid var(--websly-color-secondary);
  pointer-events: none;
}
.la-frame::before { top: 0; left: 0; border-right: 0; border-bottom: 0; }
.la-frame::after  { top: 0; right: 0; border-left: 0; border-bottom: 0; }
.la-frame__media { position: relative; }
.la-frame__media::before { bottom: -12px; left: -12px; border-right: 0; border-top: 0; }
.la-frame__media::after  { bottom: -12px; right: -12px; border-left: 0; border-top: 0; }
.la-frame__media image-slot { width: 100%; }
@media (min-width: 56.25rem) {
  .la-frame::before, .la-frame::after,
  .la-frame__media::before, .la-frame__media::after { width: 30px; height: 30px; }
}


.la-medallion {
  width: 56px;
  height: 56px;
  flex: none;
  border: 1px solid var(--websly-color-secondary);
  border-radius: var(--websly-radius-pill);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--websly-color-secondary);
}
.la-medallion svg { display: block; }
.la-medallion--lg { width: 62px; height: 62px; }
@media (min-width: 56.25rem) {
  .la-medallion { width: 62px; height: 62px; }
  .la-medallion--lg { width: 84px; height: 84px; }
}


.la-crest {
  width: 104px;
  height: 104px;
  flex: none;
  border-radius: var(--websly-radius-pill);
  border: 1px solid var(--websly-color-secondary);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  position: relative;
  color: var(--websly-color-secondary);
}
.la-crest::before {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid var(--websly-color-accent);
  border-radius: var(--websly-radius-pill);
}
.la-crown--crest { width: 24px; height: 24px; }
.la-crest__mono {
  font-family: var(--websly-font-heading);
  font-size: 1.55rem;
  line-height: 1;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  color: var(--websly-color-link);
}
@media (min-width: 56.25rem) {
  .la-crest { width: 148px; height: 148px; }
  .la-crown--crest { width: 32px; height: 32px; }
  .la-crest__mono { font-size: 2.15rem; }
}



.la-btn {
  display: inline-block;
  font-family: var(--websly-font-body);
  font-weight: 600;
  font-size: var(--websly-text-sm);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: var(--websly-button-radius);
  padding: 0.95rem 1.7rem;
  border: 1px solid transparent;
  transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}
@media (min-width: 56.25rem) { .la-btn { padding: 1rem 2.1rem; } }

.la-btn--filled {
  background: var(--websly-color-link);
  color: var(--websly-color-primary-contrast);
  border-color: var(--websly-color-link);
}
.la-btn--filled:hover { background: var(--websly-color-primary); border-color: var(--websly-color-primary); }

.la-btn--outline {
  background: transparent;
  color: var(--websly-color-link);
  border-color: var(--websly-color-secondary);
}
.la-btn--outline:hover { background: var(--websly-color-link); border-color: var(--websly-color-link); color: var(--websly-color-primary-contrast); }

.la-btn--text {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  color: var(--websly-color-text);
  padding-left: 0;
  padding-right: 0;
  border-bottom: 1px solid var(--websly-color-accent);
  border-radius: 0;
}
.la-btn--text::after {
  content: "\203A";
  font-size: 1.05em;
  line-height: 1;
  color: var(--websly-color-secondary);
  transition: transform 200ms ease;
}
.la-btn--text:hover { border-bottom-color: var(--websly-color-secondary); color: var(--websly-color-link); }
.la-btn--text:hover::after { transform: translateX(3px); }




.la-scheme {
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  border: 1px solid var(--websly-color-border);
  border-radius: var(--websly-radius-pill);
}
.la-scheme__opt {
  display: flex;
  align-items: center;
  gap: 0.5em;
  background: none;
  border: 1px solid transparent;
  border-radius: var(--websly-radius-pill);
  padding: 4px;
  cursor: pointer;
  font: inherit;
  font-size: var(--websly-text-xs);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--websly-color-text-muted);
  transition: border-color 200ms ease, color 200ms ease;
}
.la-scheme__opt[aria-pressed="true"] { border-color: var(--websly-color-secondary); color: var(--websly-color-text); }
.la-scheme__opt:hover { color: var(--websly-color-text); }
.la-scheme__dot { width: 15px; height: 15px; border-radius: var(--websly-radius-pill); display: block; }
.la-scheme__dot--champagne { background: #B08D57; } 
.la-scheme__dot--clinical  { background: #5E8FB0; } 

.la-scheme .la-scheme__lab {
  position: absolute; width: 1px; height: 1px;
  margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}
.la-scheme--panel { border-color: var(--websly-color-text-muted); padding: 4px; }
.la-scheme--panel .la-scheme__opt { padding: 0.5rem 0.9rem; color: var(--websly-color-text-inverse); }
.la-scheme--panel .la-scheme__opt[aria-pressed="true"] { color: var(--websly-color-text-inverse); }
.la-scheme--panel .la-scheme__lab {
  position: static; width: auto; height: auto;
  margin: 0; overflow: visible; clip: auto; clip-path: none;
}




.la-header {
  position: sticky;
  top: 0;
  z-index: 60;
  background: var(--websly-color-surface-inverse);
  color: var(--websly-color-text-inverse);
  transition: box-shadow 240ms ease, background-color 320ms ease;
}
.la-header--scrolled { box-shadow: 0 2px 18px rgba(0, 0, 0, .38); }
.la-header__bar {
  max-width: var(--websly-container-wide);
  margin: 0 auto;
  padding: 0 var(--websly-space-md);
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--websly-space-md);
  transition: height 240ms ease;
}
.la-header__end { display: flex; align-items: center; gap: var(--websly-space-sm); }
.la-header__cta { display: none; }


.la-nav { display: none; }
.la-nav a {
  font-family: var(--websly-font-body);
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 500;
  color: var(--websly-color-text-inverse);
  text-decoration: none;
  transition: color 200ms ease;
}
.la-nav a:hover { color: var(--la-gilt-inverse); }


.la-header .la-btn--outline { color: var(--la-gilt-inverse); border-color: var(--la-gilt-inverse); }
.la-header .la-btn--outline:hover,
.la-header .la-btn--outline:focus-visible {
  background: var(--la-gilt-inverse);
  border-color: var(--la-gilt-inverse);
  color: var(--websly-color-surface-inverse);
}
.la-header .la-scheme { border-color: var(--la-rule-inverse); }
.la-header .la-scheme__opt { color: var(--la-ink-inverse-muted); }
.la-header .la-scheme__opt:hover { color: var(--websly-color-text-inverse); }
.la-header .la-scheme__opt[aria-pressed="true"] { border-color: var(--la-gilt-inverse); color: var(--websly-color-text-inverse); }
.la-header .la-nav-toggle span { background: var(--websly-color-text-inverse); }


.la-logo { display: block; flex: none; }

.la-logo__mark {
  display: block;
  width: 122px;
  height: 60px;
  background-color: var(--la-mark-inverse);
  -webkit-mask-image: url("5b5031864007.png");
          mask-image: url("5b5031864007.png");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  transition: width 240ms ease, height 240ms ease;
}

.la-logo__img { display: block; height: 48px; width: auto; mix-blend-mode: multiply; transition: height 240ms ease; }

.la-nav-toggle {
  display: flex;
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  flex-direction: column;
  gap: 5px;
}
.la-nav-toggle span { width: 24px; height: 1px; background: var(--websly-color-text); display: block; }

.la-mobile-panel {
  position: fixed;
  inset: 0;
  background: var(--websly-color-surface-inverse);
  color: var(--websly-color-text-inverse);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--websly-space-md);
  opacity: 0;
  visibility: hidden;
  transition: opacity 200ms ease;
  z-index: 70;
  padding: var(--websly-space-xl) var(--websly-space-md);
  overflow-y: auto;
}
.la-mobile-panel a:not(.la-btn) {
  font-family: var(--websly-font-heading);
  font-size: var(--websly-text-xl);
  color: var(--websly-color-text-inverse);
  text-decoration: none;
}
.la-mobile-panel .la-btn { font-family: var(--websly-font-body); font-size: var(--websly-text-sm); margin-top: var(--websly-space-sm); }
.la-mobile-panel .la-crown--panel { margin-bottom: var(--websly-space-sm); }
.la-mobile-panel .la-scheme--panel { margin-top: var(--websly-space-md); }
.la-mobile-close {
  position: absolute;
  top: 20px;
  right: 20px;
  background: none;
  border: none;
  color: var(--websly-color-text-inverse);
  font-size: 1.75rem;
  line-height: 1;
  cursor: pointer;
}
[data-websly-nav-state="open"] .la-mobile-panel { opacity: 1; visibility: visible; }

@media (min-width: 56.25rem) {
  .la-header__bar { height: 88px; padding: 0 var(--websly-space-lg); }
  .la-header--scrolled .la-header__bar { height: 74px; }
  .la-nav { display: flex; align-items: center; gap: clamp(1rem, 2vw, 1.9rem); }
  .la-header__cta { display: inline-block; padding: 0.75rem 1.4rem; }
  .la-nav-toggle { display: none; }
  .la-logo__mark { width: 152px; height: 74px; }
  .la-header--scrolled .la-logo__mark { width: 128px; height: 63px; }
  .la-logo__img { height: 64px; }
  .la-header--scrolled .la-logo__img { height: 54px; }
  .la-header__end { gap: var(--websly-space-md); }
}




.la-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 1fr;
  
  grid-template-rows: 42svh auto;
  background: var(--websly-color-surface);
}
.la-hero__media { grid-area: 1 / 1; position: relative; overflow: hidden; z-index: 0; }

.la-hero__video,
.la-hero__media img {
  position: absolute;
  left: 0;
  top: -8%;
  width: 100%;
  height: 116%;
  object-fit: cover;
  
  object-position: 80% 50%;
  
  filter: var(--la-video-filter);
  transition: filter 320ms ease;
}

.la-hero__scrim {
  grid-area: 1 / 1;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    0deg,
    rgba(var(--la-surface-rgb), 1) 0%,
    rgba(var(--la-surface-rgb), 0.94) 12%,
    rgba(var(--la-surface-rgb), 0) 58%
  );
}
.la-hero__copy {
  grid-area: 2 / 1;
  position: relative;
  z-index: 2;
  width: 100%;
  padding: var(--websly-space-lg) var(--websly-space-md) var(--websly-space-lg);
}
.la-hero__inner { max-width: 33rem; }
.la-hero__eyebrow { display: flex; align-items: center; }
.la-hero__title {
  font-family: var(--websly-font-heading);
  font-weight: var(--websly-font-weight-heading);
  
  font-size: clamp(2.1rem, 8.6vw, 3.75rem);
  line-height: 1.06;
  letter-spacing: -0.01em;
  color: var(--websly-color-text);
  margin: 0;
}

.la-hero__title-em {
  display: block;
  font-style: italic;
  color: var(--websly-color-secondary);
  
  line-height: 1.18;
  padding-bottom: 0.08em;
}
.la-hero__sub {
  font-size: var(--websly-text-base);
  line-height: 1.6;
  color: var(--websly-color-text-muted);
  max-width: 27rem;
  margin: 0 0 var(--websly-space-lg);
}
.la-hero__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: var(--websly-space-md); }

.la-hero__ctas .la-btn--text { width: -moz-fit-content; width: fit-content; }

@media (min-width: 56.25rem) {
  .la-hero {
    
    grid-template-rows: 1fr;
    
    align-items: stretch;
    min-height: clamp(600px, 78vh, 780px);
  }
  .la-hero__media, .la-hero__scrim, .la-hero__copy { grid-area: 1 / 1; }
  .la-hero__copy { display: flex; align-items: center; }
  
  .la-hero__video, .la-hero__media img { object-position: 50% 45%; }
  
  .la-hero__scrim {
    background: linear-gradient(
      90deg,
      rgba(var(--la-surface-rgb), 1) 0%,
      rgba(var(--la-surface-rgb), 1) 36%,
      rgba(var(--la-surface-rgb), 0.88) 44%,
      rgba(var(--la-surface-rgb), 0.18) 56%,
      rgba(var(--la-surface-rgb), 0) 66%
    );
  }
  .la-hero__copy {
    padding: var(--websly-space-2xl) var(--websly-space-xl) var(--websly-space-2xl)
             max(var(--websly-space-lg), calc((100vw - var(--websly-container-wide)) / 2 + var(--websly-space-lg)));
  }
  .la-hero__sub { font-size: var(--websly-text-lg); }
}




.la-page-hero {
  background: var(--websly-color-surface-alt);
  text-align: center;
}
.la-page-hero .la-container { max-width: var(--websly-container-narrow); }
.la-page-hero__eyebrow { display: flex; align-items: center; justify-content: center; }
.la-page-hero h1 {
  font-family: var(--websly-font-heading);
  font-weight: var(--websly-font-weight-heading);
  font-size: clamp(2.1rem, 7vw, 3.25rem);
  line-height: 1.08;
  letter-spacing: -0.01em;
  color: var(--websly-color-text);
  margin: 0;
}
.la-page-hero .la-rule-flourish { justify-content: center; margin-left: auto; margin-right: auto; max-width: 26rem; }
.la-page-hero__lede {
  font-size: var(--websly-text-base);
  line-height: 1.6;
  color: var(--websly-color-text-muted);
  max-width: 34rem;
  margin: 0 auto;
}
@media (min-width: 56.25rem) { .la-page-hero__lede { font-size: var(--websly-text-lg); } }


.la-price-mini { margin: 0 0 var(--websly-space-lg); }
.la-price-mini > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--websly-space-md);
  padding: var(--websly-space-sm) 0;
}
.la-price-mini > div::before {
  content: "";
  order: 1;
  flex: 1 1 auto;
  height: 1px;
  align-self: center;
  margin-top: 2px;
  background: linear-gradient(90deg, var(--websly-color-border) 0 60%, transparent 60% 100%) repeat-x;
  background-size: 5px 1px;
}
.la-price-mini dt { font-size: var(--websly-text-sm); color: var(--websly-color-text); }
.la-price-mini dd { margin: 0; order: 2; }
.la-price-mini .la-price { font-size: var(--websly-text-lg); }




[data-websly-section="trust-strip"] { display: flow-root; }
.la-trust-wrap {
  position: relative;
  z-index: 3;
  max-width: var(--websly-container-max);
  margin: calc(var(--websly-space-md) * -1) auto 0;
  padding: 0 var(--websly-space-md);
}
.la-trust {
  background: var(--websly-color-surface);
  border: 1px solid var(--websly-color-border);
  border-radius: var(--websly-radius-md);
  padding: var(--websly-space-lg) var(--websly-space-md);
  display: grid;
  gap: var(--websly-space-lg);
}
.la-trust__col {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  column-gap: var(--websly-space-md);
  align-items: center;
  text-align: left;
}
.la-trust__col .la-medallion { grid-row: 1 / 3; }
.la-trust__col .la-eyebrow { margin-bottom: 0.2rem; align-self: end; }
.la-trust__col p { margin: 0; font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); align-self: start; }

.la-credentials {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--websly-space-sm);
  margin: var(--websly-space-lg) auto 0;
  padding: 0;
  list-style: none;
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--websly-color-text-muted);
  text-align: center;
}

.la-credentials li { display: block; }

@media (min-width: 56.25rem) {
  .la-trust-wrap { margin-top: -4.5rem; padding: 0 var(--websly-space-lg); }
  .la-trust { grid-template-columns: repeat(3, 1fr); grid-template-rows: auto auto auto; gap: 0; padding: var(--websly-space-xl) var(--websly-space-lg); }
  .la-trust__col {
    grid-row: span 3;
    grid-template-columns: 1fr;
    grid-template-rows: subgrid;
    padding: 0 var(--websly-space-lg);
    border-left: 1px solid var(--websly-color-border);
    text-align: center;
    justify-items: center;
  }
  .la-trust__col:first-child { border-left: none; }
  .la-trust__col .la-medallion { grid-row: auto; margin-bottom: var(--websly-space-md); }
  .la-trust__col .la-eyebrow { margin-bottom: var(--websly-space-xs); }
  .la-trust__col p { max-width: 19rem; }
  .la-credentials { flex-direction: row; flex-wrap: wrap; justify-content: center; gap: var(--websly-space-md); margin-top: var(--websly-space-xl); }
  .la-credentials li + li::before {
    content: "";
    display: inline-block;
    vertical-align: 1px;
    width: 1px;
    height: 11px;
    background: var(--websly-color-accent);
    margin-right: var(--websly-space-md);
  }
}



.la-split { display: grid; gap: var(--websly-space-lg); }
.la-split__media { display: flex; flex-direction: column; }
.la-split__media .la-frame { width: 100%; display: flex; }
.la-split__media .la-frame__media { width: 100%; }
.la-split__media image-slot { width: 100%; height: 100%; }
.la-split__body { display: flex; flex-direction: column; justify-content: center; }
.la-split__body > :last-child { margin-bottom: 0; }
.la-split__body p { margin: 0 0 var(--websly-space-md); color: var(--websly-color-text); max-width: 34rem; }
.la-split__body .la-btn--text { align-self: flex-start; }


.la-split--auto .la-split__media img { aspect-ratio: 4 / 3; height: auto; object-position: 55% 52%; }
.la-split--reverse .la-split__media img { aspect-ratio: 4 / 5; height: auto; object-position: 50% 22%; }

@media (min-width: 56.25rem) {
  
  .la-split { grid-template-columns: 1fr 1fr; gap: clamp(2.5rem, 5vw, 4.5rem); align-items: stretch; }
  .la-split--auto { align-items: center; }
  .la-split--reverse { align-items: center; }
  .la-split--reverse .la-split__media { order: 1; }
  .la-split--reverse .la-split__body { order: 2; }
}


.la-ticks-row {
  list-style: none;
  margin: clamp(2rem, 5vw, 4rem) 0 0;
  padding: 0;
  display: grid;
  gap: var(--websly-space-md);
}
.la-ticks-row li {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  font-size: var(--websly-text-sm);
  line-height: 1.6;
  color: var(--websly-color-text);
}
.la-ticks-row svg { flex: none; color: var(--websly-color-link); margin-top: 0.4em; }

@media (min-width: 37.5rem) {
  .la-ticks-row { grid-template-columns: repeat(2, 1fr); gap: var(--websly-space-lg) var(--websly-space-md); }
}
@media (min-width: 56.25rem) {
  .la-ticks-row { grid-template-columns: repeat(4, 1fr); gap: 0; }
  .la-ticks-row li { justify-content: center; padding: 0 var(--websly-space-md); border-left: 1px solid var(--websly-color-border); }
  .la-ticks-row li:first-child { border-left: none; }
}




.la-timeline {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--websly-space-lg);
  position: relative;
}
.la-timeline__step { position: relative; padding-left: var(--websly-space-lg); }

.la-timeline::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 6px;
  bottom: 6px;
  width: 1px;
  background: var(--websly-color-accent);
}
.la-timeline__node {
  position: absolute;
  left: 0;
  top: 4px;
  width: 11px;
  height: 11px;
  border: 1px solid var(--websly-color-secondary);
  background: var(--websly-color-surface-alt);
  transform: rotate(45deg);
}
.la-timeline__when {
  display: block;
  font-family: var(--websly-font-heading);
  font-size: var(--websly-text-xl);
  line-height: 1.15;
  color: var(--websly-color-link);
  margin-bottom: 0.25rem;
}
.la-timeline__step p { margin: 0; font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); }
.la-timeline__foot {
  text-align: center;
  margin: clamp(2rem, 5vw, 3.5rem) auto 0;
  max-width: 40rem;
  font-size: var(--websly-text-sm);
  color: var(--websly-color-text-muted);
}

@media (min-width: 56.25rem) {
  .la-timeline { grid-template-columns: repeat(4, 1fr); gap: 0; }
  .la-timeline::before { left: var(--websly-space-md); right: var(--websly-space-md); top: 5px; bottom: auto; width: auto; height: 1px; }
  .la-timeline__step { padding: 2.5rem var(--websly-space-md) 0; text-align: center; }
  .la-timeline__node { left: 50%; top: 0; margin-left: -6px; }
}




.la-price-hero {
  display: grid;
  gap: var(--websly-space-lg);
  padding: var(--websly-space-lg) var(--websly-space-md);
  border: 1px solid var(--websly-color-secondary);
  border-radius: var(--websly-radius-md);
  background: var(--websly-color-surface);
  justify-items: center;
  text-align: center;
  margin-bottom: var(--websly-space-lg);
}
.la-price-hero__crest { display: flex; justify-content: center; }
.la-price-hero__name {
  font-family: var(--websly-font-heading);
  font-weight: var(--websly-font-weight-heading);
  font-size: clamp(1.75rem, 6vw, 2.25rem);
  line-height: 1.1;
  margin: 0 0 var(--websly-space-xs);
  color: var(--websly-color-text);
}
.la-price-hero__body p { margin: 0 0 var(--websly-space-md); color: var(--websly-color-text-muted); font-size: var(--websly-text-sm); max-width: 32rem; }
.la-price-hero__prices { margin: 0; width: 100%; max-width: 28rem; }
.la-price-hero__prices > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--websly-space-md);
  padding: var(--websly-space-sm) 0;
  border-top: 1px solid var(--websly-color-border);
  text-align: left;
}
.la-price-hero__prices > div:first-child { border-top: none; }
.la-price-hero__prices dt { font-size: var(--websly-text-sm); color: var(--websly-color-text); }
.la-price-hero__prices dd { margin: 0; display: flex; align-items: baseline; gap: 0.5rem; white-space: nowrap; }
.la-price-from {
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--websly-color-text-muted);
}

.la-price {
  font-family: var(--websly-font-heading);
  font-size: var(--websly-text-xl);
  line-height: 1.1;
  color: var(--websly-color-link);
}

@media (min-width: 56.25rem) {
  .la-price-hero {
    grid-template-columns: auto 1fr 22rem;
    align-items: center;
    gap: var(--websly-space-lg);
    padding: var(--websly-space-xl);
    text-align: left;
    justify-items: stretch;
  }
  .la-price-hero__body { border-left: 1px solid var(--websly-color-border); padding-left: var(--websly-space-lg); }
  .la-price-hero__prices { max-width: none; width: 22rem; }
  .la-price-hero__name { font-size: 2.25rem; }
  .la-price { font-size: var(--websly-text-2xl); }
}


.la-price-list { display: grid; }
.la-price-row {
  display: grid;
  gap: var(--websly-space-md);
  padding: var(--websly-space-lg) 0;
  border-top: 1px solid var(--websly-color-border);
  align-items: start;
}
.la-price-row:first-child { border-top: none; }
.la-price-row > .la-medallion { justify-self: start; }
.la-price-row__body h3 {
  font-family: var(--websly-font-heading);
  font-weight: var(--websly-font-weight-heading);
  font-size: var(--websly-text-xl);
  line-height: 1.15;
  margin: 0 0 var(--websly-space-xs);
  color: var(--websly-color-text);
}
.la-price-row__body p { margin: 0; font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); max-width: 30rem; }
.la-price-row__prices { margin: 0; }
.la-price-row__prices > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--websly-space-md);
  padding: 0.4rem 0;
}
.la-price-row__prices dt { font-size: var(--websly-text-sm); color: var(--websly-color-text); }

.la-price-row__prices > div::before {
  content: "";
  order: 1;
  flex: 1 1 auto;
  height: 1px;
  align-self: center;
  margin-top: 2px;
  background: linear-gradient(90deg, var(--websly-color-border) 0 60%, transparent 60% 100%) repeat-x;
  background-size: 5px 1px;
}
.la-price-row__prices dd { margin: 0; order: 2; }
.la-price-row__prices .la-price { font-size: var(--websly-text-lg); }

@media (min-width: 56.25rem) {
  .la-price-row {
    grid-template-columns: auto 1fr 22rem;
    gap: var(--websly-space-xl);
    align-items: center;
    padding: var(--websly-space-xl) 0;
  }
  .la-price-row__prices { border-left: 1px solid var(--websly-color-border); padding-left: var(--websly-space-xl); }
}

.la-treatments-foot { text-align: center; max-width: var(--websly-container-narrow); margin: var(--websly-space-xl) auto 0; }
.la-treatments-foot p { margin: 0 0 var(--websly-space-md); color: var(--websly-color-text-muted); font-size: var(--websly-text-sm); }




.la-area-list { display: grid; }
.la-area {
  display: grid;
  gap: var(--websly-space-md);
  padding: var(--websly-space-lg) 0;
  border-top: 1px solid var(--websly-color-border);
  align-items: start;
}
.la-area:first-child { border-top: none; }
.la-area__body h3 {
  font-family: var(--websly-font-heading);
  font-weight: var(--websly-font-weight-heading);
  font-size: var(--websly-text-xl);
  line-height: 1.15;
  margin: 0 0 var(--websly-space-xs);
  color: var(--websly-color-text);
}
.la-area__body p { margin: 0; font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); max-width: 34rem; }
.la-area__ideal { margin: 0; font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); }
.la-area__ideal .la-eyebrow { display: block; margin-bottom: 0.25rem; }

@media (min-width: 56.25rem) {
  .la-area {
    grid-template-columns: 1fr 20rem;
    gap: var(--websly-space-xl);
    padding: var(--websly-space-xl) 0;
  }
  .la-area__ideal { border-left: 1px solid var(--websly-color-border); padding-left: var(--websly-space-xl); }
}




.la-creds-strip {
  list-style: none;
  margin: 0;
  padding: var(--websly-space-lg) var(--websly-space-md);
  display: grid;
  gap: var(--websly-space-lg);
  border: 1px solid var(--websly-color-border);
  border-radius: var(--websly-radius-md);
  background: var(--websly-color-surface);
}
.la-creds-strip li {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto 1fr;
  column-gap: var(--websly-space-md);
  align-items: start;
}
.la-creds-strip svg { grid-row: 1 / 3; width: 26px; height: 26px; color: var(--websly-color-secondary); fill: none; margin-top: 0.1rem; }
.la-creds-strip .la-eyebrow { margin-bottom: 0.15rem; }
.la-creds-strip p { margin: 0; font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); }

@media (min-width: 56.25rem) {
  .la-creds-strip {
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: auto;
    gap: 0;
    padding: var(--websly-space-xl) var(--websly-space-md);
    align-items: start;
  }
  .la-creds-strip li {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 var(--websly-space-md);
    border-left: 1px solid var(--websly-color-border);
  }
  .la-creds-strip li:first-child { border-left: none; }
  .la-creds-strip svg { grid-row: auto; margin: 0 0 var(--websly-space-md); }
  .la-creds-strip .la-eyebrow { margin-bottom: var(--websly-space-xs); }
}



.la-creds {
  list-style: none;
  margin: var(--websly-space-lg) 0 0;
  padding: 0;
  display: grid;
  gap: var(--websly-space-sm);
}
.la-creds li {
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--websly-color-text-muted);
  line-height: 1.7;
  padding-left: var(--websly-space-md);
  border-left: 1px solid var(--websly-color-accent);
}



.la-ratings {
  display: grid;
  gap: var(--websly-space-lg);
  margin: 0 auto clamp(2.25rem, 5vw, 4rem);
  text-align: center;
}
.la-rating { display: grid; justify-items: center; }

.la-stars { width: 116px; height: auto; margin: 0 auto var(--websly-space-sm); display: block; }
.la-stars .la-stars__track { fill: none; stroke: var(--websly-color-secondary); stroke-width: 1; }
.la-stars .la-stars__fill { fill: var(--websly-color-secondary); }
.la-rating p {
  margin: 0;
  font-family: var(--websly-font-heading);
  font-size: var(--websly-text-lg);
  line-height: 1.3;
  color: var(--websly-color-text);
  max-width: 20rem;
}

.la-rev-grid { display: grid; gap: var(--websly-space-md); }
.la-rev-card {
  background: var(--websly-color-surface);
  border: 1px solid var(--websly-color-border);
  border-radius: var(--websly-radius-md);
  padding: var(--websly-space-lg);
  display: flex;
  flex-direction: column;
}
.la-rev-card p { font-size: var(--websly-text-sm); line-height: 1.75; margin: 0 0 var(--websly-space-lg); color: var(--websly-color-text); }
.la-rev-card__by { display: block; margin-top: auto; padding-top: var(--websly-space-md); border-top: 1px solid var(--websly-color-border); }
.la-rev-card cite { font-style: normal; font-weight: 600; font-size: var(--websly-text-sm); display: block; }
.la-rev-card__src { display: block; font-size: var(--websly-text-xs); color: var(--websly-color-text-muted); margin-top: 0.15rem; }

@media (min-width: 56.25rem) {
  .la-ratings { grid-template-columns: repeat(2, 1fr); gap: var(--websly-space-xl); }
  .la-rating p { font-size: var(--websly-text-xl); max-width: 22rem; }
  .la-rev-grid { grid-template-columns: repeat(3, 1fr); }
}



.la-faq-list { display: flex; flex-direction: column; }
.la-faq-item { border-bottom: 1px solid var(--websly-color-border); }
.la-faq-item:first-child { border-top: 1px solid var(--websly-color-border); }
.la-faq-item summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--websly-space-md);
  padding: var(--websly-space-md) 0;
  font-family: var(--websly-font-heading);
  font-size: var(--websly-text-lg);
  color: var(--websly-color-text);
}
.la-faq-item summary::-webkit-details-marker { display: none; }
.la-faq-item summary .la-faq-mark { flex: none; color: var(--websly-color-link); font-size: 1.4rem; line-height: 1; transition: transform 200ms ease; }
.la-faq-item[open] summary .la-faq-mark { transform: rotate(45deg); }
.la-faq-item p { margin: 0 0 var(--websly-space-md); color: var(--websly-color-text-muted); font-size: var(--websly-text-sm); max-width: 40rem; }



.la-cta-band { background: var(--websly-color-surface-alt); }
.la-cta-plate {
  max-width: 52rem;
  margin: 0 auto;
  padding: clamp(2.25rem, 5vw, 3.25rem) clamp(1.25rem, 4vw, 3.5rem);
  text-align: center;
  border: 1px solid var(--websly-color-secondary);
  border-radius: var(--websly-radius-md);
  background: var(--websly-color-surface);
}
.la-cta-plate .la-crown--head { margin: 0 auto var(--websly-space-md); }
.la-cta-plate .la-h2 { margin-bottom: var(--websly-space-md); }
.la-cta-plate p { margin: 0 auto var(--websly-space-lg); max-width: 32rem; color: var(--websly-color-text-muted); }
.la-cta-tel { display: block; margin-top: var(--websly-space-md); font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); text-decoration: none; }
.la-cta-tel:hover { color: var(--websly-color-link); }



.la-contact-grid { display: grid; gap: var(--websly-space-lg); }
.la-contact-col { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: var(--websly-space-lg); }
.la-contact-details {
  display: grid;
  gap: var(--websly-space-lg);
  align-content: center;
  margin: 0;
  width: 100%;
}
.la-contact-cta { flex: none; }
.la-contact-details dt.la-eyebrow { margin-bottom: 0.45rem; }
.la-contact-details dd { margin: 0; font-size: var(--websly-text-sm); line-height: 1.85; }
.la-contact-details dd a { color: var(--websly-color-text); text-decoration: none; }
.la-contact-details dd a:hover { color: var(--websly-color-link); }

.la-map {
  display: flex;
  flex-direction: column;
  gap: var(--websly-space-md);
  max-width: var(--websly-container-max);
  margin: var(--websly-space-lg) auto 0;
  padding: 0 var(--websly-space-md);
}

.la-map-row { display: flex; flex-direction: column; gap: var(--websly-space-md); }
.la-map__frame {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  border: 1px solid var(--websly-color-border);
  border-radius: var(--websly-radius-md);
  background: var(--websly-color-surface-alt);
  overflow: hidden;
}
.la-map__embed {
  display: block;
  width: 100%;
  height: 17rem;
  border: 0;
  
  filter: var(--la-video-filter);
}
.la-map__photo { margin: 0; flex: none; }

.la-map__photo image-slot {
  display: block;
  width: 100%;
  height: 17rem !important;
  border: 1px solid var(--websly-color-border);
  border-radius: var(--websly-radius-md);
}
.la-map__foot {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--websly-space-sm);
}
.la-map__where { margin: 0; font-size: var(--websly-text-sm); color: var(--websly-color-text-muted); }

@media (min-width: 37.5rem) {
  .la-contact-details { grid-template-columns: repeat(2, 1fr); gap: var(--websly-space-lg); }
  .la-map { padding: 0 var(--websly-space-lg); }
  .la-map__embed { height: 21rem; }
  .la-map__photo image-slot { height: 21rem !important; }
}
@media (min-width: 56.25rem) {
  
  .la-contact-details { grid-template-columns: repeat(4, 1fr); gap: var(--websly-space-lg); }
  .la-contact-col { align-items: stretch; }
  .la-contact-cta { align-self: flex-start; }
  .la-map__embed { height: 26rem; }
  #section-11 .la-map { max-width: var(--websly-container-wide); }
  .la-map-row { flex-direction: row; align-items: flex-start; gap: var(--websly-space-lg); }
  .la-map__photo { flex: 0 0 16rem; }
  .la-map__photo image-slot { height: 26rem !important; }
}




.la-footer {
  background: var(--websly-color-surface-inverse);
  color: var(--websly-color-text-inverse);
}
.la-footer__top { padding: var(--websly-space-lg) 0 0; }


.la-brands { overflow: hidden; padding: 0 0 var(--websly-space-md); border-bottom: 1px solid var(--websly-color-border); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }

.la-brands__track { display: flex; align-items: center; gap: var(--websly-space-xl); width: max-content; animation: la-brands-scroll var(--la-brands-duration, 32s) linear infinite; }
.la-brands__item { flex: none; font-family: var(--websly-font-heading); font-size: var(--websly-text-lg); letter-spacing: 0.04em; text-transform: uppercase; color: var(--websly-color-text-muted); white-space: nowrap; }

.la-brands__logo { flex: none; height: 1.75rem; width: auto; max-width: 8rem; object-fit: contain; filter: grayscale(1) opacity(0.55); transition: filter .2s ease; }
.la-brands__logo:hover { filter: grayscale(0) opacity(0.9); }
@keyframes la-brands-scroll { from { transform: translateX(0); } to { transform: translateX(var(--la-brands-shift, -50%)); } }

.la-footer .la-crown-rule path { stroke: var(--la-gilt-inverse); }

.la-footer__main {
  max-width: var(--websly-container-max);
  margin: 0 auto;
  padding: var(--websly-space-lg) var(--websly-space-md);
  display: grid;
  gap: var(--websly-space-lg);
}

.la-footer__brand { grid-column: 1 / -1; display: grid; align-content: start; justify-items: center; text-align: center; gap: var(--websly-space-md); }
.la-footer__logo { display: block; }

.la-footer__mark {
  display: block;
  width: 196px;
  height: 96px;
  background-color: var(--la-mark-inverse);
  -webkit-mask-image: url("5b5031864007.png");
          mask-image: url("5b5031864007.png");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.la-footer__line {
  margin: 0;
  font-size: var(--websly-text-sm);
  line-height: 1.75;
  color: var(--la-ink-inverse-muted);
  max-width: 24rem;
}

.la-social { list-style: none; display: flex; gap: var(--websly-space-sm); margin: var(--websly-space-xs) 0 0; padding: 0; }
.la-social a {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--la-rule-inverse);
  border-radius: var(--websly-radius-pill);
  color: var(--la-gilt-inverse);
  transition: color 200ms ease, border-color 200ms ease, background-color 200ms ease;
}
.la-social svg { width: 19px; height: 19px; display: block; }
.la-social a:hover,
.la-social a:focus-visible {
  color: var(--websly-color-surface-inverse);
  background: var(--la-gilt-inverse);
  border-color: var(--la-gilt-inverse);
}
.la-footer__col { text-align: left; }
.la-footer__col h3 {
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--la-gilt-inverse);
  margin: 0 0 var(--websly-space-md);
  font-weight: 600;
}
.la-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.7rem; }
.la-footer__col li { font-size: var(--websly-text-sm); color: var(--la-ink-inverse-muted); line-height: 1.7; }
.la-footer__col a { color: var(--websly-color-text-inverse); text-decoration: none; font-size: var(--websly-text-sm); }
.la-footer__col a:hover { color: var(--la-gilt-inverse); }
.la-footer__hours { margin: var(--websly-space-md) 0; font-size: var(--websly-text-sm); color: var(--la-ink-inverse-muted); line-height: 1.7; }

.la-footer__col--contact .la-btn { margin-top: var(--websly-space-xs); display: inline-block; }
.la-footer .la-btn--outline { color: var(--la-gilt-inverse); border-color: var(--la-gilt-inverse); }
.la-footer .la-btn--outline:hover,
.la-footer .la-btn--outline:focus-visible {
  background: var(--la-gilt-inverse);
  border-color: var(--la-gilt-inverse);
  color: var(--websly-color-surface-inverse);
}
.la-footer .la-btn--text { color: var(--websly-color-text-inverse); border-bottom-color: var(--la-rule-inverse); }
.la-footer .la-btn--text:hover { color: var(--la-gilt-inverse); border-bottom-color: var(--la-gilt-inverse); }
.la-footer__bar {
  border-top: 1px solid var(--la-rule-inverse);
  padding: var(--websly-space-md);
}
.la-footer__bar-inner {
  max-width: var(--websly-container-max);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--websly-space-xs);
  font-size: var(--websly-text-xs);
  color: var(--la-ink-inverse-muted);
  text-align: center;
}
.la-footer__bar-inner a { color: var(--la-ink-inverse-muted); text-decoration: none; }
.la-footer__bar-inner a:hover { color: var(--la-gilt-inverse); }

@media (min-width: 37.5rem) {
  .la-footer__main {
    padding-left: var(--websly-space-lg);
    padding-right: var(--websly-space-lg);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--websly-space-lg);
  }
  .la-footer__brand { justify-items: start; text-align: left; }
  .la-footer__bar-inner { flex-direction: row; flex-wrap: wrap; justify-content: space-between; gap: var(--websly-space-sm); text-align: left; }
}
@media (min-width: 56.25rem) {
  
  .la-footer__main { grid-template-columns: 1.6fr 1fr 1.4fr; gap: var(--websly-space-xl); }
  .la-footer__brand { grid-column: auto; }
  .la-footer__mark { width: 200px; height: 98px; }
}






@keyframes la-fade-up {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
html.la-armed .la-hero__eyebrow,
html.la-armed .la-hero__hr,
html.la-armed .la-hero__sub,
html.la-armed .la-hero__ctas {
  animation: la-fade-up 600ms cubic-bezier(.22,.61,.36,1) both;
}
html.la-armed .la-hero__eyebrow { animation-delay: 60ms; }
html.la-armed .la-hero__hr      { animation-delay: 420ms; }
html.la-armed .la-hero__sub     { animation-delay: 510ms; }
html.la-armed .la-hero__ctas    { animation-delay: 600ms; }


.la-line-mask { display: block; overflow: hidden; padding-bottom: 0.06em; }
.la-line { display: block; }
html.la-gsap .la-hero__title { opacity: 0; }
html.la-gsap .la-hero__title.is-ready { opacity: 1; }
html.la-armed .la-hero__title--plain { animation: la-fade-up 700ms cubic-bezier(.22,.61,.36,1) both; }


html.la-armed .la-reveal,
html.la-armed .la-reveal-group > * {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 700ms cubic-bezier(.22,.61,.36,1), transform 700ms cubic-bezier(.22,.61,.36,1);
  transition-delay: calc(var(--i, 0) * 70ms);
}
html.la-armed .la-reveal.is-in-view,
html.la-armed .la-reveal-group > .is-in-view {
  opacity: 1;
  transform: translateY(0);
}


html.la-armed .la-crown-rule path { stroke-dashoffset: var(--la-crown-len, 0); }
html.la-armed .la-crown-rule.is-in-view path { stroke-dashoffset: 0; }


.la-price-row { transition: border-color 220ms ease; }
.la-price-row:hover { border-color: var(--la-border-hover); }
.la-price-row .la-medallion { transition: border-color 220ms ease, color 220ms ease; }
.la-price-row:hover .la-medallion { border-color: var(--la-border-hover); }
.la-area { transition: border-color 220ms ease; }
.la-area:hover { border-color: var(--la-border-hover); }


html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }

@media (prefers-reduced-motion: reduce) {
  html, body { scroll-behavior: auto !important; }
  .la-hero__eyebrow, .la-hero__title, .la-hero__hr, .la-hero__sub, .la-hero__ctas,
  .la-reveal, .la-reveal-group > *, .la-line-mask > *,
  .la-crown-rule path, .la-price-row, .la-area, .la-brands__track, body {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
    stroke-dashoffset: 0 !important;
  }
}



.la-header { background: var(--websly-color-surface); color: var(--websly-color-text); border-bottom: 1px solid var(--websly-color-border); }
.la-header--scrolled { box-shadow: 0 2px 18px rgba(28,25,23,.10); }
.la-logo { display: flex; align-items: center; }
.la-nav a { color: var(--websly-color-link); }
.la-nav a:hover { color: var(--websly-color-primary); }
.la-header .la-btn--outline { color: var(--websly-color-link); border-color: var(--websly-color-secondary); }
.la-header .la-btn--outline:hover,
.la-header .la-btn--outline:focus-visible {
  background: var(--websly-color-link);
  border-color: var(--websly-color-link);
  color: var(--websly-color-primary-contrast);
}
.la-header .la-scheme { border-color: var(--websly-color-border); }
.la-header .la-scheme__opt { color: var(--websly-color-text-muted); }
.la-header .la-scheme__opt:hover { color: var(--websly-color-text); }
.la-header .la-scheme__opt[aria-pressed="true"] { border-color: var(--websly-color-secondary); color: var(--websly-color-text); }
.la-header .la-nav-toggle span { background: var(--websly-color-text); }

.la-mobile-panel { background: var(--websly-color-surface); color: var(--websly-color-text); }
.la-mobile-panel a:not(.la-btn) { color: var(--websly-color-text); }
.la-mobile-panel .la-scheme--panel { border-color: var(--websly-color-border); }
.la-mobile-panel .la-scheme--panel .la-scheme__opt { color: var(--websly-color-text-muted); }
.la-mobile-panel .la-scheme--panel .la-scheme__opt[aria-pressed="true"] { color: var(--websly-color-text); }
.la-mobile-close { color: var(--websly-color-text); }

.la-footer { background: var(--websly-color-surface-alt); color: var(--websly-color-text); }
.la-footer .la-crown-rule path { stroke: var(--websly-color-secondary); }
.la-footer__line { color: var(--websly-color-text-muted); }
.la-social a { border-color: var(--websly-color-secondary); color: var(--websly-color-link); }
.la-social a:hover,
.la-social a:focus-visible { background: var(--websly-color-link); border-color: var(--websly-color-link); color: var(--websly-color-primary-contrast); }
.la-footer__col h3 { color: var(--websly-color-link); }
.la-footer__col li { color: var(--websly-color-text-muted); }
.la-footer__col a { color: var(--websly-color-text); }
.la-footer__col a:hover { color: var(--websly-color-link); }
.la-footer__hours { color: var(--websly-color-text-muted); }
.la-footer .la-btn--outline { color: var(--websly-color-link); border-color: var(--websly-color-secondary); }
.la-footer .la-btn--outline:hover,
.la-footer .la-btn--outline:focus-visible { background: var(--websly-color-link); border-color: var(--websly-color-link); color: var(--websly-color-primary-contrast); }
.la-footer .la-btn--text { color: var(--websly-color-text); border-bottom-color: var(--websly-color-accent); }
.la-footer .la-btn--text:hover { color: var(--websly-color-link); border-bottom-color: var(--websly-color-secondary); }
.la-footer__bar { border-top: 1px solid var(--websly-color-border); }
.la-footer__bar-inner { color: var(--websly-color-text-muted); }
.la-footer__bar-inner a { color: var(--websly-color-text-muted); }
.la-footer__bar-inner a:hover { color: var(--websly-color-link); }



.la-subnav { position: relative; }
.la-subnav > summary {
  list-style: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}
.la-subnav > summary::-webkit-details-marker { display: none; }


.la-subnav--drop > summary {
  font-family: var(--websly-font-body);
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 500;
  color: var(--websly-color-link);
  
  padding: 0.9rem 0;
  transition: color 200ms ease;
}
.la-subnav--drop > summary:hover,
.la-subnav--drop[open] > summary { color: var(--websly-color-primary); }
.la-subnav__chev { width: 11px; height: 11px; flex: none; transition: transform 220ms ease; }
.la-subnav--drop[open] > summary .la-subnav__chev { transform: rotate(180deg); }


.la-subnav .la-subnav__panel {
  background: var(--websly-color-surface);
  border: 1px solid var(--websly-color-border);
  border-radius: var(--websly-radius-md);
  box-shadow: var(--websly-shadow-lg);
  padding: var(--websly-space-md);
  text-align: left;
}
.la-subnav--drop .la-subnav__panel {
  position: absolute;
  top: 100%;
  
  left: -1.25rem;
  z-index: 61;
  width: min(36rem, calc(100vw - 3rem));
  
  margin-top: 1.4rem;
}

.la-subnav--drop .la-subnav__panel::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -1.5rem;
  height: 1.5rem;
}
.la-subnav--drop[open] .la-subnav__panel { animation: la-subnav-in 180ms ease-out both; }
@keyframes la-subnav-in {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: none; }
}


.la-subnav .la-subnav__all {
  display: block;
  font-family: var(--websly-font-heading);
  font-size: var(--websly-text-lg);
  
  text-transform: none;
  letter-spacing: normal;
  font-weight: var(--websly-font-weight-heading);
  line-height: 1.25;
  color: var(--websly-color-text);
  text-decoration: none;
  padding-bottom: var(--websly-space-sm);
  margin-bottom: var(--websly-space-sm);
  border-bottom: 1px solid var(--websly-color-accent);
  transition: color 200ms ease;
}
.la-subnav .la-subnav__all:hover,
.la-subnav .la-subnav__all:focus-visible { color: var(--websly-color-link); }

.la-subnav__cols { display: grid; grid-template-columns: 1fr 1fr; gap: var(--websly-space-md) var(--websly-space-lg); }
.la-subnav__group {
  font-family: var(--websly-font-body);
  font-size: var(--websly-text-xs);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--websly-color-text-muted);
  margin: 0 0 var(--websly-space-xs);
}
.la-subnav__group:not(:first-child) { margin-top: var(--websly-space-md); }
.la-subnav__list { list-style: none; margin: 0; padding: 0; }
.la-subnav__list li + li { margin-top: var(--websly-space-2xs); }

.la-subnav .la-subnav__list a {
  display: block;
  font-family: var(--websly-font-body);
  font-size: var(--websly-text-sm);
  text-transform: none;
  letter-spacing: 0.01em;
  font-weight: 400;
  line-height: 1.5;
  color: var(--websly-color-text);
  text-decoration: none;
  transition: color 200ms ease;
}
.la-subnav .la-subnav__list a:hover,
.la-subnav .la-subnav__list a:focus-visible { color: var(--websly-color-link); }


.la-subnav--panel { width: 100%; max-width: 24rem; }

.la-subnav--panel > summary {
  display: flex;
  justify-content: center;
  font-family: var(--websly-font-heading);
  font-size: var(--websly-text-xl);
  color: var(--websly-color-text);
  gap: var(--websly-space-xs);
}
.la-subnav__mark { flex: none; color: var(--websly-color-link); font-size: 1.4rem; line-height: 1; transition: transform 200ms ease; }
.la-subnav--panel[open] > summary .la-subnav__mark { transform: rotate(45deg); }

.la-subnav--panel .la-subnav__panel {
  margin-top: var(--websly-space-sm);
  padding: var(--websly-space-md) 0 0;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--websly-color-accent);
  border-radius: 0;
  box-shadow: none;
}

.la-subnav--panel .la-subnav__cols { grid-template-columns: 1fr; gap: var(--websly-space-md); }
.la-subnav--panel .la-subnav__list a { font-size: var(--websly-text-base); }
.la-subnav--panel .la-subnav__list li + li { margin-top: var(--websly-space-xs); }


.la-mobile-panel { justify-content: flex-start; }
.la-mobile-panel .la-crown--panel { margin-top: auto; }
.la-mobile-panel .la-scheme--panel { margin-bottom: auto; }


@media (prefers-reduced-motion: reduce) {
  .la-subnav--drop[open] .la-subnav__panel,
  .la-subnav__chev,
  .la-subnav__mark {
    animation: none !important;
    transition: none !important;
  }
}

/* Prevent horizontal overflow */
html, body {
  overflow-x: hidden;
  max-width: 100vw;
}

#page.websly-page,
.websly-page {
  overflow-x: hidden;
  width: 100%;
  max-width: 100vw;
}

