/* Lux Thai website + client portal. Design 1 "Orchid Room" is the native look.
   Designs 2 and 3 restyle these same pages. Palettes arrive as --k-* tokens (html.kpal). */
:root {
  --lx-logo-img: url("data:image/png;base64,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");
  --lx-lotus-img: url("data:image/png;base64,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");
  --lx-bg: #fbf7f2; --lx-surface: #ffffff; --lx-surface-2: #f3ece4; --lx-ink: #2a1630; --lx-ink-2: #4a3350; --lx-muted: #6c5d6f;
  --lx-line: rgba(42, 22, 48, .14); --lx-accent: #680072; --lx-accent-text: #5a0063; --lx-accent-soft: #f3e6f4; --lx-on-accent: #ffffff;
  --lx-dark: #2b0a30; --lx-on-dark: #fbf7f2; --lx-gold: #a8864f; --lx-pop: #ce25df;
  --lx-font-display: "Cormorant Garamond", "Times New Roman", serif; --lx-font-body: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;
  --lx-display-weight: 500; --lx-display-track: -0.01em; --lx-radius: 14px; --lx-radius-lg: 22px; --lx-arch: 999px 999px 18px 18px;
  --lx-wrap: 1180px; --lx-shadow: 0 24px 60px -30px rgba(43, 10, 48, .35);
  color-scheme: light;
}
html.kpal {
  --lx-bg: var(--k-bg); --lx-surface: var(--k-surface); --lx-surface-2: var(--k-surface-2); --lx-ink: var(--k-ink); --lx-ink-2: var(--k-ink-2); --lx-muted: var(--k-muted);
  --lx-line: var(--k-line); --lx-accent: var(--k-accent); --lx-accent-text: var(--k-accent-text); --lx-accent-soft: var(--k-accent-soft); --lx-on-accent: var(--k-on-accent);
  --lx-dark: var(--k-dark); --lx-on-dark: var(--k-on-dark); --lx-gold: color-mix(in srgb, var(--k-accent) 45%, #a8864f); --lx-pop: var(--k-accent);
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition: none !important; } }
body { margin: 0; background: var(--lx-bg); color: var(--lx-ink); font: 400 17px/1.6 var(--lx-font-body); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--lx-accent-text); text-underline-offset: 3px; }
a:hover { color: var(--lx-accent); }
h1, h2, h3, h4 { font-family: var(--lx-font-display); font-weight: var(--lx-display-weight); letter-spacing: var(--lx-display-track); line-height: 1.08; margin: 0 0 .4em; color: var(--lx-ink); }
h1 { font-size: clamp(2.7rem, 6.4vw, 5.2rem); }
h2 { font-size: clamp(2.1rem, 4.2vw, 3.3rem); }
h3 { font-size: 1.55rem; }
h1 em, h2 em { font-style: italic; color: var(--lx-accent); }
p { margin: 0 0 1em; }
:focus-visible { outline: 2.5px solid var(--lx-accent); outline-offset: 3px; border-radius: 6px; }
.skip { position: absolute; left: -999px; top: 8px; z-index: 100; background: var(--lx-dark); color: var(--lx-on-dark); padding: 10px 16px; border-radius: 10px; }
.skip:focus { left: 12px; }
.wrap { max-width: var(--lx-wrap); margin: 0 auto; padding: 0 22px; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.kicker { font: 500 .78rem/1.2 var(--lx-font-body); letter-spacing: .22em; text-transform: uppercase; color: var(--lx-accent-text); margin: 0 0 14px; display: inline-flex; align-items: center; gap: 10px; }
.kicker::before { content: ""; width: 28px; height: 1px; background: var(--lx-gold); }
.lede { font-size: 1.15rem; color: var(--lx-ink-2); max-width: 60ch; }
.muted { color: var(--lx-muted); }
.small { font-size: .88rem; }
.center { text-align: center; }

/* buttons */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 24px; border-radius: 999px; border: 1.5px solid var(--lx-accent);
  background: var(--lx-accent); color: var(--lx-on-accent); font: 500 1rem/1 var(--lx-font-body); letter-spacing: .02em; text-decoration: none; cursor: pointer; transition: transform .15s, background .15s, box-shadow .15s; }
.btn:hover { color: var(--lx-on-accent); background: color-mix(in srgb, var(--lx-accent) 88%, #000); transform: translateY(-1px); box-shadow: 0 10px 24px -12px var(--lx-accent); }
.btn-line { background: transparent; color: var(--lx-accent-text); }
.btn-line:hover { background: var(--lx-accent-soft); color: var(--lx-accent-text); box-shadow: none; }
.btn-light { background: var(--lx-on-dark); color: var(--lx-dark); border-color: var(--lx-on-dark); }
.btn-light:hover { background: var(--lx-on-dark); color: var(--lx-dark); }
.btn-sm { min-height: 38px; padding: 8px 16px; font-size: .92rem; }
.btn[disabled], .btn[aria-disabled="true"] { opacity: .45; pointer-events: none; }
.link-arrow { font-weight: 500; text-decoration: none; }
.link-arrow::after { content: " →"; }

/* header */
.site-header { position: sticky; top: 0; z-index: 40; background: color-mix(in srgb, var(--lx-bg) 88%, transparent); backdrop-filter: saturate(1.4) blur(12px); -webkit-backdrop-filter: saturate(1.4) blur(12px); border-bottom: 1px solid var(--lx-line); }
.site-header .bar { display: flex; align-items: center; gap: 20px; min-height: 76px; }
.logo { display: inline-block; flex: none; width: 176px; aspect-ratio: 419 / 81; background: var(--lx-accent); -webkit-mask: var(--lx-logo-img) no-repeat left center / contain; mask: var(--lx-logo-img) no-repeat left center / contain; }
.logo-link { display: inline-flex; padding: 6px 0; }
.main-nav { display: flex; gap: 26px; margin-left: auto; }
.main-nav a { color: var(--lx-ink); text-decoration: none; font-size: .96rem; padding: 6px 0; border-bottom: 1.5px solid transparent; }
.main-nav a:hover, .main-nav a[aria-current="page"] { border-color: var(--lx-gold); color: var(--lx-ink); }
.head-actions { display: flex; align-items: center; gap: 14px; }
.head-phone { color: var(--lx-ink); text-decoration: none; font-size: .95rem; white-space: nowrap; }
.menu-btn { display: none; background: none; border: 1px solid var(--lx-line); border-radius: 999px; width: 46px; height: 46px; color: var(--lx-ink); cursor: pointer; }
.menu-btn span, .menu-btn span::before, .menu-btn span::after { display: block; width: 18px; height: 1.5px; background: currentColor; margin: auto; position: relative; content: ""; }
.menu-btn span::before { position: absolute; top: -6px; } .menu-btn span::after { position: absolute; top: 6px; }
.mnav { position: fixed; inset: 0; z-index: 60; background: var(--lx-bg); padding: calc(14px + env(safe-area-inset-top)) 22px calc(22px + env(safe-area-inset-bottom)); display: flex; flex-direction: column; gap: 6px; overflow-y: auto; overscroll-behavior: contain; }
/* 12 Oct 2026: the menu now sits on <body> (see site.js), with the page locked behind it */
html.mnav-open, html.mnav-open body { overflow: hidden; }
.mnav-links { display: flex; flex-direction: column; }
.mnav-foot { display: grid; gap: 10px; margin-top: auto; padding-top: 22px; }
.mnav-foot .btn { width: 100%; }
.mnav a.nl[aria-current="page"] { color: var(--lx-accent-text); }
.mnav[hidden] { display: none; }
.mnav .top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; }
.mnav a.nl { font: var(--lx-display-weight) 2rem/1.25 var(--lx-font-display); color: var(--lx-ink); text-decoration: none; padding: 8px 0; border-bottom: 1px solid var(--lx-line); }
.mnav .close { background: none; border: 1px solid var(--lx-line); border-radius: 999px; width: 46px; height: 46px; font-size: 22px; color: var(--lx-ink); cursor: pointer; }
.float-book { display: none; }
@media (max-width: 980px) {
  .main-nav, .head-phone { display: none; }
  .menu-btn { display: inline-grid; place-items: center; }
  .head-actions { margin-left: auto; }
  .float-book { display: inline-flex; position: fixed; right: 16px; bottom: 16px; z-index: 45; box-shadow: 0 14px 30px -10px rgba(0,0,0,.45); }
}
@media (max-width: 520px) { .logo { width: 140px; } .head-actions .btn { display: none; } }

/* hero */
.hero { position: relative; padding: 56px 0 72px; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 56px; align-items: center; }
.hero-copy .lede { margin-bottom: 28px; }
.hero-copy .actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-media { position: relative; margin: 0; }
.hero-media img { width: 100%; aspect-ratio: 4 / 4.6; object-fit: cover; border-radius: var(--lx-arch); box-shadow: var(--lx-shadow); }
.hero-media::before { content: ""; position: absolute; inset: -18px -18px auto auto; width: 72%; height: 72%; border: 1px solid var(--lx-gold); border-radius: var(--lx-arch); z-index: -1; opacity: .7; }
.hero-trust { display: flex; flex-wrap: wrap; gap: 10px 26px; margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--lx-line); font-size: .93rem; color: var(--lx-ink-2); }
.hero-trust b { color: var(--lx-ink); font-weight: 600; }
.stars { color: var(--lx-gold); letter-spacing: 2px; }
.hero-next { position: absolute; left: -30px; bottom: 34px; background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: 16px; padding: 14px 18px; box-shadow: var(--lx-shadow); min-width: 230px; max-width: 280px; }
.hero-next small { display: block; font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--lx-muted); }
.hero-next b { display: block; font: 600 1.05rem/1.3 var(--lx-font-body); margin: 4px 0 8px; color: var(--lx-ink); }
.hero-next a { font-size: .92rem; }
.dot-live { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #2f9e6b; margin-right: 6px; box-shadow: 0 0 0 4px color-mix(in srgb, #2f9e6b 22%, transparent); }
@media (max-width: 900px) {
  .hero { padding: 20px 0 48px; }
  .hero-copy h1 { font-size: clamp(2.5rem, 11vw, 3.4rem); }
  .hero-grid { grid-template-columns: 1fr; gap: 34px; }
  .hero-media { order: -1; max-width: 520px; }
  .hero-media img { aspect-ratio: 16 / 11; border-radius: 180px 180px 16px 16px; }
  .hero-next { left: 12px; bottom: -22px; }
  .hero-media::before { display: none; }
}

/* press strip */
.press { background: var(--lx-dark); color: var(--lx-on-dark); padding: 30px 0; }
.press .wrap { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.press q { font: italic var(--lx-display-weight) clamp(1.35rem, 2.4vw, 1.9rem)/1.3 var(--lx-font-display); flex: 1 1 420px; quotes: "“" "”"; }
.press cite { font-style: normal; font-size: .82rem; letter-spacing: .18em; text-transform: uppercase; color: color-mix(in srgb, var(--lx-on-dark) 70%, transparent); }

/* sections */
.section { padding: 96px 0; }
.section.tint { background: var(--lx-surface-2); }
.section.dark { background: var(--lx-dark); color: var(--lx-on-dark); }
.section.dark h2, .section.dark h3 { color: var(--lx-on-dark); }
.section.dark h2 em, .press em { color: color-mix(in srgb, var(--lx-gold) 60%, var(--lx-on-dark)); }
.section.dark .kicker { color: color-mix(in srgb, var(--lx-gold) 70%, var(--lx-on-dark)); }
.section.dark .lede, .section.dark .muted { color: color-mix(in srgb, var(--lx-on-dark) 78%, transparent); }
.sec-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; flex-wrap: wrap; margin-bottom: 40px; }
.sec-head h2 { margin: 0; }
@media (max-width: 700px) { .section { padding: 64px 0; } }

/* find your pressure */
.pressure-pick { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 8px 0 30px; }
.pbtn { text-align: left; background: var(--lx-surface); border: 1.5px solid var(--lx-line); border-radius: var(--lx-radius); padding: 16px 18px; cursor: pointer; font: inherit; color: var(--lx-ink); transition: border-color .15s, background .15s; }
.pbtn:hover { border-color: var(--lx-accent); }
.pbtn[aria-pressed="true"] { border-color: var(--lx-accent); background: var(--lx-accent-soft); }
.pbtn b { display: flex; align-items: center; gap: 10px; font-size: 1.05rem; font-weight: 600; }
.pbtn span { display: block; font-size: .86rem; color: var(--lx-muted); margin-top: 6px; line-height: 1.4; }
.pmeter { display: inline-flex; gap: 3px; }
.pmeter i { width: 7px; height: 7px; border-radius: 50%; background: var(--lx-line); display: block; }
.pmeter i.on { background: var(--lx-accent); }
@media (max-width: 820px) { .pressure-pick { grid-template-columns: 1fr 1fr; } }
.tgrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
@media (max-width: 1000px) { .tgrid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .tgrid { grid-template-columns: 1fr; } }
.tcard { position: relative; display: flex; flex-direction: column; background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: var(--lx-radius-lg); padding: 24px 24px 20px; transition: box-shadow .2s, transform .2s; }
.tcard:hover { box-shadow: var(--lx-shadow); transform: translateY(-2px); }
.tcard[hidden] { display: none; }
.tcard h3 { font-size: 1.6rem; margin-bottom: 8px; }
.tcard .meta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; font-size: .82rem; color: var(--lx-muted); margin-bottom: 10px; }
.tcard p { color: var(--lx-ink-2); font-size: .98rem; flex: 1; }
.badge { display: inline-flex; align-items: center; gap: 5px; font-size: .74rem; letter-spacing: .06em; text-transform: uppercase; font-weight: 600; padding: 4px 9px; border-radius: 999px; background: var(--lx-accent-soft); color: var(--lx-accent-text); }
.badge.gold { background: color-mix(in srgb, var(--lx-gold) 18%, var(--lx-surface)); color: color-mix(in srgb, var(--lx-gold) 60%, var(--lx-ink)); }
.durs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.dur { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 8px 12px; border: 1px solid var(--lx-line); border-radius: 12px; text-decoration: none; color: var(--lx-ink); min-width: 84px; background: var(--lx-bg); }
.dur small { font-size: .74rem; color: var(--lx-muted); }
.dur b { font-weight: 600; font-size: 1rem; }
.dur:hover { border-color: var(--lx-accent); color: var(--lx-ink); background: var(--lx-accent-soft); }
.tnone { padding: 28px; border: 1px dashed var(--lx-line); border-radius: var(--lx-radius); text-align: center; color: var(--lx-muted); }
.menu-note { margin-top: 22px; font-size: .9rem; color: var(--lx-muted); }

/* feature split (signature, suw) */
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.split.rev .split-media { order: 2; }
.split-media img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; border-radius: var(--lx-radius-lg); }
.split-media.arch img { border-radius: var(--lx-arch); aspect-ratio: 4 / 4.8; }
.price-line { display: flex; align-items: baseline; gap: 14px; margin: 18px 0 24px; font-size: 1.05rem; }
.price-line b { font: var(--lx-display-weight) 2.4rem/1 var(--lx-font-display); color: var(--lx-accent-text); }
@media (max-width: 860px) { .split { grid-template-columns: 1fr; gap: 30px; } .split.rev .split-media { order: 0; } }

/* packages */
.pk-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.pk { background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: var(--lx-radius); padding: 22px; display: flex; flex-direction: column; gap: 8px; }
.pk h3 { font-size: 1.35rem; margin: 0; }
.pk p { font-size: .93rem; color: var(--lx-ink-2); flex: 1; margin: 0; }
.pk .row { display: flex; justify-content: space-between; align-items: center; margin-top: 8px; }
.pk .row b { font-size: 1.2rem; }
@media (max-width: 980px) { .pk-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .pk-grid { grid-template-columns: 1fr; } }

/* health funds */
.hf { display: grid; grid-template-columns: 1.1fr .9fr; gap: 56px; align-items: center; }
.hf-card { background: color-mix(in srgb, var(--lx-on-dark) 7%, transparent); border: 1px solid color-mix(in srgb, var(--lx-on-dark) 18%, transparent); border-radius: var(--lx-radius-lg); padding: 28px; }
.hf-card ol { margin: 0; padding-left: 22px; display: grid; gap: 12px; }
.hf-card li::marker { color: var(--lx-gold); font-weight: 600; }
@media (max-width: 860px) { .hf { grid-template-columns: 1fr; gap: 28px; } }

/* team */
.team-row { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 26px; }
.tm { display: flex; align-items: center; gap: 12px; }
.av { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; font-weight: 600; color: #fff; background: var(--lx-accent); overflow: hidden; flex: none; }
.av img { width: 100%; height: 100%; object-fit: cover; }
.tm b { display: block; font-weight: 600; }
.tm span { font-size: .85rem; color: var(--lx-muted); }

/* reviews */
.rv-head { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.rv-score { font: var(--lx-display-weight) 4.4rem/1 var(--lx-font-display); color: var(--lx-accent-text); }
.rv-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 34px; }
.rv { margin: 0; background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: var(--lx-radius-lg); padding: 24px; display: flex; flex-direction: column; justify-content: space-between; gap: 14px; }
.rv blockquote { margin: 0; font: italic var(--lx-display-weight) 1.35rem/1.35 var(--lx-font-display); color: var(--lx-ink); }
.rv figcaption { font-size: .88rem; color: var(--lx-muted); }
.rv figcaption b { color: var(--lx-ink); font-weight: 600; }
@media (max-width: 900px) { .rv-grid { grid-template-columns: 1fr; } }

/* gallery */
.gal { display: grid; grid-template-columns: 1.3fr 1fr 1fr; grid-template-rows: 240px 240px; gap: 14px; }
.gal figure { margin: 0; overflow: hidden; border-radius: var(--lx-radius); position: relative; }
.gal figure:first-child { grid-row: span 2; }
.gal img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.gal figure:hover img { transform: scale(1.04); }
.gal figcaption { position: absolute; left: 12px; bottom: 12px; background: color-mix(in srgb, var(--lx-dark) 70%, transparent); color: var(--lx-on-dark); font-size: .78rem; padding: 4px 10px; border-radius: 999px; }
@media (max-width: 760px) { .gal { grid-template-columns: 1fr 1fr; grid-template-rows: 220px 160px 160px; } .gal figure:first-child { grid-column: span 2; grid-row: auto; } }

/* reasons */
.reasons { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--lx-line); border: 1px solid var(--lx-line); border-radius: var(--lx-radius-lg); overflow: hidden; }
.reason { background: var(--lx-bg); padding: 26px; }
.reason b { display: block; font: var(--lx-display-weight) 1.45rem/1.2 var(--lx-font-display); margin-bottom: 6px; }
.reason span { color: var(--lx-ink-2); font-size: .95rem; }
.reason i { display: block; width: 26px; height: 22px; margin-bottom: 14px; background: var(--lx-gold); -webkit-mask: var(--lx-lotus-img) no-repeat center / contain; mask: var(--lx-lotus-img) no-repeat center / contain; }
@media (max-width: 860px) { .reasons { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .reasons { grid-template-columns: 1fr; } }

/* tea room + voucher band */
.tea { display: grid; grid-template-columns: .9fr 1.1fr; gap: 0; background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: var(--lx-radius-lg); overflow: hidden; }
.tea img { width: 100%; height: 100%; object-fit: cover; min-height: 280px; }
.tea .in { padding: 40px; }
.inline-form { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
.inline-form input { flex: 1 1 220px; }
@media (max-width: 760px) { .tea { grid-template-columns: 1fr; } .tea img { min-height: 200px; max-height: 260px; } .tea .in { padding: 26px; } }
.vband { background: var(--lx-accent); color: var(--lx-on-accent); border-radius: var(--lx-radius-lg); padding: 44px; display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center; position: relative; overflow: hidden; }
.vband h2 { color: var(--lx-on-accent); margin: 0 0 8px; }
.vband p { margin: 0; color: color-mix(in srgb, var(--lx-on-accent) 85%, transparent); }
.vband::after { content: ""; position: absolute; right: -40px; top: -30px; width: 260px; height: 220px; background: color-mix(in srgb, var(--lx-on-accent) 12%, transparent); -webkit-mask: var(--lx-lotus-img) no-repeat center / contain; mask: var(--lx-lotus-img) no-repeat center / contain; pointer-events: none; }
.vband .btn { position: relative; z-index: 1; }
@media (max-width: 700px) { .vband { grid-template-columns: 1fr; padding: 30px; } }

/* visit */
.visit { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.hours { width: 100%; border-collapse: collapse; font-size: .98rem; }
.hours td { padding: 9px 0; border-bottom: 1px solid var(--lx-line); }
.hours td:last-child { text-align: right; }
.hours tr.today td { font-weight: 600; color: var(--lx-accent-text); }
.map-card { position: relative; border-radius: var(--lx-radius-lg); overflow: hidden; min-height: 300px; background: var(--lx-surface-2); border: 1px solid var(--lx-line); display: flex; flex-direction: column; justify-content: flex-end; padding: 26px;
  background-image: radial-gradient(circle at 62% 42%, var(--lx-accent) 0 7px, transparent 8px), radial-gradient(circle at 62% 42%, color-mix(in srgb, var(--lx-accent) 22%, transparent) 0 26px, transparent 27px),
  repeating-linear-gradient(28deg, transparent 0 46px, var(--lx-line) 46px 48px), repeating-linear-gradient(-62deg, transparent 0 70px, var(--lx-line) 70px 72px); }
.map-card .addr { background: var(--lx-surface); border-radius: 14px; padding: 16px 18px; box-shadow: var(--lx-shadow); max-width: 360px; }
@media (max-width: 860px) { .visit { grid-template-columns: 1fr; } }

/* footer */
.site-footer { background: var(--lx-dark); color: var(--lx-on-dark); padding: 64px 0 90px; margin-top: 0; }
.site-footer a { color: var(--lx-on-dark); text-decoration: none; opacity: .88; }
.site-footer a:hover { opacity: 1; text-decoration: underline; color: var(--lx-on-dark); }
.foot-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 32px; }
.foot-grid h4 { font: 500 .78rem/1 var(--lx-font-body); letter-spacing: .2em; text-transform: uppercase; color: color-mix(in srgb, var(--lx-on-dark) 60%, transparent); margin: 0 0 16px; }
.foot-grid ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; font-size: .95rem; }
.site-footer .logo { background: var(--lx-on-dark); width: 190px; }
.foot-base { display: flex; justify-content: space-between; gap: 18px; flex-wrap: wrap; margin-top: 44px; padding-top: 22px; border-top: 1px solid color-mix(in srgb, var(--lx-on-dark) 16%, transparent); font-size: .82rem; color: color-mix(in srgb, var(--lx-on-dark) 65%, transparent); }
@media (max-width: 860px) { .foot-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .foot-grid { grid-template-columns: 1fr; } }

/* forms */
label { display: block; font-size: .88rem; font-weight: 500; margin: 0 0 6px; color: var(--lx-ink); }
input, select, textarea { width: 100%; font: inherit; font-size: 1rem; color: var(--lx-ink); background: var(--lx-surface); border: 1.5px solid var(--lx-line); border-radius: 12px; padding: 12px 14px; min-height: 48px; }
textarea { min-height: 96px; resize: vertical; }
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--lx-accent); box-shadow: 0 0 0 3px var(--lx-accent-soft); }
.field { margin-bottom: 16px; }
.field .hint { font-size: .82rem; color: var(--lx-muted); margin-top: 5px; }
.grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
@media (max-width: 560px) { .grid2 { grid-template-columns: 1fr; } }
.check { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; font-size: .95rem; }
.check input { width: 20px; height: 20px; min-height: 0; margin-top: 3px; accent-color: var(--lx-accent); flex: none; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 999px; border: 1.5px solid var(--lx-line); background: var(--lx-surface); color: var(--lx-ink); font: inherit; font-size: .92rem; cursor: pointer; }
.chip[aria-pressed="true"], .chip.on { border-color: var(--lx-accent); background: var(--lx-accent-soft); color: var(--lx-accent-text); }

/* page head (inner pages) */
.page-head { padding: 54px 0 30px; }
.page-head h1 { font-size: clamp(2.4rem, 5vw, 3.8rem); }
.crumbs { font-size: .88rem; color: var(--lx-muted); margin-bottom: 14px; }
.crumbs a { color: var(--lx-muted); }

/* booking */
.book-wrap { display: grid; grid-template-columns: 1fr 340px; gap: 40px; align-items: start; padding-bottom: 90px; }
@media (max-width: 960px) { .book-wrap { grid-template-columns: 1fr; } }
.steps { display: flex; gap: 6px; list-style: none; padding: 0; margin: 0 0 26px; flex-wrap: wrap; }
.steps li { font-size: .82rem; padding: 6px 12px; border-radius: 999px; background: var(--lx-surface-2); color: var(--lx-muted); }
.steps li.on { background: var(--lx-accent); color: var(--lx-on-accent); }
.steps li.done { background: var(--lx-accent-soft); color: var(--lx-accent-text); }
.panel { background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: var(--lx-radius-lg); padding: 28px; }
.panel h2 { font-size: 2rem; }
.opt-list { display: grid; gap: 10px; }
.opt { display: flex; justify-content: space-between; align-items: center; gap: 16px; text-align: left; width: 100%; background: var(--lx-bg); border: 1.5px solid var(--lx-line); border-radius: 14px; padding: 16px 18px; cursor: pointer; font: inherit; color: var(--lx-ink); }
.opt:hover { border-color: var(--lx-accent); }
.opt[aria-pressed="true"] { border-color: var(--lx-accent); background: var(--lx-accent-soft); }
.opt b { font-weight: 600; display: block; }
.opt small { color: var(--lx-muted); display: block; font-size: .86rem; margin-top: 2px; }
.opt .p { font-weight: 600; white-space: nowrap; }
.cat-title { font: 500 .78rem/1 var(--lx-font-body); letter-spacing: .2em; text-transform: uppercase; color: var(--lx-muted); margin: 22px 0 10px; }
.days { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; }
.day { flex: none; width: 70px; text-align: center; background: var(--lx-bg); border: 1.5px solid var(--lx-line); border-radius: 14px; padding: 10px 4px; cursor: pointer; font: inherit; color: var(--lx-ink); scroll-snap-align: start; }
.day small { display: block; font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; color: var(--lx-muted); }
.day b { display: block; font-size: 1.3rem; font-weight: 600; }
.day[aria-pressed="true"] { background: var(--lx-accent); color: var(--lx-on-accent); border-color: var(--lx-accent); }
.day[aria-pressed="true"] small { color: inherit; opacity: .8; }
.day:disabled { opacity: .4; cursor: not-allowed; }
.slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 8px; margin-top: 16px; }
.slot { padding: 11px 6px; border: 1.5px solid var(--lx-line); border-radius: 12px; background: var(--lx-bg); cursor: pointer; font: inherit; font-size: .95rem; color: var(--lx-ink); }
.slot:hover { border-color: var(--lx-accent); }
.slot[aria-pressed="true"] { background: var(--lx-accent); color: var(--lx-on-accent); border-color: var(--lx-accent); }
.slot-group { font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--lx-muted); margin: 18px 0 0; grid-column: 1 / -1; }
.summary { position: sticky; top: 100px; }
.summary .line { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--lx-line); font-size: .95rem; }
.summary .line span:first-child { color: var(--lx-muted); }
.summary .tot { font-weight: 600; font-size: 1.1rem; border: 0; }
.nav-btns { display: flex; justify-content: space-between; gap: 12px; margin-top: 24px; flex-wrap: wrap; }
.done-card { text-align: center; padding: 40px 28px; }
.done-card .tick { width: 72px; height: 72px; border-radius: 50%; background: var(--lx-accent-soft); color: var(--lx-accent); display: grid; place-items: center; margin: 0 auto 18px; font-size: 34px; }
.notice { padding: 14px 16px; border-radius: 12px; background: var(--lx-accent-soft); color: var(--lx-accent-text); font-size: .93rem; margin: 14px 0; }
.notice.warn { background: color-mix(in srgb, #c9831f 14%, var(--lx-surface)); color: color-mix(in srgb, #8a5a12 80%, var(--lx-ink)); }

/* vouchers */
.vcard { aspect-ratio: 1.6 / 1; border-radius: 20px; background: var(--lx-dark); color: var(--lx-on-dark); padding: 26px; display: flex; flex-direction: column; justify-content: space-between; position: relative; overflow: hidden; box-shadow: var(--lx-shadow); }
.vcard::after { content: ""; position: absolute; right: -30px; bottom: -40px; width: 70%; height: 90%; background: color-mix(in srgb, var(--lx-gold) 55%, transparent); -webkit-mask: var(--lx-lotus-img) no-repeat center / contain; mask: var(--lx-lotus-img) no-repeat center / contain; opacity: .5; }
.vcard .logo { background: var(--lx-on-dark); width: 150px; }
.vcard .amt { font: var(--lx-display-weight) 3rem/1 var(--lx-font-display); }
.vcard .to { font-size: .95rem; opacity: .9; position: relative; z-index: 1; }
.amts { display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 10px; }

/* portal */
.portal { display: grid; grid-template-columns: 240px 1fr; gap: 36px; padding: 36px 0 90px; align-items: start; }
.ptabs { display: grid; gap: 4px; position: sticky; top: 100px; }
.ptabs button { text-align: left; background: none; border: 0; border-radius: 12px; padding: 12px 14px; font: inherit; color: var(--lx-ink); cursor: pointer; display: flex; justify-content: space-between; }
.ptabs button[aria-selected="true"] { background: var(--lx-accent-soft); color: var(--lx-accent-text); font-weight: 600; }
.ptabs .n { font-size: .8rem; background: var(--lx-accent); color: var(--lx-on-accent); border-radius: 999px; padding: 1px 8px; }
@media (max-width: 860px) { .portal { grid-template-columns: 1fr; } .ptabs { position: static; display: flex; overflow-x: auto; } .ptabs button { white-space: nowrap; } }
.bk { display: grid; grid-template-columns: 76px 1fr auto; gap: 18px; align-items: center; padding: 18px; background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: 16px; margin-bottom: 12px; }
.bk .date { text-align: center; background: var(--lx-accent-soft); color: var(--lx-accent-text); border-radius: 12px; padding: 8px 4px; }
.bk .date small { display: block; font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; }
.bk .date b { display: block; font-size: 1.5rem; line-height: 1.1; }
.bk h3 { font-family: var(--lx-font-body); font-size: 1.05rem; font-weight: 600; margin: 0 0 2px; }
.bk .acts { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
@media (max-width: 620px) { .bk { grid-template-columns: 64px 1fr; } .bk .acts { grid-column: 1 / -1; justify-content: flex-start; } }
.body-map { display: flex; flex-wrap: wrap; gap: 8px; }
.card-soft { background: var(--lx-surface); border: 1px solid var(--lx-line); border-radius: 16px; padding: 22px; margin-bottom: 16px; }
.empty-state { text-align: center; padding: 36px 20px; border: 1px dashed var(--lx-line); border-radius: 16px; color: var(--lx-muted); }
.empty-state b { display: block; color: var(--lx-ink); font-size: 1.1rem; margin-bottom: 6px; }
.signin { max-width: 460px; margin: 40px auto 90px; }

/* toast + modal (shared with the portal) */
.toasts { position: fixed; top: 16px; right: 16px; z-index: 200; display: grid; gap: 8px; max-width: min(380px, calc(100vw - 32px)); }
.toast { background: var(--lx-dark); color: var(--lx-on-dark); padding: 12px 14px 12px 16px; border-radius: 12px; box-shadow: 0 14px 36px -12px rgba(0,0,0,.5); display: flex; gap: 12px; align-items: center; justify-content: space-between; font-size: .95rem; animation: tin .2s ease-out; }
.toast button { background: none; border: 1px solid color-mix(in srgb, var(--lx-on-dark) 40%, transparent); color: var(--lx-on-dark); border-radius: 999px; padding: 4px 12px; cursor: pointer; font: inherit; font-size: .85rem; }
@keyframes tin { from { opacity: 0; transform: translateY(-6px); } }
.mback { position: fixed; inset: 0; z-index: 150; background: rgba(20, 8, 24, .45); display: grid; place-items: center; padding: 16px; }
.mbox { position: relative; background: var(--lx-surface); color: var(--lx-ink); border-radius: 20px; padding: 26px; width: min(560px, 100%); max-height: calc(100vh - 32px); overflow: auto; box-shadow: 0 40px 80px -30px rgba(0,0,0,.5); }
.mbox h2 { font-size: 1.8rem; }
.mclose { position: absolute; right: 14px; top: 12px; background: none; border: 0; font-size: 26px; color: var(--lx-muted); cursor: pointer; line-height: 1; padding: 4px 8px; }

/* print (receipts, vouchers) */
@media print {
  .site-header, .site-footer, .afd, .float-book, .ptabs, .no-print, .toasts, .concept-bar { display: none !important; }
  body { background: #fff; color: #000; }
  .portal { display: block; padding: 0; }
  .print-only { display: block !important; }
}
.print-only { display: none; }
.receipt { font-size: .95rem; }
.receipt table { width: 100%; border-collapse: collapse; margin: 14px 0; }
.receipt td { padding: 7px 0; border-bottom: 1px solid var(--lx-line); }
.receipt td:last-child { text-align: right; }

/* concept bar */
.concept-bar { background: #0a0a0a; color: #f2f2f2; font: 500 12.5px/1.3 system-ui, -apple-system, "Segoe UI", sans-serif; text-align: center; padding: 7px 12px; letter-spacing: .01em; }
.concept-bar b { color: #d4ff3a; font-weight: 700; }
/* the preview of her real site wears her colours, not ours */
.concept-bar.preview-bar { background: var(--lx-accent); color: var(--lx-on-accent); font-family: var(--lx-font-body); }
.preview-bar a { color: inherit; font-weight: 600; text-decoration: underline; }

/* reveal on scroll (content always visible without JS) */
.js .reveal { opacity: 0; transform: translateY(14px); transition: opacity .7s ease, transform .7s ease; }
.js .reveal.in { opacity: 1; transform: none; }
.book-wrap > *, .portal > *, .split > *, .hero-grid > *, .visit > *, .hf > * { min-width: 0; }

/* ===== Design 4 "After hours" (12 Oct 2026, Joshua's pick of three) =====
   Suw's website in dark plum with lamp gold, set in Kanit, the Thai-style font from her brand. Only her website pages:
   the back office (body.calapp) stays light. Palettes 2 to 5 still apply (html.kpal).
   12 Oct 2026 (UX audit): the client portal (My bookings) now wears the same look, so it doesn't feel like another business. */
html[data-site="lite"]:not(.kpal) body:not(.calapp) {
  --lx-bg: #1a0a1f; --lx-surface: #2a1230; --lx-surface-2: #22102a; --lx-ink: #f6eee6; --lx-ink-2: #e9dde6; --lx-muted: #bfafc4;
  --lx-line: rgba(246, 238, 230, .14); --lx-accent: #e8be7e; --lx-accent-text: #e8be7e; --lx-accent-soft: rgba(232, 190, 126, .14); --lx-on-accent: #1a0a1f;
  --lx-dark: #120614; --lx-on-dark: #f6eee6; --lx-gold: #e8be7e; --lx-pop: #e8be7e; --lx-shadow: 0 24px 60px -30px rgba(0, 0, 0, .7); --lx-err: #f4a49b;
  color-scheme: dark;
}
html[data-site="lite"]:not(.kpal) body:not(.calapp) .site-header .logo,
html[data-site="lite"]:not(.kpal) body:not(.calapp) .mnav .logo { background: var(--lx-ink); }
html[data-site="lite"] body:not(.calapp) {
  --lx-font-display: "Kanit", "Jost", system-ui, sans-serif; --lx-font-body: "Kanit", "Jost", system-ui, sans-serif;
  --lx-display-weight: 300; --lx-display-track: -0.015em; font-weight: 300;
}
html[data-site="lite"] body:not(.calapp) b, html[data-site="lite"] body:not(.calapp) strong { font-weight: 500; }
html[data-site="lite"] body:not(.calapp) h1 em, html[data-site="lite"] body:not(.calapp) h2 em { font-style: normal; color: inherit; }
html[data-site="lite"] body:not(.calapp) .kicker { text-transform: none; letter-spacing: 0; font-size: .98rem; font-weight: 400; color: var(--lx-muted); }
html[data-site="lite"] body:not(.calapp) .badge { text-transform: none; letter-spacing: .01em; }
html[data-site="lite"] body:not(.calapp) .press q { font-style: normal; font-weight: 200; }
html[data-site="lite"] body:not(.calapp) .press cite, html[data-site="lite"] body:not(.calapp) .hero-next small { text-transform: none; letter-spacing: 0; }
html[data-site="lite"] body:not(.calapp) .site-footer h4 { text-transform: none; letter-spacing: 0; font-size: 1rem; font-weight: 500; }

/* ===== 12 Oct 2026, Design 4 on phones (here, not lite.css, so every page gets it: vouchers, My bookings, privacy) ===== */
/* menu: a full-screen sheet with big rows, today's hours, then Book and Call at the bottom */
html[data-site="lite"] .mnav { gap: 0; padding-left: 20px; padding-right: 20px; animation: mnav-in .18s ease-out; }
@keyframes mnav-in { from { opacity: 0; transform: translateY(-6px); } }
html[data-site="lite"] .mnav .top { min-height: 62px; margin-bottom: 8px; }
html[data-site="lite"] .mnav a.nl { display: flex; align-items: center; justify-content: space-between; min-height: 58px; padding: 12px 2px; font: 300 1.6rem/1.2 var(--lx-font-display); }
html[data-site="lite"] .mnav a.nl::after { content: ""; width: 9px; height: 9px; border-top: 1.5px solid var(--lx-muted); border-right: 1.5px solid var(--lx-muted); transform: rotate(45deg); margin-right: 6px; }
html[data-site="lite"] .mnav a.nl[aria-current="page"]::after { border-color: var(--lx-accent-text); }
html.mnav-open .afd { display: none; } /* the demo switcher stays out of the way while the menu is open */
html[data-site="lite"] .mnav-today { margin: 0 0 4px; color: var(--lx-muted); font-size: .95rem; }

/* Book and Call, always one tap away on phones and tablets (replaces the floating Book button and, on the home page, the next-free bar) */
.lt-dock { display: none; }
@media (max-width: 980px) {
  .lt-dock { display: flex; align-items: center; gap: 10px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 45; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: color-mix(in srgb, var(--lx-bg) 94%, transparent); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-top: 1px solid var(--lx-line); }
  body.has-dock { padding-bottom: calc(74px + env(safe-area-inset-bottom)); }
  .lt-call { flex: none; display: grid; justify-items: center; align-content: center; gap: 2px; width: 64px; min-height: 54px; border: 1px solid var(--lx-line); border-radius: 18px; color: var(--lx-ink); text-decoration: none; font-size: .78rem; }
  .lt-call svg { width: 20px; height: 20px; }
  .lt-call:focus-visible, .lt-book:focus-visible { outline: 2px solid var(--lx-accent); outline-offset: 2px; }
  .lt-book { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; min-height: 54px; padding: 6px 16px; border-radius: 999px; background: var(--lx-accent); color: var(--lx-on-accent); text-decoration: none; }
  .lt-book:hover { color: var(--lx-on-accent); background: color-mix(in srgb, var(--lx-accent) 88%, #fff); }
  .lt-book b { font-size: 1.05rem; font-weight: 600; line-height: 1.15; }
  .lt-book small { display: flex; align-items: center; font-size: .78rem; line-height: 1.2; opacity: .9; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
  .lt-book .dot-live { width: 7px; height: 7px; box-shadow: none; }
  html[data-site="lite"] .float-book, .ah .ah-bar { display: none !important; }
  /* the Ad Fontes demo: our dock sits on top of its bottom bar, and the Design switcher sits above both */
  /* (the host page positions the switcher with !important, so these need it too) */
  html.afbar-on .lt-dock { bottom: calc(var(--afbar-h, 70px) + 16px); }
  body.has-dock .afd, html.afbar-off body.has-dock .afd { bottom: calc(86px + env(safe-area-inset-bottom)) !important; }
  html.afbar-on body.has-dock .afd { bottom: calc(var(--afbar-h, 70px) + 102px) !important; }
}
@media (max-width: 700px) {
  html.afbar-on .lt-dock { bottom: var(--afbar-h, 94px); }
  html.afbar-on body.has-dock .afd { bottom: calc(var(--afbar-h, 94px) + 86px) !important; }
}

@media (max-width: 700px) { html[data-site="lite"] .logo-link { min-height: 44px; align-items: center; } }

/* 12 Oct 2026 (UX audit): printing a voucher or receipt from the dark site gives dark text on white paper, not pale text that disappears */
@media print {
  html[data-site="lite"]:not(.kpal) body:not(.calapp) { --lx-bg: #fff; --lx-surface: #fff; --lx-surface-2: #fff; --lx-ink: #1a0a1f; --lx-ink-2: #333; --lx-muted: #555; --lx-line: #ddd; --lx-accent-text: #6b4a12; --lx-accent-soft: #f6efe2; color-scheme: light; }
  .lt-dock, .mnav, .preview-bar, .menu-btn, .mback .mclose { display: none !important; }
}
