@import url("https://fonts.googleapis.com/css2?family=Albert+Sans:ital,wght@0,300..800;1,300..600&family=Crimson+Pro:ital,wght@0,300..700;1,300..600&family=Libre+Caslon+Display&family=Libre+Caslon+Text:ital,wght@0,400;0,700;1,400&display=swap");


/* base tokens */
/* =====================================================================
 * tokens.css — global CSS custom properties (design tokens).
 * =====================================================================
 *
 * These are the variables every styled component reads via `var(...)`.
 * Defaults here are NEUTRAL — every hotel's specific palette comes
 * from its brand record, applied at runtime when the brand store
 * resolves.
 *
 * Future agents:
 *   · Add a new token here only if it's used across multiple
 *     components. Single-component values stay scoped to that
 *     component's <style scoped>.
 *   · Token names follow `--site-<group>-<role>` (e.g.
 *     `--site-color-fg`, `--site-radius-md`). Stable so brand-
 *     application logic can map onto them deterministically.
 *   · The brand store doesn't yet write into these — that wiring
 *     gets added when the first styled section lands.
 */
:root {
  /* The token NAMES match what services/theme.js writes. Defaults
     here are neutral — every hotel's actual palette comes from its
     brand record at runtime. */
  --site-color-bg:        #fbf9f5;
  --site-color-bg-rgb:    251, 249, 245;  /* used for translucent overlays */
  --site-color-fg:        #1a1815;
  --site-color-fg-muted:  #6b665e;
  --site-color-accent:    #1a1815;
  --site-color-accent-fg: #fbf9f5;
  --site-color-border:    #e3ddd2;

  --site-font-display: system-ui, -apple-system, sans-serif;
  --site-font-body:    system-ui, -apple-system, sans-serif;

  --site-radius-sm:    2px;
  --site-radius-md:    6px;
  --site-radius-lg:    14px;

  --site-header-h:     76px;

  /* ===================================================================
   * STRUCTURAL tokens — the theme's visual RHYTHM, not just its palette.
   * ===================================================================
   *
   * These extend the stable `--site-*` surface beyond colour/font/radius
   * so the LOCKED booking pages (BookView / CheckoutView / Confirmation)
   * can inherit a theme's FULL visual language — type scale, spacing,
   * elevation, and motion — instead of looking like a generic recolour.
   *
   * Defaults here are deliberately NEUTRAL (a clean, calm shell). Each
   * generated theme's `theme/tokens.css` MAPS its bespoke scale onto
   * these names (see the design-tokens skill) so the booking surface
   * picks up the same rhythm as the rest of the site. Setting these is
   * additive + backward-compatible: a theme that sets none of them still
   * renders correctly on the neutral defaults below.
   *
   * As with colours, the names are STABLE so theme-application logic can
   * map onto them deterministically.
   */

  /* --- Type scale ---------------------------------------------------
   * Display sizes for hero/section headings, body sizes for prose +
   * controls. Fluid `clamp()` so the neutral shell reads well at any
   * width; a theme overrides with its own step ladder. */
  --site-font-size-display-xl: clamp(2.25rem, 5vw, 3.5rem);
  --site-font-size-display-lg: clamp(1.75rem, 3.5vw, 2.5rem);
  --site-font-size-display-md: clamp(1.25rem, 2vw, 1.5rem);
  --site-font-size-body-lg:    1.0625rem;
  --site-font-size-body:       0.9375rem;
  --site-font-size-body-sm:    0.8125rem;

  --site-line-height-display:  1.1;
  --site-line-height-body:     1.55;

  --site-letter-spacing-tight:  -0.01em;
  --site-letter-spacing-normal: 0;

  /* --- Spacing ladder ----------------------------------------------
   * A geometric-ish step used for gaps, padding, and rhythm. Themes
   * remap to their own gutter/section scale. */
  --site-space-xs: 0.5rem;
  --site-space-sm: 0.75rem;
  --site-space-md: 1.25rem;
  --site-space-lg: 2rem;
  --site-space-xl: 3rem;

  /* --- Elevation ----------------------------------------------------
   * Soft, neutral shadows. Themes supply brand-tinted equivalents. */
  --site-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.06);
  --site-shadow-md: 0 8px 24px rgba(0, 0, 0, 0.10);

  /* --- Motion -------------------------------------------------------
   * One easing + one base duration the locked pages reach for on
   * transitions. Themes set their committed curve/timing here so the
   * booking surface moves with the same feel as the rest of the site. */
  --site-ease:     cubic-bezier(0.22, 1, 0.36, 1);
  --site-duration: 240ms;

  /* --- Legacy / alternate token vocabulary (backward-compat) --------
   * Some generated themes' components were authored against an older
   * --site-* naming scheme — a NUMERIC spacing scale (--site-space-1..6)
   * and --site-text-*/--site-track-*/--site-leading-*/--site-dur-* names —
   * rather than the named scale above. When a component reaches for a name
   * not defined anywhere, that custom property resolves to NOTHING and the
   * declaration is dropped (e.g. `gap: clamp(var(--site-space-3),…)` becomes
   * `normal` → a nav with no spacing; `font-size: var(--site-text-h1)` falls
   * back to 16px → collapsed type). Aliasing the legacy names onto the canonical
   * tokens here — the always-loaded base — keeps EVERY component resolving
   * regardless of which vocabulary it was generated against. Purely additive;
   * themes built on the named scale are unaffected. */
  --site-space-1: var(--site-space-xs);
  --site-space-2: var(--site-space-sm);
  --site-space-3: var(--site-space-md);
  --site-space-4: var(--site-space-lg);
  --site-space-5: var(--site-space-xl);
  --site-space-6: var(--site-space-xl);

  --site-text-hero:    var(--site-font-size-display-xl);
  --site-text-display: var(--site-font-size-display-xl);
  --site-text-h1:      var(--site-font-size-display-lg);
  --site-text-h2:      var(--site-font-size-display-md);
  --site-text-h3:      var(--site-font-size-display-md);
  --site-text-lead:    var(--site-font-size-body-lg);
  --site-text-body:    var(--site-font-size-body);
  --site-text-strong:  var(--site-font-size-body);
  --site-text-muted:   var(--site-font-size-body);
  --site-text-sm:      var(--site-font-size-body-sm);
  --site-text-label:   var(--site-font-size-body-sm);
  --site-text-caption: var(--site-font-size-body-sm);
  --site-text-micro:   var(--site-font-size-body-sm);

  --site-leading-tight: var(--site-line-height-display);
  --site-leading-snug:  1.25;
  --site-leading-body:  var(--site-line-height-body);

  --site-track-tight: var(--site-letter-spacing-tight);
  --site-track-caps:  0.08em;
  --site-track-label: 0.12em;
  --site-track-cta:   0.04em;
  --site-track-wide:  0.16em;

  --site-dur-fast: 160ms;
  --site-dur-base: var(--site-duration);
  --site-dur-slow: 420ms;

  --site-radius-none: 0;
  --site-radius-xs:   3px;
  --site-bar-h:       var(--site-header-h);
  --site-max:         1200px;
  --site-hairline-w:  1px;
}

/* =====================================================================
 *  Base typography wiring.
 *
 *  Every visible character on the site reads its font through these
 *  cascaded rules — so flipping `--site-font-*` (which the brand
 *  store does at runtime) instantly changes the font everywhere
 *  without component-by-component overrides.
 *
 *    body, p, button, input, select, textarea  →  --site-font-body
 *    h1..h4                                    →  --site-font-display
 *
 *  Components that want to OPT INTO display type for non-heading
 *  text should add `font-family: var(--site-font-display)` on the
 *  relevant selector (e.g. drawer links). Components that want a
 *  different family for ONE element can override locally. The rule
 *  below establishes the right defaults so ad-hoc overrides are
 *  rare.
 * ===================================================================== */
*,
*::before,
*::after { box-sizing: border-box; }

html, body, #app { margin: 0; padding: 0; min-height: 100%; }

body {
  background: var(--site-color-bg);
  color: var(--site-color-fg);
  font-family: var(--site-font-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Headings always pull from the display family (Bebas Neue / Fraunces /
   etc., depending on the hotel). If a hotelier picks the same family
   for both display + body, the variable resolves the same way and
   nothing visually changes. */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--site-font-display);
  margin: 0;
}

/* Form controls don't inherit font-family by default — wire them
   explicitly so brand fonts apply to inputs, buttons, etc. */
button, input, select, textarea { font: inherit; }

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

/* Preserve author line breaks in CMS prose.
 *
 * Room / amenity / event descriptions, summaries, "the space", etc. are
 * entered in dashboard textareas where newlines are meaningful. HTML's
 * default `white-space: normal` collapses those newlines into spaces, so
 * paragraph breaks the hotelier typed vanished on the live site.
 *
 * `pre-line` behaves EXACTLY like `normal` (collapses runs of spaces,
 * wraps long lines) except it keeps newlines — so this is a no-op for
 * any text without literal line breaks (price rows, labels, button text)
 * and only restores breaks in author-entered prose. Vue's template
 * compiler condenses static whitespace, so the only newlines reaching a
 * text node come from interpolated data — exactly what we want to keep.
 *
 * Scoped to prose-bearing elements (paragraphs + the SDK/theme prose
 * class roles). Components that pin their own white-space (nowrap on
 * price chips, pre-wrap elsewhere) load after this and win. */
p,
[class*="__prose"],
[class*="__description"],
[class*="__lede"],
[class*="__summary"],
[class*="__highlight-body"] {
  white-space: pre-line;
}

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

/* Minimal global reset so the empty homepage doesn't show a blank
   white page with default browser margins. Section components are
   responsible for their own spacing and type — keep this lean. */
*,
*::before,
*::after { box-sizing: border-box; }
html, body, #app { margin: 0; padding: 0; min-height: 100%; }
body {
  background: var(--site-bg);
  color: var(--site-fg);
  font-family: var(--site-font-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


/* theme tokens */
/* composed: design-graph tokens (base + palette + type) */
/* legacy base (pre-graph tokens.css) — graph parts override below */
/* theme/tokens.css — Derby Eiffel Hotel base tokens (anchor layer).
 * Loads after the SDK base tokens and wins the cascade.
 * LOCKED by hotelier: --site-color-bg, --site-color-fg, --site-color-accent.
 * Deterministic pass refines; keep roles, never repaint locked values.
 */

:root {
  /* Palette roles */
  --site-color-bg: #faf9f6;      /* LOCKED — warm paper, default surface */
  --site-color-fg: #fbf9f6;      /* LOCKED — light ink, dark surfaces ONLY */
  --site-color-accent: #000000;  /* LOCKED — black ink; text on light bg + accent */
  --site-color-muted: #6f675c;   /* secondary text on bg */
  --site-color-border: #e6e1d6;  /* hairlines on bg */

  /* Derived surface pairings (ink-on-paper discipline:
     never pair fg with bg — both are warm off-whites) */
  --site-ink-on-light: var(--site-color-accent);
  --site-ink-on-dark: var(--site-color-fg);
  --site-surface-dark: var(--site-color-accent);
  --site-surface-footer: #fbf9f6; /* optional brand extra (light footer) */

  /* Type roles */
  --site-font-display: "Libre Caslon Display", "Playfair Display", Georgia, serif;
  --site-font-body: "Crimson Pro", "Iowan Old Style", Georgia, serif;
  --site-type-ratio: 1.43;

  /* Spacing scale */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 16px;
  --space-4: 24px;
  --space-5: 40px;
  --space-6: 64px;
  --space-7: 104px;

  /* Shape & measure */
  --site-radius: 0;
  --site-measure: 750px;
}

/* [preview] baseline motion tokens (brand book omitted these — keeps reveal animations from hiding content) */
:root {
  --site-duration-reveal: 700ms;
  --site-duration-slow: 600ms;
  --site-duration: 320ms;
  --site-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --site-ease-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --site-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --site-stagger: 80ms;
  --site-reveal-distance: 24px;
}

/* ============================================================
   Derby Eiffel Hotel — Palette Variant 3: "Gold Geometry"
   ------------------------------------------------------------
   Ground: locked brand cream (#faf9f6) stays primary; black
   (#000000) is structural and powerful. A single restrained
   burnished gold (#d4af8f) enters as the third voice — hairline
   rules, icon strokes, ornament highlights only. Never a field.
   Warm, intimate, earned Parisian classicism.
   ============================================================ */

:root {
  /* ---------- Brand core (LOCKED — exact brand hexes) ---------- */
  --site-color-bg: #faf9f6;                 /* brand bg — the cream ground */
  --site-color-fg: #fbf9f6;                 /* brand fg — light ink on dark surfaces */
  --site-color-ink: #000000;                /* brand accent — primary ink & structure */
  --site-color-primary: #000000;            /* black leads: type, CTAs, geometry */
  --site-color-accent: #d4af8f;             /* burnished gold — the rare third voice */
  --site-color-muted: #6f675c;              /* brand muted — secondary text */
  --site-color-border: #e6e1d6;             /* brand border — quiet hairlines */
  --site-color-contrast: #fbf9f6;           /* brand footer/contrast light */

  /* ---------- Surfaces (cream family, warmed) ---------- */
  --site-color-surface: #fbf9f6;            /* raised card on cream (brand fg hex) */
  --site-color-surface-2: #f4f1ea;          /* recessed band / alternating section */
  --site-color-surface-3: #eee9df;          /* deep recess: quotes, asides */
  --site-color-surface-warm: #f7f2ea;       /* gold-warmed surface — bar, suites */
  --site-color-surface-inverse: #000000;    /* dark ground: footer, speakeasy bar */
  --site-color-surface-inverse-2: #141210;  /* lifted panel on the dark ground */
  --site-color-surface-inverse-3: #211d19;  /* card on dark — warm charcoal */

  /* ---------- Ink & text ---------- */
  --site-color-heading: #000000;            /* display serif headings */
  --site-color-body: #26221d;               /* long-form body ink, softened black */
  --site-color-text-secondary: #6f675c;     /* brand muted — captions, meta */
  --site-color-text-tertiary: #8f877b;      /* faint labels, kickers, folios */
  --site-color-text-on-dark: #fbf9f6;       /* brand light on inverse surfaces */
  --site-color-text-on-dark-muted: #b3aca1; /* secondary text on dark */
  --site-color-text-on-accent: #000000;     /* ink over any gold touch */

  /* ---------- Gold voice (accent scale — lines, never fields) ---------- */
  --site-color-accent-strong: #b8905f;      /* deepened gold: icon strokes, numerals */
  --site-color-accent-soft: #e3cbb2;        /* pale gold: hover hairlines */
  --site-color-accent-faint: #f1e5d6;       /* whisper gold: tint behind ornament */
  --site-color-accent-on-dark: #d4af8f;     /* gold glows unchanged on black */
  --site-color-rule-gold: #d4af8f;          /* hairline rules of threshold */
  --site-color-rule-gold-dark: #a88a63;     /* gold hairline on dark ground */
  --site-color-ornament: #c9a67e;           /* SVG ornament fill on cream */
  --site-color-ornament-on-dark: #d4af8f;   /* ornament fill on black */

  /* ---------- Interactive states ---------- */
  --site-color-link: #000000;               /* links are ink, underlined */
  --site-color-link-hover: #6f675c;         /* hover recedes to brand muted */
  --site-color-link-underline: #d4af8f;     /* gold underline — the tell */
  --site-color-btn-bg: #000000;             /* primary CTA: solid black */
  --site-color-btn-fg: #fbf9f6;             /* brand light on the CTA */
  --site-color-btn-hover-bg: #26221d;       /* warmed black on hover */
  --site-color-btn-hover-border: #d4af8f;   /* gold hairline appears on hover */
  --site-color-btn-ghost-fg: #000000;       /* outline button ink */
  --site-color-btn-ghost-border: #000000;   /* outline button stroke */
  --site-color-btn-ghost-hover-bg: #f4f1ea; /* ghost hover fill */
  --site-color-btn-on-dark-bg: #fbf9f6;     /* CTA on dark surfaces */
  --site-color-btn-on-dark-fg: #000000;
  --site-color-focus-ring: #b8905f;         /* accessible gold-deep focus */
  --site-color-selection-bg: #e3cbb2;       /* text selection: pale gold */
  --site-color-selection-fg: #000000;

  /* ---------- Borders & lines ---------- */
  --site-color-border-strong: #cfc8b9;      /* emphasized division */
  --site-color-border-subtle: #f0ece3;      /* faintest separation */
  --site-color-border-on-dark: #332e28;     /* borders on inverse surfaces */
  --site-color-divider-on-dark: #2e2a24;    /* rules on the dark ground */
  --site-color-hairline: #e6e1d6;           /* default hairline (brand border) */
  --site-color-input-border: #cfc8b9;       /* form fields */
  --site-color-input-border-focus: #000000; /* focused field goes ink */
  --site-color-input-bg: #fbf9f6;

  /* ---------- Muted / hover fills ---------- */
  --site-color-muted-bg: #f4f1ea;           /* muted chip / tag fill */
  --site-color-hover-bg: #f2eee5;           /* row & card hover wash */
  --site-color-active-bg: #ece7db;          /* pressed state wash */
  --site-color-disabled-fg: #a89f92;
  --site-color-disabled-bg: #efece4;

  /* ---------- Overlays & scrims ---------- */
  --site-color-overlay: rgba(0, 0, 0, 0.42);        /* image scrim for text */
  --site-color-overlay-strong: rgba(0, 0, 0, 0.62); /* hero legibility scrim */
  --site-color-overlay-light: rgba(250, 249, 246, 0.88); /* cream veil */
  --site-color-shadow: rgba(20, 16, 10, 0.10);      /* warm, shallow shadow */
  --site-color-shadow-strong: rgba(20, 16, 10, 0.22);

  /* ---------- Semantic roles (kept hushed, on-palette) ---------- */
  --site-color-success: #55603f;            /* courtyard olive */
  --site-color-success-bg: #eef0e6;
  --site-color-warning: #96702f;            /* deep gold-ochre */
  --site-color-warning-bg: #f6eeda;
  --site-color-error: #7d3b32;              /* muted oxblood */
  --site-color-error-bg: #f5e8e5;
  --site-color-info: #46505c;               /* zinc-roof slate */
  --site-color-info-bg: #eaedf0;

  /* ---------- Header / footer specifics ---------- */
  --site-color-header-bg: #faf9f6;          /* light header on brand cream */
  --site-color-header-fg: #000000;
  --site-color-footer-bg: #000000;          /* black footer — dark logo variant */
  --site-color-footer-fg: #fbf9f6;          /* brand contrast light */
  --site-color-footer-muted: #b3aca1;
  --site-color-footer-rule: #d4af8f;        /* single gold hairline at threshold */
}

/* Derby Eiffel Hotel — Typography v2 "Intimate Speakeasy"
   Dark-bar hush: small, bold, wide-tracked Caslon; quiet Crimson body;
   compressed vertical rhythm; slow, candle-lit motion. */

:root {
  /* Families (locked brand) */
  --site-font-display: "Libre Caslon Display", "Playfair Display", Georgia, serif;
  --site-font-body: "Crimson Pro", "Iowan Old Style", Georgia, serif;
  --site-font-ui: "Crimson Pro", "Iowan Old Style", Georgia, serif;

  /* Scale — major third: whisper, not declamation */
  --site-type-ratio: 1.25;
  --site-text-xs: 0.75rem;      /* 12px — leaders, folio */
  --site-text-sm: 0.875rem;     /* 14px — captions, menu notes */
  --site-text-base: 1.0625rem;  /* 17px — conspiratorial body */
  --site-text-md: 1.1875rem;    /* 19px — lead paragraph */
  --site-text-lg: 1.375rem;     /* 22px — h4 / card titles */
  --site-text-xl: 1.75rem;      /* 28px — h3 */
  --site-text-2xl: 2.125rem;    /* 34px — h2 */
  --site-text-3xl: 2.625rem;    /* 42px — h1 */
  --site-text-hero: clamp(2.375rem, 1.6rem + 3.2vw, 3.375rem); /* 38–54px — held back */
  --site-text-eyebrow: 0.75rem;

  /* Weights — display cuts through darkness by mass, not size */
  --site-weight-display: 700;
  --site-weight-heading: 600;
  --site-weight-body: 400;
  --site-weight-body-strong: 600;
  --site-weight-ui: 500;

  /* Tracking — generous air around small display; open caps for eyebrows */
  --site-tracking-display: 0.045em;
  --site-tracking-heading: 0.03em;
  --site-tracking-body: 0.008em;
  --site-tracking-eyebrow: 0.32em;
  --site-tracking-ui: 0.14em;

  /* Line rhythm — tight display, roomy body */
  --site-leading-display: 1.12;
  --site-leading-heading: 1.2;
  --site-leading-body: 1.62;
  --site-leading-tight: 1.05;

  /* Case & details */
  --site-case-eyebrow: uppercase;
  --site-case-button: uppercase;
  --site-heading-margin: 0.6em;

  /* Spacing — vertically compressed, horizontally expansive */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 14px;
  --space-4: 20px;
  --space-5: 32px;
  --space-6: 52px;
  --space-7: 84px;
  --site-section-pad: clamp(52px, 8vw, 84px);
  --site-gutter: clamp(24px, 5vw, 72px);
  --site-measure: 640px;
  --site-measure-wide: 920px;

  /* Motion — revealed gradually, never all at once */
  --site-motion-duration-hover: 260ms;
  --site-motion-duration: 480ms;
  --site-motion-duration-slow: 820ms;
  --site-motion-duration-reveal: 1050ms;
  --site-motion-ease: cubic-bezier(0.45, 0.05, 0.25, 1);
  --site-motion-ease-out: cubic-bezier(0.19, 1, 0.22, 1);
  --site-motion-ease-reveal: cubic-bezier(0.22, 0.9, 0.24, 1);
  --site-motion-stagger: 140ms;
  --site-motion-reveal-distance: 16px;

  /* Legacy motion aliases */
  --site-duration: var(--site-motion-duration);
  --site-duration-slow: var(--site-motion-duration-slow);
  --site-duration-reveal: var(--site-motion-duration-reveal);
  --site-ease: var(--site-motion-ease);
  --site-ease-out: var(--site-motion-ease-out);
  --site-ease-expo: var(--site-motion-ease-out);
  --site-stagger: var(--site-motion-stagger);
  --site-reveal-distance: var(--site-motion-reveal-distance);
}


/* brand */
/* themes/default/brand.css — baseline global finish layer.
 *
 * A few universal refinements that read as "finished" on any theme.
 * The v2 builder OVERWRITES this per-hotel with a richer, manifest-
 * derived layer (texture + editorial-fixture utilities). Exists so
 * `import '@theme/brand.css'` always resolves.
 */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
}
::selection {
  background: var(--site-color-accent);
  color: var(--site-color-accent-fg);
}
:focus-visible {
  outline: 2px solid var(--site-color-accent);
  outline-offset: 3px;
}

/* NOTE: /book overrides do NOT live here. This file is rebuilt
   per-hotel by the v2 builder and edits to it are dropped — they
   never even reach the preview. The booking-funnel corrections
   are in primitives/button.css, which is loaded on every page
   and persists. See the "Booking page (SDK j17)" block there. */

/* -------------------------------------------------------------
   Page breaker — gilt hairlines, twin diamonds and the house
   horse, embedded so every page can call it with one class.
   ------------------------------------------------------------- */
.dbx-breaker {
  display: block;
  width: min(880px, 86vw);
  aspect-ratio: 1400 / 249;
  margin-inline: auto;
  background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABXgAAAD5CAYAAACd313tAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAFeKADAAQAAAABAAAA+QAAAABgnq0rAABAAElEQVR4Aey9Z5Bc2X3l+U/vy/tCoeB9e2/IbjablLikhiNRQ1EaaUaamIndCEXsbsR+2I3YkPm8O7ER6yJmIjSzEzuSKO1wKDMURTXJJrvZTbb3aHigUED5qqxK7zP3/O/Ll/myKqtgGuhGIs8DMt/L++675vdeogunD851VcrFhHAjARIgARIgARIgARIgARIgARIgARIgARIgARIgARLoOAIuCLy1jhs1B0wCJEACJEACJEACJEACJEACJEACJEACJEACJEACJCBuMiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEuhMAhR4O/O+cdQkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAcvnwESIAESIAESIAESIAESIAESIAESIAESIAESIAES6FQCdPB26p3juEmABEiABEiABEiABEiABEiABEiABEiABEiABLqeAAXern8ECIAESIAESIAESIAESIAESIAESIAESIAESIAESKBTCVDg7dQ7x3GTAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAl0PQEKvF3/CBAACZAACZAACZAACZAACZAACZAACZAACZAACZBApxKgwNupd47jJgESIAESIAESIAESIAESIAESIAESIAESIAES6HoCFHi7/hEgABIgARIgARIgARIgARIgARIgARIgARIgARIggU4lQIG3U+8cx00CJEACJEACJEACJEACJEACJEACJEACJEACJND1BCjwdv0jQAAkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAKdSoACb6feOY6bBEiABEiABEiABEiABEiABEiABEiABEiABEig6wlQ4O36R4AASIAESIAESIAESIAESIAESIAESIAESIAESIAEOpUABd5OvXMcNwmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQNcToMDb9Y8AAZAACZAACZAACZAACZAACZAACZAACZAACZAACXQqAQq8nXrnOG4SIAESIAESIAESIAESIAESIAESIAESIAESIIGuJ0CBt+sfAQIgARIgARIgARIgARIgARIgARIgARIgARIgARLoVAIUeDv1znHcJEACJEACJEACJEACJEACJEACJEACJEACJEACXU+AAm/XPwIEQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIk0KkEKPB26p3juEmABEiABEiABEiABEiABEiABEiABEiABEiABLqeAAXern8ECIAESIAESIAESIAESIAESIAESIAESIAESIAESKBTCVDg7dQ7x3GTAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAl0PQEKvF3/CBAACZAACZAACZAACZAACZAACZAACZAACZAACZBApxKgwNupd47jJgESIAESIAESIAESIAESIAESIAESIAESIAES6HoCFHi7/hEgABIgARIgARIgARIgARIgARIgARIgARIgARIggU4lQIG3U+8cx00CJEACJEACJEACJEACJEACJEACJEACJEACJND1BCjwdv0jQAAkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAKdSoACb6feOY6bBEiABEiABEiABEiABEiABEiABEiABEiABEig6wlQ4O36R4AASIAESIAESIAESIAESIAESIAESIAESIAESIAEOpUABd5OvXMcNwmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQNcToMDb9Y8AAZAACZAACZAACZAACZAACZAACZAACZAACZAACXQqAQq8nXrnOG4SIAESIAESIAESIAESIAESIAESIAESIAESIIGuJ0CBt+sfAQIgARIgARIgARIgARIgARIgARIgARIgARIgARLoVAIUeDv1znHcJEACJEACJEACJEACJEACJEACJEACJEACJEACXU+AAm/XPwIEQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIk0KkEKPB26p3juEmABEiABEiABEiABEiABEiABEiABEiABEiABLqeAAXern8ECIAESIAESIAESIAESIAESIAESIAESIAESIAESKBTCVDg7dQ7x3GTAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAl0PQEKvF3/CBAACZAACZAACZAACZAACZAACZAACZAACZAACZBApxKgwNupd47jJgESIAESIAESIAESIAESIAESIAESIAESIAES6HoCFHi7/hEgABIgARIgARIgARIgARIgARIgARIgARIgARIggU4lQIG3U+8cx00CJEACJEACJEACJEACJEACJEACJEACJEACJND1BCjwdv0jQAAkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAKdSoACb6feOY6bBEiABEiABEiABEiABEiABEiABEiABEiABEig6wlQ4O36R4AASIAESIAESIAESIAESIAESIAESIAESIAESIAEOpUABd5OvXMcNwmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQNcToMDb9Y8AAZAACZAACZAACZAACZAACZAACZAACZAACZAACXQqAQq8nXrnOG4SIAESIAESIAESIAESIAESIAESIAESIAESIIGuJ0CBt+sfAQIgARIgARIgARIgARIgARIgARIgARIgARIgARLoVAIUeDv1znHcJEACJEACJEACJEACJEACJEACJEACJEACJEACXU+AAm/XPwIEQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIk0KkEKPB26p3juEmABEiABEiABEiABEiABEiABEiABEiABEiABLqeAAXern8ECIAESIAESIAESIAESIAESIAESIAESIAESIAESKBTCVDg7dQ7x3GTAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAl0PQEKvF3/CBAACZAACZAACZAACZAACZAACZAACZAACZAACZBApxKgwNupd47jJgESIAESIAESIAESIAESIAESIAESIAESIAES6HoCFHi7/hEgABIgARIgARIgARIgARIgARIgARIgARIgARIggU4lQIG3U+8cx00CJEACJEACJEACJEACJEACJEACJEACJEACJND1BCjwdv0jQAAkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAKdSoACb6feOY6bBEiABEiABEiABEiABEiABEiABEiABEiABEig6wlQ4O36R4AASIAESIAESIAESIAESIAESIAESIAESIAESIAEOpUABd5OvXMcNwmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQNcToMDb9Y8AAZAACZAACZAACZAACZAACZAACZAACZAACZAACXQqAQq8nXrnOG4SIAESIAESIAESIAESIAESIAESIAESIAESIIGuJ0CBt+sfAQIgARIgARIgARIgARIgARIgARIgARIgARIgARLoVAIUeDv1znHcJEACJEACJEACJEACJEACJEACJEACJEACJEACXU+AAm/XPwIEQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIk0KkEKPB26p3juEmABEiABEiABEiABEiABEiABEiABEiABEiABLqeAAXern8ECIAESIAESIAESIAESIAESIAESIAESIAESIAESKBTCVDg7dQ7x3GTAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAl0PQEKvF3/CBAACZAACZAACZAACZAACZAACZAACZAACZAACZBApxKgwNupd47jJgESIAESIAESIIEuI+ByuURfn2S7FW18kv55LQmQAAmQAAmQAAmQAAncagIUeG81UbZHAiRAAiRAAiRAAiRwywi43G5xe3x4eaWQz0kmnZBKuXSD7UMYrrdTLhcll0nc4PWsTgIkQAIkQAIkQAIkQAJ3LgHvnTs0jowESIAESIAESIAESKBbCdhO3SJE3YWr52V9bVG8EHr7BkdkeGy3eLy+HdCo07f1dDGfkdWFi7K+elmGxvZLMNzTWoGfSIAESIAESIAESIAESKBDCVDg7dAbx2GTAAmQAAmQAAmQwN1IQIXdWk0klVyXMx++JifffUWivX1y5MRjsmv6iMT6BsXt9qJOVVTFbdVxXVKtVaRcKkilVJR8PiWJ1TmZnz0pK3NnRXDunse+LiOTh+9GdJwTCZAACZAACZAACZBAlxKgwNulN57TJgESIAESIAESIIGbIVCrIB5BhVW4aVVereGXUWRvprGWa9Ca2yWlQk4unv1QXvrBn8vq8rw89OSX5ckv/Kr09A+jNuRcCLtG3MWnWrUihUIW0Q1ZxC4kJZ9NSjqxKon4vGyszcGtOyt5lFfLBekdGJXHnv9dmT70mNWOjpsbCZAACZAACZAACZAACdwFBCjw3gU3kVMgARIgARIgARIggU+HAATYXEKy6xfEHxkUX3hMfMEoHLUeqUJsvdnNjmNYX12UN1/5vvzip39rIha++o3/Wh586pfQvk+qEJaLEH/z2ZRsrC9Jcn1FkhvLeC1INrVhhN1Mag0CccZc64YI7UburtfjluGJfXLfk79mxF3LIUxx92bvFa8jARIgARIgARIgARK48whQ4L3z7glHRAIkQAIkQAIkQAJ3JgEYaN2+kOTis7J0/ieSzgckOnJMxqbvkZ6B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NrNrd1bX7rVbG+9MgAABAgQIECAwHwUa01MTs/OxMDURIECAAAECBAgsPIFGszVGh4/EyWOHYnDLHXmAWvYjzDYSwp+sC283uGMCBAgQIECAAIFfRkDA+8soeQ4BAgQIECBAgMCHI5AzeKcnR6O1tT2i0apj98NR9y4ECBAgQIAAAQI1FhDw1njxlE6AAAECBAgQuD4FSsdueejanXPwkQABAgQIECBAgMC7C5jB++42fkOAAAECBAgQIHBNBAS714TdmxIgQIAAAQIECNRSoFnLqhVNgAABAgQIECBAgAABAgQIECBAgAABAiHgtQkIECBAgAABAgQIECBAgAABAgQIECBQUwEBb00XTtkECBAgQIAAAQIECBAgQIAAAQIECBAQ8NoDBAgQIECAAAECBAgQIECAAAECBAgQqKmAgLemC6dsAgQIECBAgAABAgQIECBAgAABAgQICHjtAQIECBAgQIAAAQIECBAgQIAAAQIECNRUQMBb04VTNgECBAgQIECAAAECBAgQIECAAAECBAS89gABAgQIECBAgAABAgQIECBAgAABAgRqKiDgrenCKZsAAQIECBAgQIAAAQIECBAgQIAAAQICXnuAAAECBAgQIECAAAECBAgQIECAAAECNRUQ8NZ04ZRNgAABAgQIECBAgAABAgQIECBAgAABAa89QIAAAQIECBAgQIAAAQIECBAgQIAAgZoKCHhrunDKJkCAAAECBAgQIECAAAECBAgQIECAgIDXHiBAgAABAgQIECBAgAABAgQIECBAgEBNBQS8NV04ZRMgQIAAAQIECBAgQIAAAQIECBAgQEDAaw8QIECAAAECBAgQIECAAAECBAgQIECgpgIC3pounLIJECBAgAABAgQIECBAgAABAgQIECAg4LUHCBAgQIAAAQIECBAgQIAAAQIECBAgUFMBAW9NF07ZBAgQIECAAAECBAgQIECAAAECBAgQEPDaAwQIECBAgAABAgQIECBAgAABAgQIEKipgIC3pgunbAIECBAgQIAAAQIECBAgQIAAAQIECAh47QECBAgQIECAAAECBAgQIECAAAECBAjUVEDAW9OFUzYBAgQIECBAgAABAgQIECBAgAABAgQEvPYAAQIECBAgQIAAAQIECBAgQIAAAQIEaiog4K3pwimbAAECBAgQIECAAAECBAgQIECAAAECAl57gAABAgQIECBAgAABAgQIECBAgAABAjUVEPDWdOGUTYAAAQIECBAgQIAAAQIECBAgQIAAAQGvPUCAAAECBAgQIECAAAECBAgQIECAAIGaCgh4a7pwyiZAgAABAgQIECBAgAABAgQIECBAgICA1x4gQIAAAQIECBAgQIAAAQIECBAgQIBATQUEvDVdOGUTIECAAAECBAgQIECAAAECBAgQIEBAwGsPECBAgAABAgQIECBAgAABAgQIECBAoKYCAt6aLpyyCRAgQIAAAQIECBAgQIAAAQIECBAgIOC1BwgQIECAAAECBAgQIECAAAECBAgQIFBTAQFvTRdO2QQIECBAgAABAgQIECBAgAABAgQIEBDw2gMECBAgQIAAAQIECBAgQIAAAQIECBCoqYCAt6YLp2wCBAgQIECAAAECBAgQIECAAAECBAgIeO0BAgQIECBAgAABAgQIECBAgAABAgQI1FRAwFvThVM2AQIECBAgQIAAAQIECBAgQIAAAQIEBLz2AAECBAgQIECAAAECBAgQIECAAAECBGoqIOCt6cIpmwABAgQIECBAgAABAgQIECBAgAABAgJee4AAAQIECBAgQIAAAQIECBAgQIAAAQI1FRDw1nThlE2AAAECBAgQIECAAAECBAgQIECAAAEBrz1AgAABAgQIECBAgAABAgQIECBAgACBmgoIeGu6cMomQIAAAQIECBAgQIAAAQIECBAgQICAgNceIECAAAECBAgQIECAAAECBAgQIECAQE0FBLw1XThlEyBAgAABAgQIECBAgAABAgQIECBAQMBrDxAgQIAAAQIECBAgQIAAAQIECBAgQKCmAgLemi6csgkQIECAAAECBAgQIECAAAECBAgQICDgtQcIECBAgAABAgQIECBAgAABAgQIECBQUwEBb00XTtkECBAgQIAAAQIECBAgQIAAAQIECBAQ8NoDBAgQIECAAAECBAgQIECAAAECBAgQqKmAgLemC6dsAgQIECBAgAABAgQIECBAgAABAgQICHjtAQIECBAgQIAAAQIECBAgQIAAAQIECNRUQMBb04VTNgECBAgQIECAAAECBAgQIECAAAECBAS89gABAgQIECBAgAABAgQIECBAgAABAgRqKiDgrenCKZsAAQIECBAgQIAAAQIECBAgQIAAAQICXnuAAAECBAgQIECAAAECBAgQIECAAAECNRUQ8NZ04ZRNgAABAgQIECBAgAABAgQIECBAgAABAa89QIAAAQIECBAgQIAAAQIECBAgQIAAgZoKCHhrunDKJkCAAAECBAgQIECAAAECBAgQIECAgIDXHiBAgAABAgQIECBAgAABAgQIECBAgEBNBQS8NV04ZRMgQIAAAQIECBAgQIAAAQIECBAgQEDAaw8QIECAAAECBAgQIECAAAECBAgQIECgpgIC3pounLIJECBAgAABAgQIECBAgAABAgQIECAg4LUHCBAgQIAAAQIECBAgQIAAAQIECBAgUFMBAW9NF07ZBAgQIECAAAECBAgQIECAAAECBAgQEPDaAwQIECBAgAABAgQIECBAgAABAgQIEKipgIC3pgunbAIECBAgQIAAAQIECBAgQIAAAQIECAh47QECBAgQIECAAAECBAgQIECAAAECBAjUVEDAW9OFUzYBAgQIECBAgAABAgQIECBAgAABAgRak2AEAwECBAgQIECAAAECBAgQIECAAAECBAjUT+D/ADm2sr4aFUeJAAAAAElFTkSuQmCC') center / contain no-repeat;
  pointer-events: none;
  user-select: none;
}


/* chrome components */

.sdk-cta[data-v-6d008a43] {
  position: relative;
  display: inline-flex;
  align-items: stretch;
  gap: 1px;   /* a hairline seam between the two halves of the split button */
}
.sdk-cta__primary[data-v-6d008a43] { display: inline-flex; align-items: center;
}
.sdk-cta__caret-btn[data-v-6d008a43] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  cursor: pointer;
  /* Inherits the theme's button class, so it matches the primary half. */
}
.sdk-cta__caret[data-v-6d008a43] {
  width: 0.42em;
  height: 0.42em;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translate(-0.1em, -0.1em);
  transition: transform 0.18s ease;
  flex: none;
}
.sdk-cta--open .sdk-cta__caret[data-v-6d008a43] {
  transform: rotate(-135deg) translate(-0.16em, -0.16em);
}
.sdk-cta__panel[data-v-6d008a43] {
  position: absolute;
  top: 100%;
  right: 0;                  /* the CTA lives at the right edge of the bar */
  z-index: 1000;             /* above the concierge bubble (998–999) */
  min-width: max(200px, 100%);
  margin: 0.5rem 0 0;
  padding: 0.4rem;
  list-style: none;
  background: var(--site-color-bg, #fff);
  color: var(--site-color-text, #111);
  border: 1px solid color-mix(in srgb, currentColor 12%, transparent);
  border-radius: var(--site-radius, 4px);
  box-shadow: 0 12px 32px rgb(0 0 0 / 12%);
  font-family: var(--site-font-body, inherit);
}
.sdk-cta__panel[hidden][data-v-6d008a43] { display: none;
}
.sdk-cta__item[data-v-6d008a43] { margin: 0;
}
.sdk-cta__link[data-v-6d008a43] {
  display: block;
  padding: 0.55rem 0.75rem;
  white-space: nowrap;
  color: inherit;
  text-decoration: none;
  border-radius: calc(var(--site-radius, 4px) * 0.75);
}
.sdk-cta__link[data-v-6d008a43]:hover,
.sdk-cta__link[data-v-6d008a43]:focus-visible {
  background: color-mix(in srgb, currentColor 8%, transparent);
}
@media (prefers-reduced-motion: reduce) {
.sdk-cta__caret[data-v-6d008a43] { transition: none;
}
}


.sdk-cta[data-v-de91feec] {
  position: relative;
  display: inline-flex;
  align-items: stretch;
  gap: 1px;   /* a hairline seam between the two halves of the split button */
}
.sdk-cta__primary[data-v-de91feec] { display: inline-flex; align-items: center;
}
.sdk-cta__caret-btn[data-v-de91feec] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  cursor: pointer;
  /* Inherits the theme's button class, so it matches the primary half. */
}
.sdk-cta__caret[data-v-de91feec] {
  width: 0.42em;
  height: 0.42em;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translate(-0.1em, -0.1em);
  transition: transform 0.18s ease;
  flex: none;
}
.sdk-cta--open .sdk-cta__caret[data-v-de91feec] {
  transform: rotate(-135deg) translate(-0.16em, -0.16em);
}
.sdk-cta__panel[data-v-de91feec] {
  position: absolute;
  top: 100%;
  right: 0;                  /* the CTA lives at the right edge of the bar */
  z-index: 1000;             /* above the concierge bubble (998–999) */
  min-width: max(200px, 100%);
  margin: 0.5rem 0 0;
  padding: 0.4rem;
  list-style: none;
  background: var(--site-color-bg, #fff);
  color: var(--site-color-text, #111);
  border: 1px solid color-mix(in srgb, currentColor 12%, transparent);
  border-radius: var(--site-radius, 4px);
  box-shadow: 0 12px 32px rgb(0 0 0 / 12%);
  font-family: var(--site-font-body, inherit);
}
.sdk-cta__panel[hidden][data-v-de91feec] { display: none;
}
.sdk-cta__item[data-v-de91feec] { margin: 0;
}
.sdk-cta__link[data-v-de91feec] {
  display: block;
  padding: 0.55rem 0.75rem;
  white-space: nowrap;
  color: inherit;
  text-decoration: none;
  border-radius: calc(var(--site-radius, 4px) * 0.75);
}
.sdk-cta__link[data-v-de91feec]:hover,
.sdk-cta__link[data-v-de91feec]:focus-visible {
  background: color-mix(in srgb, currentColor 8%, transparent);
}

/* The multi-button row. Only ever wraps 2+ buttons — one button keeps its
   own element as the root so the theme's scoped CSS lands unaided. */
.sdk-cta-group[data-v-de91feec] {
  display: inline-flex;
  align-items: center;
  gap: var(--site-space-sm, 0.6rem);
  flex-wrap: wrap;
}
@media (prefers-reduced-motion: reduce) {
.sdk-cta__caret[data-v-de91feec] { transition: none;
}
}


.sdk-cta-group .sdk-cta__btn--secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.7em 1.2em;
  border: 1px solid currentColor;
  border-radius: var(--site-radius, 4px);
  background: transparent;
  color: inherit;
  font: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.18s ease;
}
.sdk-cta-group .sdk-cta__btn--secondary:hover,
.sdk-cta-group .sdk-cta__btn--secondary:focus-visible {
  background: color-mix(in srgb, currentColor 10%, transparent);
}
.sdk-cta-group .sdk-cta__btn--link {
  display: inline-flex;
  align-items: center;
  padding: 0.7em 0.2em;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-decoration: underline;
  text-underline-offset: 0.25em;
  cursor: pointer;
}
.sdk-cta-group .sdk-cta__btn--link:hover,
.sdk-cta-group .sdk-cta__btn--link:focus-visible {
  text-decoration-thickness: 2px;
}
@media (prefers-reduced-motion: reduce) {
.sdk-cta-group .sdk-cta__btn--secondary { transition: none;
}
}


/* =====================================================================
 *  THE STAY, IN THE SITE HEADER  (`booking_page.cart_placement: header`)
 *
 *  ⚠️ THIS LIVED IN `styles/mobile-funnel.css` FIRST AND DID NOT BELONG THERE.
 *  That file's whole safety argument is that every rule in it sits inside
 *  `@media (max-width: 720px)`, so a hotel's laptop page cannot move — and
 *  `viewport.css.test.mjs` enforces it. These rules are not phone rules: the
 *  control is rendered at every width, and a hotelier who moves the stay into
 *  the header means it there on a laptop too. Its VISIBILITY is decided in the
 *  script (the setting, a mounted sheet, a non-empty stay), never by a
 *  breakpoint — so there was nothing for a media query to gate, and putting it
 *  in the phone layer was a category error the test correctly refused.
 *
 *  ⚠️ UNSCOPED, like the `sdk-cta__btn--*` fallbacks this file already ships.
 *  The button wears the THEME's own `linkClass`, so the hotel's styling
 *  reaches it; these rules only supply what a button does not have — a glyph
 *  beside a count, and a thumb-sized box.
 * ===================================================================== */
.sdk-stay {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 44px;
  cursor: pointer;
}
.sdk-stay__glyph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sdk-stay__count {
  font-variant-numeric: tabular-nums;
  line-height: 1;
}


/* =====================================================================
 * Ground — one line of chrome. Sticky in flow.
 * ===================================================================== */
.brs-hdr[data-v-a39e01ca] {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: color-mix(in srgb, var(--site-color-header-bg, #faf9f6) 94%, transparent);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: var(--site-color-header-fg, #000000);
  font-family: var(--site-font-ui);
  border-bottom: 1px solid var(--site-color-ink, #000000);
  transition:
    background var(--site-duration, 320ms) var(--site-ease, ease),
    border-color var(--site-duration, 320ms) var(--site-ease, ease),
    color var(--site-duration, 320ms) var(--site-ease, ease);
}
.brs-hdr.is-clear[data-v-a39e01ca] {
  background: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  color: var(--site-color-text-on-dark, #fbf9f6);
  border-bottom-color: color-mix(
    in srgb, var(--site-color-rule-gold, #d4af8f) 46%, transparent
  );
}
.brs-shell[data-v-a39e01ca] {
  box-sizing: border-box;
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
  padding-inline: var(--site-gutter, clamp(24px, 5vw, 72px));
}
.brs-row[data-v-a39e01ca] {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: clamp(16px, 2.4vw, 40px);
  min-height: var(--site-bar-h, 88px);
}
.brs-side[data-v-a39e01ca] {
  display: flex;
  align-items: center;
  min-width: 0;
  opacity: 0;
  transform: translateY(5px);
  transition:
    opacity var(--site-duration-slow, 600ms) var(--site-ease-out, ease),
    transform var(--site-duration-slow, 600ms) var(--site-ease-out, ease);
}
.brs-side--start[data-v-a39e01ca] { grid-column: 1; justify-content: flex-start;
}
.brs-side--end[data-v-a39e01ca]   { grid-column: 3; justify-content: flex-end; transition-delay: 90ms;
}
.brs-hdr.is-in .brs-side[data-v-a39e01ca] { opacity: 1; transform: none;
}

/* ------------------------------------------------------- menu trigger */
.brs-menubtn[data-v-a39e01ca] {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 12px 2px;
  margin-left: -2px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  color: inherit;
}
.brs-menubtn__rules[data-v-a39e01ca] {
  position: relative;
  display: block;
  width: 22px;
  height: 9px;
  flex: none;
}
.brs-menubtn__rules[data-v-a39e01ca]::before,
.brs-menubtn__rules[data-v-a39e01ca]::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background: currentColor;
  transition: top var(--site-duration, 320ms) var(--site-ease-out, ease),
              bottom var(--site-duration, 320ms) var(--site-ease-out, ease),
              right var(--site-duration, 320ms) var(--site-ease-out, ease);
}
.brs-menubtn__rules[data-v-a39e01ca]::before { top: 0;
}
.brs-menubtn__rules[data-v-a39e01ca]::after  { bottom: 0; right: 6px;
}
.brs-menubtn:hover .brs-menubtn__rules[data-v-a39e01ca]::before,
.brs-menubtn:focus-visible .brs-menubtn__rules[data-v-a39e01ca]::before { top: 3px;
}
.brs-menubtn:hover .brs-menubtn__rules[data-v-a39e01ca]::after,
.brs-menubtn:focus-visible .brs-menubtn__rules[data-v-a39e01ca]::after { bottom: 3px; right: 0;
}
.brs-menubtn__word[data-v-a39e01ca] {
  font-family: var(--site-font-ui);
  font-size: var(--site-micro, 10px);
  font-weight: 600;
  letter-spacing: var(--site-micro-track, 0.26em);
  text-indent: var(--site-micro-track, 0.26em);
  text-transform: uppercase;
  line-height: 1;
  white-space: nowrap;
}
.brs-menubtn[data-v-a39e01ca]:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 4px;
}

/* ---------------------------------------------------------------- brand */
.brs-brand[data-v-a39e01ca] {
  grid-column: 2;
  justify-self: center;
  display: inline-flex;
  align-items: center;
  min-width: 0;
  text-decoration: none;
  color: inherit;
}
.brs-brand[data-v-a39e01ca]:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 6px;
}
.brs-brand__mark[data-v-a39e01ca] {
  display: block;
  height: var(--site-mark-h, 52px);
  width: auto;
  max-width: min(56vw, 260px);
  object-fit: contain;
  transition: height var(--site-duration, 320ms) var(--site-ease-out, ease);
}
.brs-brand__word[data-v-a39e01ca] {
  font-family: var(--site-font-display);
  font-size: clamp(0.95rem, 1.5vw, 1.15rem);
  font-weight: 400;
  letter-spacing: 0.26em;
  text-indent: 0.26em;
  text-transform: uppercase;
  white-space: nowrap;
  color: inherit;
}

/* ----------------------------------------------------- right cluster */
.brs-cluster[data-v-a39e01ca] { gap: clamp(16px, 2vw, 28px);
}

/* ------------------------------------------------------------ language */
/* A compact tag, not a locale code. */
.brs-lang[data-v-a39e01ca] { position: relative;
}
.brs-lang__tag[data-v-a39e01ca] {
  appearance: none;
  background: none;
  border: 0;
  padding: 8px 2px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  cursor: pointer;
  font-family: var(--site-font-ui);
  font-size: var(--site-micro, 10px);
  font-weight: 600;
  letter-spacing: var(--site-micro-track, 0.26em);
  text-indent: var(--site-micro-track, 0.26em);
  text-transform: uppercase;
  color: currentColor;
  line-height: 1;
}
.brs-lang__tag svg[data-v-a39e01ca] { opacity: 0.7;
}
.brs-lang__tag[data-v-a39e01ca]:hover { color: var(--site-color-accent-strong, #b8905f);
}
.brs-hdr.is-clear .brs-lang__tag[data-v-a39e01ca]:hover { color: var(--site-color-accent-on-dark, #d4af8f);
}
.brs-lang__tag[data-v-a39e01ca]:focus-visible { outline: 1px solid currentColor; outline-offset: 4px;
}

/* The open list is always ink on paper, whatever the bar wears. */
.brs-lang__menu[data-v-a39e01ca] {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 20;
  min-width: 168px;
  margin: 0;
  padding: 6px 0;
  list-style: none;
  background: var(--site-color-bg, #faf9f6);
  border: 1px solid var(--site-color-ink, #000);
  border-top: 1px solid var(--site-color-rule-gold, #d4af8f);
  box-shadow: 0 22px 50px -28px rgba(0, 0, 0, 0.5);
}
.brs-lang__item[data-v-a39e01ca] {
  appearance: none;
  width: 100%;
  background: none;
  border: 0;
  padding: 11px 18px;
  text-align: left;
  cursor: pointer;
  font-family: var(--site-font-body);
  font-size: 0.9375rem;
  color: var(--site-color-ink, #1f1b16);
}
.brs-lang__item[data-v-a39e01ca]:hover { color: var(--site-color-accent-strong, #b8905f);
}
.brs-lang__item.is-current[data-v-a39e01ca] { color: var(--site-color-accent-strong, #b8905f);
}
.brs-lang__item.is-current[data-v-a39e01ca]::after {
  content: '·';
  margin-left: 8px;
}
.brs-lang__item[data-v-a39e01ca]:focus-visible {
  outline: 1px solid var(--site-color-accent-strong, #b8905f);
  outline-offset: -3px;
}

/* CTA — the locked .site-btn primitive, only its sizing hooks touched. */
[data-v-a39e01ca] .brs-cta {
  --site-pad-y: 13px;
  --site-size: 11px;
}
.brs-hdr.is-clear[data-v-a39e01ca] .brs-cta {
  --site-frame: var(--site-color-rule-gold-dark, #a88a63);
  --site-rule: color-mix(in srgb, var(--site-color-text-on-dark, #fbf9f6) 34%, transparent);
  --site-rule-hover: var(--site-color-accent-on-dark, #d4af8f);
  --site-label: var(--site-color-text-on-dark, #fbf9f6);
}
.brs-hdr.is-clear[data-v-a39e01ca] .brs-cta:focus-visible {
  outline-color: var(--site-color-accent-on-dark, #d4af8f);
}

/* =====================================================================
 * Narrow papers
 * ===================================================================== */
@media (max-width: 1079px) {
.brs-row[data-v-a39e01ca] { min-height: var(--site-bar-h, 72px);
}
.brs-brand__mark[data-v-a39e01ca] { height: var(--site-mark-h, 44px);
}
}
@media (max-width: 720px) {
.brs-menubtn__word[data-v-a39e01ca] { display: none;
}
.brs-menubtn[data-v-a39e01ca] { gap: 0;
}
[data-v-a39e01ca] .brs-cta {
    --site-pad-y: 11px;
    --site-pad-x: 16px;
    --site-size: 10px;
    min-height: 42px;
}
.brs-cluster[data-v-a39e01ca] { gap: 14px;
}
}
@media (max-width: 420px) {
.brs-lang[data-v-a39e01ca] { display: none;
}
}

/* =====================================================================
 * The menu card — UNCHANGED from the variant the hotelier signed off.
 * ===================================================================== */
.brs-overlay[data-v-a39e01ca] {
  position: fixed;
  inset: 0;
  z-index: 1001;
  font-family: var(--site-font-body);
}
.brs-overlay__backdrop[data-v-a39e01ca] {
  position: absolute;
  inset: 0;
  background: color-mix(in oklab, var(--site-color-ink, #000) 42%, transparent);
  cursor: pointer;
}
.brs-menu[data-v-a39e01ca] {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(620px, 92vw);
  height: min(86vh, 820px);
  background: #faf7f0;
  overflow: hidden;
  box-shadow: 0 44px 110px -40px rgba(0, 0, 0, 0.55);
}
.brs-menu__frame[data-v-a39e01ca] {
  position: absolute;
  inset: clamp(60px, 9vh, 80px) clamp(22px, 3vw, 40px) clamp(22px, 3vw, 40px);
  border: 1px solid var(--site-color-rule-gold-dark, #a88a63);
  pointer-events: none;
}
.brs-menu__brand[data-v-a39e01ca] {
  position: absolute;
  top: clamp(60px, 9vh, 80px);
  left: 50%;
  transform: translate(-50%, -46%);
  z-index: 2;
  background: #faf7f0;
  padding: 0 clamp(22px, 3vw, 40px) 8px;
  text-align: center;
}
.brs-menu__brand img[data-v-a39e01ca] {
  display: block;
  height: clamp(76px, 11vh, 104px);
  width: auto;
  margin-inline: auto;
}
.brs-menu__word[data-v-a39e01ca] {
  font-family: var(--site-font-display);
  font-size: 1.4rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
}
.brs-menu__city[data-v-a39e01ca] {
  margin: 10px 0 0;
  font-family: var(--site-font-display);
  font-size: 0.7rem;
  letter-spacing: 0.42em;
  text-transform: uppercase;
  color: var(--site-color-accent-strong, #a8792e);
}
.brs-menu__nav[data-v-a39e01ca] {
  position: absolute;
  left: clamp(22px, 3vw, 40px);
  right: clamp(22px, 3vw, 40px);
  bottom: clamp(22px, 3vw, 40px);
  top: calc(clamp(60px, 9vh, 80px) + clamp(64px, 9vh, 84px));
  display: flex;
  justify-content: center;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.brs-menu__list[data-v-a39e01ca] {
  list-style: none;
  margin: 0;
  padding: clamp(10px, 2vh, 24px) 0 clamp(14px, 3vh, 30px);
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  gap: 0;
}
.brs-menu__item[data-v-a39e01ca] {
  opacity: 0;
  transform: translateY(10px);
}
.brs-drawer-enter-active .brs-menu__item[data-v-a39e01ca],
.brs-overlay .brs-menu__item[data-v-a39e01ca] {
  animation: brs-menu-rise-a39e01ca 600ms var(--site-ease-out, ease) both;
  animation-delay: calc(160ms + var(--brs-i, 0) * 70ms);
}
@keyframes brs-menu-rise-a39e01ca {
to { opacity: 1; transform: none;
}
}
.brs-overlay[data-v-a39e01ca] .brs-mlink {
  position: relative;
  display: inline-block;
  padding: 4px 2px;
  font-family: var(--site-font-display);
  font-size: clamp(1.05rem, 1.35vw, 1.3rem);
  font-weight: 400;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--site-color-ink, #1f1b16);
  transition: color var(--site-duration, 320ms) ease;
}
.brs-overlay[data-v-a39e01ca] .brs-mlink::after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: -4px;
  height: 1px;
  background: var(--site-color-accent-strong, #a8792e);
  transition: left var(--site-duration, 320ms) ease, right var(--site-duration, 320ms) ease;
}
.brs-overlay[data-v-a39e01ca] .brs-mlink:hover,
.brs-overlay[data-v-a39e01ca] .brs-mlink.router-link-active {
  color: var(--site-color-accent-strong, #a8792e);
}
.brs-overlay[data-v-a39e01ca] .brs-mlink:hover::after,
.brs-overlay[data-v-a39e01ca] .brs-mlink.router-link-active::after {
  left: 0;
  right: 0;
}
.brs-overlay[data-v-a39e01ca] .brs-mlink:focus-visible {
  outline: 1px solid var(--site-color-accent-strong, #a8792e);
  outline-offset: 4px;
}
.brs-drawer-enter-active[data-v-a39e01ca],
.brs-drawer-leave-active[data-v-a39e01ca] {
  transition: opacity var(--site-duration, 320ms) var(--site-ease, ease);
}
.brs-drawer-enter-active .brs-menu[data-v-a39e01ca] {
  transition: transform 600ms var(--site-ease-expo, cubic-bezier(0.16, 1, 0.3, 1));
}
.brs-drawer-enter-from[data-v-a39e01ca],
.brs-drawer-leave-to[data-v-a39e01ca] { opacity: 0;
}
.brs-drawer-enter-from .brs-menu[data-v-a39e01ca] { transform: translate(-50%, -50%) scale(0.97);
}
@media (prefers-reduced-motion: reduce) {
.brs-hdr[data-v-a39e01ca],
  .brs-hdr[data-v-a39e01ca] *,
  .brs-hdr[data-v-a39e01ca] *::before,
  .brs-hdr[data-v-a39e01ca] *::after,
  .brs-overlay[data-v-a39e01ca],
  .brs-overlay[data-v-a39e01ca] *,
  .brs-overlay[data-v-a39e01ca] *::before,
  .brs-overlay[data-v-a39e01ca] *::after {
    animation: none !important;
    transition: none !important;
}
.brs-side[data-v-a39e01ca] { opacity: 1; transform: none;
}
}


/* In-flow sticky bar: the header occupies its own height, so the app
 * shell must NOT reserve a second offset. Unscoped on purpose and
 * !important so this wins over theme/tokens.css. --site-hdr-h is
 * published from script, never declared here. */
:root {
  --site-header-h: 0px !important;
  --site-header-w: 0px !important;
}


.footer-social-icon[data-v-42e147af] {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
}


/* Behavioural primitives — themes restyle freely. */
.lang-switcher[data-v-5c7ee371] {
  position: relative;
  display: inline-flex;
}
.lang-switcher__trigger[data-v-5c7ee371] {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
}
.lang-switcher__trigger-glyph[data-v-5c7ee371] {
  line-height: 0;
  display: inline-flex;
}
.lang-switcher__caret[data-v-5c7ee371] {
  width: 0.4rem;
  height: 0.4rem;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: translateY(-0.1rem) rotate(45deg);
  transition: transform 0.25s ease;
}
.lang-switcher--open .lang-switcher__caret[data-v-5c7ee371] {
  transform: translateY(0.05rem) rotate(-135deg);
}
.lang-switcher__panel[data-v-5c7ee371] {
  position: absolute;
  bottom: calc(100% + 0.5rem);
  left: 0;
  z-index: 40;
  list-style: none;
  margin: 0;
  padding: 0.35rem 0;
  min-width: 12rem;
  font: inherit;
}
.lang-switcher__option[data-v-5c7ee371] {
  cursor: pointer;
}
/* The row's layout lives on the <a> — it's the element that now wraps the
   label/code/mark, and it must fill the row so the whole option is
   clickable rather than just the text. */
.lang-switcher__option-link[data-v-5c7ee371] {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  width: 100%;
  color: inherit;
  text-decoration: none;
  font: inherit;
}
.lang-switcher-fade-enter-active[data-v-5c7ee371],
.lang-switcher-fade-leave-active[data-v-5c7ee371] {
  transition: opacity 0.18s ease, transform 0.18s ease;
}
.lang-switcher-fade-enter-from[data-v-5c7ee371],
.lang-switcher-fade-leave-to[data-v-5c7ee371] {
  opacity: 0;
  transform: translateY(0.25rem);
}


/* =====================================================================
 * Ground — the black band the brand book declared and nothing used.
 *
 * H5: no transform, filter, backdrop-filter, contain or will-change
 * anywhere in this file. The concierge dock is position:fixed and any
 * one of those on an ancestor would re-anchor it to this footer's box.
 * Nor does this component ever write --site-sticky-footer-h (F1) — the
 * SDK measures real fixed bars itself.
 * ===================================================================== */
.derby-footer[data-v-e029deb4] {
  background: var(--site-color-footer-bg, #000000);
  color: var(--site-color-footer-fg, #fbf9f6);
  font-family: var(--site-font-ui);
}
.derby-footer__inner[data-v-e029deb4] {
  max-width: 1440px;
  margin-inline: auto;
  padding-inline: var(--site-gutter, clamp(24px, 5vw, 72px));
  padding-top: clamp(64px, 9vw, 112px);
  /* Room at the foot for the concierge dock to rest without sitting on
     the copyright line. */
  padding-bottom: clamp(72px, 8vw, 104px);
}

/* =====================================================================
 * Band 1 — the house left, the address right.
 * ===================================================================== */
.derby-footer__head[data-v-e029deb4] {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(48px, 7vw, 72px);
  padding-bottom: clamp(48px, 6vw, 72px);
}
@media (min-width: 900px) {
.derby-footer__head[data-v-e029deb4] {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: clamp(48px, 8vw, 128px);
}
}

/* ------------------------------------------------------- brand column */
.derby-footer__brand[data-v-e029deb4] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(24px, 3vw, 32px);
}
.derby-footer__logo-link[data-v-e029deb4],
.derby-footer__wordmark-link[data-v-e029deb4] {
  display: inline-block;
  text-decoration: none;
  color: inherit;
}
.derby-footer__logo[data-v-e029deb4] {
  display: block;
  height: clamp(72px, 8vw, 96px);
  width: auto;
  max-width: 100%;
}
.derby-footer__wordmark[data-v-e029deb4] {
  display: block;
  font-family: var(--site-font-display);
  font-size: clamp(1.25rem, 2vw, 1.6rem);
  font-weight: 400;
  letter-spacing: 0.24em;
  text-indent: 0.24em;
  text-transform: uppercase;
  line-height: 1.2;
}
.derby-footer__tagline[data-v-e029deb4] {
  margin: 0;
  max-width: 32ch;
  font-family: var(--site-font-body);
  font-style: italic;
  font-size: clamp(1.0625rem, 1.3vw, 1.25rem);
  line-height: 1.5;
  color: var(--site-color-text-on-dark-muted, #b3aca1);
}

/* Social — only ever rendered when the record carries links. */
.derby-footer__social[data-v-e029deb4] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 28px;
}
.derby-footer__social-link[data-v-e029deb4] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  text-decoration: none;
  color: var(--site-color-text-on-dark-muted, #b3aca1);
  font-family: var(--site-font-ui);
  font-size: var(--site-micro, 10px);
  font-weight: 600;
  letter-spacing: var(--site-micro-track, 0.26em);
  text-transform: uppercase;
  transition: color var(--site-duration, 320ms) var(--site-ease-out, ease);
}
.derby-footer__social-icon[data-v-e029deb4] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 15px;
  height: 15px;
  color: currentColor;
}
.derby-footer__social-icon[data-v-e029deb4] svg {
  width: 100%;
  height: 100%;
  display: block;
}
.derby-footer__social-link[data-v-e029deb4]:hover,
.derby-footer__social-link[data-v-e029deb4]:focus-visible {
  color: var(--site-color-accent-on-dark, #d4af8f);
}

/* ----------------------------------------------------- address column */
.derby-footer__where[data-v-e029deb4] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}
.derby-footer__kicker[data-v-e029deb4] {
  margin: 0 0 clamp(18px, 2vw, 26px);
  font-family: var(--site-font-ui);
  font-size: var(--site-micro, 10px);
  font-weight: 600;
  letter-spacing: var(--site-micro-track, 0.26em);
  text-indent: var(--site-micro-track, 0.26em);
  text-transform: uppercase;
  color: var(--site-color-accent-on-dark, #d4af8f);
}

/* The display moment. Measured against the Douglas footer's 56px/1.44
   Cardo line; held slightly back because this one is a fact, not a
   headline. */
.derby-footer__street[data-v-e029deb4] {
  margin: 0;
  font-family: var(--site-font-display);
  font-weight: 400;
  font-size: clamp(1.75rem, 1rem + 2.2vw, 2.75rem);
  line-height: 1.16;
  letter-spacing: 0.005em;
  color: var(--site-color-footer-fg, #fbf9f6);
}
.derby-footer__place[data-v-e029deb4] {
  margin: 10px 0 0;
  font-family: var(--site-font-body);
  font-size: clamp(1.0625rem, 1.2vw, 1.1875rem);
  line-height: 1.5;
  color: var(--site-color-text-on-dark-muted, #b3aca1);
}
.derby-footer__reach[data-v-e029deb4] {
  list-style: none;
  margin: clamp(24px, 3vw, 34px) 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.derby-footer__reach-link[data-v-e029deb4] {
  display: inline-block;
  padding-block: 4px;
  font-family: var(--site-font-body);
  font-size: 1.0625rem;
  line-height: 1.5;
  color: var(--site-color-footer-fg, #fbf9f6);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition:
    color var(--site-duration, 320ms) var(--site-ease-out, ease),
    border-color var(--site-duration, 320ms) var(--site-ease-out, ease);
}
.derby-footer__reach-link[data-v-e029deb4]:hover,
.derby-footer__reach-link[data-v-e029deb4]:focus-visible {
  color: var(--site-color-accent-on-dark, #d4af8f);
  border-bottom-color: var(--site-color-rule-gold-dark, #a88a63);
  outline: none;
}

/* Newsletter — off for this hotel; kept correct for the day it isn't. */
.derby-footer__newsletter[data-v-e029deb4] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  margin-top: clamp(28px, 3vw, 40px);
}
.derby-footer__nl-headline[data-v-e029deb4] {
  margin: 0;
  font-family: var(--site-font-display);
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.25;
}
.derby-footer__nl-body[data-v-e029deb4] {
  margin: 0;
  max-width: 34ch;
  font-family: var(--site-font-body);
  font-size: 1.0625rem;
  line-height: 1.55;
  color: var(--site-color-text-on-dark-muted, #b3aca1);
}

/* =====================================================================
 * The rules.
 * ===================================================================== */
.derby-footer__rule[data-v-e029deb4] {
  height: 1px;
  width: 100%;
  background: var(--site-color-divider-on-dark, #2e2a24);
}
.derby-footer__rule--gold[data-v-e029deb4] {
  background: color-mix(
    in srgb, var(--site-color-footer-rule, #d4af8f) 62%, transparent
  );
}

/* =====================================================================
 * Band 2 — the way round, and one door.
 * ===================================================================== */
.derby-footer__mid[data-v-e029deb4] {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 4vw, 48px);
  padding-block: clamp(32px, 4vw, 44px);
}
.derby-footer__nav-list[data-v-e029deb4] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px clamp(28px, 4vw, 52px);
}
.derby-footer__nav-link[data-v-e029deb4] {
  display: inline-block;
  padding-block: 10px;
  font-family: var(--site-font-ui);
  font-size: var(--site-micro-lg, 12px);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--site-color-footer-fg, #fbf9f6);
  position: relative;
  transition: color var(--site-duration, 320ms) var(--site-ease-out, ease);
}
/* the tell: a gold hairline draws under the label */
.derby-footer__nav-link[data-v-e029deb4]::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 1px;
  background: var(--site-color-accent-on-dark, #d4af8f);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform var(--site-duration-slow, 600ms)
    var(--site-ease-expo, ease);
}
.derby-footer__nav-link[data-v-e029deb4]:hover::after,
.derby-footer__nav-link[data-v-e029deb4]:focus-visible::after,
.derby-footer__nav-link.router-link-active[data-v-e029deb4]::after {
  transform: scaleX(1);
}
.derby-footer__nav-link[data-v-e029deb4]:hover,
.derby-footer__nav-link[data-v-e029deb4]:focus-visible {
  color: var(--site-color-accent-on-dark, #d4af8f);
  outline: none;
}

/* The primitive's declared dark voicing. `.site-btn--dark` resolves its
   engaged rule from --site-color-accent, which the brand record locks
   to black on this hotel — invisible here. Retune through the vars the
   primitive exposes for exactly this (D4/H6); never restyle the role. */
.derby-footer__book[data-v-e029deb4] {
  --site-rule-hover: var(--site-color-accent-on-dark, #d4af8f);
  flex: none;
}
.derby-footer__book[data-v-e029deb4]:focus-visible {
  outline-color: var(--site-color-accent-on-dark, #d4af8f);
}

/* =====================================================================
 * Band 3 — the small print.
 * ===================================================================== */
.derby-footer__bottom[data-v-e029deb4] {
  border-top: 1px solid var(--site-color-divider-on-dark, #2e2a24);
  padding-top: clamp(24px, 3vw, 32px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px clamp(24px, 4vw, 40px);
}
.derby-footer__copyright[data-v-e029deb4] {
  margin: 0;
  font-family: var(--site-font-ui);
  font-size: 12px;
  letter-spacing: 0.06em;
  line-height: 1.5;
  color: var(--site-color-text-on-dark-muted, #b3aca1);
}
.derby-footer__legal[data-v-e029deb4] {
  list-style: none;
  margin: 0 0 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px clamp(20px, 3vw, 32px);
}
.derby-footer__legal-trigger[data-v-e029deb4] {
  appearance: none;
  border: 0;
  background: transparent;
  padding: 4px 0;
  cursor: pointer;
  font-family: var(--site-font-ui);
  font-size: var(--site-micro, 10px);
  font-weight: 600;
  letter-spacing: var(--site-micro-track, 0.26em);
  text-transform: uppercase;
  color: var(--site-color-text-on-dark-muted, #b3aca1);
  border-bottom: 1px solid transparent;
  transition:
    color var(--site-duration, 320ms) var(--site-ease-out, ease),
    border-color var(--site-duration, 320ms) var(--site-ease-out, ease);
}
.derby-footer__legal-trigger[data-v-e029deb4]:hover,
.derby-footer__legal-trigger[data-v-e029deb4]:focus-visible {
  color: var(--site-color-accent-on-dark, #d4af8f);
  border-bottom-color: var(--site-color-rule-gold-dark, #a88a63);
  outline: none;
}
.derby-footer__language[data-v-e029deb4] {
  font-family: var(--site-font-ui);
  font-size: 12px;
  color: var(--site-color-text-on-dark-muted, #b3aca1);
}
.derby-footer__language[data-v-e029deb4] button,
.derby-footer__language[data-v-e029deb4] a,
.derby-footer__language[data-v-e029deb4] select {
  color: inherit;
}
@media (max-width: 640px) {
.derby-footer__legal[data-v-e029deb4] { margin-left: 0;
}
}

/* =====================================================================
 * Legal modal — teleported above all chrome (incl. concierge).
 * ===================================================================== */
.derby-policy[data-v-e029deb4] {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--site-gutter, clamp(24px, 5vw, 72px));
  background: rgba(0, 0, 0, 0.6);
}
.derby-policy__panel[data-v-e029deb4] {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 680px;
  max-height: min(78vh, 720px);
  min-height: 0;
  background: var(--site-color-bg);
  color: var(--site-color-ink, #000);
  border: 1px solid var(--site-color-ink, #000);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28);
}
.derby-policy__head[data-v-e029deb4] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px clamp(24px, 4vw, 40px);
  border-bottom: 1px solid var(--site-color-border);
}
.derby-policy__title[data-v-e029deb4] {
  margin: 0;
  font-family: var(--site-font-display);
  font-size: 1.375rem;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.derby-policy__close[data-v-e029deb4] {
  appearance: none;
  border: 1px solid var(--site-color-border);
  background: transparent;
  cursor: pointer;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--site-font-ui);
  font-size: 1rem;
  line-height: 1;
  color: var(--site-color-ink, #000);
  transition: border-color var(--site-duration, 320ms) var(--site-ease-out, ease);
}
.derby-policy__close[data-v-e029deb4]:hover,
.derby-policy__close[data-v-e029deb4]:focus-visible {
  border-color: var(--site-color-ink, #000);
}
.derby-policy__tabs[data-v-e029deb4] {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  padding: 16px clamp(24px, 4vw, 40px) 0;
  border-bottom: 1px solid var(--site-color-border);
}
.derby-policy__tab[data-v-e029deb4] {
  appearance: none;
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 8px 0 12px;
  font-family: var(--site-font-ui);
  font-size: var(--site-micro, 10px);
  font-weight: 600;
  letter-spacing: var(--site-micro-track, 0.26em);
  text-transform: uppercase;
  color: var(--site-color-muted);
  border-bottom: 1px solid transparent;
  margin-bottom: -1px;
  transition:
    color var(--site-duration, 320ms) var(--site-ease-out, ease),
    border-color var(--site-duration, 320ms) var(--site-ease-out, ease);
}
.derby-policy__tab[data-v-e029deb4]:hover,
.derby-policy__tab[data-v-e029deb4]:focus-visible {
  color: var(--site-color-ink, #000);
}
.derby-policy__tab--active[data-v-e029deb4] {
  color: var(--site-color-ink, #000);
  border-bottom-color: var(--site-color-ink, #000);
}
.derby-policy__body[data-v-e029deb4] {
  white-space: pre-wrap;
  overflow-y: auto;
  min-height: 0;
  padding: 24px clamp(24px, 4vw, 40px) clamp(24px, 4vw, 40px);
  font-family: var(--site-font-body);
  font-size: 1.0625rem;
  line-height: 1.65;
  color: var(--site-color-ink, #000);
}

/* Modal transition */
.derby-policy-enter-active[data-v-e029deb4],
.derby-policy-leave-active[data-v-e029deb4] {
  transition: opacity var(--site-duration, 320ms) var(--site-ease, ease);
}
.derby-policy-enter-from[data-v-e029deb4],
.derby-policy-leave-to[data-v-e029deb4] {
  opacity: 0;
}

/* =====================================================================
 * Reduced motion — restraint, literally.
 * ===================================================================== */
@media (prefers-reduced-motion: reduce) {
.derby-footer__nav-link[data-v-e029deb4]::after,
  .derby-footer__reach-link[data-v-e029deb4],
  .derby-footer__social-link[data-v-e029deb4],
  .derby-footer__legal-trigger[data-v-e029deb4],
  .derby-policy-enter-active[data-v-e029deb4],
  .derby-policy-leave-active[data-v-e029deb4] {
    transition: none;
}
}


/* Deliberately quiet and token-driven: this band sits directly under a
   bespoke, agent-designed footer on ~every site, so it has to read as
   part of it rather than as a second footer. Inherits the page's font
   and picks up the theme's own surface/ink tokens where they exist.

   A theme that CLAIMS the extras (see composables/useFooterExtras.js)
   embeds this inside its own footer, where standalone-band chrome would
   be wrong. Rather than have the component guess its context, the band
   values are knobs — set them on the element you put the class on:

     .site-footer__extras { --fx-pad: 0; --fx-max-w: none; }

   Custom properties inherit, and Vue applies a parent's class to a child
   component's root, so a theme's scoped rule reaches these. */
.fx[data-v-4cc3b550] {
  padding: var(--fx-pad, 1.5rem 1.25rem);
  background: var(--fx-bg, var(--site-footer-bg, var(--color-surface-alt, transparent)));
  color: var(--fx-ink, var(--site-footer-ink, var(--color-ink, inherit)));
  font-size: var(--fx-size, 0.85rem);
}
.fx__inner[data-v-4cc3b550] {
  max-width: var(--fx-max-w, var(--site-max-w, 1200px));
  margin: var(--fx-inner-margin, 0 auto);
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 3rem;
  align-items: flex-start;
}
.fx__group[data-v-4cc3b550] { min-width: 0;
}
.fx__group--text[data-v-4cc3b550] { flex: 1 1 100%;
}
.fx__heading[data-v-4cc3b550] {
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.65;
  margin: 0 0 0.6rem;
}
.fx__links[data-v-4cc3b550] { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.35rem;
}
.fx__link[data-v-4cc3b550] {
  color: inherit;
  text-decoration: none;
  opacity: 0.85;
  transition: opacity 140ms ease;
}
.fx__link[data-v-4cc3b550]:hover, .fx__link[data-v-4cc3b550]:focus-visible { opacity: 1; text-decoration: underline;
}
.fx__logos[data-v-4cc3b550] {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem;
}
.fx__logo[data-v-4cc3b550] {
  display: block;
  max-height: 38px;
  max-width: 140px;
  width: auto;
  height: auto;
  object-fit: contain;
}
.fx__texts[data-v-4cc3b550] { display: grid; gap: 0.35rem;
}
.fx__text[data-v-4cc3b550] { margin: 0; opacity: 0.8;
}
@media (max-width: 640px) {
.fx__inner[data-v-4cc3b550] { gap: 1.5rem;
}
.fx__group[data-v-4cc3b550] { flex: 1 1 100%;
}
}


/* Deliberately quiet and token-driven: this band sits directly under a
   bespoke, agent-designed footer on ~every site, so it has to read as part of
   it rather than as a second footer. Inherits the page's font and picks up
   the theme's own surface/ink tokens where they exist.

   A theme that CLAIMS the affiliations (composables/useAffiliations.js)
   embeds this inside its own footer, where standalone-band chrome would be
   wrong. Rather than have the component guess its context, the band values
   are knobs — set them on the element you put the class on:

     .site-footer__affiliations { --sa-pad: 0; --sa-max-w: none; }

   Custom properties inherit, and Vue applies a parent's class to a child
   component's root, so a theme's scoped rule reaches these. */
.sa[data-v-aaf444a2] {
  padding: var(--sa-pad, var(--site-space-4, 1.25rem));
  /* ⚠️ `--site-footer-bg` / `--site-footer-ink` DO NOT EXIST in the token
     set — the first version invented them, so every hotel silently got the
     raw fallback. Inherit the footer's own ground instead. */
  background: var(--sa-bg, transparent);
  color: var(--sa-ink, inherit);
}
.sa__inner[data-v-aaf444a2] {
  max-width: var(--sa-max-w, var(--site-max, 1200px));
  margin: var(--sa-inner-margin, 0 auto);
}
