/* [next]/internal/font/google/hanken_grotesk_f79d271e.module.css [app-client] (css) */
@font-face {
  font-family: Hanken Grotesk;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/91bd2e40df15814e-s.19s5evoqhirey.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Hanken Grotesk;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Hanken Grotesk;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Hanken Grotesk;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Hanken Grotesk Fallback;
  src: local(Arial);
  ascent-override: 99.07%;
  descent-override: 30.02%;
  line-gap-override: 0.0%;
  size-adjust: 100.94%;
}

.hanken_grotesk_f79d271e-module__lyQn0a__className {
  font-family: Hanken Grotesk, Hanken Grotesk Fallback;
  font-style: normal;
}

.hanken_grotesk_f79d271e-module__lyQn0a__variable {
  --font-display-src: "Hanken Grotesk", "Hanken Grotesk Fallback";
}

/* [next]/internal/font/google/inter_66634e52.module.css [app-client] (css) */
@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2") format("woff2");
  unicode-range: U+1F??;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2") format("woff2");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Inter Fallback;
  src: local(Arial);
  ascent-override: 90.44%;
  descent-override: 22.52%;
  line-gap-override: 0.0%;
  size-adjust: 107.12%;
}

.inter_66634e52-module__uuNzBa__className {
  font-family: Inter, Inter Fallback;
  font-style: normal;
}

.inter_66634e52-module__uuNzBa__variable {
  --font-body-src: "Inter", "Inter Fallback";
}

/* [next]/internal/font/google/ibm_plex_mono_5f38f802.module.css [app-client] (css) */
@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/99e609270109b47d-s.p.40sczeszzbjw1.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/68757d6cddeff913-s.1i-sca43-qwng.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/effe91970fc4db64-s.p.0oace-s_gkfks.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Mono Fallback;
  src: local(Arial);
  ascent-override: 76.16%;
  descent-override: 20.43%;
  line-gap-override: 0.0%;
  size-adjust: 134.59%;
}

.ibm_plex_mono_5f38f802-module__Mjb9nq__className {
  font-family: IBM Plex Mono, IBM Plex Mono Fallback;
  font-style: normal;
}

.ibm_plex_mono_5f38f802-module__Mjb9nq__variable {
  --font-mono-src: "IBM Plex Mono", "IBM Plex Mono Fallback";
}

/* [project]/app/globals.css [app-client] (css) */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
      "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
      "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: var(--font-mono-src), ui-monospace, monospace;
    --spacing: .25rem;
    --radius-sm: 10px;
    --radius-md: 16px;
    --radius-lg: 24px;
    --ease-out: cubic-bezier(.2, .7, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-sage: #97a36a;
    --color-sage-deep: #8c9a60;
    --color-sage-dark: #7e8d54;
    --color-forest: #2c3a22;
    --color-forest-light: #3a4a2e;
    --color-ink: #1b2413;
    --color-moss: #4a5639;
    --color-moss-light: #6e7a5c;
    --color-leaf: #6a984d;
    --color-cream: #f5f2ea;
    --color-cream-card: #fcfbf7;
    --color-sand: #e8decb;
    --color-border: #dad3c2;
    --color-coral: #f4876b;
    --color-coral-bright: #ff9a7a;
    --color-coral-soft: #ffb89e;
    --color-gold: #e7a93c;
    --color-azure: #1a73e8;
    --color-azure-deep: #1557b0;
    --color-pin: #ea4335;
    --color-pin-deep: #b31412;
    --color-go: #16a34a;
    --color-go-deep: #15803d;
    --color-magenta: #e8479b;
    --font-display: var(--font-display-src), system-ui, sans-serif;
    --font-body: var(--font-body-src), system-ui, sans-serif;
    --radius-pill: 999px;
    --shadow-soft: 0 1px 2px #1b24130a,
                       0 4px 12px #1b24130d;
    --shadow-card: 0 2px 6px #1b24130d,
                       0 12px 28px #1b241312;
    --shadow-card-hover: 0 6px 16px #1b241312,
                       0 22px 42px #1b24131a;
    --shadow-float: 0 16px 40px #1b241329,
                       0 32px 64px #1b24132e;
    --shadow-glow-coral: 0 8px 24px #f4876b52;
    --shadow-glow-coral-sm: 0 2px 10px #f4876b47;
    --ease-spring: cubic-bezier(.34, 1.56, .64, 1);
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

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

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

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

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }

  html {
    scroll-behavior: smooth;
    scroll-padding-top: var(--nav-offset);
    -webkit-text-size-adjust: 100%;
    background-color: var(--color-cream);
    min-height: 100%;
  }

  body {
    background: var(--color-cream);
    min-height: 100%;
    color: var(--color-ink);
    font-family: var(--font-body);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    overflow-x: hidden;
  }

  img, svg {
    max-width: 100%;
    display: block;
  }

  a {
    color: inherit;
  }

  button {
    font-family: inherit;
  }

  input, textarea, select {
    line-height: normal;
  }

  h1, h2, h3, h4 {
    font-family: var(--font-display);
    color: var(--color-ink);
    margin: 0;
  }

  p, figure {
    margin: 0;
  }

  blockquote {
    margin: 1em 40px;
  }

  :focus-visible {
    outline: 2px solid var(--color-coral);
    outline-offset: 3px;
  }
}

@layer components {
  .section {
    padding-block: clamp(56px, 8vw, 96px);
    padding-inline: var(--gutter);
  }

  .section--tight {
    padding-block: clamp(40px, 6vw, 64px);
  }

  .section--cream {
    background: var(--c-cream);
  }

  .section--sand {
    background: var(--c-sand);
  }

  .section--sage {
    background: var(--c-sage);
  }

  .section--forest {
    background: var(--c-forest);
  }

  .display-1 {
    letter-spacing: -.02em;
    font-size: clamp(40px, 6vw, 64px);
    font-weight: 300;
    line-height: 1.05;
  }

  .display-2 {
    letter-spacing: -.01em;
    font-size: clamp(32px, 5vw, 48px);
    font-weight: 300;
    line-height: 1.1;
  }

  .heading {
    letter-spacing: -.01em;
    font-size: clamp(28px, 4vw, 34px);
    font-weight: 300;
    line-height: 1.15;
  }

  .heading--lg {
    font-size: clamp(28px, 4.5vw, 40px);
    line-height: 1.12;
  }

  .heading--sm {
    font-size: clamp(26px, 3.5vw, 34px);
  }

  .lead {
    color: var(--c-moss);
    font-size: clamp(16px, 2vw, 18px);
    line-height: 1.6;
  }

  .text-coral {
    color: var(--c-coral);
  }

  .on-dark {
    color: var(--c-cream);
  }

  .on-dark-muted {
    color: #f5f2eac7;
  }

  .eyebrow {
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
    display: inline-flex;
  }

  .eyebrow:before {
    content: "";
    background: var(--c-coral);
    width: 30px;
    height: 3px;
    box-shadow: var(--glow-coral-sm);
    border-radius: 3px;
  }

  .eyebrow__label {
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--c-moss-light);
    white-space: nowrap;
    font-size: 12px;
    font-weight: 500;
  }

  .eyebrow--on-sage .eyebrow__label {
    color: var(--c-forest);
  }

  .eyebrow--on-dark .eyebrow__label {
    color: var(--c-coral);
  }

  .btn {
    cursor: pointer;
    border-radius: var(--radius-pill);
    transition: background var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out), transform var(--t-fast) var(--ease-out);
    border: 1.5px solid #0000;
    justify-content: center;
    align-items: center;
    padding: 14px 30px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    display: inline-flex;
  }

  .btn--sm {
    padding: 11px 24px;
    font-size: 14px;
  }

  .btn--xs {
    padding: 9px 18px;
    font-size: 13px;
  }

  .btn:active {
    transform: translateY(1px);
  }

  .btn--primary {
    background: var(--c-coral);
    color: var(--c-ink);
  }

  @media (hover: hover) and (pointer: fine) {
    .btn--primary:hover {
      background: var(--c-coral-bright);
      box-shadow: var(--glow-coral);
      transform: translateY(-1px);
    }
  }

  .btn--ghost {
    border-color: var(--c-forest);
    color: var(--c-ink);
    background: none;
  }

  .btn--ghost:hover {
    background: #2c3a2214;
  }

  .btn--dark {
    background: var(--c-forest);
    color: var(--c-cream);
  }

  .btn--dark:hover {
    background: var(--c-forest-light);
  }

  .btn--ghost-light {
    color: var(--c-cream);
    background: none;
    border-color: #f5f2ea66;
  }

  .btn--ghost-light:hover {
    border-color: var(--c-coral);
  }

  .social-btn {
    isolation: isolate;
    border-radius: var(--radius-pill);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    color: #fff8ed;
    min-height: 44px;
    transition: transform var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);
    background: #fff8ed1f;
    border: 1px solid #fff8ed47;
    align-items: center;
    gap: 9px;
    padding: 11px 18px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    display: inline-flex;
    position: relative;
    overflow: hidden;
  }

  .social-btn__icon {
    z-index: 1;
    fill: currentColor;
    width: 18px;
    height: 18px;
    position: relative;
  }

  .social-btn__label {
    z-index: 1;
    position: relative;
  }

  .social-btn:before {
    content: "";
    z-index: 0;
    opacity: 0;
    transition: opacity var(--t-fast) var(--ease-out);
    position: absolute;
    inset: 0;
  }

  .social-btn--ig:before {
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 62%, #4f5bd5 92%);
  }

  .social-btn--wa:before {
    background: linear-gradient(150deg, #25d366 0%, #128c7e 100%);
  }

  .social-btn--tt:before {
    background: linear-gradient(150deg, #25f4ee 0%, #0b0b0f 46%, #fe2c55 100%);
  }

  .social-btn:active {
    color: #fff;
    border-color: #0000;
    transform: scale(.97);
  }

  .social-btn:active:before {
    opacity: 1;
  }

  .rule {
    background: var(--c-coral);
    width: 40px;
    height: 3px;
    box-shadow: var(--glow-coral-sm);
    border-radius: 3px;
  }

  .neon-streak {
    background: var(--c-coral);
    pointer-events: none;
    border-radius: 4px;
    width: 4px;
    animation: 3.6s ease-in-out infinite bt-neon;
    position: absolute;
  }

  .scroll-cue {
    z-index: 3;
    border-radius: var(--radius-pill);
    width: 46px;
    height: 46px;
    color: var(--c-cream);
    cursor: pointer;
    transition: opacity var(--t-fast) ease, visibility var(--t-fast) ease, background var(--t-fast) ease, border-color var(--t-fast) ease;
    background: #f5f2ea24;
    border: 1px solid #f5f2ea6b;
    animation: 1.5s ease-in-out infinite bt-scroll-cue;
    position: absolute;
    bottom: clamp(22px, 4vw, 38px);
    left: 50%;
    transform: translateX(-50%);
    box-shadow: 0 14px 34px #1b24132e;
  }

  .scroll-cue:hover, .scroll-cue:focus-visible {
    background: #f5f2ea38;
    border-color: #f5f2eabd;
  }

  .scroll-cue.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .scroll-cue__arrow {
    border-bottom: 2px solid;
    border-right: 2px solid;
    width: 13px;
    height: 13px;
    position: absolute;
    top: 48%;
    left: 50%;
    transform: translate(-50%, -50%)rotate(45deg);
  }

  @keyframes bt-scroll-cue {
    0%, 100% {
      transform: translate(-50%);
    }

    50% {
      transform: translate(-50%, 8px);
    }
  }

  .card {
    background: var(--c-cream-card);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-card);
    overflow: hidden;
  }

  .card--interactive {
    transition: transform var(--t-slow) ease, box-shadow var(--t-slow) ease;
  }

  @media (hover: hover) and (pointer: fine) {
    .card--interactive:hover {
      box-shadow: var(--shadow-card-hover);
      transform: translateY(-6px);
    }
  }

  .product-card {
    border: 1px solid #dad3c2bd;
    flex-direction: column;
    display: flex;
  }

  .product-card__media {
    aspect-ratio: 1;
    background: var(--c-sage);
    background-image: radial-gradient(70% 70% at 52% 38%, #f5f2ea2e, #0000 62%);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 8px;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .product-card__media--wide {
    aspect-ratio: 4 / 3;
  }

  .product-card__media:before {
    content: "";
    background: var(--c-coral);
    border-radius: 3px;
    width: 3px;
    position: absolute;
    top: 16px;
    bottom: 16px;
    left: 20px;
    box-shadow: 0 0 14px #f4876b99, 0 0 26px #ff9a7a66;
  }

  .product-card__placeholder {
    font-family: var(--font-mono);
    letter-spacing: .04em;
    color: #f5f2ead1;
    font-size: 11px;
  }

  .product-card__code {
    color: #f5f2eaeb;
    font-family: var(--font-display);
    letter-spacing: .08em;
    font-size: clamp(34px, 5vw, 48px);
    font-weight: 300;
  }

  .product-card__note {
    color: #f5f2eaad;
    font-family: var(--font-mono);
    font-size: 11px;
  }

  .product-card__cat {
    font-family: var(--font-mono);
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--c-ink);
    border-radius: var(--radius-pill);
    background: #f5f2eab3;
    padding: 4px 10px;
    font-size: 10px;
    position: absolute;
    top: 14px;
    right: 14px;
  }

  .product-card__body {
    padding: 22px;
  }

  .product-card__title {
    margin-bottom: 4px;
    font-size: 18px;
    font-weight: 500;
  }

  .product-card__type {
    color: var(--c-moss-light);
    font-size: 13px;
  }

  .product-card__spec {
    font-family: var(--font-mono);
    color: var(--c-moss);
    margin: 12px 0 18px;
    font-size: 12px;
  }

  .product-card__row {
    border-top: 1px solid var(--c-border);
    justify-content: space-between;
    align-items: center;
    padding-top: 16px;
    display: flex;
  }

  .product-card__price {
    font-family: var(--font-mono);
    color: var(--c-ink);
    font-size: 19px;
  }

  .product-card--edibles .product-card__media {
    background-color: var(--c-sand);
    background-image: radial-gradient(70% 70% at 52% 38%, #f4876b2e, #0000 62%);
  }

  .product-card--edibles .product-card__code, .product-card--edibles .product-card__note {
    color: var(--c-forest);
  }

  .product-card--edibles .product-card__cat {
    background: #2c3a221a;
  }

  .product-card--vapes .product-card__media {
    background-color: var(--c-forest-light);
  }

  .product-card--concentrates .product-card__media {
    background-color: var(--c-forest);
    background-image: radial-gradient(70% 70% at 52% 38%, #f4876b33, #0000 62%);
  }

  .review-card__stars {
    font-family: var(--font-mono);
    letter-spacing: 2px;
    color: var(--c-gold);
    margin-bottom: 14px;
    font-size: 14px;
  }

  .review-card__quote {
    margin-bottom: 22px;
    font-size: 16px;
    line-height: 1.6;
  }

  .review-card__foot {
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    display: flex;
  }

  .review-card__author {
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 500;
    display: flex;
  }

  .review-card__avatar {
    border-radius: var(--radius-pill);
    background: var(--c-leaf);
    width: 34px;
    height: 34px;
    font-family: var(--font-mono);
    color: var(--c-cream);
    flex: none;
    justify-content: center;
    align-items: center;
    font-size: 11px;
    display: flex;
  }

  .review-card__source {
    font-family: var(--font-mono);
    color: var(--c-moss-light);
    font-size: 11px;
  }

  .review-card--glass {
    -webkit-backdrop-filter: blur(16px) saturate(120%);
    backdrop-filter: blur(16px) saturate(120%);
    transition: transform var(--t-slow) ease;
    background: #ffffff1f;
    border: 1px solid #ffffff40;
    border-radius: 22px;
    padding: 28px;
    box-shadow: 0 8px 32px #1b241333;
  }

  @media (hover: hover) and (pointer: fine) {
    .review-card--glass:hover {
      transform: translateY(-5px);
    }
  }

  .review-card--glass .review-card__quote {
    color: var(--c-cream);
  }

  .review-card--glass .review-card__author {
    color: #f5f2ead9;
  }

  .review-card--glass .review-card__source {
    color: #f5f2ea80;
  }

  .field {
    flex-direction: column;
    gap: 8px;
    display: flex;
  }

  .field__label {
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--c-moss-light);
    font-size: 12px;
    font-weight: 500;
  }

  .field__input, .field__textarea {
    font-family: var(--font-body);
    color: var(--c-ink);
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    transition: border-color var(--t-fast) ease, box-shadow var(--t-fast) ease;
    background: #fff;
    outline: none;
    padding: 13px 14px;
    font-size: 15px;
  }

  .field__textarea {
    resize: vertical;
  }

  .field__input:focus, .field__textarea:focus {
    border-color: var(--c-coral);
    box-shadow: 0 0 0 3px #f4876b2e;
  }

  .site-header {
    z-index: 200;
    padding: calc(14px + env(safe-area-inset-top, 0px)) 16px 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
  }

  .site-header__inner {
    pointer-events: auto;
    max-width: 1080px;
    margin-inline: auto;
  }

  .navbar {
    border-radius: var(--radius-pill);
    border: 1px solid #ffffff8c;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    height: 60px;
    padding: 0 12px 0 22px;
    display: flex;
    position: relative;
  }

  .navbar:before {
    content: "";
    border-radius: inherit;
    -webkit-backdrop-filter: blur(20px) saturate(180%) contrast(108%);
    backdrop-filter: blur(20px) saturate(180%) contrast(108%);
    pointer-events: none;
    z-index: -1;
    background: #fcfbf78c;
    position: absolute;
    inset: 0;
    box-shadow: 0 12px 36px #1b241329, 0 1px #f4876b2e, inset 0 1px #fff9;
  }

  .navbar:after {
    content: "";
    border-radius: inherit;
    pointer-events: none;
    z-index: -1;
    position: absolute;
    inset: 0;
    box-shadow: inset 2px 2px 5px -2px #ffffff80, inset -2px -2px 5px 2px #ffffff73, inset 0 -2px #fff3;
  }

  .navbar__brand {
    flex: none;
    align-items: center;
    display: flex;
  }

  .navbar__logo {
    width: auto;
    height: 56px;
  }

  .navbar__links {
    align-items: center;
    gap: 4px;
    display: flex;
  }

  .navbar__link {
    color: var(--c-ink);
    letter-spacing: .01em;
    border-radius: var(--radius-pill);
    transition: background .18s var(--ease-spring), color .18s var(--ease-spring), transform .18s var(--ease-spring), box-shadow .3s ease-in-out;
    padding: 8px 13px;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
  }

  .navbar__link:hover {
    color: var(--c-coral);
    background: #ffffff73;
    box-shadow: inset 2px 2px 5px -2px #ffffff8c, inset -2px -1px 5px #ffffff80, inset 0 -2px #fff3;
  }

  .navbar__link:active {
    transform: scale(.97);
  }

  .navbar__link[aria-current="page"] {
    color: var(--c-coral);
    background: #fff6;
  }

  .navbar__cta {
    flex: none;
  }

  .navbar__toggle {
    cursor: pointer;
    border-radius: var(--radius-pill);
    background: none;
    border: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 44px;
    height: 44px;
    display: none;
  }

  .navbar__toggle span {
    background: var(--c-ink);
    transform-origin: center;
    width: 22px;
    height: 2px;
    transition: transform .45s var(--ease-out), opacity .35s var(--ease-out);
    border-radius: 2px;
    display: block;
  }

  .navbar__toggle[aria-expanded="true"] span {
    transition: transform var(--t-fast) var(--ease-out), opacity var(--t-fast) var(--ease-out);
  }

  .navbar__toggle[aria-expanded="true"] span:first-child {
    transform: translateY(7px)rotate(45deg);
  }

  .navbar__toggle[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }

  .navbar__toggle[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-7px)rotate(-45deg);
  }

  .navbar__panel {
    border-radius: var(--radius-lg);
    pointer-events: none;
    transform-origin: top;
    visibility: hidden;
    max-height: 0;
    transition: max-height .56s var(--ease-out) .34s, border-color .34s var(--ease-out) .46s, box-shadow .34s var(--ease-out) .46s, transform .46s var(--ease-out) .34s, visibility 0s linear .92s;
    border: 1px solid #fff0;
    margin-top: 10px;
    padding: 12px 18px 20px;
    position: relative;
    overflow: hidden;
    transform: translateY(-10px);
    box-shadow: 0 12px 36px #1b241300, inset 0 1px #fff0;
  }

  .navbar__panel:before {
    content: "";
    border-radius: inherit;
    -webkit-backdrop-filter: blur() saturate();
    backdrop-filter: blur() saturate();
    pointer-events: none;
    z-index: -1;
    transition: background .34s var(--ease-out) .46s, -webkit-backdrop-filter .34s var(--ease-out) .46s, backdrop-filter .34s var(--ease-out) .46s;
    background: #fcfbf700;
    position: absolute;
    inset: 0;
  }

  .navbar__panel.is-open {
    pointer-events: auto;
    visibility: visible;
    max-height: 420px;
    transition: max-height .52s var(--ease-out), border-color var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out), visibility 0s;
    border-color: #ffffff8c;
    transform: translateY(0);
    box-shadow: 0 12px 36px #1b24132e, inset 0 1px #fff9;
  }

  .navbar__panel.is-open:before {
    -webkit-backdrop-filter: blur(20px) saturate(160%);
    backdrop-filter: blur(20px) saturate(160%);
    transition: background var(--t-base) var(--ease-out), -webkit-backdrop-filter var(--t-base) var(--ease-out), backdrop-filter var(--t-base) var(--ease-out);
    background: #fcfbf79e;
  }

  .navbar__panel nav {
    flex-direction: column;
    gap: 4px;
    display: flex;
  }

  .navbar__panel-link {
    color: var(--c-ink);
    opacity: 0;
    transition: opacity var(--t-base) var(--ease-out), transform .36s var(--ease-out), color var(--t-fast) ease;
    transition-delay: calc((4 - var(--i, 0)) * 55ms + 80ms);
    border-bottom: 1px solid #dad3c273;
    padding: 13px 4px;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    transform: translateY(-12px);
  }

  .navbar__panel-link:first-child {
    --i: 0;
  }

  .navbar__panel-link:nth-child(2) {
    --i: 1;
  }

  .navbar__panel-link:nth-child(3) {
    --i: 2;
  }

  .navbar__panel-link:nth-child(4) {
    --i: 3;
  }

  .navbar__panel-link:nth-child(5) {
    --i: 4;
  }

  .navbar__panel.is-open .navbar__panel-link {
    opacity: 1;
    transition-delay: calc(var(--i, 0) * 55ms + 80ms);
    transform: translateY(0);
  }

  .navbar__panel-link[aria-current="page"] {
    color: var(--c-coral);
  }

  .navbar__panel-cta {
    opacity: 0;
    transition: opacity var(--t-base) var(--ease-out), transform .36s var(--ease-out);
    margin-top: 16px;
    transition-delay: 0s;
    transform: translateY(-12px);
  }

  .navbar__panel.is-open .navbar__panel-cta {
    opacity: 1;
    transition-delay: .355s;
    transform: translateY(0);
  }

  @media (prefers-reduced-motion: reduce) {
    .navbar__toggle span, .navbar__panel, .navbar__panel:before, .navbar__panel-link, .navbar__panel-cta {
      transition: none;
    }
  }

  @media (max-width: 860px), (pointer: coarse) {
    .navbar__links, .navbar__cta {
      display: none;
    }

    .navbar__toggle {
      display: flex;
    }
  }

  .site-footer {
    background: var(--c-forest);
    color: var(--c-cream);
    padding: 80px var(--gutter) 36px;
  }

  .site-footer__grid {
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 48px;
    display: grid;
  }

  .site-footer__logo {
    width: auto;
    height: 60px;
    margin-bottom: 20px;
  }

  .site-footer__about {
    color: #f5f2ea9e;
    max-width: 260px;
    font-size: 14px;
    line-height: 1.7;
  }

  .site-footer__col-title {
    font-family: var(--font-body);
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--c-coral);
    margin-bottom: 6px;
    font-size: 12px;
    font-weight: 500;
  }

  .site-footer__col-rule {
    margin-bottom: 20px;
  }

  .site-footer__nav {
    flex-direction: column;
    gap: 12px;
    display: flex;
  }

  .site-footer__link {
    color: #f5f2eac7;
    transition: color var(--t-fast) ease;
    font-size: 14px;
    text-decoration: none;
  }

  .site-footer__link:hover {
    color: var(--c-coral);
  }

  .site-footer__link--static {
    cursor: default;
  }

  .site-footer__link--static:hover {
    color: #f5f2eac7;
  }

  .site-footer__contact {
    color: #f5f2eac7;
    flex-direction: column;
    gap: 12px;
    font-size: 14px;
    line-height: 1.5;
    display: flex;
  }

  .site-footer__contact .mono {
    font-family: var(--font-mono);
    font-size: 13px;
  }

  .site-footer__bottom {
    border-top: 1px solid #f5f2ea24;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-top: 56px;
    padding-top: 24px;
    display: flex;
  }

  .site-footer__legal, .site-footer__meta span {
    color: #f5f2ea73;
    font-size: 12px;
  }

  .site-footer__meta {
    gap: 24px;
    display: flex;
  }

  @media (max-width: 640px) {
    .site-footer {
      padding-top: 56px;
    }

    .site-footer__grid {
      grid-template-columns: 1fr 1fr;
      gap: 32px 24px;
    }

    .site-footer__grid > :first-child, .site-footer__grid > :last-child {
      grid-column: 1 / -1;
    }

    .site-footer__bottom {
      margin-top: 36px;
    }
  }

  .social {
    gap: 10px;
    display: flex;
  }

  .social__item {
    border-radius: var(--radius-pill);
    width: 38px;
    height: 38px;
    font-family: var(--font-mono);
    color: #f5f2ea99;
    transition: border-color var(--t-fast) ease, color var(--t-fast) ease, background var(--t-fast) ease;
    border: 1px solid #f5f2ea38;
    justify-content: center;
    align-items: center;
    font-size: 11px;
    text-decoration: none;
    display: flex;
  }

  .social__item:hover, .social__item:focus-visible {
    border-color: var(--c-coral);
    color: var(--c-cream);
    background: #f4876b1f;
    outline: none;
  }

  .social--light .social__item {
    border-color: var(--c-border);
    width: 40px;
    height: 40px;
    color: var(--c-moss-light);
  }

  @media (pointer: coarse) {
    .btn {
      min-height: 44px;
    }

    .filter-chip {
      align-items: center;
      min-height: 44px;
      display: inline-flex;
    }

    .social__item, .social--light .social__item {
      width: 44px;
      height: 44px;
    }
  }

  .map-guard__overlay {
    z-index: 2;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    background: none;
    border: 0;
    justify-content: center;
    align-items: flex-end;
    padding: 16px;
    display: flex;
    position: absolute;
    inset: 0;
  }

  .map-guard__hint {
    font-family: var(--font-mono);
    color: var(--c-ink);
    border: 1px solid var(--c-border);
    border-radius: var(--radius-pill);
    box-shadow: var(--shadow-soft);
    background: #fcfbf7eb;
    padding: 9px 16px;
    font-size: 12px;
  }

  body[data-page="home"], body[data-page="about"], body[data-page="contact"], body[data-page="locations"] {
    background-color: #98a16c;
  }

  body[data-page="products"] {
    background-color: #ede5da;
  }

  :is(html:has(body[data-page="home"]), html:has(body[data-page="about"]), html:has(body[data-page="contact"]), html:has(body[data-page="locations"]), html:has(body[data-page="products"])) {
    background-color: var(--c-forest);
  }

  .section-head {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
    margin-bottom: 44px;
    display: flex;
  }

  .section-head--center {
    text-align: center;
    justify-content: center;
    margin-bottom: 54px;
  }

  .section-head--stacked {
    display: block;
  }

  .section-head__title {
    max-width: 520px;
  }

  .card-grid {
    grid-template-columns: repeat(auto-fit, minmax(232px, 1fr));
    gap: 24px;
    display: grid;
  }

  .card-grid--wide {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  }

  .card-grid--fill {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  }

  .map-surface {
    background: var(--c-sage);
    background-image: repeating-linear-gradient(0deg, #ffffff0d 0 1px, #0000 1px 40px), repeating-linear-gradient(90deg, #ffffff0d 0 1px, #0000 1px 40px);
    position: relative;
  }

  .map-pin {
    border-radius: var(--radius-pill);
    background: var(--c-coral);
    width: 14px;
    height: 14px;
    position: absolute;
    box-shadow: 0 0 12px #f4876bb3, 0 0 0 5px #f4876b33;
  }

  .map-pin--ping {
    box-shadow: none;
    animation: 2.4s ease-out infinite bt-ping;
  }

  .map-tag {
    font-family: var(--font-mono);
    color: var(--c-ink);
    -webkit-backdrop-filter: blur(16px) saturate(120%);
    backdrop-filter: blur(16px) saturate(120%);
    background: #fcfbf78c;
    border: 1px solid #ffffff80;
    border-radius: 14px;
    padding: 10px 16px;
    font-size: 11px;
    position: absolute;
  }

  .hero {
    isolation: isolate;
    background: radial-gradient(80% 95% at 72% 42%, #f4876b29, #f4876b0f 40%, transparent 72%), radial-gradient(120% 70% at 72% -8%, #ffffff1f, transparent 55%), radial-gradient(48% 52% at 12% 18%, #cdd69c33, transparent 62%), radial-gradient(44% 50% at 88% 80%, #b0be702e, transparent 64%), radial-gradient(40% 44% at 34% 92%, #dee4b624, transparent 60%), radial-gradient(125% 115% at 46% 32%, #9ca86e 0%, var(--c-sage-deep) 52%, var(--c-sage-dark) 100%);
    min-height: 100dvh;
    position: relative;
    overflow: hidden;
  }

  .hero:before {
    content: "";
    pointer-events: none;
    opacity: .35;
    mix-blend-mode: overlay;
    background: url("/img/hero-grain.png") 0 0 / 180px 180px;
    position: absolute;
    inset: 0;
  }

  .hero__watermark {
    z-index: -1;
    opacity: .1;
    pointer-events: none;
    width: 460px;
    height: auto;
    position: absolute;
    bottom: -90px;
    left: -90px;
    transform: rotate(45deg);
  }

  .hero__grid {
    min-height: 100dvh;
    padding: calc(var(--nav-height) + 40px) 0 72px;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .82fr);
    align-items: center;
    gap: clamp(36px, 5vw, 64px);
    display: grid;
    position: relative;
  }

  .hero__copy {
    padding-left: 0;
  }

  .hero__copy .eyebrow {
    margin-left: 0;
  }

  .hero__title-wrap {
    gap: 22px;
    margin: 0 0 24px;
    display: flex;
  }

  .hero__title-bar {
    background: var(--c-coral);
    border-radius: 4px;
    flex: 0 0 4px;
    align-self: stretch;
    animation: 3.6s ease-in-out infinite bt-neon;
    box-shadow: 0 0 12px #f4876b61, 0 0 24px #ff9a7a33;
  }

  .hero .display-1 {
    color: #fff8ed;
    text-shadow: 0 16px 46px #1b24133d;
  }

  .hero .eyebrow--on-sage .eyebrow__label {
    color: #fff8eddb;
  }

  .hero .display-1 .text-coral {
    color: var(--c-coral-soft);
    text-shadow: 0 0 14px #ffb89e6b, 0 0 30px #ff9a7a3d;
  }

  .hero__lead {
    color: #fff8edc7;
    max-width: 480px;
    margin-bottom: 36px;
  }

  .hero__actions {
    flex-wrap: wrap;
    gap: 14px;
    display: flex;
  }

  .hero__trust {
    font-family: var(--font-mono);
    letter-spacing: .03em;
    color: #fff8edbd;
    flex-wrap: wrap;
    align-items: center;
    margin: 30px 0 0;
    padding: 0;
    font-size: 12px;
    list-style: none;
    display: flex;
  }

  .hero__trust li {
    white-space: nowrap;
  }

  .hero__trust li:not(:first-child):before {
    content: "·";
    color: #fff8ed6b;
    margin: 0 12px;
  }

  .hero__socials {
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 30px;
    display: none;
  }

  .hero__trust-rating {
    display: none;
  }

  .hero__trust-star {
    color: var(--c-gold);
  }

  @media (pointer: coarse), (max-width: 860px) {
    .hero__grid {
      grid-template-columns: 1fr;
    }

    .hero__figure {
      display: none;
    }

    .hero__socials {
      flex-wrap: nowrap;
      display: flex;
    }

    .hero__socials .social-btn {
      flex: 1 1 0;
      justify-content: center;
      min-width: 0;
      padding-inline: 10px;
      font-size: 12px;
    }

    .hero__socials .social-btn__icon {
      flex: 0 0 16px;
      width: 16px;
      height: 16px;
    }

    .hero__socials .social-btn__label {
      text-overflow: ellipsis;
      white-space: nowrap;
      min-width: 0;
      overflow: hidden;
    }

    .hero__trust-rating {
      display: block;
    }
  }

  .hero__figure {
    position: relative;
  }

  .hero__image {
    aspect-ratio: 4 / 5;
    border-radius: var(--radius-lg);
    --tilt-z: -3deg;
    max-height: min(680px, 72vh);
    transform: perspective(1000px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg)) rotateZ(var(--tilt-z));
    transition: transform .2s var(--ease-out), box-shadow var(--t-slow) var(--ease-out);
    background: url("/img/IMG_3699.jpg") center / cover no-repeat;
    position: relative;
    overflow: hidden;
    box-shadow: 0 20px 80px #f4876b33, 0 40px 120px #f4876b1a;
  }

  .hero__image:after {
    content: "";
    pointer-events: none;
    border-radius: inherit;
    opacity: 0;
    background: radial-gradient(circle at var(--tilt-glare-x, 50%) var(--tilt-glare-y, 50%), #ffffff47, transparent 46%);
    transition: opacity var(--t-fast) var(--ease-out);
    position: absolute;
    inset: 0;
  }

  .hero__image.is-tilting {
    box-shadow: 0 28px 90px #f4876b42, 0 50px 130px #f4876b24;
  }

  .hero__image.is-tilting:after {
    opacity: 1;
  }

  @media (max-width: 860px) {
    .hero__image {
      transform: none;
    }
  }

  .hero__social {
    -webkit-backdrop-filter: blur(16px) saturate(140%);
    backdrop-filter: blur(16px) saturate(140%);
    transform-origin: 0 100%;
    border-top: 2px solid #ffffffb3;
    border-right: 1px solid #ffffff8c;
    border-radius: 10% 13% 42% 0% / 10% 12% 75% 0%;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 12px;
    transition: bottom .8s ease-in-out, left .8s ease-in-out;
    display: flex;
    position: absolute;
    box-shadow: -6px 6px 22px #1b241338;
  }

  .hero__social--ig {
    width: 44%;
    height: 44%;
    bottom: -46%;
    left: -46%;
  }

  .hero__social--tiktok {
    width: 32%;
    height: 32%;
    transition-delay: .12s;
    bottom: -34%;
    left: -34%;
  }

  .hero__social--whatsapp {
    width: 20%;
    height: 20%;
    transition-delay: .24s;
    bottom: -22%;
    left: -22%;
  }

  .hero__social--ig {
    background: radial-gradient(circle at 30% 107%, #fdf497b8 0%, #fd5949ad 45%, #d6249fad 62%, #4f5bd5ad 92%);
  }

  .hero__social--tiktok {
    background: linear-gradient(135deg, #25f4ee99 0%, #1616188c 50%, #fe2c55a3 100%);
  }

  .hero__social--whatsapp {
    background: linear-gradient(135deg, #25d366bd 0%, #128c7eb3 100%);
  }

  .hero__figure:hover .hero__social, .hero__figure:focus-within .hero__social {
    bottom: -1px;
    left: -1px;
  }

  .hero__social-svg {
    fill: #fff;
    width: 22px;
    height: 22px;
    transition: filter .4s;
  }

  .hero__social:hover .hero__social-svg, .hero__social:focus-visible .hero__social-svg {
    filter: drop-shadow(0 0 6px #ffffffe6);
  }

  .hero__badge {
    -webkit-backdrop-filter: blur(16px) saturate(120%);
    backdrop-filter: blur(16px) saturate(120%);
    background: #fcfbf78c;
    border: 1px solid #ffffff80;
    border-radius: 18px;
    padding: 16px 20px;
    position: absolute;
    bottom: 22px;
    right: -14px;
    box-shadow: 0 8px 32px #1b24132e;
  }

  .hero__badge-score {
    font-family: var(--font-mono);
    color: var(--c-ink);
    font-size: 20px;
  }

  .hero__badge-score span {
    color: var(--c-gold);
  }

  .hero__badge-meta {
    color: var(--c-moss);
    margin-top: 2px;
    font-size: 12px;
  }

  .home-flow {
    background: radial-gradient(70% 120% at 0% 0%, #97a36a2e, transparent 62%), radial-gradient(70% 120% at 100% 0%, #f4876b1f, transparent 62%), var(--c-cream);
    position: relative;
    overflow: hidden;
  }

  .home-flow:before {
    content: "";
    opacity: .1;
    pointer-events: none;
    background: url("/img/hero-grain.png") 0 0 / 180px 180px;
    position: absolute;
    inset: 0;
  }

  .home-flow__inner {
    max-width: var(--container-text);
    grid-template-columns: minmax(0, 1fr) minmax(280px, .58fr);
    align-items: center;
    gap: clamp(28px, 5vw, 56px);
    margin-inline: auto;
    display: grid;
    position: relative;
  }

  .intro {
    max-width: 760px;
  }

  .intro__text {
    font-family: var(--font-display);
    letter-spacing: -.01em;
    font-size: clamp(22px, 3vw, 30px);
    font-weight: 300;
    line-height: 1.45;
  }

  .home-flow__stats {
    gap: 12px;
    display: grid;
  }

  .home-flow__stats div {
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-soft);
    background: #fcfbf7c7;
    border: 1px solid #dad3c2c7;
    padding: 18px 20px;
    position: relative;
    overflow: hidden;
  }

  .home-flow__stats div:after {
    content: "";
    border-radius: var(--radius-pill);
    background: radial-gradient(circle, #f4876b29, #0000 68%);
    width: 110px;
    height: 110px;
    position: absolute;
    bottom: -48px;
    right: -38px;
  }

  .home-flow__stats span {
    z-index: 1;
    color: var(--c-coral);
    font-family: var(--font-mono);
    margin-bottom: 6px;
    font-size: 11px;
    display: block;
    position: relative;
  }

  .home-flow__stats strong {
    z-index: 1;
    color: var(--c-forest);
    font-weight: 500;
    position: relative;
  }

  .home-featured {
    padding-top: clamp(34px, 5vw, 58px);
  }

  @media (max-width: 640px) {
    [data-carousel] {
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      margin-inline: calc(-1 * var(--gutter));
      padding-inline: var(--gutter);
      scroll-padding-inline: var(--gutter);
      scrollbar-width: none;
      gap: 16px;
      display: flex;
      overflow-x: auto;
    }

    [data-carousel]::-webkit-scrollbar {
      display: none;
    }

    [data-carousel] > * {
      scroll-snap-align: start;
      flex: 0 0 78%;
    }

    [data-carousel] > [data-reveal] {
      opacity: 1;
      transform: none;
    }
  }

  @media (any-pointer: coarse) and (min-width: 641px), (min-width: 641px) and (max-width: 860px) {
    [data-carousel-tablet] {
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      margin-inline: calc(-1 * var(--gutter));
      padding-inline: var(--gutter);
      scroll-padding-inline: var(--gutter);
      scrollbar-width: none;
      gap: 16px;
      display: flex;
      overflow-x: auto;
    }

    [data-carousel-tablet]::-webkit-scrollbar {
      display: none;
    }

    [data-carousel-tablet] > * {
      scroll-snap-align: start;
      flex: 0 0 46%;
    }

    [data-carousel-tablet] > [data-reveal] {
      opacity: 1;
      transform: none;
    }

    .reviews-carousel {
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      margin-inline: calc(-1 * var(--gutter));
      padding-inline: var(--gutter);
      scroll-padding-inline: var(--gutter);
      scrollbar-width: none;
      gap: 16px;
      display: flex;
      overflow-x: auto;
    }

    .reviews-carousel::-webkit-scrollbar {
      display: none;
    }

    .reviews-carousel > .review-card {
      scroll-snap-align: start;
      flex: 0 0 46%;
      margin: 0;
    }

    .reviews-carousel > [data-reveal] {
      opacity: 1;
      transform: none;
    }
  }

  @media (max-width: 640px) {
    .reviews-carousel {
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      margin-inline: calc(-1 * var(--gutter));
      padding-inline: var(--gutter);
      scroll-padding-inline: var(--gutter);
      scrollbar-width: none;
      gap: 16px;
      display: flex;
      overflow-x: auto;
    }

    .reviews-carousel::-webkit-scrollbar {
      display: none;
    }

    .reviews-carousel > .review-card {
      scroll-snap-align: start;
      flex: 0 0 90%;
      margin: 0;
    }

    .reviews-carousel > [data-reveal] {
      opacity: 1;
      transform: none;
    }
  }

  .home-locations {
    background: radial-gradient(80% 130% at 100% 0%, #f4876b24, transparent 64%), radial-gradient(70% 120% at 0% 100%, #97a36a29, transparent 62%), var(--c-sand);
    position: relative;
    overflow: hidden;
  }

  .home-locations:before {
    content: "";
    opacity: .1;
    pointer-events: none;
    background: url("/img/hero-grain.png") 0 0 / 180px 180px;
    position: absolute;
    inset: 0;
  }

  .home-locations > * {
    position: relative;
  }

  .values {
    position: relative;
    overflow: hidden;
  }

  .values:before {
    content: "";
    background: radial-gradient(100% 70% at 15% 0, #ffffff1f, #0000 55%);
    position: absolute;
    inset: 0;
  }

  .values__inner {
    max-width: 1100px;
    margin-inline: auto;
    position: relative;
  }

  .values .card-grid {
    flex-wrap: wrap;
    justify-content: center;
    display: flex;
  }

  .value-prop {
    text-align: center;
    flex: 280px;
    padding: 8px 12px;
  }

  .value-prop__icon {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    width: 60px;
    height: 60px;
    color: var(--c-coral);
    background: #fcfbf78c;
    border: 1px solid #ffffff80;
    border-radius: 18px;
    justify-content: center;
    align-items: center;
    margin: 0 auto 22px;
    display: flex;
  }

  .value-prop__icon svg {
    width: 28px;
    height: 28px;
  }

  .value-prop__icon svg.icon--lg {
    width: 35px;
    height: 35px;
  }

  .value-prop__title {
    margin-bottom: 10px;
    font-size: 19px;
    font-weight: 500;
  }

  .value-prop__body {
    color: var(--c-forest);
    max-width: 300px;
    margin-inline: auto;
    font-size: 14px;
    line-height: 1.65;
  }

  .reviews-band {
    padding: clamp(72px, 10vw, 120px) var(--gutter);
    background: linear-gradient(90deg, #2c3a22f5, #2c3a22e0 48%, #2c3a22b8), url("/img/weed-plant-wallpaper.avif") center right / cover no-repeat, var(--c-forest);
    position: relative;
    overflow: hidden;
  }

  .reviews-band:before {
    content: "";
    background-image: radial-gradient(70% 120% at 82% 20%, #f4876b2e, #0000 62%);
    position: absolute;
    inset: 0;
  }

  .reviews-band__streak {
    height: 120%;
    top: -10%;
    right: 12%;
    transform: rotate(-12deg);
  }

  .reviews-band__inner {
    max-width: 1140px;
    margin-inline: auto;
    position: relative;
  }

  .reviews-band__meta {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 40px;
    display: flex;
  }

  .reviews-band__meta span {
    border-radius: var(--radius-pill);
    color: #f5f2eac2;
    font-family: var(--font-mono);
    background: #f5f2ea14;
    border: 1px solid #f5f2ea3d;
    padding: 9px 13px;
    font-size: 12px;
  }

  .article-card__media {
    aspect-ratio: 16 / 10;
    background: var(--c-sand);
    background-image: radial-gradient(70% 80% at 50% 10%, #f4876b29, #0000 62%);
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .article-card__media span {
    font-family: var(--font-mono);
    color: var(--c-moss-light);
    font-size: 11px;
  }

  .article-card__media img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
  }

  .article-card__body {
    padding: 24px;
  }

  .article-card__tag {
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--c-leaf);
    font-size: 11px;
    font-weight: 500;
  }

  .article-card__title {
    margin: 12px 0 10px;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.3;
  }

  .article-card__snippet {
    color: var(--c-moss);
    margin-bottom: 16px;
    font-size: 14px;
    line-height: 1.6;
  }

  .article-card__more {
    color: var(--c-coral);
    font-size: 14px;
    font-weight: 500;
  }

  .location-cta__grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: center;
    gap: 48px;
    display: grid;
  }

  .location-cta__copy-lead {
    max-width: 420px;
    margin-bottom: 30px;
  }

  .location-cta__map {
    aspect-ratio: 16 / 11;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card-hover);
    justify-content: center;
    align-items: center;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .location-cta__map iframe {
    border: 0;
    width: 100%;
    height: 100%;
  }

  .location-cta__map > span {
    font-family: var(--font-mono);
    color: #f5f2eacc;
    font-size: 12px;
  }

  @media (max-width: 860px) {
    .home-flow__inner {
      grid-template-columns: 1fr;
    }
  }

  .page-hero {
    background: var(--c-sage);
    padding: clamp(72px, 10vw, 120px) var(--gutter);
    padding-top: calc(var(--nav-height) + clamp(72px, 10vw, 120px));
    position: relative;
    overflow: hidden;
  }

  .page-hero:before {
    content: "";
    background: radial-gradient(110% 80% at 85% 0, #ffffff29, #0000 60%);
    position: absolute;
    inset: 0;
  }

  .page-hero__inner {
    z-index: 1;
    max-width: var(--container);
    margin-inline: auto;
    position: relative;
  }

  .page-hero--compact {
    padding: clamp(56px, 8vw, 88px) var(--gutter);
    padding-top: calc(var(--nav-height) + clamp(56px, 8vw, 88px));
  }

  .page-hero--rich {
    isolation: isolate;
    background: radial-gradient(80% 95% at 72% 42%, #f4876b29, #f4876b0f 40%, transparent 72%), radial-gradient(120% 70% at 72% -8%, #ffffff1f, transparent 55%), radial-gradient(48% 52% at 12% 18%, #cdd69c33, transparent 62%), radial-gradient(44% 50% at 88% 80%, #b0be702e, transparent 64%), radial-gradient(40% 44% at 34% 92%, #dee4b624, transparent 60%), radial-gradient(125% 115% at 46% 32%, #9ca86e 0%, var(--c-sage-deep) 52%, var(--c-sage-dark) 100%);
  }

  .page-hero__strip {
    height: env(safe-area-inset-top, 0px);
    pointer-events: none;
    background: linear-gradient(90deg, #919f65 0%, #96a26a 25%, #9da470 50%, #9ca26f 75%, #969f6a 100%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    -webkit-mask-image: linear-gradient(#000 55%, #0000 100%);
    mask-image: linear-gradient(#000 55%, #0000 100%);
  }

  .page-hero--rich:after {
    content: "";
    pointer-events: none;
    opacity: .3;
    mix-blend-mode: overlay;
    background: url("/img/hero-grain.png") 0 0 / 180px 180px;
    position: absolute;
    inset: 0;
  }

  .page-hero__leaf {
    z-index: -1;
    opacity: .1;
    pointer-events: none;
    width: 460px;
    height: auto;
    position: absolute;
    bottom: -90px;
    right: -90px;
    transform: rotate(-45deg);
  }

  .about-hero {
    align-items: center;
    min-height: 100dvh;
    display: flex;
  }

  .about-hero__inner {
    grid-template-columns: minmax(0, .92fr) minmax(320px, .72fr);
    align-items: center;
    gap: clamp(34px, 7vw, 92px);
    display: grid;
  }

  .about-hero__copy {
    max-width: 700px;
  }

  .about-hero__copy .display-2 {
    color: var(--c-cream);
    text-shadow: 0 12px 40px #1b24132e;
    font-size: clamp(42px, 6.5vw, 72px);
    line-height: 1;
  }

  .about-hero__copy .eyebrow__label {
    color: var(--c-cream);
  }

  .about-hero__lead {
    color: #f5f2ead1;
    max-width: 620px;
    margin-top: 26px;
    font-size: clamp(18px, 2.2vw, 22px);
    line-height: 1.55;
  }

  .about-hero__markers {
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 30px;
    display: flex;
  }

  .about-hero__markers span {
    border-radius: var(--radius-pill);
    color: var(--c-cream);
    font-family: var(--font-mono);
    background: #f5f2ea1f;
    border: 1px solid #f5f2ea52;
    padding: 9px 13px;
    font-size: 12px;
  }

  .about-hero__visual {
    aspect-ratio: .86;
    border-radius: var(--radius-lg);
    --tilt-z: 2deg;
    width: min(100%, 430px);
    transform: perspective(900px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg)) rotateZ(var(--tilt-z));
    transform-style: preserve-3d;
    transition: transform .18s ease-out, box-shadow var(--t-slow) ease;
    will-change: transform;
    justify-self: end;
    position: relative;
    box-shadow: 0 28px 70px #1b24134d;
  }

  .about-hero__visual:before {
    content: "";
    border-radius: inherit;
    border: 1px solid #f5f2ea47;
    position: absolute;
    inset: 18px -18px -18px 18px;
  }

  .about-hero__visual:after {
    content: "";
    border-radius: inherit;
    pointer-events: none;
    opacity: 0;
    background: radial-gradient(circle at var(--tilt-glare-x, 50%) var(--tilt-glare-y, 50%), #ffffff3d, transparent 46%);
    transition: opacity var(--t-fast) ease;
    position: absolute;
    inset: 0;
  }

  .about-hero__visual.is-tilting {
    box-shadow: 0 34px 82px #1b241357;
  }

  .about-hero__visual.is-tilting:after {
    opacity: 1;
  }

  .about-hero__visual img {
    object-fit: cover;
    border-radius: inherit;
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
  }

  .about-hero__note {
    border-radius: var(--radius-md);
    max-width: 220px;
    box-shadow: var(--shadow-float);
    -webkit-backdrop-filter: blur(12px) saturate(130%);
    backdrop-filter: blur(12px) saturate(130%);
    background: #fcfbf7e0;
    padding: 16px 18px;
    position: absolute;
    bottom: 32px;
    left: -34px;
  }

  .about-hero__note span {
    color: var(--c-coral);
    font-family: var(--font-mono);
    text-transform: uppercase;
    letter-spacing: .14em;
    margin-bottom: 6px;
    font-size: 11px;
    display: block;
  }

  .about-hero__note strong {
    color: var(--c-forest);
    font-weight: 500;
    line-height: 1.25;
  }

  @media (pointer: coarse), (max-width: 860px) {
    .about-hero__inner {
      grid-template-columns: 1fr;
    }

    .about-hero__visual {
      display: none;
    }
  }

  .statement-grid {
    max-width: var(--container-text);
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 28px;
    margin-inline: auto;
    display: grid;
  }

  .statement-card {
    background: var(--c-cream-card);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card);
    transform: perspective(900px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
    transform-style: preserve-3d;
    transition: opacity .7s var(--ease-out), transform .18s ease-out, box-shadow var(--t-slow) ease;
    will-change: transform;
    padding: clamp(28px, 4vw, 44px);
    position: relative;
    overflow: hidden;
  }

  .statement-card[data-reveal]:not(.is-visible) {
    transform: translateY(20px);
  }

  .statement-card[data-tilt].is-visible {
    transform: perspective(900px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
  }

  .statement-card.is-tilting {
    box-shadow: var(--shadow-float);
  }

  .statement-card:before {
    content: "";
    border-radius: var(--radius-pill);
    background: radial-gradient(circle, #f4876b38, #0000 68%);
    width: 190px;
    height: 190px;
    position: absolute;
    bottom: -76px;
    right: -64px;
  }

  .statement-card > * {
    z-index: 1;
    position: relative;
  }

  .statement-card__kicker {
    color: var(--c-coral);
    font-family: var(--font-mono);
    letter-spacing: .16em;
    text-transform: uppercase;
    margin-top: 22px;
    font-size: 11px;
    display: inline-block;
  }

  .statement-card__title {
    margin: 24px 0 16px;
    font-size: clamp(22px, 3vw, 24px);
    font-weight: 400;
  }

  .statement-card__body {
    color: var(--c-moss);
    font-size: 16px;
    line-height: 1.7;
  }

  .statement-card__detail {
    border-top: 1px solid #dad3c2cc;
    align-items: center;
    gap: 14px;
    margin-top: 26px;
    padding-top: 20px;
    display: flex;
  }

  .statement-card__detail span {
    color: var(--c-coral);
    font-family: var(--font-mono);
    font-size: 12px;
  }

  .statement-card__detail strong {
    color: var(--c-forest);
    font-weight: 500;
  }

  .statement-card--dark {
    background: var(--c-forest);
    position: relative;
    overflow: hidden;
  }

  .statement-card--dark:after {
    content: "";
    background: var(--c-coral);
    width: 4px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    box-shadow: 0 0 12px #f4876b66;
  }

  .statement-card--dark .statement-card__title {
    color: var(--c-cream);
  }

  .statement-card--dark .statement-card__body {
    color: #f5f2eac7;
  }

  .statement-card--dark .statement-card__detail {
    border-top-color: #f5f2ea2e;
  }

  .statement-card--dark .statement-card__detail strong {
    color: var(--c-cream);
  }

  .feature-row {
    max-width: var(--container-text);
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: center;
    gap: clamp(32px, 5vw, 64px);
    margin-inline: auto;
    display: grid;
  }

  .feature-row__media {
    aspect-ratio: 4 / 5;
    box-shadow: var(--shadow-card-hover);
    background: var(--c-sage) center / cover no-repeat;
    transition: transform var(--t-slow) var(--ease-out), box-shadow var(--t-slow) ease;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
  }

  .feature-row__media:after {
    content: "";
    background: linear-gradient(#0000 45%, #1b241394);
    position: absolute;
    inset: 0;
  }

  .feature-row__title {
    font-family: var(--font-display);
    letter-spacing: -.015em;
    color: var(--c-ink);
    margin-bottom: 18px;
    font-size: clamp(30px, 3.6vw, 42px);
    font-weight: 300;
    line-height: 1.12;
  }

  @media (hover: hover) and (pointer: fine) {
    .feature-row:hover .feature-row__media {
      box-shadow: var(--shadow-float);
      transform: translateY(-4px);
    }
  }

  .feature-row__caption {
    z-index: 1;
    border-radius: var(--radius-pill);
    color: var(--c-forest);
    font-family: var(--font-mono);
    background: #f5f2eae0;
    padding: 9px 12px;
    font-size: 11px;
    position: absolute;
    bottom: 18px;
    left: 18px;
  }

  .feature-row__copy-lead {
    max-width: 440px;
  }

  .feature-row__rituals {
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
    display: flex;
  }

  .feature-row__rituals span {
    border-radius: var(--radius-pill);
    color: var(--c-forest);
    background: #6a984d14;
    border: 1px solid #6a984d3d;
    padding: 8px 12px;
    font-size: 13px;
  }

  @media (min-width: 760px) {
    .feature-row--reverse .feature-row__media {
      order: 2;
    }
  }

  .lifestyle-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 18px;
    display: grid;
  }

  .lifestyle-tile {
    aspect-ratio: 1;
    border-radius: var(--radius-md);
    background: var(--c-sage);
    transition: transform var(--t-slow) ease, box-shadow var(--t-slow) ease;
    background-position: center;
    background-size: cover;
    align-items: flex-end;
    padding: 16px;
    display: flex;
    position: relative;
    overflow: hidden;
    box-shadow: 0 14px 34px #0000001f;
  }

  .lifestyle-tile:after {
    content: "";
    background: linear-gradient(#1b241314, #1b2413c2);
    position: absolute;
    inset: 0;
  }

  @media (hover: hover) and (pointer: fine) {
    .lifestyle-tile:hover {
      transform: translateY(-5px);
      box-shadow: 0 20px 44px #0000002e;
    }
  }

  .lifestyle-tile--lounge {
    background-image: url("/img/IMG_3701.jpg");
  }

  .lifestyle-tile--flower {
    background-image: url("/img/IMG_3705.jpg");
  }

  .lifestyle-tile--counter {
    background-image: url("/img/IMG_3699.jpg");
  }

  .lifestyle-tile--quiet {
    background-image: url("/img/IMG_3702.jpg");
  }

  .lifestyle-tile span {
    z-index: 1;
    color: #f5f2eaeb;
    position: relative;
  }

  .lifestyle-tile strong {
    font-size: 15px;
    font-weight: 500;
    display: block;
  }

  .lifestyle-tile small {
    font-family: var(--font-mono);
    color: #f5f2eaad;
    margin-top: 4px;
    font-size: 11px;
    display: block;
  }

  .cta-band {
    background: radial-gradient(62% 120% at 88% 0%, #f5f2ea5c, transparent 62%), radial-gradient(70% 120% at 8% 100%, #2c3a222e, transparent 64%), var(--c-coral);
    padding: clamp(56px, 8vw, 96px) var(--gutter);
    position: relative;
    overflow: hidden;
  }

  .cta-band:before {
    content: "";
    opacity: .18;
    mix-blend-mode: multiply;
    background: url("/img/hero-grain.png") 0 0 / 180px 180px;
    position: absolute;
    inset: 0;
  }

  .cta-band__inner {
    text-align: center;
    max-width: 760px;
    margin-inline: auto;
    position: relative;
  }

  .cta-band .eyebrow {
    margin-bottom: 16px;
  }

  .cta-band .eyebrow__label {
    color: var(--c-ink);
  }

  .cta-band .eyebrow:before {
    background: var(--c-ink);
  }

  .cta-band__copy {
    color: #1b2413c7;
    max-width: 520px;
    margin: -10px auto 28px;
    font-size: 16px;
    line-height: 1.6;
  }

  .cta-band__actions {
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    display: flex;
  }

  .cta-band .btn--ghost {
    border-color: var(--c-ink);
  }

  .cta-band .btn--ghost:hover {
    background: #1b241314;
  }

  .manifesto {
    background: radial-gradient(80% 120% at 6% 0%, #ffffff1f, transparent 55%), radial-gradient(72% 120% at 100% 100%, #6c7b4680, transparent 60%), var(--c-sage);
    padding: clamp(72px, 11vw, 132px) var(--gutter);
    position: relative;
    overflow: hidden;
  }

  .manifesto:before {
    content: "";
    pointer-events: none;
    opacity: .16;
    mix-blend-mode: overlay;
    background: url("/img/hero-grain.png") 0 0 / 180px 180px;
    position: absolute;
    inset: 0;
  }

  .manifesto__inner {
    text-align: center;
    max-width: 1000px;
    margin-inline: auto;
    position: relative;
  }

  .manifesto__rule {
    background: var(--c-coral);
    width: 46px;
    height: 3px;
    box-shadow: var(--glow-coral-sm);
    border-radius: 3px;
    margin: 0 auto 30px;
    display: block;
  }

  .manifesto__quote {
    font-family: var(--font-display);
    letter-spacing: -.015em;
    color: #fff8ed;
    text-shadow: 0 12px 40px #1b24132e;
    margin: 0;
    font-size: clamp(27px, 4.4vw, 50px);
    font-weight: 300;
    line-height: 1.2;
  }

  .manifesto__quote .text-coral {
    color: var(--c-coral-soft);
    text-shadow: 0 0 22px #ffb89e66;
  }

  .manifesto__attr {
    font-family: var(--font-mono);
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #fff8edc2;
    margin-top: 30px;
    font-size: 12px;
  }

  .about-facts {
    max-width: var(--container-text);
    border: 1px solid var(--c-border);
    border-radius: var(--radius-lg);
    background: var(--c-cream-card);
    box-shadow: var(--shadow-card);
    grid-template-columns: repeat(4, 1fr);
    margin-inline: auto;
    display: grid;
    overflow: hidden;
  }

  .about-fact {
    text-align: center;
    border-left: 1px solid var(--c-border);
    padding: clamp(26px, 3.4vw, 40px) clamp(14px, 2vw, 26px);
  }

  .about-fact:first-child {
    border-left: 0;
  }

  .about-fact__num {
    font-family: var(--font-mono);
    color: var(--c-forest);
    font-size: clamp(28px, 4vw, 44px);
    font-weight: 500;
    line-height: 1;
    display: block;
  }

  .about-fact__num span {
    color: var(--c-coral);
  }

  .about-fact__label {
    color: var(--c-moss-light);
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.45;
    display: block;
  }

  @media (max-width: 720px) {
    .about-facts {
      grid-template-columns: repeat(2, 1fr);
    }

    .about-fact {
      border-top: 1px solid var(--c-border);
    }

    .about-fact:nth-child(-n+2) {
      border-top: 0;
    }

    .about-fact:nth-child(odd) {
      border-left: 0;
    }
  }

  .products-intro {
    min-height: 100dvh;
    padding: calc(var(--nav-height) + clamp(54px, 7vw, 82px)) var(--gutter) clamp(34px, 5vw, 58px);
    background: radial-gradient(62% 110% at 92% 0%, #f4876b2e, transparent 64%), radial-gradient(70% 120% at 0% 0%, #97a36a33, transparent 64%), var(--c-cream);
    align-items: center;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .products-intro:before {
    content: "";
    opacity: .12;
    pointer-events: none;
    background: url("/img/hero-grain.png") 0 0 / 180px 180px;
    position: absolute;
    inset: 0;
  }

  .products-intro__inner {
    max-width: var(--container);
    grid-template-columns: minmax(0, 1fr) minmax(320px, .74fr);
    align-items: end;
    gap: clamp(28px, 5vw, 64px);
    margin-inline: auto;
    display: grid;
    position: relative;
  }

  .products-intro__copy .display-2 {
    max-width: 720px;
    color: var(--c-forest);
    font-size: clamp(40px, 5.8vw, 68px);
    line-height: 1;
  }

  .products-intro__lead {
    max-width: 620px;
    margin-top: 22px;
    font-size: clamp(17px, 2vw, 20px);
  }

  .menu-highlights {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    display: grid;
  }

  .menu-highlight {
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-soft);
    background: #fcfbf7b8;
    border: 1px solid #dad3c2c7;
    padding: 18px;
    position: relative;
    overflow: hidden;
  }

  .menu-highlight:after {
    content: "";
    border-radius: var(--radius-pill);
    background: radial-gradient(circle, #f4876b2e, #0000 68%);
    width: 100px;
    height: 100px;
    position: absolute;
    bottom: -44px;
    right: -34px;
  }

  .menu-highlight__num {
    z-index: 1;
    color: var(--c-forest);
    font-family: var(--font-display);
    font-size: clamp(24px, 3vw, 32px);
    line-height: 1;
    display: block;
    position: relative;
  }

  .menu-highlight__label {
    z-index: 1;
    color: var(--c-moss-light);
    font-family: var(--font-mono);
    margin-top: 8px;
    font-size: 11px;
    display: block;
    position: relative;
  }

  @keyframes product-card-in {
    from {
      opacity: 0;
      transform: translateY(18px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .product-card--enter {
    animation: product-card-in .5s var(--ease-out) calc(var(--i, 0) * 55ms) backwards;
  }

  .products-catalog {
    padding: 0 var(--gutter) clamp(64px, 8vw, 104px);
  }

  .products-catalog [data-products-grid] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  @media (min-width: 820px) {
    .products-catalog [data-products-grid] {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 1120px) {
    .products-catalog [data-products-grid] {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  .products-toolbar {
    top: var(--nav-offset);
    z-index: 20;
    max-width: var(--container);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card);
    -webkit-backdrop-filter: blur(14px) saturate(130%);
    backdrop-filter: blur(14px) saturate(130%);
    background: #fcfbf7db;
    border: 1px solid #dad3c2d1;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin: 0 auto clamp(28px, 4vw, 42px);
    padding: 14px;
    display: flex;
    position: sticky;
  }

  .products-toolbar__label {
    color: var(--c-coral);
    font-family: var(--font-mono);
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 11px;
    display: block;
  }

  .products-toolbar strong {
    color: var(--c-forest);
    font-weight: 500;
  }

  .filter-bar__inner {
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    display: flex;
  }

  .filter-chip {
    font-family: var(--font-body);
    cursor: pointer;
    border-radius: var(--radius-pill);
    color: var(--c-moss);
    border: 1.5px solid var(--c-border);
    transition: color var(--t-fast) ease, background var(--t-fast) ease, border-color var(--t-fast) ease;
    background: #f5f2eab8;
    padding: 9px 20px;
    font-size: 14px;
    font-weight: 500;
  }

  .filter-chip:hover {
    border-color: var(--c-coral);
  }

  .filter-chip[aria-pressed="true"] {
    color: var(--c-ink);
    background: var(--c-coral);
    border-color: var(--c-coral);
  }

  .load-more-wrap {
    text-align: center;
    margin-top: 48px;
  }

  .load-more-wrap[hidden] {
    display: none;
  }

  @media (max-width: 860px) {
    .products-intro__inner, .menu-highlights {
      grid-template-columns: 1fr;
    }

    .products-toolbar {
      flex-direction: column;
      align-items: flex-start;
      position: relative;
      top: auto;
    }

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

  @media (max-width: 640px) {
    .products-catalog {
      padding-inline: 12px;
    }

    .products-catalog > .container {
      padding-inline: 0;
    }

    .products-catalog [data-products-grid] {
      gap: 10px;
    }

    .products-catalog .product-card__media--wide {
      aspect-ratio: 1;
    }

    .products-catalog .product-card__body {
      padding: 14px;
    }

    .products-catalog .product-card__title {
      font-size: 15px;
    }

    .products-catalog .product-card__type, .products-catalog .product-card__spec {
      font-size: 11px;
    }

    .products-catalog .product-card__row {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
    }

    .products-catalog .product-card__price {
      font-size: 16px;
    }
  }

  .locations-hero {
    align-items: center;
    min-height: 100dvh;
    display: flex;
  }

  .locations-hero__inner {
    grid-template-columns: 1fr;
    align-items: center;
    gap: clamp(34px, 7vw, 92px);
    display: grid;
  }

  .locations-hero__copy {
    max-width: 760px;
  }

  .locations-hero__copy .display-2 {
    color: var(--c-cream);
    text-shadow: 0 16px 46px #1b24133d;
    font-size: clamp(42px, 6.5vw, 72px);
    line-height: 1;
  }

  .locations-hero__copy .eyebrow__label {
    color: var(--c-cream);
  }

  .locations-hero__lead {
    color: #f5f2ead1;
    max-width: 640px;
    margin-top: 26px;
    font-size: clamp(18px, 2.2vw, 22px);
    line-height: 1.55;
  }

  .locations-hero__markers {
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 30px;
    display: flex;
  }

  .locations-hero__markers span {
    border-radius: var(--radius-pill);
    color: var(--c-cream);
    font-family: var(--font-mono);
    background: #f5f2ea1f;
    border: 1px solid #f5f2ea52;
    padding: 9px 13px;
    font-size: 12px;
  }

  .locations-section {
    position: relative;
  }

  .locations-layout {
    max-width: var(--container);
    grid-template-columns: minmax(340px, .92fr) minmax(360px, 1.08fr);
    align-items: stretch;
    gap: clamp(28px, 5vw, 56px);
    margin-inline: auto;
    display: grid;
  }

  .locations-map-card {
    border-radius: var(--radius-lg);
    background: var(--c-cream-card);
    box-shadow: var(--shadow-card-hover);
    flex-direction: column;
    display: flex;
    overflow: hidden;
  }

  .locations-map {
    background: var(--c-sage);
    flex: 1;
    min-height: 360px;
    overflow: hidden;
  }

  .locations-map iframe {
    border: 0;
    width: 100%;
    height: 100%;
  }

  .locations-map-card__footer {
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 20px;
    display: flex;
  }

  .locations-map-card__label {
    color: var(--c-coral);
    font-family: var(--font-mono);
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 11px;
    display: block;
  }

  .locations-map-card__footer strong {
    color: var(--c-forest);
    font-weight: 500;
  }

  .store-list {
    flex-direction: column;
    gap: 16px;
    display: flex;
  }

  .store-list__head {
    margin-bottom: 10px;
  }

  .store-list__head .heading {
    max-width: 520px;
  }

  .store-card {
    background: var(--c-cream-card);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-soft);
    transition: box-shadow var(--t-base) ease, transform var(--t-base) ease, border-color var(--t-base) ease;
    border: 1px solid #dad3c2b8;
    align-items: flex-start;
    gap: 18px;
    padding: clamp(22px, 3vw, 28px);
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .store-card:after {
    content: "";
    border-radius: var(--radius-pill);
    pointer-events: none;
    background: radial-gradient(circle, #f4876b29, #0000 68%);
    width: 180px;
    height: 180px;
    position: absolute;
    bottom: -78px;
    right: -60px;
  }

  @media (hover: hover) and (pointer: fine) {
    .store-card:hover {
      border-color: #f4876b61;
      transform: translateY(-3px);
      box-shadow: 0 16px 34px #1b24131f, 0 0 18px #f4876b38;
    }
  }

  .store-card__num {
    z-index: 1;
    background: var(--c-forest);
    width: 46px;
    height: 46px;
    font-family: var(--font-mono);
    color: var(--c-cream);
    border-radius: 12px;
    flex: none;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    display: flex;
    position: relative;
  }

  .store-card__body {
    z-index: 1;
    flex: 1;
    min-width: 0;
    position: relative;
  }

  .store-card__topline {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
    display: flex;
  }

  .store-card__name {
    color: var(--c-forest);
    font-size: clamp(19px, 2vw, 22px);
    font-weight: 500;
  }

  .store-card__tag {
    border-radius: var(--radius-pill);
    color: var(--c-leaf);
    font-family: var(--font-mono);
    background: #6a984d1a;
    padding: 6px 9px;
    font-size: 11px;
  }

  .store-card__addr {
    color: var(--c-moss-light);
    margin-bottom: 7px;
    font-size: 15px;
    line-height: 1.55;
  }

  .store-card__hours {
    font-family: var(--font-mono);
    color: var(--c-moss);
    margin-bottom: 16px;
    font-size: 12px;
  }

  .store-card__link {
    color: var(--c-coral);
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
  }

  .store-card__link:after {
    content: "";
    width: 8px;
    height: 8px;
    transition: transform var(--t-fast) ease;
    border-top: 1.5px solid;
    border-right: 1.5px solid;
    transform: rotate(45deg);
  }

  @media (hover: hover) and (pointer: fine) {
    .store-card__link:hover:after {
      transform: translateX(3px)rotate(45deg);
    }
  }

  @media (max-width: 860px), (pointer: coarse) {
    .locations-hero__inner {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 860px) {
    .locations-layout {
      grid-template-columns: 1fr;
    }

    .locations-map-card {
      position: relative;
      top: auto;
    }

    .locations-map {
      aspect-ratio: 16 / 12;
      flex: none;
      min-height: 0;
    }
  }

  .reviews-hero {
    min-height: 100dvh;
    padding: clamp(64px, 9vw, 104px) var(--gutter) clamp(56px, 8vw, 88px);
    padding-top: calc(var(--nav-height) + clamp(64px, 9vw, 104px));
    align-items: center;
    display: flex;
  }

  .reviews-hero__stats {
    flex-wrap: wrap;
    align-items: center;
    gap: 28px;
    margin-top: 24px;
    display: flex;
  }

  .reviews-hero__score {
    align-items: baseline;
    gap: 10px;
    display: flex;
  }

  .reviews-hero__score-num {
    font-family: var(--font-mono);
    color: var(--c-cream);
    font-size: 32px;
  }

  .reviews-hero__score-stars {
    font-family: var(--font-mono);
    letter-spacing: 1px;
    color: var(--c-gold);
    font-size: 16px;
  }

  .reviews-hero__count {
    color: #f5f2ea99;
    font-size: 14px;
  }

  .reviews-masonry-section {
    background: var(--c-sage);
    padding: clamp(48px, 7vw, 80px) var(--gutter) clamp(56px, 8vw, 96px);
    position: relative;
    overflow: hidden;
  }

  .reviews-masonry-section:before {
    content: "";
    background-image: radial-gradient(80% 90% at 85% 0, #f5f2ea1a, #0000 60%);
    position: absolute;
    inset: 0;
  }

  .reviews-masonry {
    max-width: var(--container);
    columns: 320px;
    column-gap: 24px;
    margin-inline: auto;
    position: relative;
  }

  .review-card--frost {
    break-inside: avoid;
    -webkit-backdrop-filter: blur(16px) saturate(120%);
    backdrop-filter: blur(16px) saturate(120%);
    transition: transform var(--t-slow) ease, box-shadow var(--t-slow) ease;
    background: #fcfbf78c;
    border: 1px solid #ffffff80;
    border-radius: 22px;
    margin-bottom: 24px;
    padding: 26px;
    box-shadow: 0 8px 32px #1b241324;
  }

  @media (hover: hover) and (pointer: fine) {
    .review-card--frost:hover {
      transform: translateY(-5px);
      box-shadow: 0 14px 38px #1b24132e;
    }
  }

  .contact-layout {
    max-width: var(--container-text);
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    align-items: stretch;
    gap: clamp(24px, 4vw, 48px);
    margin-inline: auto;
    display: grid;
  }

  .contact-info {
    background: var(--c-forest);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card-hover);
    color: var(--c-cream);
    padding: clamp(28px, 4vw, 44px);
    position: relative;
    overflow: hidden;
  }

  .contact-info:after {
    content: "";
    background: var(--c-coral);
    width: 4px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    box-shadow: 0 0 12px #f4876b66;
  }

  .contact-info .rule {
    margin-bottom: 22px;
  }

  .contact-info__title {
    font-family: var(--font-display);
    color: var(--c-cream);
    margin-bottom: 30px;
    font-size: clamp(22px, 3vw, 26px);
    font-weight: 400;
  }

  .contact-info__list {
    flex-direction: column;
    gap: 22px;
    margin: 0 0 32px;
    padding: 0;
    list-style: none;
    display: flex;
  }

  .contact-info__item {
    align-items: flex-start;
    gap: 16px;
    display: flex;
  }

  .contact-info__icon {
    width: 42px;
    height: 42px;
    color: var(--c-coral);
    background: #f4876b24;
    border: 1px solid #f4876b4d;
    border-radius: 12px;
    flex: none;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .contact-info__icon svg {
    width: 20px;
    height: 20px;
  }

  .contact-info__label {
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--c-coral);
    font-size: 11px;
    font-weight: 500;
  }

  .contact-info__value {
    color: #f5f2eae6;
    margin-top: 5px;
    font-size: 15px;
    line-height: 1.55;
  }

  .contact-info__value.mono {
    font-family: var(--font-mono);
  }

  .contact-form-card {
    background: var(--c-cream-card);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card);
    padding: clamp(24px, 4vw, 40px);
  }

  .contact-form-card__title {
    font-family: var(--font-display);
    margin-bottom: 22px;
    font-size: clamp(22px, 3vw, 26px);
    font-weight: 400;
  }

  .contact-form {
    flex-direction: column;
    gap: 20px;
    display: flex;
  }

  .contact-form__note {
    color: var(--c-moss-light);
    text-align: center;
    font-size: 12px;
  }

  .contact-form__success {
    text-align: center;
    padding: 40px 8px;
  }

  .contact-form__success[hidden] {
    display: none;
  }

  .contact-form__success-icon {
    border-radius: var(--radius-pill);
    background: var(--c-leaf);
    width: 56px;
    height: 56px;
    color: var(--c-cream);
    justify-content: center;
    align-items: center;
    margin: 0 auto 20px;
    font-size: 26px;
    display: flex;
  }

  .contact-form__success-title {
    margin-bottom: 8px;
    font-size: 22px;
    font-weight: 400;
  }

  .contact-form__success-text {
    color: var(--c-moss);
    font-size: 15px;
  }

  .contact-page-hero {
    align-items: center;
    min-height: 100dvh;
    display: flex;
  }

  .about-hero, .locations-hero, .contact-page-hero {
    min-height: 100dvh;
    padding-top: var(--nav-height);
    padding-bottom: 0;
  }

  .contact-hero {
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: clamp(34px, 6vw, 76px);
    display: grid;
  }

  .contact-hero__title {
    max-width: 640px;
    color: var(--c-cream);
    margin-bottom: 16px;
    font-size: clamp(46px, 7vw, 78px);
    line-height: 1;
  }

  .contact-hero__copy .eyebrow__label {
    color: var(--c-cream);
  }

  .contact-hero__lead {
    color: #f5f2ead1;
    max-width: 620px;
    font-size: clamp(18px, 2.2vw, 22px);
    line-height: 1.55;
  }

  .social-fan {
    isolation: isolate;
    grid-template-columns: repeat(3, minmax(132px, 1fr));
    justify-content: center;
    align-items: center;
    gap: 16px;
    display: grid;
  }

  .social-fan__card {
    z-index: 1;
    min-height: 322px;
    box-shadow: var(--shadow-float);
    transform: rotate(calc(var(--r) * 1deg));
    backface-visibility: hidden;
    will-change: transform;
    transition: transform .5s var(--ease-spring), box-shadow .35s var(--ease-out), border-color .35s var(--ease-out);
    background: radial-gradient(120% 90% at 50% 0, #ffffff75, #0000 62%), linear-gradient(145deg, #fcfbf7b8, #f5f2ea57);
    border: 1px solid #ffffff8c;
    border-radius: 22px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px;
    padding: 34px 18px;
    text-decoration: none;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .social-fan__card:after {
    content: "";
    z-index: 1;
    opacity: 0;
    pointer-events: none;
    transition: opacity .4s var(--ease-out);
    position: absolute;
    inset: 0;
  }

  .social-fan__card:before {
    content: "";
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(120deg, #ffffff6b, #0000 40%);
    position: absolute;
    inset: 0;
  }

  .social-fan__card > * {
    z-index: 3;
    position: relative;
  }

  .social-fan__card:hover, .social-fan__card:focus-visible {
    z-index: 4;
    border-color: #ffffffd9;
    outline: none;
    transform: rotate(0)translateY(-12px)scale(1.02);
    box-shadow: 0 30px 60px #1b241352;
  }

  .social-fan__card:hover:after, .social-fan__card:focus-visible:after {
    opacity: 1;
  }

  .social-fan__icon {
    border-radius: var(--radius-pill);
    width: 66px;
    height: 66px;
    transition: transform .5s var(--ease-spring);
    background: #ffffffeb;
    justify-content: center;
    align-items: center;
    display: flex;
    box-shadow: 0 6px 16px #1b24131f;
  }

  .social-fan__card:hover .social-fan__icon, .social-fan__card:focus-visible .social-fan__icon {
    transform: translateY(-2px)scale(1.07);
  }

  .social-fan__icon svg {
    width: 30px;
    height: 30px;
  }

  .social-fan__label {
    color: var(--c-ink);
    transition: color .3s var(--ease-out);
    font-size: 18px;
    font-weight: 600;
  }

  .social-fan__meta {
    color: #1b241399;
    max-width: 132px;
    font-family: var(--font-mono);
    text-align: center;
    transition: color .3s var(--ease-out);
    font-size: 11px;
    line-height: 1.4;
  }

  .social-fan__action {
    border-radius: var(--radius-pill);
    color: var(--c-ink);
    transition: background .3s var(--ease-out), color .3s var(--ease-out);
    background: #1b241314;
    align-items: center;
    gap: 7px;
    margin-top: 2px;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 500;
    display: inline-flex;
  }

  .social-fan__action:after {
    content: "";
    width: 7px;
    height: 7px;
    transition: transform var(--t-fast) var(--ease-out);
    border-top: 1.5px solid;
    border-right: 1.5px solid;
    transform: rotate(45deg);
  }

  .social-fan__card:hover .social-fan__action:after, .social-fan__card:focus-visible .social-fan__action:after {
    transform: translateX(3px)rotate(45deg);
  }

  .social-fan__card:hover .social-fan__label, .social-fan__card:focus-visible .social-fan__label, .social-fan__card:hover .social-fan__meta, .social-fan__card:focus-visible .social-fan__meta {
    color: #fff;
    text-shadow: 0 1px 6px #00000040;
  }

  .social-fan__card:hover .social-fan__action, .social-fan__card:focus-visible .social-fan__action {
    text-shadow: none;
    background: #fffffff0;
  }

  .social-fan__card--ig svg {
    fill: #e1306c;
  }

  .social-fan__card--wa svg {
    fill: #25d366;
  }

  .social-fan__card--tt svg {
    fill: var(--c-ink);
  }

  .social-fan__card--ig:after {
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 62%, #4f5bd5 92%);
  }

  .social-fan__card--wa:after {
    background: linear-gradient(150deg, #25d366 0%, #128c7e 100%);
  }

  .social-fan__card--tt:after {
    background: linear-gradient(150deg, #25f4ee 0%, #0b0b0f 46%, #fe2c55 100%);
  }

  .social-fan__card--ig:hover .social-fan__action, .social-fan__card--ig:focus-visible .social-fan__action {
    color: #c13584;
  }

  .social-fan__card--wa:hover .social-fan__action, .social-fan__card--wa:focus-visible .social-fan__action {
    color: #128c7e;
  }

  .social-fan__card--tt:hover .social-fan__action, .social-fan__card--tt:focus-visible .social-fan__action {
    color: #0b0b0f;
  }

  .social-fan__card--ig {
    --r: -7;
  }

  .social-fan__card--wa {
    --r: 0;
  }

  .social-fan__card--tt {
    --r: 7;
  }

  .social-fan__card:active {
    transform: rotate(0)scale(.99);
  }

  .social-fan__card:active:after {
    opacity: 1;
  }

  .social-fan__card:active .social-fan__label, .social-fan__card:active .social-fan__meta {
    color: #fff;
    text-shadow: 0 1px 6px #00000040;
  }

  @media (min-width: 861px) and (pointer: fine) {
    .social-fan {
      --fan-w: clamp(138px, 12.6vw, 166px);
      --fan-h: clamp(196px, 18vw, 246px);
      --fan-overlap: clamp(-48px, -3.4vw, -30px);
      --fan-open: clamp(-22px, -1.6vw, -8px);
      --fan-band: clamp(38px, 3.2vw, 46px);
      --fan-icon: clamp(40px, 3.6vw, 52px);
      --fan-radius: clamp(14px, 1.3vw, 18px);
      isolation: isolate;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: center;
      gap: 0;
      display: flex;
    }

    .social-fan__card {
      width: var(--fan-w);
      height: var(--fan-h);
      min-height: 0;
      margin: 0 var(--fan-overlap);
      padding: clamp(22px, 2.4vw, 32px) clamp(12px, 1.4vw, 18px) calc(var(--fan-band) + clamp(14px, 1.4vw, 20px));
      border-radius: var(--fan-radius);
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
      transform: rotate(calc(var(--r) * 1deg));
      transition: transform .5s var(--ease-spring), margin .5s var(--ease-spring), box-shadow .35s var(--ease-out), border-color .35s var(--ease-out);
      background: linear-gradient(#ffffff24, #0000);
      border: 1px solid #ffffff2e;
      flex-direction: column;
      justify-content: center;
      gap: clamp(12px, 1.4vw, 18px);
      position: relative;
      box-shadow: 0 25px 25px #00000040;
    }

    .social-fan:hover .social-fan__card, .social-fan:focus-within .social-fan__card {
      margin: 0 var(--fan-open);
      transform: rotate(0);
    }

    .social-fan:hover .social-fan__card:hover, .social-fan__card:focus-visible {
      z-index: 4;
      border-color: #ffffff8c;
      transform: rotate(0)translateY(-14px)scale(1.04);
      box-shadow: 0 30px 60px #00000057;
    }

    .social-fan__card--ig {
      --r: -16;
    }

    .social-fan__card--wa {
      --r: 0;
    }

    .social-fan__card--tt {
      --r: 16;
    }

    .social-fan__icon {
      width: auto;
      height: auto;
      box-shadow: none;
      background: none;
      border-radius: 0;
      flex: none;
    }

    .social-fan__icon svg {
      width: var(--fan-icon);
      height: var(--fan-icon);
    }

    .social-fan__card--ig svg, .social-fan__card--wa svg, .social-fan__card--tt svg {
      fill: #fff;
    }

    .social-fan__label {
      width: 100%;
      height: var(--fan-band);
      color: #fff;
      letter-spacing: .01em;
      white-space: nowrap;
      background: #ffffff0f;
      justify-content: center;
      align-items: center;
      margin: 0;
      font-size: clamp(14px, 1.15vw, 17px);
      font-weight: 600;
      display: flex;
      position: absolute;
      bottom: 0;
      left: 0;
    }

    .social-fan__card:hover .social-fan__label, .social-fan__card:focus-visible .social-fan__label {
      color: #fff;
      text-shadow: none;
      background: #ffffff29;
    }

    .social-fan__meta, .social-fan__action {
      display: none;
    }
  }

  @media (max-width: 860px), (pointer: coarse) {
    .contact-hero {
      grid-template-columns: 1fr;
    }

    .social-fan {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 6px;
      margin-top: 14px;
    }

    .social-fan__card {
      isolation: isolate;
      border-radius: var(--radius-pill);
      -webkit-backdrop-filter: blur(8px);
      backdrop-filter: blur(8px);
      color: #fff8ed;
      height: 44px;
      min-height: 0;
      box-shadow: none;
      transition: transform var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);
      background: #fff8ed1f;
      border-color: #fff8ed47;
      flex-direction: row;
      justify-content: center;
      gap: 5px;
      padding: 8px 6px;
      transform: none;
    }

    .social-fan__card:before {
      display: none;
    }

    .social-fan__card:after {
      z-index: 0;
      transition: opacity var(--t-fast) var(--ease-out);
    }

    .social-fan__card:hover:after, .social-fan__card:focus-visible:after {
      opacity: 0;
    }

    .social-fan__icon {
      width: 18px;
      height: 18px;
      box-shadow: none;
      background: none;
      flex: 0 0 18px;
    }

    .social-fan__card .social-fan__icon svg {
      fill: currentColor;
      width: 16px;
      height: 16px;
    }

    .social-fan__label {
      text-overflow: ellipsis;
      white-space: nowrap;
      color: currentColor;
      min-width: 0;
      font-size: 11px;
      font-weight: 500;
      line-height: 1;
      overflow: hidden;
    }

    .social-fan__card:hover .social-fan__icon, .social-fan__card:focus-visible .social-fan__icon {
      transform: none;
    }

    .social-fan__card:hover .social-fan__label, .social-fan__card:focus-visible .social-fan__label, .social-fan__card:active .social-fan__label {
      color: currentColor;
      text-shadow: none;
    }

    .social-fan__meta, .social-fan__action {
      display: none;
    }

    .social-fan__card:hover, .social-fan__card:focus-visible {
      box-shadow: none;
      color: #fff8ed;
      border-color: #fff8ed47;
      transform: none;
    }

    .social-fan__card:active {
      color: #fff;
      border-color: #0000;
      transform: scale(.97);
    }

    .social-fan__card:active:after {
      opacity: 1;
    }
  }
}

@layer utilities {
  .invisible {
    visibility: hidden;
  }

  .visible {
    visibility: visible;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .container {
    width: 100%;
  }

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

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

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

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .m-2312 {
    margin: calc(var(--spacing) * 2312);
  }

  .m-2627 {
    margin: calc(var(--spacing) * 2627);
  }

  .mt-1 {
    margin-top: var(--spacing);
  }

  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }

  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .h-full {
    height: 100%;
  }

  .w-full {
    width: 100%;
  }

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

  .flex-none {
    flex: none;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .cursor-pointer {
    cursor: pointer;
  }

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

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

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

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

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

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

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

  .font-mono {
    font-family: var(--font-mono);
  }

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

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

  .text-coral {
    color: var(--color-coral);
  }

  .text-forest {
    color: var(--color-forest);
  }

  .text-moss-light {
    color: var(--color-moss-light);
  }

  .shadow-card {
    --tw-shadow: 0 2px 6px var(--tw-shadow-color, #1b24130d), 0 12px 28px var(--tw-shadow-color, #1b241312);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
}

:root {
  --c-sage: var(--color-sage);
  --c-sage-deep: var(--color-sage-deep);
  --c-sage-dark: var(--color-sage-dark);
  --c-forest: var(--color-forest);
  --c-forest-light: var(--color-forest-light);
  --c-ink: var(--color-ink);
  --c-moss: var(--color-moss);
  --c-moss-light: var(--color-moss-light);
  --c-leaf: var(--color-leaf);
  --c-cream: var(--color-cream);
  --c-cream-card: var(--color-cream-card);
  --c-sand: var(--color-sand);
  --c-border: var(--color-border);
  --c-coral: var(--color-coral);
  --c-coral-bright: var(--color-coral-bright);
  --c-coral-soft: var(--color-coral-soft);
  --c-gold: var(--color-gold);
  --c-magenta: var(--color-magenta);
  --glow-coral: var(--shadow-glow-coral);
  --glow-coral-sm: var(--shadow-glow-coral-sm);
  --container: 1200px;
  --container-text: 1100px;
  --gutter: 24px;
  --nav-height: calc(74px + env(safe-area-inset-top, 0px));
  --nav-offset: calc(82px + env(safe-area-inset-top, 0px));
  --t-fast: .25s;
  --t-base: .3s;
  --t-slow: .4s;
}

@keyframes bt-neon {
  0%, 100% {
    opacity: .9;
    box-shadow: 0 0 10px #f4876b52, 0 0 20px #ff9a7a29;
  }

  50% {
    opacity: 1;
    box-shadow: 0 0 14px #f4876b75, 0 0 28px #ff9a7a3d;
  }
}

@keyframes bt-ping {
  0% {
    box-shadow: 0 0 12px #f4876bb3, 0 0 #f4876b59;
  }

  100% {
    box-shadow: 0 0 12px #f4876bb3, 0 0 0 14px #f4876b00;
  }
}

[data-reveal] {
  opacity: 0;
  transition: opacity .7s var(--ease-out),
    transform .7s var(--ease-out);
  transform: translateY(20px);
}

[data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *, :before, :after {
    transition: none !important;
    animation: none !important;
  }

  [data-reveal] {
    opacity: 1;
    transform: none;
  }
}

.container {
  width: 100%;
  max-width: var(--container);
  padding-inline: var(--gutter);
  margin-inline: auto;
}

.container--text {
  max-width: var(--container-text);
}

.visually-hidden {
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.leaflet-container {
  font-family: var(--font-body);
  background: var(--color-sage);
}

@media (min-width: 861px) {
  .locations-layout {
    --locator-h: min(680px, calc(100vh - var(--nav-offset) - 48px));
    align-items: start;
  }

  .locations-map-card, .store-list {
    height: var(--locator-h);
  }

  .store-list > .store-list__flow {
    flex: 1;
    min-height: 0;
  }
}

.locations-map-card {
  box-shadow: none;
  border: 1px solid #dad3c2b8;
}

.store-grid {
  gap: 16px;
  padding-block: 6px;
  display: grid;
}

@media (min-width: 861px) {
  .store-grid {
    scroll-snap-type: x proximity;
    grid-auto-columns: minmax(268px, 1fr);
    grid-auto-flow: column;
    height: 100%;
    padding-bottom: 4px;
    overflow: auto hidden;
  }

  .store-grid > * {
    scroll-snap-align: start;
  }

  .store-grid--all {
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 40px), #0000);
    mask-image: linear-gradient(to right, #000 calc(100% - 40px), #0000);
  }

  .store-grid--few {
    grid-template-rows: repeat(3, minmax(0, 1fr));
  }

  .store-grid--all {
    grid-template-rows: repeat(auto-fill, minmax(140px, 1fr));
  }
}

@media (max-width: 860px) {
  .store-grid--few {
    flex-direction: column;
    display: flex;
  }

  .store-grid--all {
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    margin-inline: calc(-1 * var(--gutter));
    padding-inline: var(--gutter);
    scroll-padding-inline: var(--gutter);
    scrollbar-width: none;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    grid-auto-columns: 68%;
    grid-auto-flow: column;
    overflow-x: auto;
  }

  .store-grid--all::-webkit-scrollbar {
    display: none;
  }

  .store-grid--all > * {
    scroll-snap-align: start;
  }

  .locations-map-card__footer {
    justify-content: space-around;
  }

  .locations-map-card__footer--selected {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .locations-map-card__footer--selected .locations-map-card__actions {
    justify-content: space-around;
  }
}

.btn--map {
  background: var(--color-azure);
  border-color: var(--color-azure);
  color: var(--color-cream);
}

.btn--map:hover {
  background: var(--color-azure-deep);
  border-color: var(--color-azure-deep);
}

.btn--map-go {
  background: var(--color-go);
  border-color: var(--color-go);
  height: 38px;
  color: var(--color-cream);
  align-items: center;
  gap: 8px;
  padding-block: 7px;
  display: inline-flex;
}

.btn--map-go:hover {
  background: var(--color-go-deep);
  border-color: var(--color-go-deep);
}

.btn--map-go__badge {
  background: var(--color-cream);
  border-radius: 3px;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  display: inline-flex;
  transform: rotate(45deg);
}

.btn--map-go__icon {
  width: 10px;
  height: 10px;
  transform: rotate(-45deg);
}

.btn--map-ghost {
  border-color: var(--color-azure);
  color: var(--color-azure);
  background: none;
}

.btn--map-ghost:hover {
  background: #1a73e814;
}

.store-card__num {
  background: var(--color-azure);
}

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

@media (hover: hover) and (pointer: fine) {
  .store-card:hover {
    border-color: var(--color-azure);
    box-shadow: none;
    transform: translateY(-3px);
  }

  .store-card:hover .store-card__cue {
    color: var(--color-azure);
  }
}

.store-card--selected, .store-card--selected:hover {
  border-color: var(--color-coral);
  outline: 1px solid var(--color-coral);
  outline-offset: -2px;
}

.store-card:after {
  display: none;
}

.store-card--compact {
  border-radius: var(--radius-md);
  gap: 12px;
  padding: 20px 18px;
}

.store-card--compact .store-card__num {
  border-radius: 10px;
  width: 34px;
  height: 34px;
  font-size: 11px;
}

.store-card--compact .store-card__topline {
  gap: 8px;
  margin-bottom: 6px;
}

.store-card--compact .store-card__name {
  font-size: 17px;
}

.store-card--compact .store-card__tag {
  padding: 4px 7px;
  font-size: 10px;
}

.store-card--compact .store-card__addr {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-bottom: 5px;
  font-size: 13.5px;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
}

.store-card--compact .store-card__tag {
  display: none;
}

.store-card--compact .store-card__topline {
  flex-wrap: nowrap;
  gap: 8px;
}

.store-card--compact .store-card__name {
  min-width: 0;
}

.store-card--compact .store-card__name > button {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  display: block;
  overflow: hidden;
}

.store-card--compact:has(.store-card__note) .store-card__addr {
  -webkit-line-clamp: 1;
}

.store-card--compact .store-card__hours {
  margin-bottom: 6px;
  font-size: 11px;
}

.store-card--compact .store-card__link {
  font-size: 13px;
}

.store-card--compact:after {
  width: 130px;
  height: 130px;
  bottom: -64px;
  right: -50px;
}

.leaflet-div-icon.store-pin-icon {
  background: none;
  border: 0;
}

.store-pin {
  background-color: var(--color-pin);
  transform-origin: 50% 100%;
  filter: drop-shadow(0 2px 3px #1b241366);
  width: 30px;
  height: 30px;
  transition: transform var(--t-fast) var(--ease-spring),
    background-color var(--t-fast) var(--ease-out),
    filter var(--t-fast) var(--ease-out);
  display: block;
  -webkit-mask: url("/img/location-pin.svg") center / contain no-repeat;
  mask: url("/img/location-pin.svg") center / contain no-repeat;
}

.store-pin--active {
  background-color: var(--color-pin-deep);
  filter: drop-shadow(0 5px 10px #ea43358c);
  transform: scale(1.35);
}

.user-pin {
  border-radius: var(--radius-pill);
  width: 16px;
  height: 16px;
  transition: transform var(--t-fast) var(--ease-spring);
  background: #1a73e8;
  border: 3px solid #fff;
  margin: 1px;
  display: block;
  box-shadow: 0 1px 4px #1b241373, 0 0 0 6px #1a73e838;
}

.store-card__cue {
  width: 15px;
  height: 15px;
  color: var(--color-border);
  transition: color var(--t-fast) var(--ease-out);
  flex: none;
}

.store-card__cue svg {
  width: 100%;
  height: 100%;
}

.store-card:hover .store-card__cue, .store-card--selected .store-card__cue {
  color: var(--color-coral);
}

.leaflet-control-attribution {
  color: var(--color-moss-light);
  opacity: .55;
  transition: opacity var(--t-fast) var(--ease-out);
  background: #fcfbf78c;
  border-radius: 6px 0 0;
  padding: 1px 6px;
  font-size: 9px;
  line-height: 1.5;
}

.leaflet-control-attribution:hover {
  opacity: 1;
  background: #fcfbf7eb;
}

.leaflet-control-attribution a {
  color: var(--color-moss-light);
  text-decoration: none;
}

.leaflet-control-attribution a:hover {
  text-decoration: underline;
}

.leaflet-bar a {
  color: var(--color-ink);
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__212idd5._.css.map*/