:root {
  --walkin-section-space: clamp(4.5rem, 9vw, 8.5rem);
  --walkin-header-height: 5.25rem;
  --walkin-line: var(--wp--preset--color--line, #d8cfbe);
  --walkin-canvas: var(--wp--preset--color--canvas, #f3eee4);
  --walkin-paper: var(--wp--preset--color--paper, #fbf8f1);
  --walkin-ink: var(--wp--preset--color--ink, #181714);
  --walkin-muted: var(--wp--preset--color--muted-ink, #625e55);
  --walkin-wine: var(--wp--preset--color--wine, #6e2833);
  --walkin-wine-dark: var(--wp--preset--color--wine-dark, #451820);
  --walkin-gold: var(--wp--preset--color--gold, #a88b57);
  --walkin-forest: var(--wp--preset--color--forest, #31463a);
  --walkin-site-radius: 0.75rem;
  --walkin-site-font: var(--wp--preset--font-family--sans);
  --walkin-site-shadow: 0 18px 55px rgba(38, 30, 22, 0.1);
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--walkin-header-height) + 1rem);
}

* {
  box-sizing: border-box;
}

body.walkin-site {
  font-family: var(--walkin-site-font);
  min-width: 0;
  overflow-x: clip;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body.walkin-site.walkin-brand--walkin {
  background-color: var(--walkin-canvas);
  color: var(--walkin-ink);
}

body.walkin-site.walkin-brand--miaoling {
  background-color: var(--miaoling-shadow, #4a160f);
  color: var(--miaoling-cream, #f2e5d5);
}

body.walkin-site :where(.wp-block-button__link, button, input, select, textarea) {
  border-radius: var(--walkin-site-radius);
}

body.walkin-site.walkin-has-brand-icon .walkin-site-header .walkin-brand-name::before,
body.walkin-site.walkin-has-brand-icon .walkin-miaoling-header .miaoling-brand-lockup::before {
  background-color: transparent;
  background-image: var(--walkin-brand-icon-image);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  border: 0;
  color: transparent;
  content: "";
}

.walkin-site img {
  height: auto;
  max-width: 100%;
}

.walkin-site :where(a, button, summary, input, textarea, select):focus-visible {
  outline: 3px solid var(--walkin-gold);
  outline-offset: 4px;
}

.walkin-site a {
  text-underline-offset: 0.2em;
}

.walkin-site a:hover {
  text-decoration: underline;
}

.walkin-main {
  min-height: 55vh;
}

.walkin-page-shell,
.walkin-index-shell {
  padding-block: var(--walkin-section-space);
}

.walkin-section {
  position: relative;
  padding-block: var(--walkin-section-space);
}

.walkin-section-index,
.walkin-eyebrow,
.walkin-card-number {
  color: var(--walkin-wine);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1.5;
  text-transform: uppercase;
}

.walkin-section-title {
  margin-top: 0.75rem;
  max-width: 17ch;
}

.walkin-section-heading {
  margin-bottom: clamp(2rem, 4vw, 3.5rem);
}

.walkin-section-heading > :last-child {
  color: var(--walkin-muted);
  max-width: 68ch;
}

.walkin-rule {
  border-color: var(--walkin-line);
  margin-block: 2rem;
  width: 5rem !important;
}

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

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
