/* Interactive navbar session: public presentation changes; broad checks deferred. */
.site-navigation {
  --nav-surface: #102c3b;
  --nav-muted: #c0cdd5;
  --nav-accent: #7da2be;
  --nav-line: #ffffff1a;
  --nav-hover: #ffffff0a;
}
.site-navigation .brand {
  font-size: 1.3125rem;
  font-weight: 650;
  letter-spacing: -0.045em;
}
.site-navigation-links {
  justify-content: center;
  gap: 1.75rem;
}
.site-navigation .audience-switch {
  gap: 0;
}
.site-navigation .audience-switch a {
  min-width: 8.75rem;
  padding-inline: 1.125rem;
  font-size: 0.875rem;
  letter-spacing: -0.01em;
}
.site-navigation .audience-switch a[aria-current="page"] {
  background: #ffffff08;
}
.site-navigation .audience-switch a::after {
  inset-inline: 1.125rem;
}
.site-navigation-links > .site-navigation-menu {
  padding-inline-start: 0;
  border-inline-start: 0;
}
.site-navigation .site-navigation-user > summary {
  border: 1px solid #ffffff24;
  padding-inline: 0.875rem;
  color: #eef4f7;
}
.site-navigation-menu li a,
.site-navigation-locales li a {
  padding-inline: 0.875rem;
}
@media (max-width: 1100px) and (min-width: 901px) {
  .site-navigation-inner {
    gap: 1rem;
  }
  .site-navigation-links {
    gap: 0.75rem;
  }
  .site-navigation .audience-switch a {
    min-width: 0;
    padding-inline: 0.875rem;
  }
}
@media (max-width: 900px) {
  .site-navigation-links {
    justify-content: space-between;
    gap: 0.5rem;
    border-top: 1px solid var(--nav-line);
    margin-top: 0.375rem;
  }
  .site-navigation .audience-switch a {
    min-width: 0;
    min-height: 3rem;
    padding-inline: 0.875rem;
    font-size: 0.8125rem;
  }
  .site-navigation .audience-switch a::after {
    inset-inline: 0.875rem;
  }
  .site-navigation .site-navigation-user > summary {
    min-height: 2.75rem;
    padding-inline: 0.625rem;
  }
}
@media (max-width: 380px) {
  .site-navigation .brand {
    font-size: 1.125rem;
  }
  .site-navigation .audience-switch a {
    padding-inline: 0.625rem;
  }
  .site-navigation .audience-switch a::after {
    inset-inline: 0.625rem;
  }
}

/* Manrope wordmark subset, sourced from Google Fonts.
Copyright 2018 The Manrope Project Authors (https://github.com/googlefonts/manrope)

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded, 
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

*/
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(data:font/woff2;base64,d09GMgABAAAAAAWgAA8AAAAACgAAAAVGAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG4F8HFwGYD9TVEFUKgBcEQgKh0SGPAsWAAE2AiQDKAQgBYQUByAMBxteCMjE4NnUv0ce0dbTWY25sy1TKiLfUhXKxMnmyVwE+eLOzx8zXglNGwts4EVW8Vb9V1U6kEug6VlUYBMeHciB+i21C9Y6h5+eDwLAjh7gYYqJS8mBs3SyWAdnnVtqgBMUlvxtKKotFxtgrSUhPQUDKwhiIINSO+CFZXV4xC3jW4iBY4OJxpvGx7hRiAERAVB6bDCPOylYmEBhWRPKwK6rzPKKmWA+t2BddaWbQD0EIaWWEhezUbJygL5v4lR2sE56DMCaJcwlDGAWnKNrG5irGeBq+0dkJ6Qm4ho4tFhz/tsnNVlzmAIOZOt8gPLsNlUoa+lpxIKAM++KADOxskoidyG2PBYTdzcIMIG0JrCTIsGEAGFPM4NDDNyoQC1aDIN0WoAb5f09ja+MK8YOY6ux0VhFsj8qJSCGgUAF7KbKqcbbAKSdbCbnyCPAbzbjDwImlqIsgDq/ZlRwcCdnFA2mjl4OEoop9vfUez9+m3je+cTh+yj3DU2zexUFsqo6fHq+W/nQMdXfp8aq6luQ31Rybin2PIdPH6rL1yEeTcs7o9ntbq+mEY+u5z+UTTme3W+Uk6frDp+ae1wFtZORipLn0/XwozrJVRRl0KlHhyBfV+tR1O9sCr2V40dcG2SWJ4okEA6bR9dHv9R1hwMLJuuUidOm+ptr/auq/WpovVfLKxWyjHiOaHmaCP/3Dp+q5r6xQ8vTFMiX1VxVVSEr90ReFORlGXyGIEtJfJIgi3F8nCBL4/hxgiy5eJcgizzPC/KEfnw/QRZ78b0EWezB9xDkCZ34ToIscjwnyFI7vh1+i3yTv7gv88MP92XyF9/8M+O3mOfByV1nXV62ZuGZycXvrVlT/N6ZyQvXXF7e1ROcHPM84zcsArvtRXA1YQ87f7o7feDZs9MH/nT3sJOtJsGXjSvhxUzcqyETFvLXK+uGX584tyg4vpiEX8HZSGlbQdaqouTeUytey4s+vbv986jpIe7BbxQX1rk8w9om/pbabe5He28ufS+fr/3HMTFp1ffvR6bVnXkjU02uGOQS9iSbpa7poZNCV7crDus1k9aGd44RwuGJ3PPvkiV/7zjuY39btu3Ad1ub2wfd9C/bXbVsom/Wvt1rZ+2amdEcGzk2MNW10ryTfPfg0QN8Pqi7qTKiuqa11K2e6Trv3WljRo7pLYXvrHhx6gW86LzN2VRvyZgbvjW8ZLzFiv6Rj/4+125fWPegZCm3KCmdH8j93tBZiprdfnN2rJRdVb3uWtbsmTdTJy31d4f1ry2MTWGTaFH/vhHlU7pOj54SvSpHmJCz54fLQBewACxgmVMAZAAugN3FXgEBQD3mR3czkl8PdP1mNVmeAcA7Z/bMAYD3ojO3/v/xf17bLdtGAGYwAAACWHP+2wfYXf9//P/HtlsgAAAgvYqdvYd7rAIXuwiL6BJk0GvSPUwULpoBL41DBnsOLrLsPau0owz+KHwR+yKtaUU9ozZT22Ol/d0nE3SAQmYQgDtkE3gsmafrZBbtIJHN6IAsUgAGIUpNXgptiKKyGK8FYjEJEkS4MQ6NqEMZ8lGOalSiClJaKKEJw9HX2K4FpRBRjSZIqqqPL5T/Xh36oBEiKtEX6YhDClLhRgNENKIJ5ehNHJMHIuJPG9EADoPQB4PRD4NqxhHIRgJSkTghMUzW1ioxHnVwQ4Ry4kCYh8knkZ6ykcMA9EN/DFNRDqpQhpKAjBZTA6VgNBbj70d89lwLOHS7K22LiSpRveocjxIvVYpG1N8hVIkoNpaXwY2+qGcC3f8Skb2psQkDfufic8SYe4wuBgAA)
    format("woff2");
  unicode-range: U+43-44, U+61, U+65-66, U+6b, U+73;
}

.site-navigation .brand {
  gap: 0;
  font-family: "Manrope", "DeskCafes Sans", sans-serif;
  font-size: 1.75rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.055em;
  color: #fff;
}
.site-navigation .brand .brand-mark {
  display: none;
}
@media (max-width: 900px) {
  .site-navigation .brand {
    font-size: 1.5rem;
  }
}
@media (max-width: 380px) {
  .site-navigation .brand {
    font-size: 1.375rem;
  }
}

/* Raised discovery header and overlapping search bar. */
.explore-workspace {
  position: relative;
  isolation: isolate;
}
.explore-workspace::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 0 auto;
  height: 222px;
  background: #102c3b;
}
.explore-workspace .discovery-catalog {
  width: min(100% - 3rem, 78rem);
  padding-block: 0 2rem;
}
.explore-workspace .catalog-heading {
  min-height: 180px;
  margin: 0;
  padding-block: 2rem;
  color: #fff;
}
.explore-workspace .catalog-heading h1 {
  max-width: 27ch;
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 750;
  line-height: 1.1;
  letter-spacing: -0.035em;
}
.explore-workspace .catalog-heading > a {
  color: #d4e3ea;
  font-size: 0.875rem;
}
:is(.explore-workspace, .discovery-workspace) .discovery-search {
  position: relative;
  z-index: 2;
  grid-template-columns: 1fr 1fr 1fr 1.1fr auto;
  align-items: stretch;
  gap: 4px;
  min-height: 84px;
  padding: 4px;
  border: 0;
  border-radius: 8px;
  background: #d7ad61;
  box-shadow: 0 6px 20px #102c3b14;
}
:is(.explore-workspace, .discovery-workspace) .discovery-search > label {
  position: relative;
  min-width: 0;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 12px;
  row-gap: 1px;
  align-content: center;
  padding: 12px 14px;
  border-radius: 4px;
  background: #fff;
}
.search-field-icon {
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center;
  width: 24px;
  height: 24px;
  fill: none;
  stroke: #526570;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
:is(.explore-workspace, .discovery-workspace) .search-field-title {
  grid-column: 2;
  color: #697680;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.35;
}
:is(.explore-workspace, .discovery-workspace) .discovery-search input,
:is(.explore-workspace, .discovery-workspace) .discovery-search select {
  grid-column: 2;
  min-height: 28px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
  color: #152f3e;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  input::placeholder {
  color: #152f3e;
  opacity: 1;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  label:focus-within {
  outline: 2px solid #424867;
  outline-offset: -3px;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  input:focus-visible,
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  select:focus-visible {
  outline: 0;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  [data-discovery-submit] {
  min-height: 72px;
  padding: 0.875rem 1.5rem;
  border: 0;
  border-radius: 4px;
  background: #302e2b;
  color: #fff;
  font: 700 1rem/1.25 var(--font-body, sans-serif);
  cursor: pointer;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  [data-discovery-submit]:hover {
  background: #302e2b;
}
.explore-workspace .discovery-actions {
  margin: 0.25rem 0 0.5rem;
}
.explore-workspace .discovery-actions button {
  min-height: 44px;
  border-color: transparent;
  background: transparent;
  padding-inline: 0.5rem;
  color: #302e2b;
}
@media (max-width: 1100px) {
  :is(.explore-workspace, .discovery-workspace) .discovery-search > label {
    grid-template-columns: 20px minmax(0, 1fr);
    column-gap: 8px;
    padding-inline: 10px;
  }
  :is(.explore-workspace, .discovery-workspace) .search-field-icon {
    width: 20px;
    height: 20px;
  }
  :is(.explore-workspace, .discovery-workspace)
    .discovery-search
    [data-discovery-submit] {
    padding-inline: 1rem;
  }
}
@media (max-width: 900px) {
  .explore-workspace .discovery-catalog {
    width: calc(100% - 2rem);
  }
  .explore-workspace::before {
    height: 190px;
  }
  .explore-workspace .catalog-heading {
    min-height: 152px;
    padding-block: 1.5rem;
  }
  :is(.explore-workspace, .discovery-workspace) .discovery-search {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :is(.explore-workspace, .discovery-workspace)
    .discovery-search
    [data-discovery-submit] {
    grid-column: 1 / -1;
    min-height: 48px;
  }
}
@media (max-width: 380px) {
  .explore-workspace .discovery-catalog {
    width: calc(100% - 1.5rem);
  }
  .explore-workspace .catalog-heading h1 {
    font-size: 1.875rem;
  }
}

/* The hero is full bleed; keep the explicit search action visible with autosync. */
main.explore-workspace {
  width: 100%;
  max-width: none;
  margin: 0;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  button[data-discovery-submit] {
  display: block;
}
/* Preserve all consent choices in a visible bottom notice without splitting the header. */
.site-frame:has(.explore-workspace) > .consent-banner {
  position: fixed;
  z-index: 80;
  inset-inline: 1rem;
  bottom: 1rem;
  width: auto;
  max-height: calc(100dvh - 2rem);
  overflow: auto;
  margin: 0 auto;
  box-shadow: 0 8px 32px #102c3b24;
}

/* Compact, edge-to-edge search with a cooler accent. */
.site-navigation {
  border-bottom: 0;
}
.site-navigation-links {
  border-top: 0;
}
.explore-workspace {
  --search-page-inset: max(1.5rem, calc((100% - 78rem) / 2));
}
.explore-workspace .discovery-catalog {
  width: 100%;
}
.explore-workspace .catalog-heading {
  padding-inline: var(--search-page-inset);
}
.explore-workspace .discovery-form {
  padding-inline: var(--search-page-inset);
}
.explore-workspace .discovery-search {
  width: calc(100% + 2 * var(--search-page-inset));
  margin-inline: calc(-1 * var(--search-page-inset));
  min-height: 60px;
  padding: 3px;
  gap: 3px;
  border-radius: 0;
  background: #7da2be;
  box-shadow: 0 3px 10px #102c3b0d;
}
.explore-workspace .discovery-search > label {
  grid-template-columns: 20px minmax(0, 1fr);
  column-gap: 10px;
  padding: 7px 14px;
  border-radius: 2px;
}
.explore-workspace .search-field-icon {
  width: 20px;
  height: 20px;
}
.explore-workspace .search-field-title {
  font-size: 0.6875rem;
  line-height: 1.2;
}
.explore-workspace .discovery-search input,
.explore-workspace .discovery-search select {
  min-height: 24px;
  font-size: 0.9375rem;
}
.explore-workspace .discovery-search [data-discovery-submit] {
  min-height: 54px;
  padding: 0.625rem 1.5rem;
  border-radius: 2px;
  font-size: 0.9375rem;
}
.explore-workspace::before {
  height: 210px;
}
@media (max-width: 900px) {
  .explore-workspace {
    --search-page-inset: 1rem;
  }
  .explore-workspace::before {
    height: 182px;
  }
  .explore-workspace .discovery-search > label {
    padding: 7px 10px;
  }
  .explore-workspace .discovery-search [data-discovery-submit] {
    min-height: 44px;
  }
}

/* Owner rule: every UI surface and control uses subtly rounded corners. */
:root {
  --ui-radius: 6px;
}
button,
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.site-navigation summary,
.site-navigation-menu ul,
.site-navigation-locales ul,
.site-navigation-menu li a,
.site-navigation-locales li a,
.audience-switch a,
.discovery-search,
.discovery-search > label,
.discovery-search [data-discovery-submit],
.discovery-filters,
.discovery-place,
.discovery-cover,
.profile-image,
.owner-empty,
.owner-step,
.owner-steps > *,
.identity-card,
.consent-banner,
.primary-action,
.secondary-action {
  border-radius: var(--ui-radius) !important;
}
.explore-workspace {
  container-type: inline-size;
}
.explore-workspace::before {
  /* The heading continues the same square, full-width navigation surface. */
  border-radius: 0;
}
.explore-workspace .discovery-search {
  width: 100cqw;
  margin-inline: calc((100% - 100cqw) / 2);
}
/* Render the translated Search/Clear label directly for sight and assistive UI. */
.discovery-search button[data-discovery-submit] {
  display: block !important;
  min-width: 120px;
  font-size: 1.0625rem !important;
  font-weight: 650;
}

/* Owner correction: change the header palette, retain the gold search outline. */
.site-navigation {
  --nav-surface: var(--brand-primary);
  --nav-accent: #f0d191;
  --nav-muted: #d8e4f2;
}
.explore-workspace::before {
  background: var(--brand-primary);
}
.explore-workspace .discovery-search {
  background: #d7ad61;
}

/* A joined header, inset sticky search, sharper soft corners and a brighter CTA. */
:root {
  --ui-radius: 3px;
  --sticky-nav-height: 68px;
}
.site-frame:has(.explore-workspace) > .site-navigation {
  margin: 0;
  border: 0;
  box-shadow: 0 2px 0 var(--brand-primary);
}
main.explore-workspace {
  margin-block: 0;
  padding-block-start: 0;
}
.explore-workspace .discovery-catalog {
  margin-block-start: 0;
  padding-block-start: 0;
}
.explore-workspace .catalog-heading {
  margin-block: 0;
}
.explore-workspace .discovery-search {
  position: sticky;
  top: var(--sticky-nav-height);
  z-index: 45;
  align-self: start;
  width: 100%;
  margin-inline: 0;
  box-shadow: 0 4px 14px #102c3b18;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  button[data-discovery-submit] {
  background: var(--brand-action);
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  button[data-discovery-submit]:hover {
  background: #424867;
}
@media (min-width: 901px) {
  .explore-workspace .discovery-filters,
  .explore-workspace .discovery-map-column {
    inset-block-start: calc(var(--sticky-nav-height) + 76px);
  }
}
/* Match the two-row navbar breakpoint, including the48px account avatar. */
@media (max-width: 1000px) {
  :root {
    --sticky-nav-height: 110px;
  }
}

/* Booking reference geometry: outer radius = inner radius + frame thickness. */
:is(.explore-workspace, .discovery-workspace) .discovery-search {
  --search-frame: 4px;
  padding: var(--search-frame);
  gap: var(--search-frame);
  min-height: 60px;
  border: 0;
  border-radius: calc(var(--ui-radius) + var(--search-frame)) !important;
  background: #ffb700;
  box-shadow: 0 2px 6px #102c3b24;
}
:is(.explore-workspace, .discovery-workspace) .discovery-search > label {
  min-height: 52px;
  margin: 0;
  padding: 6px 14px;
  border: 0;
  border-radius: var(--ui-radius) !important;
  background: #fff;
}
:is(.explore-workspace, .discovery-workspace)
  .discovery-search
  button[data-discovery-submit] {
  min-height: 52px;
  margin: 0;
  padding: 8px 24px;
  border: 0;
  border-radius: var(--ui-radius) !important;
}
@media (max-width: 900px) {
  :is(.explore-workspace, .discovery-workspace) .discovery-search > label {
    padding-inline: 10px;
  }
  :is(.explore-workspace, .discovery-workspace)
    .discovery-search
    button[data-discovery-submit] {
    min-height: 44px;
  }
}

/* Compact white search; its sticky backdrop ends at the bar's midpoint. */
.explore-workspace .discovery-search {
  width: min(100%, 68rem);
  justify-self: center;
  margin-inline: auto;
  min-height: 66px;
  padding: 4px;
  gap: 0;
  background: transparent;
  border-radius: var(--ui-radius) !important;
  box-shadow:
    0 2px 4px #102c3b0d,
    0 8px 24px #102c3b14;
}
.explore-workspace .discovery-search::before,
.explore-workspace .discovery-search::after {
  content: "";
  position: absolute;
  pointer-events: none;
}
.explore-workspace .discovery-search::before {
  z-index: -2;
  top: -1px;
  left: calc((100% - 100cqw) / 2);
  width: 100cqw;
  height: calc(50% + 1px);
  background: var(--brand-primary);
}
.explore-workspace .discovery-search::after {
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  background: #fff;
}
.explore-workspace .discovery-search > label {
  min-height: 58px;
  padding: 8px 16px;
  grid-template-columns: 22px minmax(0, 1fr);
  column-gap: 10px;
  row-gap: 3px;
  border: 0;
  transition: background-color 120ms ease;
}
.explore-workspace .discovery-search > label:not(:nth-child(4))::after {
  content: "";
  position: absolute;
  inset-inline-end: 0;
  inset-block: 12px;
  width: 1px;
  background: #e1e6eb;
}
.explore-workspace .discovery-search > label:hover,
.explore-workspace .discovery-search > label:focus-within {
  background: #f4f7fa;
}
.explore-workspace .search-field-icon {
  width: 22px;
  height: 22px;
  stroke: #617487;
}
.explore-workspace .search-field-title {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
  color: #657382;
}
.explore-workspace .discovery-search button[data-discovery-submit]::after {
  font-size: 1.0625rem;
  font-weight: 650;
}
@media (prefers-reduced-motion: reduce) {
  .explore-workspace .discovery-search > label {
    transition: none;
  }
}
@media (min-width: 901px) {
  .explore-workspace .discovery-filters,
  .explore-workspace .discovery-map-column {
    inset-block-start: calc(var(--sticky-nav-height) + 84px);
  }
}
.explore-workspace .discovery-search input,
.explore-workspace .discovery-search select {
  min-height: 24px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  background: transparent;
}
.explore-workspace .discovery-search button[data-discovery-submit] {
  min-height: 58px;
  min-width: 124px;
  margin-inline-start: 6px;
  padding: 8px 24px;
}
@media (max-width: 900px) {
  .explore-workspace .discovery-search > label {
    padding-inline: 10px;
    column-gap: 8px;
  }
  .explore-workspace .discovery-search > label:nth-child(2n)::after {
    display: none;
  }
  .explore-workspace .discovery-search button[data-discovery-submit] {
    min-height: 48px;
    margin-inline-start: 0;
    margin-block-start: 3px;
  }
}

@media (max-width: 420px) {
  .explore-workspace .discovery-search > label {
    grid-template-columns: minmax(0, 1fr);
  }
  .explore-workspace .discovery-search .search-field-icon {
    display: none;
  }
  .explore-workspace .discovery-search :is(.search-field-title, input, select) {
    grid-column: 1;
  }
}

/* Grouped tick filters; choices retain the existing request fields. */
.discovery-filters {
  padding: 0 14px 10px;
  border-color: #dde3e9;
  scrollbar-width: thin;
}
.discovery-filters > summary {
  min-height: 48px;
  display: flex;
  align-items: center;
  font-size: 1rem;
  font-weight: 700;
}
.discovery-filters .filter-section {
  border-top: 1px solid #e6eaee;
  padding: 4px 0;
}
.discovery-filters .filter-section h3 {
  margin: 0;
  padding: 4px 0;
  border: 0;
  color: #183446;
  font-size: 0.875rem;
}
.discovery-filters .filter-section > summary,
.discovery-filters .filter-subgroup > summary {
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  list-style: none;
  font-size: 0.875rem;
  font-weight: 650;
  color: #183446;
  cursor: pointer;
}
.discovery-filters summary::-webkit-details-marker {
  display: none;
}
.discovery-filters .filter-section > summary::after,
.discovery-filters .filter-subgroup > summary::after {
  content: "";
  flex: none;
  width: 6px;
  height: 6px;
  margin-inline-end: 3px;
  border-inline-end: 1.5px solid #697b88;
  border-block-end: 1.5px solid #697b88;
  transform: rotate(45deg);
}
.discovery-filters .filter-section[open] > summary::after,
.discovery-filters .filter-subgroup[open] > summary::after {
  transform: rotate(225deg);
}
.discovery-filters .filter-subgroup > summary {
  font-size: 0.8125rem;
  font-weight: 550;
}
.discovery-filters .filter-choice {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 32px;
  padding: 3px 0;
  color: #384b59;
  font-size: 0.8125rem;
  line-height: 1.35;
  font-weight: 400;
  cursor: pointer;
}
.discovery-filters .filter-choice input {
  appearance: none;
  flex: none;
  display: grid;
  place-content: center;
  width: 18px;
  height: 18px;
  min-height: 18px;
  margin: 0;
  padding: 0;
  border: 1.5px solid #98a7b3;
  border-radius: var(--ui-radius);
  background: #fff;
  cursor: pointer;
}
.discovery-filters .filter-choice input:checked {
  border-color: var(--brand-action);
  background: var(--brand-action);
}
.discovery-filters .filter-choice input:checked::after {
  content: "";
  width: 4px;
  height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: translateY(-1px) rotate(45deg);
}
.discovery-filters .filter-choice:hover {
  color: #424867;
}
.discovery-filters .filter-choice:has(input:disabled) {
  opacity: 0.5;
  cursor: default;
}
.discovery-filters .filter-choice input:focus-visible {
  outline: 2px solid var(--brand-primary);
  outline-offset: 3px;
}
.discovery-filters .filter-choices[data-filter-choices="currency"] {
  max-height: 14rem;
  overflow: auto;
}
.discovery-filters .filter-budget {
  min-width: 0;
  padding: 8px 0 0;
  margin: 0;
  border: 0;
}
.discovery-filters .filter-budget legend {
  font-size: 0.8125rem;
  font-weight: 550;
  color: #183446;
}
.discovery-filters .filter-hint {
  font-size: 0.75rem;
  line-height: 1.45;
  color: #6a7984;
  margin: 4px 0;
}
@media (min-width: 901px) {
  .explore-workspace .discovery-filters {
    max-height: calc(100dvh - var(--sticky-nav-height) - 100px);
  }
}

/* Wider filter column and denser choices for the live catalogue. */
@media (min-width: 681px) {
  .discovery-form {
    grid-template-columns: 15rem minmax(0, 1fr);
  }
  .discovery-form.discovery-with-map {
    grid-template-columns: 15rem minmax(0, 1fr) minmax(17rem, 0.65fr);
  }
}
@media (min-width: 681px) and (max-width: 1100px) {
  .discovery-form.discovery-with-map {
    grid-template-columns: 15rem minmax(0, 1fr);
  }
}
@media (pointer: coarse) {
  .discovery-filters .filter-choice,
  .discovery-filters .filter-section > summary,
  .discovery-filters .filter-subgroup > summary {
    min-height: 40px;
  }
}

/* Remove the standalone worldwide reset from the search action row. */
.discovery-actions button[name="area"][value="world"] {
  display: none;
}
.discovery-actions:not(:has([data-discovery-near]:not([hidden]))) {
  display: none;
}

/* Filters stay expanded, with static headings instead of disclosure controls. */
.discovery-filters > h2 {
  display: flex;
  align-items: center;
  min-height: 48px;
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
}
.discovery-filters .filter-section > h3,
.discovery-filters .filter-subgroup > h4 {
  display: flex;
  align-items: center;
  min-height: 32px;
  margin: 0;
  padding: 4px 0;
  color: #183446;
  font-family: var(--font-body, sans-serif);
  line-height: 1.35;
}
.discovery-filters .filter-section > h3 {
  font-size: 0.875rem;
  font-weight: 650;
}
.discovery-filters .filter-subgroup > h4 {
  font-size: 0.8125rem;
  font-weight: 550;
}

/* DeskCafes identity: stone surfaces and steel-blue actions. */
:root {
  --brand-primary: #302e2b;
  --brand-action: #0062e3;
  --coffee: var(--brand-action);
  --coffee-dark: var(--brand-action-hover);
  --terracotta: var(--brand-action);
}
.site-navigation {
  --nav-surface: var(--brand-primary);
  --nav-accent: #7da2be;
  --nav-muted: #d9dbea;
}
.site-navigation .audience-switch a[aria-current="page"]::after {
  background: #7da2be;
}
.explore-workspace .catalog-heading > a {
  color: #d9dbea;
}
.discovery-map-column {
  align-self: start;
}
.discovery-map-column .map-viewport,
.discovery-map-column .explore-map[data-map-state="unavailable"] .map-viewport {
  height: 18rem;
  min-height: 18rem;
}
@media (min-width: 1101px) {
  .discovery-form.discovery-with-map {
    grid-template-columns: 15rem minmax(0, 1fr) 17rem;
  }
}
@media (max-width: 1100px) {
  .discovery-map-column {
    width: min(100%, 22rem);
    justify-self: end;
    align-self: flex-end;
  }
  .discovery-map-column .map-viewport {
    height: 16rem;
    min-height: 16rem;
  }
}

.active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-block-end: 12px;
}
.active-filters[hidden] {
  display: none;
}
.active-filter {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 32px;
  max-width: 100%;
  padding: 5px 9px;
  border: 1px solid #edcfc5;
  border-radius: var(--ui-radius);
  background: #fff5f1;
  color: var(--brand-primary);
  font: 500 0.8125rem/1.35 var(--font-body, sans-serif);
  text-align: start;
  cursor: pointer;
}
.active-filter:hover {
  background: #ffe9e1;
}
.active-filter:focus-visible {
  outline: 2px solid var(--brand-action);
  outline-offset: 2px;
}
.active-filter > span:last-child {
  font-size: 1.125rem;
  line-height: 1;
}

.active-filter > span:first-child {
  min-width: 0;
  overflow-wrap: anywhere;
}
.discovery-filters > h2 {
  font-family: var(--font-body, sans-serif);
}

/* Ink blue/coral identity. Dark labels preserve contrast on coral actions. */
.discovery-search [data-discovery-submit],
.primary-action {
  color: #302e2b;
}
.discovery-search {
  overflow: visible;
  scroll-margin-top: calc(var(--sticky-nav-height) + 8px);
}
.explore-workspace {
  overflow-anchor: none;
}

/* Searchable controls and the full-height discovery map workspace. */
.site-navigation-currency {
  display: flex;
  align-items: center;
  margin-inline-start: 12px;
}
.site-navigation-currency select {
  border: 0;
  color: #fff;
  background: transparent;
  font: 550 0.8125rem var(--font-body, sans-serif);
  min-height: 40px;
  padding: 0 5px;
  cursor: pointer;
  border-radius: var(--ui-radius);
}
.site-navigation-currency option {
  background: #fff;
  color: #302e2b;
}
.site-navigation-currency select:focus-visible {
  outline: 2px solid #7da2be;
  outline-offset: 2px;
}
.explore-workspace .catalog-heading {
  min-height: 218px;
  height: auto;
  padding-block: 22px 34px;
  align-items: start;
}
.explore-workspace .catalog-heading h1 {
  font-size: clamp(1.6rem, 2.65vw, 2.75rem);
  line-height: 1.2;
}
.discovery-heading-copy {
  width: 100%;
  min-width: 0;
}
.hero-phrase-slot {
  display: block;
  min-height: 2.45em;
  position: relative;
  max-width: 100%;
}
.hero-phrase {
  display: block;
  color: #7da2be;
  animation: hero-drop 420ms cubic-bezier(0.2, 0.85, 0.3, 1.15);
}
.catalog-subtitle {
  margin: 10px 0 0;
  max-width: 62rem;
  font: 400 0.9375rem/1.5 var(--font-body, sans-serif);
  color: #d9dbea;
}
@keyframes hero-drop {
  0% {
    opacity: 0;
    transform: translateY(-12px);
  }
  70% {
    opacity: 1;
    transform: translateY(2px);
  }
  100% {
    transform: translateY(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-phrase {
    animation: none;
  }
}
.explore-workspace .discovery-search {
  top: calc(var(--sticky-nav-height) + 2px);
}
.explore-workspace .discovery-search::before {
  top: -3px;
  height: calc(50% + 3px);
}
.explore-workspace .discovery-search .search-combo {
  grid-column: 2;
  grid-row: 2;
  display: block;
  min-width: 0;
  position: relative;
}
.explore-workspace .discovery-search .search-combo input {
  width: 100%;
  padding: 0;
  cursor: text;
}
.search-options {
  position: absolute;
  display: flex;
  flex-direction: column;
  inset-inline: -42px -12px;
  top: calc(100% + 14px);
  z-index: 10;
  max-height: 19rem;
  overflow: auto;
  background: #fff;
  border: 1px solid #dedfe7;
  box-shadow: 0 8px 28px #302e2b26;
  border-radius: var(--ui-radius);
  padding: 5px;
  color: #302e2b;
}
.search-options [role="option"],
.search-options-empty {
  padding: 10px 12px;
  font-size: 0.875rem;
  line-height: 1.4;
  cursor: pointer;
  border-radius: var(--ui-radius);
}
.search-options [role="option"]:hover,
.search-options .is-active {
  background: #fff0ea;
}
.price-range {
  padding: 8px 0 16px;
}
.price-range-values {
  display: flex;
  justify-content: space-between;
  gap: 5px;
  font-size: 0.8125rem;
  font-weight: 600;
}
.price-range-track {
  height: 34px;
  position: relative;
  margin-top: 9px;
}
.price-range-track::before {
  content: "";
  position: absolute;
  top: 15px;
  height: 4px;
  background: #7da2be;
  border-radius: var(--ui-radius);
  inset-inline: 0;
}
.price-range-track input[type="range"] {
  appearance: none;
  -webkit-appearance: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 34px;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  pointer-events: none;
}
.price-range-track input::-webkit-slider-thumb {
  appearance: none;
  width: 18px;
  height: 24px;
  background: #fff;
  border: 2px solid #424867;
  border-radius: var(--ui-radius);
  pointer-events: auto;
  cursor: ew-resize;
}
.price-range-track input::-moz-range-thumb {
  width: 16px;
  height: 22px;
  background: #fff;
  border: 2px solid #424867;
  border-radius: var(--ui-radius);
  pointer-events: auto;
  cursor: ew-resize;
}
.price-range-track input:focus-visible {
  outline: 2px solid #424867;
  outline-offset: 3px;
}
.original-price {
  display: block;
  font-size: 0.7rem;
  font-weight: 400;
  color: #6b6f80;
}
.discovery-map-column .explore-map {
  position: relative;
}
.map-open-button {
  position: absolute;
  inset-inline-start: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  min-height: 44px;
  border: 1px solid #fff;
  border-radius: var(--ui-radius);
  padding: 10px 18px;
  background: #302e2b;
  color: #fff;
  font: 600 0.875rem var(--font-body, sans-serif);
  box-shadow: 0 3px 16px #0003;
  cursor: pointer;
}
[dir="rtl"] .map-open-button {
  transform: translate(50%, -50%);
}
.map-open-button[hidden] {
  display: none;
}
.map-close-button {
  position: fixed;
  z-index: 5;
  top: 16px;
  right: 16px;
  height: 44px;
  width: 44px;
  padding: 0;
  background: #fff;
  border: 1px solid #dedfe7;
  border-radius: var(--ui-radius);
  color: #302e2b;
  font-size: 30px;
  box-shadow: 0 3px 14px #0003;
  cursor: pointer;
}
.discovery-form.discovery-with-map.discovery-map-expanded {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100dvh;
  max-width: none;
  margin: 0;
  padding: 0;
  z-index: 200;
  display: grid;
  grid-template-columns: 20% 20% 60%;
  grid-template-rows: minmax(0, 1fr);
  gap: 0;
  background: #fff;
  overflow: hidden;
  border-radius: var(--ui-radius);
}
.discovery-map-expanded > .discovery-search,
.discovery-map-expanded > .discovery-actions {
  display: none;
}
.discovery-map-expanded .discovery-filters,
.discovery-map-expanded > .discovery-results-column {
  position: static;
  width: auto;
  min-width: 0;
  height: 100%;
  max-height: none;
  overflow-y: auto;
  overscroll-behavior: contain;
  margin: 0;
  padding: 14px;
  border: 0;
  border-inline-end: 1px solid #dedfe7;
}
.discovery-map-expanded .discovery-filters {
  grid-column: 1;
  grid-row: 1;
}
.discovery-map-expanded > .discovery-results-column {
  grid-column: 2;
  grid-row: 1;
}
.discovery-map-expanded .discovery-map-column {
  grid-column: 3;
  grid-row: 1;
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  align-self: stretch;
  margin: 0;
  border: 0;
}
.discovery-map-expanded .explore-map,
.discovery-map-expanded .map-viewport {
  height: 100% !important;
  min-height: 100% !important;
  width: 100%;
}
.discovery-map-expanded .discovery-place {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.discovery-map-expanded .discovery-cover {
  width: 100%;
  height: 140px;
}
.discovery-map-expanded .discovery-place-content {
  padding: 12px;
  min-width: 0;
}
.discovery-map-expanded .discovery-place h3 {
  font-size: 0.9375rem;
}
.discovery-map-expanded .discovery-list {
  gap: 12px;
}
.discovery-map-expanded .discovery-privacy {
  display: none;
}
@media (max-width: 900px) {
  .site-navigation-currency {
    margin-inline-start: 0;
  }
  .explore-workspace .catalog-heading {
    min-height: 230px;
    padding-block: 18px 30px;
  }
  .discovery-form.discovery-with-map.discovery-map-expanded {
    grid-template-columns: 25% 30% 45%;
  }
  .discovery-map-expanded .discovery-filters,
  .discovery-map-expanded > .discovery-results-column {
    padding: 8px;
  }
}
@media (max-width: 600px) {
  .discovery-form.discovery-with-map.discovery-map-expanded {
    grid-template-columns: 42% 58%;
    grid-template-rows: 45% 55%;
  }
  .discovery-map-expanded .discovery-filters {
    grid-row: 1 / 3;
  }
  .discovery-map-expanded .discovery-map-column {
    grid-column: 2;
    grid-row: 1;
  }
  .discovery-map-expanded > .discovery-results-column {
    grid-column: 2;
    grid-row: 2;
  }
  .hero-phrase-slot {
    min-height: 3.6em;
  }
  .explore-workspace .catalog-heading {
    min-height: 265px;
  }
}
.site-navigation-inner {
  grid-template-columns: auto minmax(0, 1fr) auto auto 4rem;
}
body:has(.discovery-map-expanded) .explore-workspace {
  container-type: normal;
}
@media (max-width: 900px) {
  .site-navigation-inner {
    grid-template-columns: minmax(0, 1fr) auto auto 3rem;
    gap: 0 6px;
  }
  .site-navigation-currency {
    grid-column: 3;
    grid-row: 1;
  }
  .site-navigation-locales {
    grid-column: 4;
    grid-row: 1;
  }
}
@media (max-width: 400px) {
  .site-navigation .brand {
    font-size: 1.1rem;
  }
  .site-navigation .site-navigation-user > summary {
    padding-inline: 6px;
  }
}
.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.explore-workspace .discovery-search button[data-discovery-submit] {
  background: var(--brand-action);
  color: #302e2b;
}
.explore-workspace .discovery-search button[data-discovery-submit]:hover {
  background: var(--brand-action-hover);
}
.discovery-filters .filter-choice input:checked::after {
  border-color: #302e2b;
}
@media (max-width: 420px) {
  .explore-workspace .discovery-search .search-combo {
    grid-column: 1;
  }
  .search-options {
    inset-inline: -10px;
  }
}
:root {
  --coffee: #424867;
  --coffee-dark: #302e2b;
  --terracotta: #424867;
}
.primary-action {
  background: var(--brand-action);
}
.explore-workspace:has(.discovery-heading-copy)::before {
  display: none;
}
.explore-workspace .catalog-heading:has(.discovery-heading-copy) {
  position: relative;
  isolation: isolate;
  min-height: 0;
}
.explore-workspace .catalog-heading:has(.discovery-heading-copy)::before {
  content: "";
  position: absolute;
  z-index: -1;
  /* A flat paint bleed prevents subpixel seams between composited surfaces. */
  inset-block: -2px 0;
  left: calc((100% - 100cqw) / 2);
  width: 100cqw;
  background: var(--header-surface);
  /* This is an interior join, not an independently rounded panel. */
  border-radius: 0;
}
.explore-workspace .catalog-heading h1 {
  max-width: none;
}
body:has(.discovery-map-expanded) .explore-workspace {
  isolation: auto;
  position: static;
}
@media (max-width: 600px) {
  .hero-phrase-slot {
    min-height: 2.4em;
  }
  .hero-phrase {
    font-size: 0.9em;
  }
}
.discovery-actions [data-discovery-near] {
  display: none !important;
}
.discovery-actions {
  display: none;
}

/* Continuous headline, with a constant gap to its supporting sentence. */
.explore-workspace .catalog-heading h1 {
  margin-block-end: 0;
}
.hero-phrase-slot,
.hero-phrase {
  display: inline;
  min-height: 0;
  font-size: inherit;
}
.hero-phrase {
  position: relative;
  animation-name: hero-inline-drop;
}
.catalog-subtitle {
  margin-block-start: 14px;
  font-size: clamp(1.0625rem, 1.4vw, 1.25rem);
  max-width: none;
}
@keyframes hero-inline-drop {
  from {
    opacity: 0;
    top: -10px;
  }
  70% {
    opacity: 1;
    top: 2px;
  }
  to {
    top: 0;
  }
}
/* Native disclosure triangles are never part of the product's visual language. */
summary {
  list-style: none;
}
summary::marker {
  content: "";
}
summary::-webkit-details-marker {
  display: none;
}
/* Crop media predictably, without distorting the uploaded image. */
.discovery-cover img,
.profile-image,
.review-photos img,
.media-album-photo img {
  object-fit: cover;
  object-position: center;
}
.explore-map,
.discovery-list > li,
.map-viewport {
  border-radius: var(--ui-radius) !important;
}
.filter-rating {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
}
.filter-rating .filter-choice {
  position: relative;
  justify-content: center;
  min-height: 32px;
  padding: 3px 0;
  border: 1px solid #dedfe7;
  border-radius: var(--ui-radius);
  font-size: 0.75rem;
}
.filter-rating .filter-choice:has(input:checked) {
  background: var(--brand-accent);
  border-color: #b96852;
  color: #302e2b;
  font-weight: 700;
}
.filter-rating input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}
.filter-rating .filter-choice:has(input:focus-visible) {
  outline: 2px solid #424867;
  outline-offset: 2px;
}
.filter-rating .filter-choice:has(input[value=""]) {
  grid-column: 1 / -1;
}
.site-navigation-profile-mark {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  vertical-align: middle;
  margin-inline-end: 7px;
}
details:not(.site-navigation-menu):not(.site-navigation-locales)
  > summary::after {
  content: "+";
  margin-inline-start: 8px;
}
details[open]:not(.site-navigation-menu):not(.site-navigation-locales)
  > summary::after {
  content: "−";
}
/* Discovery landing session, issue201: keep the public navigation focused. */
.site-navigation-links > .site-navigation-menu {
  display: none;
}
.site-navigation-currency {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}
.site-navigation-currency::before {
  content: "¤";
  font-size: 1.25rem;
  color: var(--brand-accent, #7da2be);
}
.site-navigation-currency:has(.currency-mark)::before {
  display: none;
}
.currency-mark {
  inline-size: 1.2rem;
  block-size: 1.2rem;
  fill: none;
  stroke: var(--brand-accent, #7da2be);
  stroke-width: 1.6;
}
@media (max-width: 600px) {
  .site-navigation-currency {
    margin-inline-start: 0;
    gap: 0.25rem;
  }
  .site-navigation .site-navigation-user > summary {
    font-size: 0.75rem;
  }
}

/* Keep sticky search bounded by the full catalogue, including recommendation rails. */
.explore-workspace #discovery-panel[data-view="landing"] .discovery-form {
  display: contents;
}
.explore-workspace #discovery-panel[data-view="landing"] .discovery-search {
  width: min(calc(100% - 2 * var(--search-page-inset)), 68rem);
}

/* Discovery swaps animate content only; navigation and search remain stable. */
[data-discovery-results] > h2:has([data-discovery-count]) {
  display: none;
}
.explore-workspace .discovery-global-feedback:empty {
  display: none;
}
/* Search feedback stays inside its action; no full-page snapshots. */
:root:has(.explore-workspace)::view-transition {
  display: none;
}
.discovery-search [data-discovery-submit][data-pending] {
  position: relative;
  inline-size: var(--discovery-action-width);
  block-size: var(--discovery-action-height);
  max-inline-size: 100%;
  padding-inline: 6px;
  overflow-wrap: anywhere;
}
.discovery-search [data-discovery-submit][data-pending]::before {
  content: "";
  position: absolute;
  inset-inline-start: calc(50% - 9px);
  inset-block-end: 3px;
  width: 18px;
  height: 2px;
  border-radius: 4px;
  background: #fff;
  animation: discovery-progress-pulse 700ms ease-in-out infinite;
}
@keyframes discovery-progress-pulse {
  50% {
    opacity: 0.4;
  }
}
@media (prefers-reduced-motion: reduce) {
  .discovery-search [data-discovery-submit][data-pending]::before {
    animation: none;
  }
}

/* All filter criteria remain in the page flow, without a nested scrollbar. */
.explore-workspace .discovery-filters,
.discovery-workspace .discovery-filters {
  position: static;
  height: auto;
  max-height: none;
  overflow: visible;
}
.discovery-form.discovery-map-expanded {
  overflow-y: auto;
}
.discovery-map-expanded .discovery-map-column {
  position: sticky;
  inset-block-start: 0;
  height: 100dvh;
}
/* Prevent browser scroll anchoring outside the changing catalogue, too. */
body:has(.explore-workspace) {
  overflow-anchor: none;
}

/* Owner revision, September29: larger image-led cards and softer corners. */
:root {
  --ui-radius: 8px;
  --radius: var(--ui-radius);
}
.discovery-landing .discovery-rail {
  grid-auto-columns: clamp(16rem, 27vw, 20rem);
}
.discovery-landing :is(.discovery-tile, .discovery-rail, .discovery-tile > img),
.discovery-cover img,
.review-photos img,
.media-album-photo img,
.owner-step img {
  border-radius: var(--ui-radius) !important;
}
.discovery-filters .filter-choice input {
  border-radius: 4px;
}
.price-range-track input::-webkit-slider-thumb {
  border-radius: 4px;
}
.price-range-track input::-moz-range-thumb {
  border-radius: 4px;
}
@media (max-width: 600px) {
  .discovery-landing .discovery-rail {
    grid-auto-columns: 85%;
  }
}
/* Consolidated landing card size and corner revision, issue201. */

/* Geographic discovery: page flow and a map action below the preview. */
.discovery-map-column .map-open-button {
  position: static;
  inset: auto;
  transform: none;
  display: block;
  width: 100%;
  margin-block-start: 10px;
}
.discovery-map-column .map-open-button[hidden] {
  display: none;
}
.discovery-empty {
  display: grid;
  place-items: center;
  min-height: 15rem;
  text-align: center;
}
.discovery-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  margin-block: 20px;
}
.discovery-pagination button {
  padding: 8px 12px;
  border: 1px solid #dedfe7;
  background: #fff;
  border-radius: var(--ui-radius);
}
.discovery-pagination [aria-current="page"] {
  background: var(--ui-accent, #7da2be);
  font-weight: 700;
}
.discovery-pagination button:disabled {
  opacity: 0.45;
  cursor: default;
}
.discovery-filters {
  position: static;
  height: auto;
  max-height: none;
  overflow: visible;
}
.search-combo input:disabled {
  cursor: default;
  opacity: 0.75;
}

.location-attribution {
  display: block;
  padding: 6px 10px;
  color: #6b6f80;
  font-size: 10px;
}

/* Owner corporate palette, September29: ink blue and coral; no green branding. */
:root {
  --brand-accent: var(--brand-action);
  --ui-accent: var(--brand-action);
  --map: var(--brand-primary);
  --map-light: #e7e8ef;
}
.primary-action:hover {
  background: var(--brand-action-hover);
  color: var(--brand-primary);
}

/* Taller landing imagery: rectangular 4:3 frames rather than wide 3:2 crops. */
.discovery-landing .discovery-tile > img,
.discovery-landing .discovery-venue-tile > .profile-image {
  aspect-ratio: 4 / 3;
}

/* Localities use a distinct title and a quieter administrative context line. */
.search-option-title {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.4rem;
  font-weight: 600;
}
.search-option-context {
  display: block;
  margin-block-start: 2px;
  color: #6b6f80;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.search-option-kind {
  color: #6b6f80;
  font-size: 0.7rem;
  font-weight: 400;
}

/* Whole-product presentation session (issue201): landing design across workspaces. */
:root {
  --ui-surface: #fff;
  --ui-subtle: #f5f6fa;
  --ui-border: #dfe2eb;
  --ui-muted: #606579;
  --ui-selected: #e6edf3;
  --ink: var(--brand-primary);
  --ink-soft: var(--ui-muted);
  --paper: var(--ui-subtle);
  --paper-light: var(--ui-surface);
  --line: var(--ui-border);
  --shadow: 0 2px 8px #302e2b08;
}
.identity-root {
  background: var(--ui-subtle);
}
.identity-main {
  padding-block: 1.25rem 2rem;
}
.identity-card {
  padding: clamp(1rem, 2vw, 1.5rem);
  border-color: var(--ui-border);
  background: var(--ui-surface);
  box-shadow: var(--shadow);
}
.identity-card :is(h1, h2, h3),
.legal-document :is(h1, h2, h3) {
  font-family: var(--identity-font-body, var(--font-body, sans-serif));
  letter-spacing: -0.025em;
}
.identity-card h1 {
  max-inline-size: none;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  line-height: 1.25;
}
.identity-eyebrow {
  color: var(--ui-muted);
  letter-spacing: 0.04em;
}
.identity-introduction > p:last-child {
  margin-block-start: 0.65rem;
}
.identity-form {
  margin-block-start: 1.25rem;
}
.identity-field {
  gap: 0.45rem;
}
.identity-field label {
  font-weight: 650;
  font-size: 0.875rem;
}
.identity-root :is(.identity-email-input, .identity-text-input) {
  border-color: #b9becd;
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  min-block-size: 2.75rem;
}
.identity-root :is(.identity-email-input, .identity-text-input):hover {
  border-color: var(--brand-primary);
}
.identity-root
  :is(.identity-email-input, .identity-text-input)[aria-invalid="true"] {
  border-color: #842810;
}
.identity-root :is(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--brand-primary);
}
.identity-root :is(.identity-primary-action, .identity-secondary-action) {
  border-radius: var(--ui-radius);
  border-width: 1px;
  font-weight: 650;
  font-size: 0.9375rem;
  transition:
    background-color 140ms ease,
    border-color 140ms ease;
}
.identity-root .identity-primary-action,
.owner-home .owner-add-action {
  background: var(--brand-action);
  border-color: var(--brand-action);
  color: var(--brand-primary);
}
.identity-root .identity-primary-action:hover,
.owner-home .owner-add-action:hover {
  background: #efa086;
  border-color: #efa086;
}
.identity-root .identity-secondary-action {
  color: var(--brand-primary);
  border-color: var(--ui-border);
  background: var(--ui-surface);
}
.identity-root .identity-secondary-action:hover {
  background: var(--ui-subtle);
  border-color: #b9becd;
}
.identity-root .identity-danger-action {
  background: #842810;
  border-color: #842810;
  color: #fff;
}
.identity-root .identity-danger-action:hover {
  background: #6d200c;
  border-color: #6d200c;
}
.identity-root
  :is(.identity-primary-action, .identity-secondary-action):disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.identity-root
  :is(
    .identity-fieldset,
    .identity-status-card,
    .identity-message,
    .venue-search-scope,
    .venue-search-result
  ) {
  border-radius: var(--ui-radius);
}
.identity-root .identity-fieldset {
  border-color: var(--ui-border);
}
.identity-root :is(a, button, input, select, textarea, summary):focus-visible,
.owner-home a:focus-visible {
  outline: 2px solid var(--brand-primary);
  outline-offset: 3px;
}

/* A wide canvas with a quiet sidebar and distinct content panels. */
.identity-main
  > .identity-card:is(
    .account-workspace,
    .venue-card:has(.workspace),
    .venue-card:has(.venue-grid),
    [data-public-venue-workspace],
    [data-profile-workspace],
    .discovery-workspace
  ) {
  inline-size: 100%;
  max-inline-size: 88rem;
  padding: 0;
  border: 0;
  box-shadow: none;
  background: transparent;
}
.workspace-heading {
  padding-block: 0.25rem 1rem;
  margin-block-end: 0;
  gap: 0.85rem;
}
.workspace-heading h1 {
  font-size: clamp(1.5rem, 2.4vw, 2rem);
}
.workspace-heading p {
  font-size: 0.875rem;
}
.workspace-badge {
  background: var(--ui-selected);
  color: var(--brand-primary);
  border: 1px solid #f3cbbd;
}
.workspace {
  grid-template-columns: 14rem minmax(0, 1fr);
  gap: 1.25rem;
}
.workspace-navigation {
  padding: 0.4rem;
  background: var(--ui-surface);
  border-color: var(--ui-border);
  box-shadow: var(--shadow);
}
.workspace-navigation a {
  gap: 0.6rem;
  padding: 0.65rem 0.75rem;
  border-radius: var(--ui-radius);
  color: var(--ui-muted);
  font-weight: 550;
}
.workspace-navigation a:hover {
  background: var(--ui-subtle);
  color: var(--brand-primary);
}
.workspace-navigation a[aria-current] {
  background: var(--ui-selected);
  color: var(--brand-primary);
  font-weight: 700;
  box-shadow: inset 3px 0 var(--brand-action);
}
[dir="rtl"] .workspace-navigation a[aria-current] {
  box-shadow: inset -3px 0 var(--brand-action);
}
.workspace-content {
  padding: 1.25rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--shadow);
}
.workspace-panel > h2,
.workspace-panel > section > h2 {
  margin-block-end: 0.85rem;
  font-size: 1.125rem;
}
.workspace-panel > section + section {
  border-block-start: 1px solid var(--ui-border);
  padding-block-start: 1rem;
}
.workspace-launchers a {
  background: var(--ui-surface);
  border-color: var(--ui-border);
  border-radius: var(--ui-radius);
}
.workspace-launchers a:hover {
  background: var(--ui-selected);
  border-color: #f3cbbd;
}
.workspace-launchers .workspace-icon {
  color: var(--brand-primary);
}
.workspace-result {
  background: var(--ui-subtle);
  border: 1px solid var(--ui-border);
}
.profile-image {
  background: #e9ebf3;
  color: var(--brand-primary);
  border-color: var(--ui-border);
}
.profile-image-square {
  border-radius: var(--ui-radius);
}
.venue-card .venue-grid li {
  margin: 0;
  background: var(--ui-surface);
  border-color: var(--ui-border);
}
.workspace-actions > a:not([class]) {
  padding: 0.6rem 0.75rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  text-decoration: none;
  font-size: 0.875rem;
}
.workspace-actions > a:not([class]):hover {
  background: var(--ui-subtle);
}

/* Photo-led detail: broad media mosaic, readable facts and a compact offer. */
.public-venue-heading h1 {
  font-size: clamp(1.65rem, 3vw, 2.25rem);
}
.public-venue-layout {
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 22%);
  gap: 1.25rem;
}
.public-venue-main > #review-panel > section:not([data-official-album]) {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  padding: 1.25rem;
  margin-block: 1rem;
}
.public-venue-sidebar
  > :is([data-venue-offer], [data-venue-contacts], .venue-location) {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  box-shadow: var(--shadow);
}
.public-venue-sidebar > [data-venue-offer] {
  border-block-start: 3px solid var(--brand-action);
}
[data-public-venue-workspace] [data-official-album] {
  margin-block: 0 1rem;
}
[data-public-venue-workspace] [data-official-album] .review-photos {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-height: none;
  overflow: visible;
  gap: 0.5rem;
}
[data-public-venue-workspace] [data-official-album] .review-photo-item {
  margin: 0;
}
[data-public-venue-workspace]
  [data-official-album]
  .review-photo-item:first-child {
  grid-column: span 2;
  grid-row: span 2;
}
[data-public-venue-workspace] [data-official-album] .review-photo-item img {
  height: 100%;
  min-height: 10rem;
  aspect-ratio: 4 / 3;
}
[data-public-venue-workspace]
  [data-official-album]
  .review-photo-item:first-child
  img {
  height: 100%;
  min-height: 20.5rem;
}
[data-public-venue-workspace]
  [data-official-album]
  .review-photo-item:only-child {
  grid-column: 1 / -1;
  grid-row: auto;
}
[data-public-venue-workspace]
  [data-official-album]
  .review-photo-item:only-child
  img {
  max-height: 30rem;
  aspect-ratio: 16 / 9;
}
.review-ratings {
  gap: 0.5rem;
}
.review-ratings div {
  background: var(--ui-subtle);
  padding: 0.5rem 0.65rem;
  border-radius: var(--ui-radius);
}
.review-card {
  padding-block: 1rem;
  border-color: var(--ui-border);
}
.review-card blockquote {
  background: var(--ui-subtle);
  border-inline-start-color: var(--brand-action);
  padding: 0.85rem;
  border-radius: var(--ui-radius);
}
.review-history,
.visit-history-record {
  border-color: var(--ui-border);
  border-radius: var(--ui-radius);
}

/* Owner instructions and media management follow the same card vocabulary. */
.owner-home {
  max-width: 88rem;
}
.owner-home
  :is(
    .owner-sign-in,
    .owner-workspace-link,
    .owner-step-number,
    .owner-venue-actions
  ) {
  color: var(--brand-primary);
}
.owner-home .owner-empty-icon {
  stroke: var(--brand-primary);
}
.owner-home .owner-empty {
  border-color: #b9becd;
}
.owner-home :is(.owner-steps li, .owner-venue-grid li, .owner-unavailable) {
  border-color: var(--ui-border);
  border-radius: var(--ui-radius);
  box-shadow: var(--shadow);
}
.owner-home .owner-steps img {
  aspect-ratio: 4 / 3;
}
.owner-home .owner-venue-status {
  background: var(--ui-selected);
  color: var(--brand-primary);
  border-radius: var(--ui-radius);
}
.owner-home .owner-step-copy {
  padding: 1rem;
}
.media-workspace {
  max-inline-size: 72rem;
}
.media-workspace
  :is(.media-album-photo, .media-photo-actions button, .media-add-slot) {
  border-radius: var(--ui-radius);
  border-color: var(--ui-border);
}
:is(.media-workspace, #media-panel) .media-add-slot {
  background: var(--ui-subtle);
  color: var(--brand-primary);
}
:is(.media-workspace, #media-panel) .media-add-slot:focus-within,
:is(.media-workspace, #media-panel) .media-add-slot[data-drag-over="true"] {
  outline-color: var(--brand-primary);
}
.venue-location-suggestions [aria-selected="true"],
.venue-location-suggestions [role="option"]:hover {
  background: var(--ui-selected);
  color: var(--brand-primary);
}
.venue-search-pin,
.venue-result-number {
  background: var(--brand-primary);
  border-radius: var(--ui-radius);
}

/* Legal reading remains complete, with the product's compact typographic hierarchy. */
@media screen {
  .legal-document {
    width: min(100% - 2rem, 72rem);
    padding-block: 1.5rem 2rem;
  }
  .legal-document h1 {
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    margin-block: 0.5rem 1rem;
  }
  .legal-introduction {
    font-size: 1rem;
    margin-block: 1rem;
  }
  .legal-navigation {
    gap: 0.5rem;
    border: 0;
    margin-block: 1rem;
  }
  .legal-navigation a {
    padding: 0.6rem 0.85rem;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    text-decoration: none;
  }
  .legal-navigation [aria-current="page"] {
    background: var(--ui-selected);
    border-color: #f3cbbd;
  }
  .legal-content {
    background: var(--ui-surface);
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    padding: clamp(1rem, 3vw, 2rem);
    line-height: 1.7;
  }
  .legal-content section {
    margin-block: 1.5rem;
  }
  .legal-content section:first-child {
    margin-block-start: 0;
  }
  .legal-content h2 {
    font-size: 1.25rem;
  }
}
@media (max-width: 760px) {
  .identity-main {
    width: calc(100% - 1.5rem);
    padding-block-start: 1rem;
  }
  .workspace {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.75rem;
  }
  .workspace-content {
    padding: 1rem;
  }
  .workspace-navigation {
    display: flex;
    position: static;
  }
  .public-venue-layout {
    display: flex;
  }
  [data-public-venue-workspace] [data-official-album] .review-photos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  [data-public-venue-workspace]
    [data-official-album]
    .review-photo-item:first-child {
    grid-column: 1 / -1;
    grid-row: auto;
  }
  [data-public-venue-workspace] [data-official-album] .review-photo-item img {
    min-height: 8rem;
  }
  [data-public-venue-workspace]
    [data-official-album]
    .review-photo-item:first-child
    img {
    min-height: 0;
    max-height: 22rem;
    aspect-ratio: 4 / 3;
  }
}
@media (prefers-reduced-motion: reduce) {
  .identity-root :is(.identity-primary-action, .identity-secondary-action) {
    transition: none;
  }
}

.public-profile-heading {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.25rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  margin-block-end: 1rem;
}
.public-profile-heading .profile-image {
  inline-size: 6rem;
  block-size: 6rem;
}
.public-profile-heading > div {
  min-inline-size: 0;
}
.public-profile-heading p {
  margin-block: 0.4rem 0;
  color: var(--ui-muted);
}
.public-profile-heading .profile-biography {
  color: var(--brand-primary);
}
.public-profile-content {
  display: grid;
  grid-template-columns: minmax(15rem, 28%) minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}
.public-profile-content > section {
  min-inline-size: 0;
  padding: 1.25rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
}
.public-profile-content h2 {
  font-size: 1.125rem;
}
.public-profile-content ol {
  padding-inline-start: 1.25rem;
}
.public-profile-content li {
  padding-block: 0.6rem;
  border-block-end: 1px solid var(--ui-border);
  font-size: 0.875rem;
}
.public-profile-content .review-card:last-child {
  border-block-end: 0;
}
@media (max-width: 760px) {
  .public-profile-content {
    grid-template-columns: minmax(0, 1fr);
  }
  .public-profile-heading {
    align-items: start;
    padding: 1rem;
  }
  .public-profile-heading .profile-image {
    inline-size: 4.5rem;
    block-size: 4.5rem;
  }
}
.owner-home
  :is(
    .owner-add-action,
    .owner-empty,
    .owner-steps img,
    .owner-venue-actions a
  ) {
  border-radius: var(--ui-radius);
}
.owner-venue-actions a {
  padding: 0.5rem 0.65rem;
  border: 1px solid var(--ui-border);
  text-decoration: none;
}
.owner-venue-actions a:hover {
  background: var(--ui-selected);
}
.privacy-preferences {
  width: min(100% - 2rem, 56rem);
  padding-block: 1.5rem 2rem;
}
.privacy-preferences h1 {
  font-family: inherit;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  line-height: 1.25;
  letter-spacing: -0.025em;
}
.privacy-preferences :is(.preference-form, .current-consent-state) {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  padding: 1rem;
}
.consent-banner {
  border-radius: var(--ui-radius);
  gap: 1rem;
  padding: 1.25rem;
  box-shadow: var(--shadow);
}
.consent-decision-button,
.preference-save-button {
  background: var(--brand-action);
  border-color: var(--brand-action);
  color: var(--brand-primary);
  border-radius: var(--ui-radius);
  font-weight: 650;
}
.consent-decision-button[data-decision="denied"] {
  background: var(--ui-surface);
  border-color: var(--ui-border);
}
[data-public-venue-workspace]
  [data-official-album]
  .review-photos:has(.review-photo-item:nth-child(2):last-child)
  .review-photo-item {
  grid-column: span 2;
  grid-row: span 2;
}
[data-public-venue-workspace]
  [data-official-album]
  .review-photos:has(.review-photo-item:nth-child(3):last-child)
  .review-photo-item:not(:first-child) {
  grid-column: span 2;
}
@media (max-width: 760px) {
  [data-public-venue-workspace]
    [data-official-album]
    .review-photos:has(.review-photo-item:nth-child(2):last-child)
    .review-photo-item {
    grid-column: auto;
    grid-row: auto;
  }
  [data-public-venue-workspace]
    [data-official-album]
    .review-photos:has(.review-photo-item:nth-child(3):last-child)
    .review-photo-item:not(:first-child) {
    grid-column: auto;
  }
}
/* Native fallback fields receive the same controls as enhanced editors. */
.identity-root
  .identity-form
  :where(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(
        [type="file"]
      ):not([type="range"]):not([type="submit"]):not([type="button"]),
    textarea,
    select
  ) {
  inline-size: 100%;
  min-block-size: 2.75rem;
  padding: 0.7rem 0.8rem;
  color: var(--brand-primary);
  background: var(--ui-surface);
  border: 1px solid #b9becd;
  border-radius: var(--ui-radius);
  font: inherit;
}
.identity-root .identity-form textarea {
  min-block-size: 6rem;
  resize: vertical;
}
.identity-root .identity-form label:has(> textarea) {
  display: grid;
  gap: 0.45rem;
}
.identity-root
  .identity-form
  :is(input, textarea, select)[aria-invalid="true"] {
  border-color: #842810;
}
.identity-root input[type="file"] {
  max-inline-size: 100%;
  font: inherit;
  font-size: 0.875rem;
}
.identity-root input[type="file"]::file-selector-button {
  padding: 0.6rem 0.75rem;
  margin-inline-end: 0.6rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  color: var(--brand-primary);
  background: var(--ui-subtle);
  font: inherit;
  cursor: pointer;
}
.profile-image:not(.profile-image-square) {
  border-radius: 50% !important;
}

/* Complete page families: visits, guides, referrals, compliance and fallbacks. */
.identity-main > .identity-card.visits-workspace,
.identity-main > .identity-card.compliance-workspace {
  inline-size: 100%;
  max-inline-size: 72rem;
}
.visits-workspace > h1,
.compliance-workspace > h1 {
  margin-block-end: 1rem;
}
.identity-root .venue-actions > a:not([class]) {
  padding: 0.6rem 0.75rem;
  border: 1px solid var(--ui-border);
  background: var(--ui-surface);
  border-radius: var(--ui-radius);
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 600;
}
.identity-root .venue-actions > a:not([class]):hover {
  background: var(--ui-selected);
}
.identity-root .venue-actions > a[aria-current] {
  background: var(--ui-selected);
  border-color: #f3cbbd;
  color: var(--brand-primary);
}
.visit-record {
  padding: 1rem;
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  border-inline-start-width: 3px;
}
.visit-record[data-visit-state="active"] {
  border-inline-start-color: var(--brand-action);
  background: #fbf9f5;
}
.visit-record h3 {
  font-size: 1.125rem;
  margin-block: 0 0.4rem;
}
.visit-record > p {
  margin-block: 0.4rem;
}
.visit-record dt {
  color: var(--ui-muted);
  font-size: 0.875rem;
}
.visit-record dd {
  font-variant-numeric: tabular-nums;
}
.visit-record small {
  font-size: 0.75rem;
  color: var(--ui-muted);
}
.visit-history-record {
  background: var(--ui-surface);
}
.visit-history-record .visit-record {
  border: 0;
  padding: 0.75rem 0 0;
}
.visit-history-record summary {
  gap: 0.4rem 0.75rem;
}
.visit-notice {
  background: var(--ui-subtle);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
}
.visit-code {
  display: block;
  text-align: center;
  padding: 0.75rem;
  background: var(--ui-subtle);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  font-variant-numeric: tabular-nums;
}
.visit-qr,
.identity-totp-qr {
  padding: 0.75rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  background: #fff;
}
.identity-totp-document {
  background: var(--ui-subtle);
}
#visit-panel :is(table, fieldset),
.visit-offer table {
  border-color: var(--ui-border);
}
#visit-panel th,
.visit-offer th {
  background: var(--ui-subtle);
  color: var(--ui-muted);
  font-weight: 650;
}
#visit-panel :is(td, th),
.visit-offer :is(td, th) {
  border-color: var(--ui-border);
}
#visit-panel fieldset {
  border-radius: var(--ui-radius);
}
#visit-panel :is(input, select, textarea) {
  max-inline-size: 100%;
}
.venue-statistics {
  margin-block: 1rem;
}
.venue-statistics meter {
  accent-color: var(--brand-primary);
}
.venue-popular-hours {
  gap: 0.75rem;
}
.venue-popular-hours > div {
  padding: 0.75rem;
  background: var(--ui-subtle);
  border-radius: var(--ui-radius);
}
.guide-destination-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
  gap: 1rem;
}
[data-guide-workspace] .guide-destination-grid > li {
  display: block;
  padding: 0;
  overflow: hidden;
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
}
.guide-destination-image {
  display: block;
}
.guide-destination-image img {
  display: block;
  inline-size: 100%;
  block-size: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--ui-radius);
}
.guide-destination-grid > li :is(h2, p) {
  margin: 0;
  padding: 0.75rem 1rem;
}
.guide-destination-grid > li h2 {
  font-size: 1.125rem;
  padding-block-end: 0;
}
.guide-destination-grid > li h2 a {
  text-decoration: none;
}
.guide-destination-grid > li p {
  color: var(--ui-muted);
  font-size: 0.875rem;
}
.guide-comparison {
  padding: 1rem;
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  margin-block: 1rem;
}
.guide-comparison h2 {
  font-size: 1rem;
}
.guide-comparison ul {
  padding-inline-start: 1.25rem;
  margin-block-end: 0;
}
[data-guide-workspace] .discovery-reasons {
  gap: 0.5rem;
}
[data-guide-workspace] .discovery-reasons li {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  padding: 0.5rem 0.75rem;
}
.guide-browse-action {
  margin-block: 1rem;
}
.referral-share-card {
  padding: 1rem;
  background: var(--ui-subtle);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
}
.referral-share-card textarea {
  min-block-size: 8rem;
  font-size: 0.875rem;
}
.referral-record,
.reward-record {
  border: 1px solid var(--ui-border);
  padding: 1rem;
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
}
.referral-record > h3,
.reward-record > h3 {
  margin-block-start: 0;
}
.referral-record .referral-share-card {
  margin-block: 0.75rem 0;
}
.compliance-navigation {
  padding-block: 0.25rem;
}
.compliance-queue {
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.75rem;
}
.compliance-queue > li {
  padding: 1rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  background: var(--ui-subtle);
  overflow-wrap: anywhere;
  font-size: 0.875rem;
  line-height: 1.65;
}
.compliance-queue > li[data-priority="urgent"] {
  border-inline-start: 3px solid #842810;
}
.compliance-queue > li > a {
  display: block;
  font-weight: 650;
  padding-block-end: 0.4rem;
}
.compliance-evidence {
  padding: 1rem;
  background: var(--ui-subtle);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  font-size: 0.8125rem;
  line-height: 1.6;
}
.compliance-workspace > section {
  border-block-start: 1px solid var(--ui-border);
  padding-block-start: 1rem;
}
.compliance-workspace .identity-form {
  max-inline-size: 48rem;
}
.identity-status-card {
  border-color: var(--ui-border);
  border-radius: var(--ui-radius);
}
.identity-root .identity-message:not(.identity-message-error) {
  background: var(--ui-subtle);
  border-inline-start-color: var(--brand-primary);
}
.identity-root .identity-message-error {
  border-inline-start-color: #842810;
  background: #e6edf3;
}
.identity-root .identity-status-card:has(.identity-form) {
  background: var(--ui-surface);
}
.identity-root .identity-fieldset {
  border-radius: var(--ui-radius);
}
.preference-card {
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  border-color: var(--ui-border);
}
.preference-card [type="radio"] {
  accent-color: var(--brand-primary);
}
.not-found {
  inline-size: min(100% - 2rem, 42rem);
  padding: 1.5rem;
  margin-block: 2rem;
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
}
.not-found h1 {
  font-family: var(--font-body);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
}
@media (max-width: 600px) {
  .visit-record dl {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
    gap: 0.5rem 0.75rem;
  }
  .visit-history-record summary span {
    flex-basis: 100%;
  }
  .visit-code {
    font-size: 1.25rem;
    letter-spacing: 0.08em;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .guide-destination-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .compliance-queue > li {
    padding: 0.85rem;
  }
}
:is(.media-workspace, #media-panel) button {
  min-block-size: 2.5rem;
  padding: 0.6rem 0.85rem;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  color: var(--brand-primary);
  background: var(--ui-subtle);
  font: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
}
:is(.media-workspace, #media-panel) button[data-media-save] {
  background: var(--brand-action);
  border-color: var(--brand-action);
}
:is(.media-workspace, #media-panel) button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.media-workspace
  :where(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(
        [type="file"]
      ),
    textarea,
    select
  ) {
  inline-size: 100%;
  padding: 0.7rem 0.8rem;
  min-block-size: 2.75rem;
  border: 1px solid #b9becd;
  border-radius: var(--ui-radius);
  color: var(--brand-primary);
  background: var(--ui-surface);
  font: inherit;
}
#visit-panel .identity-form > label {
  display: grid;
  gap: 0.4rem;
  font-size: 0.875rem;
}
#visit-panel .identity-form fieldset > label:has(input:not([type="checkbox"])) {
  display: grid;
  gap: 0.4rem;
  margin-block: 0.5rem;
  font-size: 0.875rem;
}
#visit-panel .identity-form fieldset > label:has(input[type="checkbox"]) {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-inline-end: 0.75rem;
  min-block-size: 2rem;
}
#visit-panel .identity-form > label:has(input[type="checkbox"]) {
  display: flex;
}
.identity-root .identity-status-card:not(.visit-record) {
  background: var(--ui-subtle);
  border-inline-start-color: var(--brand-primary);
}
.identity-main
  > .identity-card:is(.media-workspace, .review-workspace):not(
    [data-profile-workspace]
  ) {
  inline-size: 100%;
  max-inline-size: 72rem;
}
:is(.media-workspace, #media-panel) button[name="approved"][value="true"] {
  background: var(--brand-action);
  border-color: var(--brand-action);
}
:is(.media-workspace, #media-panel) button[name="approved"][value="false"] {
  color: #842810;
  border-color: #d9a597;
  background: #e6edf3;
}

.not-found {
  min-block-size: 0;
  align-content: start;
}
.identity-root input[type="checkbox"] {
  border-radius: 4px;
}

[data-guide-workspace] > h1 {
  max-inline-size: none;
  margin-block-end: 0.75rem;
}

/* Workspace actions follow their labels instead of stretching across the panel. */
.identity-root :is(.identity-primary-action, .identity-secondary-action),
.identity-root :is(.workspace-panel, #media-panel, .media-workspace) button {
  width: auto;
  inline-size: fit-content;
  max-inline-size: 100%;
  justify-self: start;
  align-self: start;
  padding: 0.6rem 1rem;
  min-block-size: 2.5rem;
  font-size: 0.875rem;
  font-weight: 650;
  box-shadow: none;
}
.identity-root .identity-secondary-action,
.identity-root
  :is(.workspace-panel, #media-panel, .media-workspace)
  button:not(.identity-primary-action):not([data-media-save]):not(
    [name="approved"]
  ) {
  color: var(--brand-primary);
  background: #fff;
  border: 1px solid #d5d9e4;
  border-radius: var(--ui-radius);
}
.identity-root :is(.identity-primary-action, .identity-secondary-action):hover {
  box-shadow: 0 2px 8px #302e2b12;
}
.workspace-panel .identity-form {
  max-inline-size: 48rem;
}
.workspace-panel {
  padding: clamp(1rem, 2.5vw, 1.75rem);
}
.workspace-navigation a {
  border: 0;
  padding: 0.7rem 0.85rem;
}
.workspace-navigation a[aria-current] {
  background: #7da2be1a;
  color: var(--brand-primary);
  box-shadow: inset 3px 0 var(--brand-action);
}
.site-navigation .audience-switch {
  position: relative;
  align-self: center;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  padding: 4px;
  border: 1px solid #ffffff26;
  border-radius: 8px;
  background: #161a2d;
  isolation: isolate;
}
.site-navigation .audience-switch::before {
  content: "";
  position: absolute;
  inset-block: 4px;
  inset-inline-start: 4px;
  inline-size: calc(50% - 4px);
  border-radius: 8px;
  background: var(--brand-action);
  box-shadow: 0 2px 6px #0003;
  transition: inset-inline-start 180ms ease;
  z-index: -1;
}
.site-navigation .audience-switch[data-audience="owners"]::before {
  inset-inline-start: 50%;
}
.site-navigation .audience-switch a {
  min-block-size: 2.1rem;
  padding: 0.45rem 0.7rem;
  font-size: 0.8125rem;
  border: 0;
  background: transparent;
  border-radius: 8px;
  color: #c9ccdc;
}
.site-navigation .audience-switch a[aria-current] {
  color: var(--brand-primary);
}
.site-navigation .audience-switch a::after {
  display: none;
}
.site-navigation .audience-switch .audience-mark {
  display: block;
  width: 14px;
  height: 14px;
  inline-size: 14px;
  block-size: 14px;
}
.site-navigation-inner {
  column-gap: 0.85rem;
}
.site-navigation .site-navigation-currency {
  gap: 0.2rem;
}
.site-navigation .site-navigation-currency select {
  inline-size: 3.7rem;
  min-block-size: 2.2rem;
  padding-inline: 0.2rem;
  font-size: 0.75rem;
}
.site-navigation .site-navigation-locales summary {
  min-block-size: 2.2rem;
  padding: 0.3rem;
  gap: 0.3rem;
  font-size: 0.75rem;
}
.site-navigation .currency-mark,
.site-navigation .language-mark {
  inline-size: 0.95rem;
  block-size: 0.95rem;
}
@media (max-width: 40rem) {
  .site-navigation-inner {
    column-gap: 0.4rem;
  }
  .site-navigation .audience-switch a {
    padding-inline: 0.65rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .site-navigation .audience-switch::before {
    transition: none;
  }
}
.site-navigation .navigation-avatar {
  border-radius: 50% !important;
  inline-size: 2.5rem;
  block-size: 2.5rem;
  min-block-size: 0;
  padding: 0;
  border-radius: 50%;
  border: 2px solid #ffffff35;
  overflow: hidden;
}
.site-navigation .navigation-avatar::after {
  display: none;
}
.site-navigation .navigation-avatar .profile-image {
  inline-size: 100%;
  block-size: 100%;
  border: 0;
  border-radius: 50%;
}
.site-navigation .navigation-avatar .profile-image-empty {
  background: #e2e4eb;
  color: #767c8d;
}
.site-navigation .navigation-sign-in {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-block-size: 2.25rem;
  padding: 0.4rem 0.8rem;
  border-radius: 8px;
  background: #15945e;
  color: white;
  font-weight: 650;
  font-size: 0.8125rem;
  text-decoration: none;
}
.site-navigation .navigation-sign-in:hover {
  background: #117b4e;
}
[data-schedule-editor] > [hidden] {
  display: none !important;
}
.schedule-week,
.schedule-dates {
  display: grid;
  gap: 0.65rem;
}
.identity-form .schedule-day {
  margin: 0;
  padding: 0.85rem;
  background: #fafbfe;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
}
.identity-form .schedule-day legend {
  font-weight: 650;
  font-size: 0.9rem;
}
.identity-form .schedule-open {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  margin-block-end: 0.5rem;
}
.schedule-slot {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  gap: 0.65rem;
  align-items: end;
  margin-block: 0.6rem;
}
.identity-form .schedule-slot label {
  font-size: 0.75rem;
  color: var(--ui-muted);
  gap: 0.3rem;
}
.identity-root .schedule-slot input {
  padding: 0.5rem;
  min-inline-size: 0;
  min-block-size: 2.5rem;
}
.schedule-hint {
  color: var(--ui-muted);
  font-size: 0.875rem;
  line-height: 1.5;
  max-inline-size: 42rem;
}
.identity-root .schedule-editor .schedule-add {
  color: var(--brand-primary);
  background: #7da2be18;
  border-color: #7da2be66;
}
.identity-root .schedule-editor .schedule-remove {
  font-size: 0.75rem;
  padding: 0.5rem;
  color: #7b3d37;
}
@media (max-width: 48rem) {
  .schedule-slot {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .schedule-slot .schedule-remove {
    grid-column: 1 / -1;
  }
}

.site-navigation .site-navigation-user > .navigation-avatar {
  padding: 0;
}
@media (min-width: 901px) {
  .site-navigation-inner {
    grid-template-columns: auto minmax(0, 1fr) auto auto auto;
  }
}
.identity-root .schedule-editor button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: fit-content;
  min-block-size: 2.35rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  font: 600 0.8125rem/1.3
    var(--identity-font-body, var(--font-body, sans-serif));
  cursor: pointer;
  box-shadow: none;
}
.identity-root .schedule-editor button:disabled {
  opacity: 0.45;
  cursor: default;
}
.identity-root .schedule-editor button {
  background: #fff;
  color: var(--brand-primary);
}
.identity-root .schedule-editor .schedule-add {
  background: #7da2be18;
  border-color: #7da2be66;
}
.venue-card .workspace-toolbar {
  margin-block: 1rem;
  align-items: center;
}
.venue-card .venue-grid {
  margin-block: 1rem;
}
.venue-card .venue-grid h2 {
  font-size: 1.15rem;
  font-weight: 650;
}

/* Expanded map columns must scroll independently; ordinary filters stay in page flow. */
.discovery-form.discovery-map-expanded {
  overflow: hidden;
}
.discovery-form.discovery-map-expanded .discovery-filters,
.discovery-form.discovery-map-expanded > .discovery-results-column {
  min-height: 0;
  height: 100%;
  max-height: 100%;
  overflow-y: auto;
  overscroll-behavior: contain;
}

/* Landing rails retain scrolling while their native scrollbar stays hidden. */
.discovery-landing .discovery-rail {
  scrollbar-width: none;
}
.discovery-landing .discovery-rail::-webkit-scrollbar {
  display: none;
}

/* Owner revision, September30: stone surfaces, graphite text and toasted amber. */
:root {
  --brand-primary: #302e2b;
  --brand-surface: #ddd8cf;
  --brand-action: #0062e3;
  --brand-accent: var(--brand-action);
  --ui-accent: var(--brand-action);
  --ui-subtle: #f8f7f5;
  --ui-muted: #625e57;
  --ui-selected: #e6edf3;
  --ui-border: #ddd8d0;
  --coffee: #506b80;
  --coffee-dark: var(--brand-primary);
  --terracotta: #506b80;
}
.site-navigation {
  --nav-surface: var(--brand-surface);
  --nav-text: var(--brand-primary);
  --nav-muted: #625e57;
  --nav-hover: #d4cec3;
  --nav-line: #ddd8d0;
  --nav-accent: var(--brand-action);
}
.site-navigation .brand,
.site-navigation .site-navigation-currency,
.site-navigation .site-navigation-currency select,
.site-navigation .audience-switch a[aria-current] {
  color: var(--brand-primary);
}
.site-navigation .audience-switch {
  background: #d4cec3;
  border-color: #ddd8d0;
}
.site-navigation .audience-switch a {
  color: var(--ui-muted);
}
.site-navigation .audience-switch::before {
  box-shadow: 0 1px 3px #302e2b0d;
}
.explore-workspace::before,
.explore-workspace .catalog-heading:has(.discovery-heading-copy)::before,
.explore-workspace .discovery-search::before {
  background: var(--brand-surface);
}
.explore-workspace .catalog-heading,
.explore-workspace .catalog-heading h1 {
  color: var(--brand-primary);
}
.explore-workspace .catalog-subtitle,
.explore-workspace .catalog-heading > a {
  color: var(--ui-muted);
}
.hero-phrase {
  color: #425f75;
}
.primary-action:hover {
  background: var(--brand-action-hover);
}
.map-open-button {
  background: var(--brand-action);
  color: var(--brand-primary);
  border-color: var(--ui-border);
  box-shadow: 0 2px 8px #302e2b0d;
}
.site-navigation .navigation-avatar {
  border-color: var(--ui-border);
}
.site-frame:has(.explore-workspace) > .site-navigation {
  box-shadow: 0 2px 0 var(--brand-surface);
}
.site-navigation .currency-mark,
.site-navigation .language-mark {
  color: var(--ui-muted);
  stroke: currentColor;
}
.site-navigation-currency select:focus-visible {
  outline-color: #425f75;
}

/* Accepted identity: scoped navigation and joined discovery header colors. */
:root {
  --header-surface: #062b73;
  --header-accent: var(--brand-action);
  --header-text: #ffffff;
  --header-muted: #ffffff;
}
.site-navigation {
  --nav-surface: var(--header-surface);
  --nav-text: var(--header-text);
  --nav-muted: var(--header-muted);
  --nav-hover: #2733490d;
  --nav-line: #27334924;
  --brand-action: var(--header-accent);
}
.site-navigation .brand,
.site-navigation .site-navigation-currency,
.site-navigation .site-navigation-currency select {
  color: var(--header-text);
}
.site-navigation .audience-switch {
  background: #2733490d;
  border-color: #27334924;
}
.site-navigation .audience-switch a,
.site-navigation .currency-mark,
.site-navigation .language-mark,
.site-navigation .site-navigation-locales summary {
  color: var(--header-muted);
}
.site-navigation .audience-switch a[aria-current] {
  color: #ffffff;
}
.site-navigation-currency select:focus-visible {
  outline-color: var(--header-accent);
}
.explore-workspace::before,
.explore-workspace .catalog-heading:has(.discovery-heading-copy)::before,
.explore-workspace .discovery-search::before {
  background: var(--header-surface);
}
.site-frame:has(.explore-workspace) > .site-navigation {
  box-shadow: 0 2px 0 var(--header-surface);
}
.explore-workspace .catalog-heading,
.explore-workspace .catalog-heading h1 {
  color: var(--header-text);
}
.explore-workspace .catalog-subtitle,
.explore-workspace .catalog-heading > a {
  color: var(--header-muted);
}
.explore-workspace .hero-phrase {
  color: var(--header-text);
}
.explore-workspace .discovery-search button[data-discovery-submit] {
  background: var(--header-accent);
  color: #ffffff;
}
.explore-workspace .discovery-search button[data-discovery-submit]:hover {
  background: var(--brand-action-hover);
}

/* Larger navigation utilities: currency, language and account access. */
.site-navigation .site-navigation-currency {
  gap: 0.35rem;
}
.site-navigation .site-navigation-currency select {
  inline-size: 4.1rem;
  min-block-size: 2.75rem;
  padding-inline: 0.25rem;
  font-size: 0.9375rem;
}
.site-navigation .site-navigation-locales summary {
  min-block-size: 2.75rem;
  padding: 0.5rem;
  gap: 0.4rem;
  font-size: 0.9375rem;
}
.site-navigation .currency-mark,
.site-navigation .language-mark {
  inline-size: 1.2rem;
  block-size: 1.2rem;
}
.site-navigation .navigation-sign-in {
  min-block-size: 2.75rem;
  padding: 0.5rem 0.95rem;
  font-size: 0.9375rem;
}
.site-navigation .navigation-avatar {
  inline-size: 3rem;
  block-size: 3rem;
}
@media (max-width: 900px) {
  .site-navigation-inner {
    grid-template-columns: minmax(0, 1fr) auto auto auto;
  }
}
@media (max-width: 480px) {
  .site-navigation-inner {
    grid-template-columns: minmax(0, 1fr) auto auto;
  }
  .site-navigation .brand {
    grid-column: 1;
    grid-row: 1;
  }
  .site-navigation-currency {
    grid-column: 2;
    grid-row: 1;
  }
  .site-navigation-locales {
    grid-column: 3;
    grid-row: 1;
  }
  .site-navigation-links {
    grid-column: 1 / -1;
    grid-row: 2;
    padding-inline-end: 7rem;
  }
  .site-navigation-account {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: end;
    align-self: center;
  }
}
@media (max-width: 380px) {
  .site-navigation .audience-switch a {
    padding-inline: 0.3rem;
  }
}

/* Compact result cards: photo, identity, score, map and price actions. */
.discovery-list .discovery-place {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  gap: 14px;
  padding: 12px;
  border-radius: 8px;
}
.discovery-list .discovery-cover {
  inline-size: 200px;
  block-size: 180px;
  min-block-size: 0;
  border-radius: 8px;
  overflow: hidden;
}
.discovery-list .discovery-cover .profile-image,
.discovery-list .discovery-cover img {
  inline-size: 100%;
  block-size: 100%;
  aspect-ratio: auto;
  object-fit: cover;
}
.discovery-list .discovery-place-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 12px;
  padding: 0;
  min-inline-size: 0;
}
.discovery-list .discovery-place h3 {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  font-size: 1rem;
  font-weight: 750;
}
.discovery-list .discovery-place h3 a {
  color: var(--header-accent);
}
.discovery-list .discovery-address {
  grid-column: 1;
  grid-row: 2;
  margin: 0;
  font-size: 0.75rem;
  color: var(--ui-muted);
}
.discovery-rating {
  grid-column: 2;
  grid-row: 1 / 3;
  display: grid;
  justify-items: end;
  align-content: start;
  gap: 4px;
}
.discovery-list .discovery-score {
  padding: 5px 8px;
  border-radius: 8px;
  background: var(--header-accent);
  color: #fff;
  font-size: 1rem;
  font-weight: 750;
}
.discovery-score small {
  font-size: 0.65rem;
  font-weight: 400;
}
.discovery-visit-total,
.discovery-unrated {
  color: var(--ui-muted);
  font-size: 0.7rem;
}
.discovery-list .discovery-price {
  grid-column: 2;
  grid-row: 3;
  display: flex;
  flex-direction: column;
  align-items: end;
  margin: 8px 0 0;
  gap: 2px;
}
.discovery-list .discovery-price bdi {
  font-size: 1.5rem;
  font-weight: 750;
  line-height: 1.2;
}
.discovery-list .discovery-price span {
  font-size: 0.7rem;
}
.discovery-list .original-price {
  font-size: 0.7rem;
}
.discovery-show-map {
  grid-column: 1;
  grid-row: 4;
  align-self: end;
  justify-self: start;
  color: var(--header-accent);
  font-size: 0.75rem;
  text-underline-offset: 3px;
}
.discovery-list .discovery-place-action {
  grid-column: 2;
  grid-row: 4;
  justify-self: end;
  align-self: end;
  min-block-size: 36px;
  padding: 8px 12px;
  border-radius: 8px;
  background: var(--header-accent);
  color: #fff;
  font-size: 0.8rem;
  font-weight: 650;
  text-decoration: none;
}
.discovery-list .discovery-place-action:hover {
  background: var(--brand-action-hover);
}
.discovery-map-expanded .discovery-list .discovery-place {
  grid-template-columns: 1fr;
}
.discovery-map-expanded .discovery-list .discovery-cover {
  inline-size: 100%;
  block-size: 100px;
}
@media (max-width: 600px) {
  .discovery-list .discovery-place {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
  }
  .discovery-list .discovery-cover {
    inline-size: 88px;
    block-size: 112px;
  }
  .discovery-list .discovery-place-content {
    gap: 6px 8px;
  }
  .discovery-list .discovery-place h3 {
    font-size: 0.9375rem;
  }
  .discovery-list .discovery-price bdi {
    font-size: 1.25rem;
  }
}
.discovery-list .discovery-cover .profile-image-square {
  min-height: 0;
  min-block-size: 0;
  border-radius: 8px;
}
.discovery-list .discovery-facts,
.discovery-list .discovery-reasons,
.discovery-list .discovery-place-content > p:not([class]) {
  display: none;
}

/* Result layout: a map above complete filters, with a wider card column. */
.discovery-form:has(> .discovery-sidebar):not(.discovery-map-expanded) {
  grid-template-columns: 15rem minmax(0, 1fr);
}
.discovery-sidebar {
  grid-column: 1;
  grid-row: 3;
  align-self: stretch;
  min-inline-size: 0;
}
.discovery-sidebar > .discovery-filters {
  margin-block-start: 14px;
}
.discovery-sidebar > .discovery-map-column {
  position: static;
  inset: auto;
  z-index: 3;
  inline-size: 100%;
  margin: 0;
  padding-block-end: 8px;
  background: var(--ui-surface, #fff);
  border-radius: 8px;
  box-shadow: 0 5px 12px #2534410a;
}
.discovery-sidebar .map-viewport,
.discovery-sidebar .explore-map[data-map-state="unavailable"] .map-viewport {
  height: 220px;
  min-height: 220px;
}
.discovery-map-expanded > .discovery-sidebar {
  display: contents;
}
.discovery-map-expanded .discovery-map-column {
  position: relative;
  inset: auto;
  z-index: auto;
  padding: 0;
  background: none;
  box-shadow: none;
}
.discovery-map-expanded .discovery-filters {
  margin: 0;
}
@media (max-width: 900px) and (min-width: 681px) {
  .discovery-form:has(> .discovery-sidebar):not(.discovery-map-expanded) {
    grid-template-columns: 13rem minmax(0, 1fr);
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-place {
    grid-template-columns: 140px minmax(0, 1fr);
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-cover {
    inline-size: 140px;
    block-size: 160px;
  }
}
@media (max-width: 680px) {
  .discovery-sidebar {
    inline-size: 100%;
  }
  .discovery-form:not(.discovery-map-expanded)
    .discovery-sidebar
    > .discovery-map-column {
    position: static;
  }
}

/* Keep the preview action over the map while preserving attribution access. */
.discovery-sidebar .map-open-button {
  position: absolute;
  inset-inline-start: 50%;
  inset-inline-end: auto;
  top: auto;
  bottom: 16px;
  inline-size: max-content;
  max-inline-size: calc(100% - 24px);
  transform: translateX(-50%);
  background: var(--header-accent);
  color: #fff;
  border: 1px solid #fff;
  box-shadow: 0 3px 14px #25344135;
  z-index: 2;
}
[dir="rtl"] .discovery-sidebar .map-open-button {
  transform: translateX(50%);
}

/* Center the result group without changing the search bar's width. */
@media (min-width: 1101px) {
  .discovery-form:has(> .discovery-sidebar):not(.discovery-map-expanded) {
    grid-template-columns: minmax(0, 1fr) 15rem minmax(0, 53rem) minmax(0, 1fr);
    column-gap: 0;
  }
  .discovery-form:not(.discovery-map-expanded) > .discovery-sidebar {
    grid-column: 2;
  }
  .discovery-form:not(.discovery-map-expanded) > .discovery-results-column {
    grid-column: 3;
    margin-inline-start: 16px;
  }
}

/* Larger venue photography and more readable result information. */
.discovery-form:not(.discovery-map-expanded) .discovery-place {
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 18px;
  padding: 14px;
}
.discovery-form:not(.discovery-map-expanded) .discovery-cover {
  inline-size: 230px;
  block-size: 220px;
}
.discovery-form:not(.discovery-map-expanded) .discovery-place h3 {
  font-size: 1.25rem;
  line-height: 1.3;
}
.discovery-list .discovery-address {
  font-size: 0.875rem;
  line-height: 1.45;
}
.discovery-list .discovery-score {
  font-size: 1.2rem;
}
.discovery-score small {
  font-size: 0.75rem;
}
.discovery-visit-total,
.discovery-unrated {
  font-size: 0.8125rem;
}
.discovery-list .discovery-price bdi {
  font-size: 1.75rem;
}
.discovery-list .discovery-price span,
.discovery-list .original-price {
  font-size: 0.8125rem;
}
.discovery-show-map {
  font-size: 0.875rem;
}
.discovery-list .discovery-place-action {
  font-size: 0.9375rem;
  min-block-size: 40px;
}
@media (max-width: 900px) and (min-width: 681px) {
  .discovery-form:not(.discovery-map-expanded) .discovery-place {
    grid-template-columns: 160px minmax(0, 1fr);
    gap: 12px;
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-cover {
    inline-size: 160px;
    block-size: 200px;
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-place h3 {
    font-size: 1.125rem;
  }
}
@media (max-width: 680px) {
  .discovery-form:not(.discovery-map-expanded) .discovery-place {
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-cover {
    inline-size: 112px;
    block-size: 160px;
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-place h3 {
    font-size: 1.0625rem;
  }
  .discovery-list .discovery-place-content {
    column-gap: 6px;
  }
  .discovery-list .discovery-price bdi {
    font-size: 1.5rem;
  }
}
@media (max-width: 680px) {
  .discovery-form:not(.discovery-map-expanded) .discovery-place h3 {
    grid-column: 1 / -1;
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-rating {
    grid-row: 2;
  }
}
/* Keep preview credits discreet and available from their information control. */
.discovery-sidebar
  .maplibregl-ctrl-attrib:not(:hover):not(:focus-within)
  .maplibregl-ctrl-attrib-inner {
  display: none;
}
.discovery-sidebar .maplibregl-ctrl-attrib > summary::after {
  content: none;
}

/* Issue227: one restrained presentation for every interior page. */
.identity-root {
  background: #fff;
}
.identity-root .identity-main {
  width: min(100% - 3rem, 68rem);
  inline-size: min(100% - 3rem, 68rem);
  margin-inline: auto;
  padding-block: 2.5rem 4rem;
  align-content: start;
}
.identity-root .identity-main > .identity-card {
  width: 100%;
  inline-size: 100%;
  max-width: 44rem;
  max-inline-size: 44rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  justify-self: start;
}
.identity-root
  .identity-main
  > .identity-card:is(
    .account-workspace,
    .venue-card,
    .media-workspace,
    .review-workspace,
    .discovery-workspace,
    .compliance-workspace
  ) {
  max-width: 68rem;
  max-inline-size: 68rem;
}
.identity-root .identity-main :is(h1, h2, h3, h4) {
  font-family: var(--identity-font-body, var(--font-body, sans-serif));
  font-weight: 650;
  letter-spacing: -0.025em;
  line-height: 1.3;
  color: var(--brand-primary);
}
.identity-root .identity-main h1 {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  margin-block: 0 0.75rem;
  max-inline-size: 36ch;
}
.identity-root .identity-main h2 {
  font-size: 1.25rem;
  margin-block: 1.75rem 0.75rem;
}
.identity-root .identity-main h3 {
  font-size: 1rem;
  margin-block: 1.25rem 0.65rem;
}
.identity-root .identity-main h4 {
  font-size: 0.9375rem;
  margin-block: 0 0.5rem;
}
.identity-root .identity-main p {
  max-inline-size: 66ch;
  font-size: 0.9375rem;
  line-height: 1.65;
}
.identity-root
  .identity-main
  :is(.identity-hint, .identity-field-error, .collection-notice, small) {
  font-size: 0.8125rem;
  line-height: 1.55;
}
.identity-root .identity-main :is(.identity-eyebrow, .workspace-badge) {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0;
}
.identity-root .identity-main form {
  min-inline-size: 0;
}
.identity-root .identity-main .identity-form,
.identity-root .identity-main .developer-applications form {
  display: grid;
  justify-items: start;
  gap: 1.15rem;
  margin-block: 1.5rem;
  max-inline-size: 44rem;
}
.identity-root
  .identity-main
  :is(
    .identity-field,
    .identity-form > label,
    .developer-applications form > label
  ) {
  display: grid;
  justify-items: start;
  gap: 0.45rem;
  inline-size: 100%;
  min-inline-size: 0;
  font-size: 0.875rem;
  font-weight: 500;
}
.identity-root .identity-main :is(label, legend) {
  font-weight: 500;
}
.identity-root
  .identity-main
  :where(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(
        [type="file"]
      ):not([type="range"]):not([type="submit"]),
    select,
    textarea
  ) {
  width: min(100%, 24rem);
  inline-size: min(100%, 24rem);
  max-inline-size: 100%;
  min-inline-size: 0;
  min-height: 44px;
  min-block-size: 44px;
  padding: 0.65rem 0.8rem;
  border: 1px solid #dce2e7;
  border-radius: 8px;
  background: #f8fafb;
  color: var(--brand-primary);
  font: 400 0.9375rem/1.45
    var(--identity-font-body, var(--font-body, sans-serif));
  box-shadow: none;
  transition:
    border-color 150ms ease,
    background 150ms ease;
}
.identity-root .identity-main :is(input, textarea)::placeholder {
  color: #78828b;
  opacity: 1;
}
.identity-root .identity-main :is(input, select, textarea):focus {
  border-color: var(--brand-action);
  background: #fff;
}
.identity-root
  .identity-main
  :is(input, select, textarea)[aria-invalid="true"] {
  border-color: #a34137;
}
.identity-root .identity-main textarea {
  width: min(100%, 36rem);
  inline-size: min(100%, 36rem);
  min-block-size: 7rem;
  resize: vertical;
}
.identity-root .identity-main select {
  width: auto;
  inline-size: auto;
  padding-inline-end: 2rem;
}
.identity-root .identity-main input:is([type="number"], [inputmode="decimal"]) {
  width: min(100%, 10rem);
  inline-size: min(100%, 10rem);
}
.identity-root .identity-main input:is([type="date"], [type="datetime-local"]) {
  width: min(100%, 16rem);
  inline-size: min(100%, 16rem);
}
.identity-root
  .identity-main
  input:is([type="time"], [autocomplete="one-time-code"]) {
  width: min(100%, 9rem);
  inline-size: min(100%, 9rem);
}
.identity-root .identity-main .identity-handle-input {
  width: min(100%, 24rem);
  inline-size: min(100%, 24rem);
}
.identity-root .identity-main .identity-handle-input input {
  width: 100%;
  inline-size: 100%;
  padding-inline-end: 2.5rem;
}
.identity-root
  .identity-main
  :is(
    .identity-checkbox,
    .identity-choice,
    label:has(> input[type="checkbox"]),
    label:has(> input[type="radio"])
  ) {
  display: flex;
  flex-direction: row;
  align-items: start;
  gap: 0.65rem;
  max-inline-size: 40rem;
  font-weight: 400;
}
.identity-root .identity-main input:is([type="checkbox"], [type="radio"]) {
  flex: 0 0 auto;
  inline-size: 18px;
  block-size: 18px;
  margin-block-start: 3px;
  accent-color: var(--brand-action);
}
.identity-root
  .identity-main
  :is(
    button,
    .identity-primary-action,
    .identity-secondary-action,
    .venue-call,
    .venue-whatsapp
  ) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: auto;
  inline-size: fit-content;
  max-inline-size: 100%;
  min-height: 44px;
  min-block-size: 44px;
  justify-self: start;
  align-self: start;
  padding: 0.65rem 1rem;
  border: 1px solid transparent;
  border-radius: 8px;
  background: #eef3f6;
  color: var(--brand-primary);
  font: 550 0.875rem/1.4 var(--identity-font-body, var(--font-body, sans-serif));
  text-align: center;
  text-decoration: none;
  box-shadow: none;
  cursor: pointer;
  transition: background 150ms ease;
}
.identity-root .identity-main :is(button, .identity-secondary-action):hover {
  background: #e4ebf1;
  box-shadow: none;
}
.identity-root .identity-main .identity-primary-action {
  background: var(--brand-action);
  border-color: transparent;
  color: var(--brand-primary);
}
.identity-root .identity-main .identity-primary-action:hover {
  background: var(--brand-action-hover);
  border-color: transparent;
}
.identity-root .identity-main .identity-danger-action {
  background: #a34137;
  color: #fff;
}
.identity-root .identity-main .identity-danger-action:hover {
  background: #89362e;
}
.identity-root .identity-main .venue-call {
  background: var(--brand-primary);
  color: #fff;
}
.identity-root .identity-main .venue-whatsapp {
  background: #176b46;
  color: #fff;
}
.identity-root .identity-main :is(button, input, select, textarea):disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.identity-root .identity-main input[type="file"] {
  width: min(100%, 30rem);
  inline-size: min(100%, 30rem);
  max-inline-size: 100%;
  color: var(--ui-muted);
  font: inherit;
  font-size: 0.8125rem;
}
.identity-root .identity-main input[type="file"]::file-selector-button {
  min-block-size: 44px;
  margin-inline-end: 0.75rem;
  padding: 0.65rem 1rem;
  border: 0;
  border-radius: 8px;
  background: #eef3f6;
  color: var(--brand-primary);
  font: inherit;
  cursor: pointer;
}
.identity-root
  .identity-main
  :is(
    .identity-actions,
    .identity-phone-actions,
    .venue-actions,
    .workspace-actions,
    .workspace-toolbar
  ) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: start;
  gap: 0.65rem;
}
.identity-root .identity-main :is(.identity-fieldset, fieldset) {
  min-inline-size: 0;
  width: 100%;
  inline-size: 100%;
  margin: 0;
  padding: 1.25rem 0 0;
  border: 0;
  border-block-start: 1px solid #e7ecef;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}
.identity-root .identity-main legend {
  padding-inline: 0 0.75rem;
  font-size: 0.9375rem;
}
.identity-root
  .identity-main
  :is(
    .identity-message,
    .identity-status-card,
    .workspace-result,
    .venue-search-scope
  ) {
  max-inline-size: 44rem;
  margin-block: 1rem;
  padding: 0.85rem 1rem;
  border: 0;
  border-radius: 8px;
  background: #f3f6f8;
  box-shadow: none;
}
.identity-root .identity-main .identity-message-error {
  background: #fbefed;
  color: #8b3029;
}
.identity-root .identity-main .identity-message :is(h2, p),
.identity-root .identity-main .identity-status-card :is(h2, p) {
  margin-block: 0.25rem;
}
.identity-root .identity-main :is(pre, code) {
  overflow-wrap: anywhere;
  max-inline-size: 100%;
}
.identity-root .identity-main pre {
  white-space: pre-wrap;
  padding: 1rem;
  background: #f3f6f8;
  border: 0;
  border-radius: 8px;
  font-size: 0.8125rem;
}
.identity-root .identity-main .workspace-heading {
  padding-block: 0 1.5rem;
  margin: 0;
  gap: 1rem;
}
.identity-root .identity-main .workspace-heading h1 {
  margin: 0;
}
.identity-root .identity-main .workspace-badge {
  padding: 0.35rem 0.6rem;
  border: 0;
  border-radius: 8px;
  background: #f0f4f7;
  color: var(--ui-muted);
}
.identity-root .identity-main .workspace-launchers {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-block: 0 2rem;
}
.identity-root .identity-main .workspace-launchers a {
  width: auto;
  inline-size: fit-content;
  gap: 0.65rem;
  padding: 0.75rem 1rem;
  border: 0;
  border-radius: 8px;
  background: #f3f6f8;
  box-shadow: none;
  font-size: 0.875rem;
  font-weight: 500;
}
.identity-root .identity-main .workspace {
  grid-template-columns: 11.5rem minmax(0, 1fr);
  gap: 2.5rem;
}
.identity-root .identity-main .workspace-navigation {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  gap: 0.3rem;
}
.identity-root .identity-main .workspace-navigation a {
  padding: 0.7rem 0.8rem;
  font-size: 0.875rem;
  font-weight: 450;
}
.identity-root .identity-main .workspace-navigation a[aria-current] {
  background: #eaf0f5;
  color: var(--brand-primary);
  box-shadow: none;
  font-weight: 600;
}
.identity-root .identity-main .workspace-content {
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}
.identity-root .identity-main .workspace-panel {
  padding: 0;
}
.identity-root .identity-main .workspace-panel > h2,
.identity-root .identity-main .workspace-panel > section > h2 {
  margin-block-start: 0;
}
.identity-root .identity-main .profile-photo-settings {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 1.25rem;
  margin-block: 2rem;
}
.identity-root .identity-main .profile-photo-settings h3 {
  margin-block-start: 0;
}
.identity-root .identity-main .profile-photo-settings form {
  margin-block: 0.75rem;
}
.identity-root .identity-main .venue-card :is(section, details, li) {
  margin-block: 1rem;
}
.identity-root .identity-main .venue-search-fields {
  grid-template-columns: repeat(2, minmax(0, 24rem));
  justify-content: start;
  gap: 1rem;
  width: 100%;
  inline-size: 100%;
}
.identity-root .identity-main .venue-search-location,
.identity-root .identity-main .venue-search-fields > label {
  width: 100%;
  inline-size: 100%;
}
.identity-root .identity-main .venue-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 2rem;
}
.identity-root
  .identity-main
  :is(
    .venue-grid li,
    .venue-search-result,
    .visit-history-record,
    .review-card,
    .compliance-queue li
  ) {
  padding: 1.25rem 0;
  margin: 0;
  border: 0;
  border-block-end: 1px solid #e7ecef;
  background: transparent;
  box-shadow: none;
}
.identity-root .identity-main .venue-grid li h3 {
  margin-block-start: 0;
}
.identity-root .identity-main .schedule-slot {
  grid-template-columns: repeat(4, minmax(0, 8rem)) auto;
  justify-content: start;
  gap: 0.65rem;
}
.identity-root .identity-main .schedule-day {
  padding-block: 1rem;
  border-block-end: 1px solid #e7ecef;
  background: transparent;
}
.identity-root .identity-main .schedule-editor :is(input, button) {
  min-block-size: 44px;
}
.identity-root .identity-main .schedule-editor .schedule-remove {
  background: #fbefed;
  color: #8b3029;
}
.identity-root
  .identity-main
  :is(.connected-accounts, .developer-applications)
  > section {
  padding-block: 1.5rem;
  border-block-start: 1px solid #e7ecef;
}
.identity-root .identity-main .connected-accounts > ul {
  list-style: none;
  padding: 0;
}
.identity-root .identity-main .connected-accounts > ul > li {
  padding-block: 1.25rem;
  border-block-start: 1px solid #e7ecef;
}
.identity-root .identity-main .connected-accounts form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
}
.identity-root .identity-main .connected-accounts :is(p, h4) {
  margin-block: 0.4rem;
}
.identity-root .identity-main .public-profile-content > section {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 1rem 0;
}
.identity-root
  .identity-main
  .public-venue-sidebar
  > :is([data-venue-offer], [data-venue-contacts], .venue-location) {
  padding: 1rem;
  border: 0;
  background: #f5f8fa;
  box-shadow: none;
}
.legal-document {
  padding-block: 2.5rem 4rem;
  max-inline-size: 52rem;
}
.legal-document h1 {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 650;
  letter-spacing: -0.025em;
}
.legal-document .legal-content h2 {
  font-size: 1.25rem;
  font-weight: 650;
}
.legal-document .legal-introduction {
  font-size: 1rem;
}
@media (max-width: 760px) {
  .identity-root .identity-main {
    width: calc(100% - 2rem);
    inline-size: calc(100% - 2rem);
    padding-block: 1.75rem 3rem;
  }
  .identity-root .identity-main .workspace {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
  }
  .identity-root .identity-main .workspace-navigation {
    display: flex;
    flex-wrap: wrap;
    overflow: visible;
    position: static;
    padding-block-end: 0.75rem;
    border-block-end: 1px solid #e7ecef;
  }
  .identity-root .identity-main .workspace-navigation a {
    gap: 0.4rem;
    padding: 0.65rem;
    font-size: 0.8125rem;
  }
  .identity-root .identity-main .venue-grid,
  .identity-root .identity-main .venue-search-fields {
    grid-template-columns: minmax(0, 1fr);
  }
  .identity-root .identity-main .schedule-slot {
    grid-template-columns: repeat(2, minmax(0, 8rem));
  }
  .identity-root .identity-main .schedule-slot .schedule-remove {
    grid-column: auto;
  }
  .identity-root .identity-main .profile-photo-settings {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* Enhanced forms retain their native-only actions and explicit retry states. */
.identity-root .identity-main.visits-enhanced [data-native-save],
.identity-root .identity-main .visits-enhanced [data-native-save],
.identity-root .identity-main.visits-enhanced [data-code-token] form button,
.identity-root .identity-main .visits-enhanced [data-code-token] form button {
  display: none;
}
.identity-root .identity-main.visits-enhanced [data-native-save][data-retry],
.identity-root .identity-main .visits-enhanced [data-native-save][data-retry] {
  display: inline-flex;
}
.privacy-preferences {
  padding-block: 2.5rem 4rem;
  min-block-size: 0;
}
.privacy-preferences :is(.preference-form, .current-consent-state) {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.privacy-preferences .preference-card {
  padding: 1.25rem 0;
  border: 0;
  border-block-start: 1px solid #e7ecef;
  border-radius: 8px;
  background: transparent;
}
.privacy-preferences :is(h2, legend) {
  font-weight: 600;
}
.privacy-preferences .preference-options label {
  inline-size: fit-content;
  max-inline-size: 100%;
  border: 0;
  background: #f3f6f8;
  font-weight: 400;
}
.privacy-preferences .preference-options label:has(input:checked) {
  background: #eaf0f5;
  box-shadow: none;
}
.consent-banner .consent-banner-form {
  display: flex;
  flex-wrap: wrap;
}
.consent-decision-button,
.preference-save-button {
  inline-size: fit-content;
  min-inline-size: 0;
  justify-self: start;
  border: 0;
  box-shadow: none;
  font-weight: 550;
}
.consent-decision-button:hover,
.preference-save-button:hover {
  background: var(--brand-action-hover);
}
.consent-decision-button[data-decision="denied"] {
  background: #eef3f6;
}
.consent-decision-button[data-decision="denied"]:hover {
  background: #e4ebf1;
}
.site-frame > main.identity-card {
  width: min(100% - 3rem, 68rem);
  margin: 2.5rem auto 4rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.site-frame > main.identity-card h1,
.not-found h1 {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 650;
  letter-spacing: -0.025em;
}
.site-frame > main.identity-card p {
  max-inline-size: 66ch;
  line-height: 1.65;
}
.site-frame > main.identity-card table {
  display: block;
  max-inline-size: 100%;
  overflow-x: auto;
  border-collapse: collapse;
  font-size: 0.8125rem;
}
.site-frame > main.identity-card :is(th, td) {
  min-inline-size: 8rem;
  max-inline-size: 32rem;
  padding: 0.85rem;
  border-block-end: 1px solid #e7ecef;
  text-align: start;
  vertical-align: top;
}
.not-found {
  padding-block: 2.5rem 4rem;
}
.not-found .primary-action {
  min-block-size: 44px;
  inline-size: fit-content;
  font-size: 0.875rem;
  font-weight: 550;
  box-shadow: none;
}
/* Referral invitation, issue249: a quiet landing banner with a green action. */
.discovery-referral-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  justify-self: center;
  gap: 1.5rem;
  inline-size: min(100%, 68rem);
  min-inline-size: 0;
  padding: 1.25rem 1.5rem;
  border: 1px solid #dce5ed;
  border-radius: 8px;
  background: #eaf0f5;
}
.discovery-referral-copy {
  min-inline-size: 0;
}
.discovery-referral-copy h2 {
  margin: 0 0 0.35rem;
  color: var(--ink, #302e2b);
  font-family: inherit;
  font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -0.02em;
}
.discovery-referral-copy p {
  margin: 0;
  color: var(--ink-soft, #625e57);
  font-size: 0.9375rem;
  line-height: 1.55;
}
.discovery-referral-banner .discovery-referral-action {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  min-block-size: 2.75rem;
  padding: 0.65rem 1.1rem;
  border: 1px solid #137b50;
  border-radius: 8px;
  background: #137b50;
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 650;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  transition: background-color 150ms ease;
}
.discovery-referral-banner .discovery-referral-action:hover {
  border-color: #106241;
  background: #106241;
}
.discovery-referral-banner .discovery-referral-action:focus-visible {
  outline: 3px solid var(--brand-action);
  outline-offset: 3px;
}
@media (max-width: 640px) {
  .discovery-referral-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .discovery-referral-banner .discovery-referral-action {
    transition: none;
  }
}
/* Private venue finder, issue253: one location entry, then map exploration. */
.identity-root .identity-main > .venue-card:has(.venue-map-finder),
.identity-root .identity-main .identity-card:has(> .venue-map-finder) {
  inline-size: min(100%, 88rem);
  max-inline-size: 88rem;
}
.identity-root .identity-main .venue-map-finder {
  display: grid;
  gap: 1.25rem;
  min-inline-size: 0;
}
.identity-root .identity-main .venue-map-finder .venue-search-form {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 1rem;
  margin: 0;
  padding-block: 0.5rem 1.25rem;
  border-block-end: 1px solid #e4ebf1;
}
.identity-root .identity-main .venue-map-finder .venue-search-location {
  display: grid;
  gap: 0.5rem;
  inline-size: min(100%, 24rem);
  max-inline-size: 24rem;
  position: relative;
  z-index: 3;
}
.identity-root .identity-main .venue-map-finder label > span {
  color: #5a6d7e;
  font-size: 0.8125rem;
  font-weight: 500;
}
.identity-root .identity-main .venue-map-finder .search-combo {
  position: relative;
  display: block;
  min-inline-size: 0;
}
.identity-root
  .identity-main
  .venue-map-finder
  .search-combo
  input:not([type="hidden"]),
.identity-root .identity-main .venue-map-finder input[type="search"] {
  inline-size: 100%;
  max-inline-size: 24rem;
  min-block-size: 48px;
  padding: 0.75rem 0.85rem;
  border: 1px solid #cad5df;
  border-radius: 8px;
  background: #fff;
  color: #3b5063;
  font: inherit;
  font-size: 0.9375rem;
  box-sizing: border-box;
}
.identity-root .identity-main .venue-map-finder input:focus {
  outline: 2px solid var(--brand-action);
  outline-offset: 2px;
}
.identity-root .identity-main .venue-map-finder .search-options {
  inset-inline: 0;
  top: calc(100% + 8px);
  max-inline-size: none;
  border: 1px solid #dce3e8;
  border-radius: 8px;
  box-shadow: 0 6px 18px #25344114;
}
.identity-root .identity-main .venue-map-finder .venue-search-challenge {
  display: flex;
  align-items: center;
  min-inline-size: 300px;
  max-inline-size: 100%;
}
.identity-root .identity-main .venue-map-finder .identity-phone-challenge {
  inline-size: 300px;
  min-block-size: 65px;
}
.identity-root .identity-main .venue-map-finder .identity-primary-action {
  min-block-size: 44px;
  border-radius: 8px;
  background: var(--brand-action);
  border-color: var(--brand-action);
  color: #fff;
}
.identity-root .identity-main .venue-map-finder .identity-primary-action:hover {
  background: var(--brand-action-hover);
}
.identity-root .identity-main .venue-map-finder .venue-search-submit {
  align-self: end;
  min-block-size: 48px;
  margin: 0;
}
.identity-root .identity-main .venue-map-finder .venue-search-entry-status {
  margin: 0;
}
.identity-root .identity-main .venue-map-finder .venue-search-layout {
  display: grid;
  grid-template-columns: minmax(19rem, 22rem) minmax(0, 1fr);
  block-size: clamp(34rem, 70vh, 44rem);
  min-inline-size: 0;
  gap: 1.5rem;
}
.identity-root .identity-main .venue-map-finder .venue-search-results {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-inline-size: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.identity-root .identity-main .venue-map-finder .venue-search-results-heading {
  flex: 0 0 auto;
  padding: 0 0 1rem;
  border-block-end: 1px solid #e4ebf1;
}
.identity-root
  .identity-main
  .venue-map-finder
  .venue-search-results-heading
  h3 {
  margin: 0 0 1rem;
  font: 600 1.125rem var(--font-body, sans-serif);
  color: #3b5063;
}
.identity-root
  .identity-main
  .venue-map-finder
  .venue-search-results-heading
  label {
  display: grid;
  gap: 0.45rem;
}
.identity-root
  .identity-main
  .venue-map-finder
  .venue-search-results-heading
  p {
  margin: 0.65rem 0 0;
  color: #5a6d7e;
  font-size: 0.8125rem;
  line-height: 1.4;
}
.identity-root .identity-main .venue-map-finder .venue-search-result-list {
  position: relative;
  overflow-y: auto;
  overscroll-behavior-block: contain;
  flex: 1;
  min-block-size: 0;
}
.identity-root .identity-main .venue-map-finder .venue-search-result {
  display: grid;
  grid-template-columns: 1.75rem minmax(0, 1fr) auto;
  align-items: start;
  gap: 0.75rem;
  padding: 1rem 0.15rem;
  border-block-end: 1px solid #e4ebf1;
  margin: 0;
}
.identity-root .identity-main .venue-map-finder .venue-result-number {
  display: grid;
  place-items: center;
  inline-size: 1.75rem;
  block-size: 1.75rem;
  padding: 0;
  border-radius: 8px;
  background: #e4ebf1;
  color: #3b5063;
  font-size: 0.75rem;
}
.identity-root .identity-main .venue-map-finder .venue-result-details h3 {
  margin: 0;
  font: 600 0.9375rem var(--font-body, sans-serif);
  line-height: 1.5;
  color: #3b5063;
  overflow-wrap: anywhere;
}
.identity-root .identity-main .venue-map-finder .venue-result-details p {
  margin: 0.25rem 0 0;
  color: #5a6d7e;
  font-size: 0.8125rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.identity-root .identity-main .venue-map-finder .venue-search-result form {
  margin: 0;
}
.identity-root .identity-main .venue-map-finder .venue-select {
  padding: 0.55rem 0.65rem;
  font-size: 0.8125rem;
}
.identity-root
  .identity-main
  .venue-map-finder
  .venue-search-result[data-map-selected] {
  background: #f1f5f8;
}
.identity-root .identity-main .venue-map-finder .venue-search-map {
  position: relative;
  min-inline-size: 0;
  overflow: hidden;
  border-radius: 8px;
  margin: 0;
  background: #e4ebf1;
}
.identity-root .identity-main .venue-map-finder .venue-map {
  block-size: 100%;
  max-block-size: none;
  min-block-size: 20rem;
}
.identity-root .identity-main .venue-map-finder .venue-map-feedback {
  margin: 0;
  padding: 1rem;
  color: #5a6d7e;
}
.identity-root .identity-main .venue-map-finder .venue-map-controls {
  position: absolute;
  inset-block-start: 1rem;
  inset-inline-end: 1rem;
  display: grid;
  gap: 0.3rem;
}
.identity-root .identity-main .venue-map-finder .venue-map-controls button {
  display: grid;
  place-items: center;
  inline-size: 44px;
  min-block-size: 44px;
  padding: 0;
  border: 1px solid #cad5df;
  border-radius: 8px;
  background: #fff;
  color: #3b5063;
  font-size: 1.5rem;
}
.identity-root .identity-main .venue-map-finder .discovery-marker-static {
  min-inline-size: 44px;
  min-block-size: 44px;
  padding: 0.35rem 0.5rem;
  border: 2px solid #fff;
  border-radius: 8px;
  background: var(--brand-action);
  color: #fff;
  font: 650 0.9375rem var(--font-body, sans-serif);
  box-shadow: 0 2px 5px #25344126;
}
.identity-root .identity-main .venue-map-finder .venue-search-privacy {
  margin: 0;
  max-inline-size: 60rem;
  color: #5a6d7e;
  font-size: 0.75rem;
  line-height: 1.5;
}
@media (max-width: 800px) {
  .identity-root .identity-main .venue-map-finder .venue-search-layout {
    grid-template-columns: minmax(0, 1fr);
    block-size: auto;
    gap: 1.25rem;
  }
  .identity-root .identity-main .venue-map-finder .venue-search-map {
    grid-row: 1;
    block-size: min(52vh, 28rem);
    min-block-size: 20rem;
  }
  .identity-root .identity-main .venue-map-finder .venue-search-result-list {
    max-block-size: 28rem;
  }
}

/* Venue control: source contacts with a clear, minimal method choice. */
.identity-root .identity-main .venue-confirmation {
  padding: 0;
  margin: 1.5rem 0 0;
  border: 0;
  background: transparent;
}
.identity-root .identity-main .venue-confirmation-heading {
  padding-block-end: 1.75rem;
  border-block-end: 1px solid #e4eaf0;
}
.identity-root .identity-main .venue-confirmation-eyebrow {
  margin: 0 0 0.65rem;
  color: #5a6d7e;
  font-size: 0.8125rem;
  font-weight: 600;
}
.identity-root .identity-main .venue-confirmation-heading h2 {
  margin: 0 0 0.55rem;
  color: #3b5063;
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  line-height: 1.2;
  letter-spacing: -0.025em;
}
.identity-root
  .identity-main
  .venue-confirmation-heading
  > p:not(.venue-confirmation-eyebrow) {
  margin: 0.3rem 0 0;
  color: #5a6d7e;
  font-size: 0.9375rem;
}
.identity-root .identity-main .venue-confirmation-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(15rem, 19rem);
  gap: 2.5rem;
  padding-block-start: 1.75rem;
}
.identity-root .identity-main .venue-proof-methods {
  min-inline-size: 0;
}
.identity-root .identity-main .venue-proof-method {
  padding: 0 0 1.75rem;
  margin: 0 0 1.75rem;
  border: 0;
  border-block-end: 1px solid #e4eaf0;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}
.identity-root .identity-main .venue-proof-method:last-child {
  margin-block-end: 0;
  border-block-end: 0;
}
.identity-root .identity-main .venue-proof-method-heading {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.identity-root .identity-main .venue-proof-method-heading h3 {
  margin: 0;
  color: #3b5063;
  font-size: 1.125rem;
  font-weight: 650;
}
.venue-proof-icon {
  display: grid;
  place-items: center;
  flex: none;
  inline-size: 36px;
  block-size: 36px;
  border-radius: 8px;
  color: var(--brand-action);
  background: #eef3f6;
}
.venue-proof-icon svg {
  inline-size: 21px;
  block-size: 21px;
}
.venue-proof-contacts {
  display: grid;
  gap: 1rem;
}
.venue-proof-contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1rem;
  min-inline-size: 0;
}
.venue-proof-contact > bdi {
  flex: 1 1 13rem;
  min-inline-size: 0;
  max-inline-size: 32rem;
  overflow-wrap: anywhere;
  color: #3b5063;
  font-size: 0.9375rem;
}
.venue-proof-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
.identity-root .identity-main .venue-proof-action,
.identity-root .identity-main .venue-proof-actions .identity-primary-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: fit-content;
  min-block-size: 44px;
  margin: 0;
  padding: 0.65rem 1rem;
  border: 1px solid var(--brand-action);
  border-radius: 8px;
  color: #fff;
  background: var(--brand-action);
  box-shadow: none;
  font: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  cursor: pointer;
}
.identity-root .identity-main .venue-proof-action:hover,
.identity-root
  .identity-main
  .venue-proof-actions
  .identity-primary-action:hover {
  background: var(--brand-action-hover);
  border-color: var(--brand-action-hover);
  color: #fff;
}
.identity-root .identity-main .venue-proof-action-secondary {
  background: #fff;
  color: var(--brand-action);
  border-color: #d9e3ec;
}
.identity-root .identity-main .venue-proof-actions .identity-form {
  inline-size: auto;
  width: auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.identity-root .identity-main .venue-confirmation-context {
  padding-inline-start: 1.75rem;
  border-inline-start: 1px solid #e4eaf0;
  color: #5a6d7e;
  font-size: 0.8125rem;
  line-height: 1.65;
}
.identity-root .identity-main .venue-confirmation-context > p {
  margin: 0 0 1.5rem;
}
.identity-root .identity-main .venue-confirmation-context > section {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.identity-root .identity-main .venue-confirmation-context details {
  padding: 0.75rem 0 0;
  border: 0;
  border-block-start: 1px solid #e4eaf0;
  background: transparent;
}
.identity-root .identity-main .venue-confirmation-context summary {
  min-block-size: 44px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #3b5063;
  font-weight: 600;
}
.identity-root
  .identity-main
  .venue-confirmation-context
  details
  .identity-form {
  padding-block-start: 1rem;
}
.identity-root .identity-main .venue-proof-test-note {
  color: #5a6d7e;
  font-size: 0.8125rem;
}
@media (max-width: 760px) {
  .identity-root .identity-main .venue-confirmation-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.75rem;
  }
  .identity-root .identity-main .venue-confirmation-context {
    padding: 1.5rem 0 0;
    border-inline-start: 0;
    border-block-start: 1px solid #e4eaf0;
  }
  .identity-root .identity-main .venue-proof-contact > bdi {
    flex-basis: 100%;
  }
}

.identity-root .identity-main .venue-card:has(.venue-confirmation) > h1 {
  margin-block-end: 1.25rem;
  color: #5a6d7e;
  font-size: 0.9375rem;
  font-weight: 500;
}

/* October8: dark navigation and a compact, consistent interior workspace. */
/* The full-width navigation and joined owner heading share square edges. */
.site-navigation,
.owner-dashboard .owner-home-heading {
  border-radius: 0;
}
.site-navigation {
  --nav-surface: var(--header-surface);
  --nav-text: #fff;
  --nav-muted: #fff;
  --nav-hover: #ffffff14;
  --nav-line: #ffffff26;
  --nav-accent: #a5d6b2;
  background: var(--header-surface);
  color: #fff;
  border-color: #ffffff1a;
}
.site-frame:has(.explore-workspace) > .site-navigation {
  box-shadow: none;
}
.site-navigation .site-navigation-inner {
  grid-template-columns: auto minmax(0, 1fr) auto auto auto auto;
  gap: 1rem;
  /* The navbar and sticky discovery controls share one reserved height. */
  min-height: var(--sticky-nav-height);
  padding-block: 8px;
}
.site-navigation .brand {
  grid-area: 1 / 1;
  color: #fff;
}
.site-navigation .site-navigation-links {
  grid-area: 1 / 2;
  padding: 0;
}
.site-navigation .site-navigation-refer {
  grid-area: 1 / 3;
}
.site-navigation .site-navigation-currency {
  grid-area: 1 / 4;
}
.site-navigation .site-navigation-locales {
  grid-area: 1 / 5;
}
.site-navigation .site-navigation-account {
  grid-area: 1 / 6;
}
.site-navigation .site-navigation-currency,
.site-navigation .site-navigation-currency select,
.site-navigation .site-navigation-locales summary,
.site-navigation .audience-switch a,
.site-navigation .currency-mark,
.site-navigation .language-mark {
  color: #fff;
}
.site-navigation .site-navigation-currency select option {
  color: #243b4b;
  background: #fff;
}
.site-navigation .audience-switch {
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
}
.site-navigation .audience-switch::before {
  display: none;
}
.site-navigation .audience-switch a {
  gap: 6px;
  min-block-size: 44px;
  padding: 0.55rem 0.9rem;
  border: 1px solid #fff;
  background: transparent;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 550;
  transition:
    background-color 140ms ease,
    color 140ms ease;
}
.site-navigation .audience-switch a:not([aria-current]):hover {
  background: #ffffff1f;
}
.site-navigation .audience-switch a[aria-current] {
  background: #fff;
  color: var(--header-surface);
  font-weight: 700;
}
.site-navigation .audience-switch a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
.site-navigation .site-navigation-refer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-block-size: 44px;
  max-inline-size: 15rem;
  padding: 0.55rem 0.85rem;
  border: 1px solid #4b9560;
  border-radius: 8px;
  background: #287442;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 650;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
}
.site-navigation .site-navigation-refer:hover {
  background: #216238;
}
.site-navigation .navigation-sign-in {
  background: transparent;
  border: 1px solid #ffffff66;
  color: #fff;
}
.site-navigation .navigation-sign-in:hover {
  background: #ffffff14;
}
.site-navigation .navigation-avatar {
  border-color: #ffffff45;
}
.site-navigation .navigation-avatar .profile-image {
  background: #ffffff15;
  color: #fff;
}
.site-navigation .site-navigation-menu ul,
.site-navigation .site-navigation-locales ul {
  padding: 6px;
  border-radius: 8px;
  box-shadow: 0 8px 24px #172b3b1a;
}
.site-navigation .site-navigation-menu li a,
.site-navigation .site-navigation-locales li a {
  padding: 0.65rem 0.8rem;
  font-size: 0.875rem;
}
@media (max-width: 1000px) {
  .site-navigation .site-navigation-inner {
    width: var(--site-content-width);
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    gap: 6px 8px;
    padding-block: 6px 8px;
  }
  .site-navigation .brand {
    grid-area: 1 / 1;
    font-size: 1.125rem;
  }
  .site-navigation .site-navigation-currency {
    grid-area: 1 / 2;
  }
  .site-navigation .site-navigation-locales {
    grid-area: 1 / 3;
  }
  .site-navigation .site-navigation-account {
    grid-area: 1 / 4;
    justify-self: end;
  }
  .site-navigation .site-navigation-links {
    grid-area: 2 / 1 / 3 / 3;
    justify-content: start;
  }
  .site-navigation .site-navigation-refer {
    grid-area: 2 / 3 / 3 / 5;
    justify-self: end;
  }
  .site-navigation .audience-switch {
    max-inline-size: 100%;
  }
  .site-navigation .audience-switch a {
    gap: 4px;
    padding-inline: 6px;
    font-size: 0.8125rem;
    white-space: normal;
    text-align: center;
    min-block-size: 44px;
  }
}
@media (max-width: 380px) {
  .site-navigation .site-navigation-inner {
    gap: 5px;
  }
  .site-navigation .site-navigation-currency select {
    inline-size: 3.6rem;
    font-size: 0.8125rem;
  }
  .site-navigation .currency-mark {
    display: none;
  }
  .site-navigation .site-navigation-locales summary {
    padding-inline: 3px;
  }
  .site-navigation .navigation-sign-in {
    padding-inline: 7px;
    font-size: 0.8125rem;
  }
  .site-navigation .site-navigation-refer {
    padding-inline: 8px;
    font-size: 0.8125rem;
  }
  .site-navigation .audience-switch a {
    font-size: 0.75rem;
    padding-inline: 6px;
  }
}

/* Slim navigation controls retain a44px vertical pointer target. */
.site-navigation
  :is(
    .audience-switch a,
    .site-navigation-refer,
    .navigation-sign-in,
    .site-navigation-locales summary
  ) {
  position: relative;
  align-self: center;
  min-height: 36px;
  min-block-size: 36px;
  min-width: 0;
  min-inline-size: 0;
  padding: 0.35rem 0.65rem;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.25;
  border-width: 1px;
}
.site-navigation
  :is(
    .audience-switch a,
    .site-navigation-refer,
    .navigation-sign-in,
    .site-navigation-locales summary
  )::before {
  content: "";
  position: absolute;
  inset: -4px 0;
}
.site-navigation .audience-switch a[aria-current] {
  font-weight: 600;
}
.site-navigation .site-navigation-currency select {
  padding-inline: 3px;
  font-size: 0.8125rem;
  font-weight: 500;
}
.site-navigation :is(.currency-mark, .language-mark) {
  inline-size: 16px;
  block-size: 16px;
}
.site-navigation .navigation-avatar {
  border-width: 1px;
}
@media (max-width: 400px) {
  .site-navigation .audience-switch a {
    padding-inline: 6px;
    font-size: 0.75rem;
  }
  .site-navigation :is(.navigation-sign-in, .site-navigation-refer) {
    padding-inline: 7px;
  }
  .site-navigation .site-navigation-locales summary {
    padding-inline: 3px;
  }
}

.identity-root {
  --interior-ink: #243746;
  --interior-muted: #61717d;
  --interior-line: #e3e9ee;
  --interior-soft: #f4f7f9;
  background: #fff;
  color: var(--interior-ink);
}
.identity-root .interior-layout {
  display: grid;
  grid-template-columns: 10rem minmax(0, 1fr);
  align-items: start;
  gap: 2rem;
  inline-size: min(100% - 3rem, 86rem);
  margin-inline: auto;
  padding-block: 1.5rem 3rem;
  min-block-size: calc(100svh - 150px);
}
.identity-root .interior-navigation {
  display: grid;
  gap: 5px;
  position: sticky;
  inset-block-start: 92px;
  padding-block: 0.25rem;
}
.identity-root .interior-navigation a {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  min-block-size: 44px;
  padding: 0.6rem 0.75rem;
  border-radius: 8px;
  color: #516675;
  font-size: 0.875rem;
  font-weight: 550;
  text-decoration: none;
}
.identity-root .interior-navigation a[aria-current] {
  background: #eaf0f4;
  color: #243b4b;
}
.identity-root .interior-navigation a:hover {
  background: #f0f4f7;
}
.interior-navigation svg {
  inline-size: 19px;
  block-size: 19px;
  flex: none;
}
.identity-root .interior-layout > .identity-main {
  inline-size: 100%;
  max-inline-size: none;
  min-inline-size: 0;
  margin: 0;
  padding: 0 0 0 1.75rem;
  padding-inline: 1.75rem 0;
  border-inline-start: 1px solid var(--interior-line);
}
.identity-root .identity-main .identity-card {
  inline-size: 100%;
  max-inline-size: 52rem;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.identity-root
  .identity-main
  :is(.account-workspace, .venue-card, .media-workspace, .review-workspace) {
  max-inline-size: none;
}
.identity-root .identity-main :is(h1, h2, h3) {
  color: var(--interior-ink);
  letter-spacing: -0.015em;
}
.identity-root .identity-main h1 {
  margin: 0 0 1.25rem;
  font-size: clamp(1.5rem, 2.3vw, 1.9rem);
  line-height: 1.25;
  font-weight: 650;
}
.identity-root .identity-main h2 {
  margin: 1.5rem 0 0.9rem;
  font-size: 1.125rem;
  line-height: 1.35;
  font-weight: 650;
}
.identity-root .identity-main h3 {
  margin: 1.15rem 0 0.65rem;
  font-size: 0.9375rem;
  line-height: 1.4;
  font-weight: 650;
}
.identity-root .identity-main p {
  font-size: 0.875rem;
  line-height: 1.55;
}
.identity-root
  .identity-main
  :is(.identity-hint, .collection-notice, .schedule-hint) {
  color: var(--interior-muted);
  font-size: 0.8125rem;
  line-height: 1.5;
}
.identity-root .identity-main :is(.identity-form, .identity-fieldset) {
  gap: 0.85rem;
  margin-block: 1rem;
}
.identity-root .identity-main .identity-form {
  max-inline-size: 100%;
}
.identity-root .identity-main :is(label, .identity-label) {
  font-size: 0.8125rem;
  font-weight: 550;
  line-height: 1.4;
}
.identity-root
  .identity-main
  :is(input, select, textarea):where(
    :not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not(
        [type="range"]
      ):not([type="file"])
  ) {
  min-block-size: 44px;
  inline-size: min(100%, 24rem);
  max-inline-size: 100%;
  padding: 0.55rem 0.7rem;
  border: 1px solid #cbd6df;
  border-radius: 8px;
  background: #fff;
  color: #243746;
  box-shadow: none;
  font-size: 0.9375rem;
  line-height: 1.4;
}
.identity-root .identity-main textarea {
  min-block-size: 5.5rem;
  resize: vertical;
}
.identity-root
  .identity-main
  input:is(
    [type="number"],
    [type="time"],
    [type="date"],
    [inputmode="decimal"],
    [name="code"],
    [name="confirmation"]
  ) {
  inline-size: min(100%, 12rem);
}
.identity-root .identity-main input[type="file"] {
  max-inline-size: 100%;
  font-size: 0.8125rem;
}
.identity-root .identity-main :is(input, select, textarea):focus-visible {
  outline: 2px solid var(--brand-action);
  outline-offset: 2px;
}
.identity-root
  .identity-main
  :is(
    .identity-primary-action,
    .identity-secondary-action,
    .venue-proof-action
  ):not([hidden]) {
  inline-size: fit-content;
  max-inline-size: 100%;
  min-block-size: 44px;
  padding: 0.55rem 0.85rem;
  border-radius: 8px;
  box-shadow: none;
  font-size: 0.8125rem;
  line-height: 1.35;
  font-weight: 600;
}
.identity-root .identity-main .identity-secondary-action {
  background: #fff;
  color: var(--brand-action-hover);
  border: 1px solid #cbd6df;
}
.identity-root .identity-main .workspace {
  display: block;
}
.identity-root .identity-main .workspace-navigation {
  position: static;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin: 0 0 1.5rem;
  padding: 0 0 0.7rem;
  border: 0;
  border-block-end: 1px solid var(--interior-line);
}
.identity-root .identity-main .workspace-navigation a {
  flex: 0 1 auto;
  min-block-size: 44px;
  padding: 0.55rem 0.7rem;
  gap: 0.45rem;
  border-radius: 8px;
  background: transparent;
  font-size: 0.8125rem;
  font-weight: 550;
  white-space: normal;
}
.identity-root .identity-main .workspace-navigation a[aria-current] {
  background: #eaf0f4;
  color: #243b4b;
  font-weight: 650;
}
.identity-root .identity-main .workspace-navigation .workspace-icon {
  inline-size: 17px;
  block-size: 17px;
}
.identity-root .identity-main .workspace-panel {
  padding: 0;
  min-inline-size: 0;
}
.identity-root .identity-main .workspace-heading {
  align-items: center;
  gap: 0.85rem;
  padding: 0 0 1.15rem;
}
.identity-root .identity-main .workspace-heading h1,
.identity-root .identity-main .workspace-heading h2 {
  margin: 0;
  font-size: clamp(1.5rem, 2.3vw, 1.9rem);
}
.identity-root .identity-main .workspace-heading .profile-image {
  inline-size: 56px;
  block-size: 56px;
}
.identity-root .identity-main .workspace-badge {
  font-size: 0.75rem;
  padding: 0.3rem 0.55rem;
}
.identity-root .identity-main .workspace-launchers {
  gap: 1rem;
  margin: 0 0 1rem;
}
.identity-root .identity-main .workspace-launchers a {
  padding: 0.35rem 0;
  min-block-size: 44px;
  background: transparent;
  color: var(--brand-action);
  font-size: 0.8125rem;
}
.identity-root .identity-main .profile-settings-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
}
.identity-root .identity-main .profile-settings-grid .workspace-section {
  margin: 0;
  padding: 0;
}
.identity-root .identity-main .profile-extras {
  margin: 0;
  padding: 0 0 0 1.5rem;
  padding-inline: 1.5rem 0;
  border: 0;
  border-inline-start: 1px solid var(--interior-line);
}
.identity-root .identity-main .profile-photo-settings {
  margin: 0 0 1rem;
  gap: 0.8rem;
}
.identity-root .identity-main .profile-photo-settings .profile-image {
  inline-size: 52px;
  block-size: 52px;
}
.identity-root .identity-main .profile-photo-settings h3 {
  margin: 0;
}
.identity-root .identity-main .profile-photo-settings form {
  margin-block: 0.55rem;
}
.identity-root .identity-main .workspace-actions {
  gap: 0.4rem 1.15rem;
}
.identity-root .identity-main .workspace-actions > a:not([class]),
.identity-root .identity-main .venue-utility-links > a {
  display: inline-flex;
  align-items: center;
  min-block-size: 44px;
  padding-block: 0.5rem;
  font-size: 0.8125rem;
  text-decoration: none;
  color: var(--brand-action);
}
.identity-root .identity-main .workspace-actions > a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.identity-root .identity-main .workspace-toolbar {
  align-items: start;
  gap: 1rem 1.5rem;
  padding-block-end: 1rem;
  border-block-end: 1px solid var(--interior-line);
}
.identity-root .identity-main .venue-utility-links {
  flex: 1 1 24rem;
}
.identity-root .identity-main .venue-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr));
  gap: 1rem;
  padding: 0;
}
.identity-root .identity-main .venue-grid > li {
  margin: 0;
  padding: 1.15rem;
  border: 1px solid var(--interior-line);
  border-radius: 8px;
  background: #fff;
}
.identity-root .identity-main .venue-grid h2 {
  margin: 0 0 0.5rem;
  font-size: 1.0625rem;
}
.identity-root .identity-main .venue-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem 1.5rem;
  align-items: start;
}
.identity-root .identity-main .venue-contact-grid .field-wide {
  grid-column: 1 / -1;
}
.identity-root .identity-main .venue-contact-grid textarea[name="description"] {
  inline-size: min(100%, 36rem);
}
.identity-root
  .identity-main
  .venue-contact-grid
  label:has(input[type="checkbox"]) {
  grid-column: 1 / -1;
}
.identity-root .identity-main .workspace-danger {
  margin-block-start: 1.5rem;
  padding: 1rem 0 0;
  border: 0;
  border-block-start: 1px solid var(--interior-line);
  background: transparent;
}
.identity-root .identity-main .workspace-danger h3 {
  margin-block-start: 0;
}
.identity-root .identity-main .workspace-danger button,
.identity-root .identity-main .workspace-danger > a {
  color: #a23b38;
  background: #fff;
  border-color: #d9b9b8;
}
.identity-root .identity-main .venue-characteristics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem 1.5rem;
}
.identity-root .identity-main .venue-characteristics > :is(h2, p) {
  grid-column: 1 / -1;
  margin: 0;
}
.identity-root .identity-main .venue-characteristics > fieldset {
  margin: 0;
  padding: 1rem;
  border: 1px solid var(--interior-line);
  border-radius: 8px;
}
.identity-root .identity-main .venue-characteristics .review-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}
.identity-root .identity-main .venue-characteristics select {
  font-size: 0.8125rem;
  padding-inline: 0.5rem;
}
.identity-root .identity-main .schedule-week {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.identity-root .identity-main .schedule-slot {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
}
.identity-root .identity-main .schedule-day {
  margin: 0;
  padding: 0.8rem;
  border: 1px solid var(--interior-line);
  background: #fff;
}
.identity-root .identity-main .schedule-slot input {
  min-inline-size: 0;
  inline-size: 100%;
}
.identity-root .identity-main .schedule-slot .schedule-remove {
  justify-self: start;
}
.identity-root .identity-main .venue-confirmation-layout {
  grid-template-columns: minmax(0, 1fr) minmax(14rem, 18rem);
  gap: 1.5rem;
  padding-block-start: 1.25rem;
}
.identity-root .identity-main .venue-confirmation-heading {
  padding-block-end: 1.15rem;
}
.identity-root .identity-main .venue-proof-method {
  margin: 0 0 1rem;
  padding: 0 0 1rem;
}
.identity-root .identity-main .venue-proof-method-heading {
  margin-block-end: 0.65rem;
  gap: 0.55rem;
}
.identity-root .identity-main .venue-proof-method-heading h3 {
  margin: 0;
  font-size: 1rem;
}
.identity-root .identity-main .venue-proof-contact {
  gap: 0.5rem;
}
.identity-root .identity-main .venue-proof-contact > bdi {
  flex-basis: 12rem;
  font-size: 0.875rem;
}
.identity-root .identity-main .venue-confirmation-context {
  padding-inline-start: 1.25rem;
}
.identity-root .identity-main .referral-code-section {
  padding: 0;
  margin: 1rem 0 0;
  border: 0;
}
.identity-root .identity-main .referral-code-section h3 {
  font-size: 0.875rem;
}
.identity-root .identity-main .venue-map-finder .venue-search-layout {
  block-size: clamp(28rem, 65svh, 46rem);
}
.identity-root .identity-main .venue-map-finder .venue-search-area-form {
  gap: 0.75rem 1rem;
  margin-block-end: 1rem;
}
.identity-root .identity-main .connected-choice {
  padding: 1rem;
  border: 1px solid var(--interior-line);
  border-radius: 8px;
  background: #fff;
}
.identity-root .identity-main .connected-choice h3 {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 0.8rem;
}
.identity-root .identity-main .connected-choice-chatgpt h3 img {
  background: #243b4b;
  border-radius: 4px;
  padding: 3px;
  box-sizing: content-box;
}
.identity-root .identity-main .connected-choice-instructions {
  padding: 0;
}
.identity-root .identity-main .connected-choices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.identity-root .identity-main .identity-email-method {
  padding: 1.1rem 0 0;
  margin: 1rem 0 0;
  border: 0;
  border-block-start: 1px solid var(--interior-line);
  background: transparent;
}
.identity-root .identity-main .identity-email-method h2 {
  margin: 0 0 1rem;
  font-size: 0.9375rem;
}
.identity-root .identity-main .identity-totp-details {
  margin-block: 1rem;
  padding-block: 1rem;
  border: 0;
  border-block-start: 1px solid var(--interior-line);
  background: transparent;
}
.identity-root .interior-entry > .identity-main {
  inline-size: min(100% - 2rem, 36rem);
  margin: 2rem auto 3rem;
  padding: 0;
}
.identity-root .interior-entry .identity-card {
  padding: 1.5rem;
  border: 1px solid var(--interior-line);
  border-radius: 8px;
}
.identity-root .interior-entry .identity-form {
  max-inline-size: 26rem;
}
.identity-root .identity-main table {
  font-size: 0.8125rem;
}
.identity-root .identity-main :is(th, td) {
  padding: 0.65rem 0.8rem;
}
.identity-root .identity-main .public-profile-content {
  gap: 1.5rem;
}
.identity-root .identity-main .review-card {
  margin-block: 0.8rem;
  padding-block: 1rem;
}
.identity-root .identity-main .review-form .review-fields {
  gap: 0.85rem;
}
.identity-root .identity-main .identity-status-card {
  padding: 1rem;
  border: 1px solid var(--interior-line);
  border-radius: 8px;
  background: #f8fafb;
  box-shadow: none;
}
.identity-root .identity-main .identity-form [hidden] {
  display: none !important;
}
@media (max-width: 1100px) {
  .identity-root .interior-layout {
    grid-template-columns: 8.5rem minmax(0, 1fr);
    gap: 1rem;
    inline-size: calc(100% - 2rem);
  }
  .identity-root .interior-layout > .identity-main {
    padding-inline-start: 1.25rem;
  }
  .identity-root .identity-main .profile-settings-grid {
    gap: 1.25rem;
  }
  .identity-root .identity-main .profile-photo-settings {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 760px) {
  .identity-root .interior-layout {
    display: block;
    inline-size: calc(100% - 2rem);
    padding-block: 0.75rem 2rem;
  }
  .identity-root .interior-navigation {
    position: static;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    margin: 0 0 1.25rem;
    padding: 0 0 0.75rem;
    border-block-end: 1px solid var(--interior-line);
  }
  .identity-root .interior-navigation a {
    padding: 0.45rem;
    justify-content: center;
    gap: 0.4rem;
    font-size: 0.8125rem;
    text-align: center;
  }
  .identity-root .interior-navigation svg {
    inline-size: 17px;
    block-size: 17px;
  }
  .identity-root .interior-layout > .identity-main {
    padding: 0;
    border: 0;
  }
  .identity-root .identity-main .workspace-navigation {
    gap: 3px;
    margin-block-end: 1.1rem;
  }
  .identity-root .identity-main .workspace-navigation a {
    padding-inline: 0.6rem;
    font-size: 0.8125rem;
  }
  .identity-root .identity-main .workspace-navigation .workspace-icon {
    display: none;
  }
  .identity-root .identity-main .profile-settings-grid,
  .identity-root .identity-main .venue-confirmation-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
  }
  .identity-root .identity-main .profile-extras {
    padding: 1.25rem 0 0;
    border-inline-start: 0;
    border-block-start: 1px solid var(--interior-line);
  }
  .identity-root .identity-main .profile-photo-settings {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .identity-root .identity-main .venue-confirmation-context {
    padding: 1rem 0 0;
    border-inline-start: 0;
    border-block-start: 1px solid var(--interior-line);
  }
  .identity-root .identity-main .venue-contact-grid,
  .identity-root .identity-main .venue-characteristics,
  .identity-root .identity-main .schedule-week,
  .identity-root .identity-main .connected-choices {
    grid-template-columns: minmax(0, 1fr);
  }
  .identity-root .identity-main .venue-map-finder .venue-search-layout {
    block-size: auto;
  }
  .identity-root .identity-main .venue-map-finder .venue-search-map {
    block-size: 42svh;
    min-block-size: 18rem;
  }
  .identity-root .identity-main .venue-map-finder .venue-search-result-list {
    max-block-size: 24rem;
  }
  .identity-root .interior-entry > .identity-main {
    margin-block: 1rem 2rem;
  }
  .identity-root .interior-entry .identity-card {
    padding: 1.15rem;
  }
}
.identity-root .identity-main [data-visit-scanner] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.identity-root .identity-main [data-visit-scanner] > p {
  grid-column: 1 / -1;
  margin: 0;
}
.identity-root .identity-main .visit-scan-method {
  padding: 1rem;
  border: 1px solid var(--interior-line);
  border-radius: 8px;
}
.identity-root .identity-main .visit-scan-method h3 {
  margin-block-start: 0;
}
.identity-root .identity-main .visit-history-record {
  padding: 0.8rem 0;
  border-block-end: 1px solid var(--interior-line);
}
.identity-root .identity-main .visit-record-actions {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.identity-root .identity-main .visit-record-actions p {
  margin-block: 0.5rem 0;
}
.identity-root .identity-main .visit-record-actions a {
  display: inline-flex;
  align-items: center;
  min-block-size: 44px;
  font-size: 0.8125rem;
}
@media (max-width: 760px) {
  .identity-root .identity-main [data-visit-scanner] {
    grid-template-columns: minmax(0, 1fr);
  }
}
.identity-root .identity-main .identity-primary-action {
  background: var(--brand-action);
  color: #fff;
  border-color: var(--brand-action);
}
.identity-root .identity-main .identity-primary-action:hover {
  background: var(--brand-action-hover);
  color: #fff;
}
.identity-root .identity-main .workspace-danger .identity-primary-action {
  background: #fff;
  color: #a23b38;
  border: 1px solid #d9b9b8;
}
.identity-root .identity-main .venue-utility-links > a,
.identity-root .identity-main .venue-manage-link {
  border: 0;
  background: transparent;
  padding: 0.4rem 0;
  box-shadow: none;
  font-size: 0.8125rem;
  color: var(--brand-action);
}
.identity-root .identity-main .venue-manage-link {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-block-size: 44px;
  text-decoration: none;
}
.identity-root .identity-main .venue-manage-link:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.identity-root .identity-main .venue-manage-link svg {
  inline-size: 18px;
  block-size: 18px;
}
.identity-root .identity-main .venue-grid {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
.identity-root .identity-main .venue-grid > li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 1.5rem;
  margin: 0;
  padding: 1rem 0;
  border: 0;
  border-block-end: 1px solid var(--interior-line);
  border-radius: 0;
}
.identity-root .identity-main .venue-grid > li > p {
  margin: 0;
  color: var(--interior-muted);
}
.identity-root .identity-main .venue-grid > li > .workspace-actions {
  grid-area: 1 / 2 / 3 / 3;
  align-self: center;
}
@media (max-width: 900px) {
  .identity-root .identity-main .venue-grid > li {
    grid-template-columns: minmax(0, 1fr);
  }
  .identity-root .identity-main .venue-grid > li > .workspace-actions {
    grid-area: auto;
    margin-block-start: 0.4rem;
  }
}
.identity-root
  .identity-main
  [data-venue-workspace]
  > .workspace-heading
  .workspace-context-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-block-size: 44px;
  padding: 0;
  background: transparent;
  border: 0;
  color: var(--brand-action);
  font-size: 0.8125rem;
  text-decoration: none;
}
.identity-root .identity-main .venue-card:has([data-venue-workspace]) > h1 {
  margin-block-end: 0.85rem;
  font-size: 0.8125rem;
  color: var(--interior-muted);
  font-weight: 500;
}
@media (max-width: 760px) {
  .identity-root .identity-main [data-venue-workspace] > .workspace-heading {
    display: block;
  }
  .identity-root .identity-main [data-venue-workspace] > .workspace-heading h2 {
    font-size: 1.375rem;
    line-height: 1.3;
  }
  .identity-root
    .identity-main
    [data-venue-workspace]
    > .workspace-heading
    .workspace-context-link {
    margin-block-start: 0.2rem;
  }
}

.identity-root
  .identity-main
  [data-schedule-editor]:not([data-schedule-enhanced]) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.identity-root .identity-main [data-schedule-editor] > :is(h3, p, label) {
  grid-column: 1 / -1;
}
.identity-root .identity-main [data-schedule-editor] > fieldset {
  min-inline-size: 0;
  max-inline-size: none;
  margin: 0;
  padding: 0.8rem;
}
@media (max-width: 760px) {
  .identity-root
    .identity-main
    [data-schedule-editor]:not([data-schedule-enhanced]) {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Public venue galleries use the full canvas; only identity entry forms are narrow. */
.identity-root .interior-entry > .identity-main:has(.venue-card) {
  inline-size: min(100% - 2rem, 86rem);
}
.identity-root .interior-entry .identity-card.venue-card {
  padding: 0;
  border: 0;
}

/* Compact filter rail: firm labels and grouped minimum-score choices. */
.discovery-filters {
  padding: 0 12px 12px;
  border: 1px solid #dce3ec;
  background: #fff;
  box-shadow: 0 2px 8px #062b7306;
}
.discovery-filters > h2 {
  min-height: 40px;
  font-size: 0.9375rem;
  font-weight: 750;
  color: #152c4a;
}
.discovery-filter-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.35rem;
  min-inline-size: 0;
  container-type: inline-size;
}
.discovery-filters
  .discovery-filter-list
  > :is(.filter-section, .filter-subgroup) {
  margin: 0;
  padding: 0;
  border: 0;
}
.discovery-filters .discovery-filter-list :is(h3, h4) {
  min-height: 28px;
  padding-block: 5px;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.35;
  color: #152c4a;
}
.discovery-filters .discovery-filter-list .filter-choice {
  min-block-size: 44px;
  gap: 8px;
  font-weight: 550;
  color: #34465e;
}
.discovery-filters .discovery-filter-list .filter-choice input:checked::after {
  border-color: #fff;
}
.discovery-filters .discovery-filter-list .filter-choice:has(input:checked) {
  color: var(--brand-action);
  font-weight: 700;
}
.discovery-filters .filter-minimum-hint {
  display: none;
  margin: 0 0 2px;
  color: #617189;
  font-size: 0.6875rem;
  line-height: 1.4;
}
.discovery-filter-list .filter-rating {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 2px;
  padding: 3px;
  border: 1px solid #dce4ef;
  border-radius: 8px;
  background: #edf2f8;
}
.discovery-filters .discovery-filter-list .filter-rating .filter-choice {
  min-inline-size: 0;
  min-block-size: 44px;
  padding: 4px 3px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #34465e;
  font-size: 0.75rem;
  font-weight: 650;
  text-align: center;
  line-height: 1.3;
  overflow-wrap: break-word;
  transition:
    background-color 120ms ease,
    color 120ms ease,
    box-shadow 120ms ease;
}
.discovery-filters .discovery-filter-list .filter-rating .filter-choice:hover {
  background: #fff;
  color: var(--brand-action);
  box-shadow: 0 1px 3px #062b7312;
}
.discovery-filters
  .discovery-filter-list
  .filter-rating
  .filter-choice:has(input:checked) {
  background: var(--brand-action);
  color: #fff;
  font-weight: 700;
  box-shadow: 0 2px 4px #0062e326;
}
.discovery-filters
  .discovery-filter-list
  .filter-rating
  .filter-choice:has(input:focus-visible) {
  outline: 2px solid var(--brand-action);
  outline-offset: 2px;
}
.discovery-filter-list .filter-rating .filter-choice:has(input[value=""]) {
  grid-column: 1 / -1;
}
.discovery-filter-list > *,
.discovery-filter-list .filter-choice span {
  min-inline-size: 0;
}
.discovery-filter-list .filter-choice span {
  overflow-wrap: break-word;
}
/* Policies keep every choice visible while sharing rows where space permits. */
.discovery-filter-list .filter-choices:not(.filter-rating, .filter-boolean) {
  display: flex;
  flex-wrap: wrap;
  column-gap: 12px;
}
/* Only genuinely narrow map columns need stacked rating choices. */
@container (max-width: 175px) {
  .discovery-filter-list .filter-rating {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Let interface copy use its section width instead of old character-count caps. */
main :is(h1, h2, h3, h4, p) {
  min-inline-size: 0;
  word-break: normal;
  overflow-wrap: break-word;
  text-wrap: wrap;
}
main h1,
.identity-root .identity-main h1,
.preferences-introduction h1,
.not-found h1,
.availability h2,
.principles h2 {
  max-width: none;
  max-inline-size: none;
}
.identity-root .identity-main p,
.site-frame > main.identity-card p,
.owner-dashboard .owner-empty-copy p,
.owner-dashboard .owner-step-copy p,
.catalog-subtitle,
.preferences-introduction > p:last-child {
  max-width: none;
  max-inline-size: none;
}

/* One shared content frame; header backgrounds remain full bleed. */
:root {
  --site-content-max: 80rem;
  --site-page-gutter: 1.25rem;
  --site-content-width: min(
    calc(100% - 2 * var(--site-page-gutter)),
    var(--site-content-max)
  );
}
@media (max-width: 1000px) {
  :root {
    --site-page-gutter: 0.875rem;
  }
}
.site-navigation .site-navigation-inner,
.owner-dashboard :is(.owner-heading-inner, .owner-content),
.identity-root .interior-layout,
.identity-root .interior-entry > .identity-main,
.identity-root .interior-entry > .identity-main:has(.venue-card),
.site-frame > main:not(.explore-workspace, .owner-dashboard),
.site-frame > .consent-banner,
.site-frame:has(.explore-workspace) > .consent-banner,
.site-footer,
.site-information {
  width: var(--site-content-width);
  inline-size: var(--site-content-width);
  max-inline-size: none;
  margin-inline: auto;
}
.site-information {
  justify-content: flex-start;
  padding-inline: 0;
}
.identity-root .interior-entry .identity-card {
  max-inline-size: 36rem;
  margin-inline: 0;
}
.identity-root .interior-entry .identity-card.venue-card {
  max-inline-size: none;
}
.explore-workspace {
  --search-page-inset: max(
    var(--site-page-gutter),
    calc((100% - var(--site-content-max)) / 2)
  );
}
.explore-workspace .discovery-search {
  width: 100%;
}
.explore-workspace #discovery-panel[data-view="landing"] .discovery-search,
.explore-workspace .discovery-landing {
  width: var(--site-content-width);
  margin-inline: auto;
}
.explore-workspace .discovery-landing {
  padding-inline: 0;
}
.explore-workspace .discovery-landing .discovery-rail {
  padding-inline: 0;
  scroll-padding-inline: 0;
}

/* Electric-blue emphasis, with white labels on filled actions. */
:root {
  --brand-action-hover: #0052bf;
}
.primary-action,
.primary-action:hover,
.owner-home.owner-dashboard .owner-add-action,
.map-open-button,
.discovery-pagination [aria-current="page"],
.consent-decision-button:not([data-decision="denied"]),
.preference-save-button,
:is(.media-workspace, #media-panel) button[data-media-save],
:is(.media-workspace, #media-panel) button[name="approved"][value="true"] {
  color: #fff;
}
.owner-home.owner-dashboard .owner-add-action:hover {
  background: var(--brand-action-hover);
  border-color: var(--brand-action-hover);
}
.site-navigation .site-navigation-refer {
  background: var(--brand-action);
  border-color: var(--brand-action);
  color: #fff;
}
.site-navigation .site-navigation-refer:hover {
  background: var(--brand-action-hover);
  border-color: var(--brand-action-hover);
}

/* Public venue detail is a browsing surface, separate from account navigation. */
.identity-root .interior-public > .identity-main {
  width: var(--site-content-width);
  inline-size: var(--site-content-width);
  max-inline-size: none;
  margin: 0 auto;
  padding: 1.25rem 0 3rem;
  border: 0;
}
.identity-root .identity-main .venue-card.public-venue-page {
  max-width: none;
  width: 100%;
  inline-size: 100%;
  max-inline-size: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .public-venue-heading {
  margin: 0 0 1.25rem;
}
.identity-root .identity-main .venue-card.public-venue-page .public-venue-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-block-size: 44px;
  color: var(--brand-action);
  font-size: 0.8125rem;
  font-weight: 650;
  text-decoration: none;
}
.public-venue-back svg {
  inline-size: 18px;
  block-size: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
}
[dir="rtl"] .public-venue-back svg {
  transform: scaleX(-1);
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .public-venue-heading
  h1 {
  margin: 0.2rem 0 0.5rem;
  font-size: clamp(1.6rem, 2.7vw, 2.3rem);
  line-height: 1.2;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .public-venue-heading
  p {
  margin: 0;
  font-size: 0.875rem;
  color: #617189;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .public-venue-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 21rem;
  gap: 1.5rem 2rem;
  align-items: start;
}
.public-venue-page :is(.public-venue-main, .public-venue-sidebar),
.public-venue-page .public-venue-main > #review-panel {
  display: contents;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  :is(section, details, li) {
  margin-block: 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album] {
  grid-column: 1 / -1;
  grid-row: 1;
  min-width: 0;
  margin: 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photos {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: none;
  grid-template-rows: minmax(0, 1fr);
  grid-auto-columns: calc((100% - 24px) / 4);
  height: clamp(17rem, 30vw, 24rem);
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  padding-block-end: 6px;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photo-item {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  grid-column: auto / span 1;
  grid-row: 1;
  min-width: 0;
  min-height: 0;
  margin: 0;
  scroll-snap-align: start;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photo-item:first-child {
  grid-column: auto / span 2;
  grid-row: 1;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photo-item:only-child {
  grid-column: auto / span 4;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photo-item:has(+ .review-photo-item:last-child),
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photo-item:first-child
  + .review-photo-item:last-child {
  grid-column: auto / span 2;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photo-item
  > a {
  display: block;
  min-height: 0;
  overflow: hidden;
  border-radius: 8px;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  .review-photo-item
  img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  max-height: none;
  aspect-ratio: auto;
  object-fit: cover;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-official-album]
  figcaption {
  padding-block: 4px 0;
  font-size: 0.6875rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-venue-description] {
  grid-column: 1;
  grid-row: 2;
  min-width: 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-venue-description]
  > p {
  margin: 0 0 1.25rem;
  font-size: 0.9375rem;
  line-height: 1.6;
}
.identity-root .identity-main .venue-card.public-venue-page h2 {
  margin: 0 0 0.5rem;
  font-size: 1.125rem;
  font-weight: 750;
  line-height: 1.35;
  color: #152c4a;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-feature-groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem 1.5rem;
  margin: 1rem 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-feature-group {
  padding: 0;
  border: 0;
  background: transparent;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-characteristics
  h3 {
  margin: 0 0 0.4rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #152c4a;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-feature-group
  .review-ratings {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  margin: 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-feature-group
  .review-ratings
  > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  padding: 6px 0;
  border-bottom: 1px solid #e9edf3;
  border-radius: 0;
  background: transparent;
  font-size: 0.8125rem;
  line-height: 1.4;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-feature-group
  dd {
  max-width: 9rem;
  text-align: end;
  font-weight: 650;
  color: #617189;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-feature-group
  [data-available="true"]
  dd {
  color: var(--brand-action);
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-policy-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-policy-summary
  > div {
  padding: 0.7rem;
  background: #f2f5fa;
  font-size: 0.8125rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-policy-summary
  dd {
  font-weight: 550;
}
.identity-root .identity-main .venue-card.public-venue-page [data-venue-offer] {
  grid-column: 2;
  grid-row: 2;
  position: sticky;
  top: calc(var(--sticky-nav-height) + 16px);
  padding: 1.25rem;
  border: 1px solid #c8dafa;
  border-block-start: 3px solid var(--brand-action);
  border-radius: 8px;
  background: #f0f5ff;
  box-shadow: 0 6px 20px #062b7309;
}
.identity-root .identity-main .venue-card.public-venue-page .visit-offer p {
  margin: 0.6rem 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .visit-offer
  .visit-offer-rate-label {
  margin: 1rem 0 0;
  font-size: 0.75rem;
  color: #50617a;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .visit-offer
  .visit-offer-price {
  margin: 0.25rem 0 0.75rem;
  font-size: 1.9rem;
  font-weight: 750;
  letter-spacing: -0.04em;
  color: #152c4a;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .visit-offer
  .identity-primary-action {
  display: flex;
  width: 100%;
  inline-size: 100%;
  min-block-size: 48px;
  margin: 1rem 0;
  font-weight: 700;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .visit-offer
  .visit-offer-activity {
  margin: 1rem 0 0;
  padding-top: 0.75rem;
  border-top: 1px solid #d9e4f5;
  font-size: 0.75rem;
  line-height: 1.45;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .visit-offer
  details {
  font-size: 0.8125rem;
}
.identity-root .identity-main .venue-card.public-venue-page .visit-offer table {
  font-size: 0.6875rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  #review-panel
  > .public-venue-reviews {
  grid-column: 1;
  grid-row: 3;
  min-width: 0;
  margin: 0;
  padding: 1.5rem 0 0;
  border: 0;
  border-top: 1px solid #dce3ec;
  border-radius: 0;
  background: transparent;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-reviews-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem 1rem;
  margin-bottom: 1rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-reviews-heading
  > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--brand-action);
  font-size: 0.8125rem;
  font-weight: 650;
}
.identity-root .identity-main .venue-card.public-venue-page .venue-statistics {
  padding: 1rem;
  margin: 0 0 1rem;
  border-radius: 8px;
  background: #f2f5fa;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-statistics
  h2 {
  font-size: 0.9375rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-statistics
  p {
  margin: 0.5rem 0;
  font-size: 0.8125rem;
}
.identity-root .identity-main .venue-card.public-venue-page .review-ratings {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .review-card
  .review-ratings
  > div {
  padding: 0.45rem 0.6rem;
  font-size: 0.75rem;
}
.identity-root .identity-main .venue-card.public-venue-page .review-card {
  padding: 1rem 0;
  border: 0;
  border-bottom: 1px solid #dce3ec;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .review-card
  .review-photos
  img {
  height: 8rem;
  width: auto;
  max-width: 100%;
  object-fit: cover;
}
.identity-root .identity-main .venue-card.public-venue-page .review-body {
  font-size: 0.875rem;
  line-height: 1.55;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-venue-contacts] {
  grid-column: 2;
  grid-row: 3;
  padding: 1rem;
  background: #f2f5fa;
  border-radius: 8px;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-venue-contacts]
  h2 {
  font-size: 0.9375rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-venue-contacts]
  .venue-actions {
  gap: 4px 14px;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-venue-contacts]
  a {
  font-size: 0.8125rem;
}
.identity-root .identity-main .venue-card.public-venue-page .venue-location {
  grid-column: 1 / -1;
  grid-row: 4;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.5rem 1rem;
  padding: 1.25rem 0 0;
  border: 0;
  border-top: 1px solid #dce3ec;
  background: transparent;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-location
  > :is(.explore-map, .venue-map-notice) {
  grid-column: 1 / -1;
}
.identity-root .identity-main .venue-card.public-venue-page .venue-location dl {
  display: flex;
  gap: 1rem;
  margin: 0;
  grid-row: 2;
  font-size: 0.6875rem;
  color: #617189;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-location
  > p:not(.venue-map-notice) {
  grid-row: 1;
  grid-column: 2;
  margin: 0;
  font-size: 0.8125rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-location
  .map-viewport {
  height: 16rem;
  min-height: 16rem;
}
.public-venue-page [data-review-feedback]:empty,
.public-venue-page [data-venue-observation]:empty {
  display: none;
}
.public-venue-page [data-review-feedback]:not(:empty) {
  grid-column: 1 / -1;
}
@media (max-width: 900px) {
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .public-venue-layout {
    grid-template-columns: minmax(0, 1fr) 18rem;
    gap: 1.25rem;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-feature-groups {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 680px) {
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .public-venue-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-official-album]
    .review-photos {
    grid-auto-columns: 78%;
    height: 16rem;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-official-album]
    .review-photo-item,
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-official-album]
    .review-photo-item:first-child,
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-official-album]
    .review-photo-item:only-child,
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-official-album]
    .review-photo-item:has(+ .review-photo-item:last-child),
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-official-album]
    .review-photo-item:first-child
    + .review-photo-item:last-child {
    grid-column: auto / span 1;
    grid-row: 1;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-venue-offer] {
    grid-column: 1;
    grid-row: 2;
    position: static;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-venue-description] {
    grid-column: 1;
    grid-row: 3;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    #review-panel
    > .public-venue-reviews {
    grid-column: 1;
    grid-row: 4;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    [data-venue-contacts] {
    grid-column: 1;
    grid-row: 5;
  }
  .identity-root .identity-main .venue-card.public-venue-page .venue-location {
    grid-column: 1;
    grid-row: 6;
  }
  .identity-root .identity-main .venue-card.public-venue-page .review-ratings {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-policy-summary {
    grid-template-columns: minmax(0, 1fr);
  }
  .identity-root .identity-main .venue-card.public-venue-page .venue-location {
    grid-template-columns: minmax(0, 1fr);
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-location
    > p:not(.venue-map-notice) {
    grid-column: 1;
    grid-row: 3;
  }
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  [data-venue-contacts]
  a {
  min-block-size: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--brand-action);
  font-weight: 600;
}

/* Public summaries are grouped facts, not the owner's two-column editor. */
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-characteristics {
  display: block;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-characteristics
  .venue-policy-summary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-policy-summary
  > div {
  display: block;
  min-width: 0;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-policy-summary
  dt {
  font-weight: 650;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-policy-summary
  dd {
  margin: 4px 0 0;
}
@media (max-width: 680px) {
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-characteristics
    .venue-policy-summary {
    grid-template-columns: minmax(0, 1fr);
  }
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .review-card
  > header {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  font-size: 0.8125rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .review-card
  > header
  .profile-image {
  width: 36px;
  height: 36px;
  inline-size: 36px;
  block-size: 36px;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .review-card
  > header
  time {
  color: #617189;
  font-size: 0.75rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .review-card
  .review-ratings {
  margin-block: 0.65rem;
}
.identity-root .identity-main .venue-card.public-venue-page .review-card p {
  margin-block: 0.65rem;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .review-card
  blockquote {
  margin-block: 0.75rem;
  font-size: 0.8125rem;
}
@media (max-width: 680px) {
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-feature-groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-feature-group:nth-child(-n + 2) {
    grid-column: 1 / -1;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-feature-group:nth-child(2)
    .review-ratings {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 12px;
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-characteristics
    .venue-policy-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .identity-root
    .identity-main
    .venue-card.public-venue-page
    .venue-policy-summary
    > div:first-child {
    grid-column: 1 / -1;
  }
}

/* October9 owner queue: calmer controls and one aligned discovery frame. */
.site-navigation .audience-switch a {
  min-height: 42px;
  padding: 0.55rem 1rem;
  font-size: 14px;
}
.site-navigation .audience-switch a[aria-current] {
  color: #fff;
  background: #235299;
  border-color: #85afe4;
}
.explore-workspace .catalog-heading:has(.discovery-heading-copy) {
  padding-block-start: 2.75rem;
  padding-block-end: 2.75rem;
}
.discovery-form:has(> .discovery-sidebar):not(.discovery-map-expanded) {
  grid-template-columns: 15rem minmax(0, 1fr);
  column-gap: 1.25rem;
  max-inline-size: none;
}
.discovery-form:not(.discovery-map-expanded) > .discovery-results-column {
  grid-column: 2;
  max-inline-size: none;
}
.discovery-filter-list .filter-rating {
  display: flex;
  flex-direction: column;
  background: transparent;
  border: 0;
  padding: 0;
  gap: 0.25rem;
}
.discovery-filters .discovery-filter-list .filter-rating .filter-choice {
  justify-content: flex-start;
  gap: 0.65rem;
  padding: 0.5rem 0.7rem;
  background: #f4f7fb;
  border: 1px solid #e2e9f2;
  color: #3b5063;
  font-size: 0.8125rem;
  min-height: 44px;
}
.discovery-filters
  .discovery-filter-list
  .filter-rating
  .filter-choice:has(input:checked) {
  background: #e9f1ff;
  border-color: #0062e3;
  color: #06478d;
}
.discovery-filter-list .filter-rating .filter-choice input {
  appearance: auto;
  opacity: 1;
  position: static;
  inline-size: 16px;
  block-size: 16px;
  accent-color: #0062e3;
  clip-path: none;
}
.discovery-price > span {
  display: inline !important;
}
.referral-link-box {
  display: flex;
  align-items: stretch;
  gap: 0.5rem;
  max-width: 48rem;
  margin-block: 1.25rem;
  padding: 0.5rem;
  border: 1px solid #a4c4f0;
  background: #edf4ff;
  border-radius: 8px;
}
.referral-link-box input {
  min-width: 0;
  flex: 1;
  width: 100%;
  border: 0;
  background: transparent;
  color: #06478d;
  padding: 0.6rem;
  font: inherit;
}
.referral-link-box button,
.referral-share-actions a {
  min-height: 44px;
  border: 1px solid #0062e3;
  background: #fff;
  color: #0052bf;
  border-radius: 8px;
  padding: 0.6rem 0.85rem;
  font: inherit;
  cursor: pointer;
  text-decoration: none;
}
.referral-share-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-block: 1rem;
}
.referral-steps {
  counter-reset: share;
  list-style: none;
  padding: 0;
  display: grid;
  gap: 0.85rem;
}
.referral-steps li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.referral-steps li::before {
  counter-increment: share;
  content: counter(share);
  display: grid;
  place-items: center;
  background: #edf4ff;
  color: #0052bf;
  border-radius: 8px;
  flex: 0 0 2rem;
  height: 2rem;
  font-weight: 700;
}
.owner-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
  padding-block: 2rem 3rem;
  border-bottom: 1px solid #e4e9ef;
}
.owner-benefits h2 {
  font-size: 1.25rem;
}
.owner-benefits p {
  line-height: 1.7;
  color: #53677b;
}
.owner-benefits svg {
  width: 32px;
  height: 32px;
  color: #0062e3;
}
.owner-home .owner-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
}
.owner-home .owner-steps > li {
  display: flex;
  flex-direction: column;
  align-items: start;
}
.owner-home .owner-steps img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  border-radius: 8px;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .venue-feature-group
  .review-ratings
  > div {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.65rem;
  padding-block: 0.4rem;
}
.venue-feature-group dt {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}
.venue-feature-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #426b91;
}
.identity-root .identity-main .venue-card.public-venue-page .review-card {
  padding: 1.25rem;
  border: 1px solid #e1e7ef;
  border-radius: 8px;
  margin-block: 1rem;
  background: #fff;
}
.review-card > header {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.review-card > header time {
  margin-inline-start: auto;
  font-size: 0.75rem;
  color: #5a6d7e;
}
.review-card .review-body {
  font-size: 1rem;
  line-height: 1.7;
}
.review-card blockquote {
  margin: 1rem 0 0;
  padding: 0.75rem 1rem;
  border-inline-start: 3px solid #8daed5;
  background: #f5f8fc;
}
.photo-viewer {
  width: min(90vw, 1100px);
  max-height: 90dvh;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: #0c1726;
  color: white;
}
.photo-viewer::backdrop {
  background: #081526df;
}
.photo-viewer img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 78dvh;
  object-fit: contain;
}
.photo-viewer [data-photo-close] {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  min-width: 44px;
  min-height: 44px;
  background: #152942;
  color: white;
  border: 1px solid #ffffff66;
  border-radius: 8px;
  cursor: pointer;
}
.photo-viewer .photo-report {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  width: fit-content;
  color: #d9e5f4;
  min-height: 44px;
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  text-decoration: none;
}
.photo-report svg {
  width: 16px;
  height: 16px;
}
.discovery-mobile-filters,
.discovery-filters-close {
  display: none;
}
.staff-roster {
  display: grid;
  gap: 0.75rem;
  margin-block: 1rem 2rem;
}
.staff-member {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 1rem;
  background: #f5f8fc;
  border-radius: 8px;
}
.staff-member .profile-image {
  width: 48px;
  height: 48px;
}
.staff-member p {
  flex: 1;
  margin: 0;
  display: grid;
}
.staff-add {
  padding-block-start: 1.25rem;
  border-top: 1px solid #e2e8f0;
}
@media (max-width: 760px) {
  .site-navigation-inner {
    gap: 0.4rem;
  }
  .site-navigation .brand {
    font-size: 1.15rem;
  }
  .site-navigation .audience-switch a {
    padding-inline: 0.7rem;
    font-size: 0.8rem;
  }
  .explore-workspace .catalog-heading:has(.discovery-heading-copy) {
    padding-block: 1.5rem 1.75rem;
  }
  .discovery-form .discovery-fields.discovery-search {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0.5rem;
    gap: 0.25rem;
  }
  .discovery-search .search-field {
    padding: 0.3rem 0.5rem;
    min-height: 50px;
  }
  .discovery-search .search-field-title {
    font-size: 0.65rem;
  }
  .discovery-search .search-field input,
  .discovery-search .search-field select {
    min-height: 30px;
    height: 30px;
    padding-block: 0.1rem;
    font-size: 14px;
  }
  .discovery-search .search-field-icon {
    display: none;
  }
  .discovery-form:has(> .discovery-sidebar):not(.discovery-map-expanded) {
    grid-template-columns: minmax(0, 1fr);
  }
  .discovery-form:not(.discovery-map-expanded) > .discovery-results-column {
    grid-column: 1;
    grid-row: auto;
    width: 100%;
  }
  .discovery-form:not(.discovery-map-expanded) > .discovery-sidebar {
    display: contents;
  }
  .discovery-form:not(.discovery-map-expanded) .discovery-filters {
    display: none;
  }
  .discovery-mobile-filters {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    width: fit-content;
    padding: 0.5rem 0.85rem;
    background: white;
    color: #0052bf;
    border: 1px solid #aac5e5;
    border-radius: 8px;
    gap: 0.5rem;
  }
  .discovery-mobile-filters svg {
    width: 18px;
    height: 18px;
  }
  .discovery-form[data-mobile-filters="open"] .discovery-filters {
    display: block;
    position: fixed;
    inset: 0 auto 0 0;
    width: min(90vw, 24rem);
    max-width: 90vw;
    height: 100dvh;
    overflow: auto;
    z-index: 200;
    background: white;
    padding: 1rem 1.25rem 3rem;
    box-shadow: 0 0 0 100vmax #112b4b66;
    box-sizing: border-box;
  }
  [dir="rtl"] .discovery-form[data-mobile-filters="open"] .discovery-filters {
    inset: 0 0 0 auto;
  }
  .discovery-filters-close {
    display: block;
    position: sticky;
    top: 0;
    margin-inline-start: auto;
    min-height: 44px;
    min-width: 44px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: white;
    color: #062b73;
    z-index: 1;
  }
  .discovery-form:not(.discovery-map-expanded)
    .discovery-sidebar
    > .discovery-map-column {
    display: block;
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    width: 160px;
    height: 130px;
    z-index: 20;
    border: 2px solid white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 14px #14284033;
  }
  .discovery-form:not(.discovery-map-expanded)
    .discovery-sidebar
    .map-viewport {
    height: 130px;
    min-height: 130px;
  }
  .discovery-sidebar .map-open-button {
    bottom: 0.5rem;
    padding: 0.35rem 0.6rem;
    font-size: 0.7rem;
    min-height: 36px;
  }
  .owner-benefits,
  .owner-home .owner-steps {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
  }
  .owner-home .owner-steps > li {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
  }
  .owner-home .owner-steps img {
    height: 100px;
  }
}
.profile-banner {
  position: relative;
  height: 210px;
  border-radius: 8px;
  overflow: hidden;
  background: linear-gradient(120deg, #062b73, #487eb6);
}
.profile-banner > .profile-image {
  width: 100%;
  height: 100%;
  border-radius: 0;
  object-fit: cover;
  border: 0;
}
.profile-banner > .profile-image-empty {
  display: none;
}
.profile-settings-link {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  padding: 0.65rem 1rem;
  min-height: 44px;
  background: white;
  color: #062b73;
  border-radius: 8px;
  text-decoration: none;
  box-sizing: border-box;
}
.social-profile .workspace-heading,
.profile-banner + .public-profile-heading {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 1rem;
  padding: 0 1.5rem 1.5rem;
  border: 0;
}
.social-profile .workspace-heading > .profile-image,
.profile-banner + .public-profile-heading > .profile-image {
  width: 100px;
  height: 100px;
  border: 5px solid white;
  margin-top: -35px;
  background: #eaf0f6;
}
.social-profile .workspace-heading h1 {
  margin-bottom: 0.25rem;
}
.profile-feed {
  max-width: 52rem;
}
.profile-post {
  border-bottom: 1px solid #e1e8f0;
  padding: 1.25rem 0;
}
.profile-post > header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}
.profile-post-kind {
  font-size: 0.75rem;
  color: #557089;
  background: #eef4fa;
  padding: 0.3rem 0.6rem;
  border-radius: 8px;
}
.profile-post > header a {
  font-weight: 700;
  text-decoration: none;
}
.profile-post .review-card {
  border: 0 !important;
  padding-inline: 0 !important;
}
@media (max-width: 760px) {
  .profile-banner {
    height: 150px;
  }
  .social-profile .workspace-heading {
    padding-inline: 0.5rem;
  }
}

/* The visit entry stays reachable while reading a long venue page. */
.public-venue-page {
  padding-bottom: 6rem !important;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .visit-sticky-action {
  position: fixed;
  inset-inline: 0;
  bottom: 0;
  z-index: 35;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem max(1rem, calc((100vw - 75rem) / 2));
  padding-bottom: max(0.75rem, env(safe-area-inset-bottom));
  background: #fff;
  border-top: 1px solid #d6e1eb;
  box-shadow: 0 -4px 16px #062b730b;
}
.identity-root
  .identity-main
  .venue-card.public-venue-page
  .visit-sticky-action
  .identity-primary-action {
  margin: 0;
  width: auto;
  min-width: 0;
}
.referral-share-actions a {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
}
.referral-share-actions .venue-proof-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.photo-native-viewer img {
  width: 100%;
  max-height: 80vh;
  object-fit: contain;
}
.visits-workspace .visit-record {
  padding: 1.25rem !important;
  border: 1px solid #dbe3ea !important;
  border-radius: 8px;
}
.visits-workspace .visit-record[data-visit-state="active"] {
  border-inline-start: 4px solid #0062e3 !important;
  background: #f4f8ff !important;
}
.visits-workspace .visit-record h3 {
  font-size: 1.3rem;
  margin: 0 0 0.5rem;
}
.visits-workspace .visit-record dl {
  display: grid;
  grid-template-columns: minmax(7rem, 1fr) minmax(8rem, 2fr);
  gap: 0.5rem 1rem;
}
.visits-workspace .visit-record dt {
  color: #5a6d7e;
  font-size: 0.9rem;
}
.visits-workspace .visit-record dd {
  margin: 0;
  font-weight: 600;
}
.visits-workspace .visit-history-record {
  border-bottom: 1px solid #dbe3ea;
  padding-block: 0.75rem;
}
.visits-workspace .visit-history-record summary {
  display: grid;
  grid-template-columns: minmax(10rem, 1fr) auto auto;
  gap: 1rem;
  align-items: center;
}
.visits-workspace .visit-history-record summary strong {
  color: #062b73;
}
.visits-workspace .visit-history-record summary bdi {
  font-size: 1.15rem;
  font-weight: 700;
}
@media (max-width: 600px) {
  .visits-workspace .visit-history-record summary {
    grid-template-columns: 1fr auto;
  }
  .visits-workspace .visit-history-record summary span {
    grid-row: 2;
    font-size: 0.85rem;
  }
  .visits-workspace .visit-history-record summary bdi {
    grid-row: 1 / 3;
    grid-column: 2;
  }
}

.profile-feed-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Override the former four-column centering rail as one aligned result group. */
.discovery-form:not(.discovery-map-expanded) > .discovery-sidebar {
  grid-column: 1;
  grid-row: 3;
}
.discovery-form:not(.discovery-map-expanded) > .discovery-results-column {
  grid-column: 2;
  grid-row: 3;
  margin-inline-start: 0;
}
@media (max-width: 760px) {
  .discovery-form:not(.discovery-map-expanded) > .discovery-results-column {
    grid-column: 1;
    grid-row: auto;
  }
}

/* October9 owner logo revision: cup + desk, with a quieter wordmark. */
.site-navigation .brand {
  gap: 0.5rem;
  flex-shrink: 0;
  font-family: "DeskCafes Sans", sans-serif;
  font-size: 1.7rem;
  font-weight: 600;
  letter-spacing: -0.035em;
  white-space: nowrap;
  direction: ltr;
}
.site-navigation .brand .brand-mark {
  display: block;
  width: 2.25rem;
  height: 2.25rem;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 5;
}
.site-navigation .brand-name > span {
  font-weight: inherit;
}
@media (max-width: 1000px) {
  .site-navigation .brand {
    font-size: 1.4rem;
    gap: 0.35rem;
  }
  .site-navigation .brand .brand-mark {
    width: 1.9rem;
    height: 1.9rem;
  }
}
@media (max-width: 420px) {
  .site-navigation .brand {
    font-size: 1.18rem;
    gap: 0.25rem;
  }
  .site-navigation .brand .brand-mark {
    width: 1.65rem;
    height: 1.65rem;
  }
}
@media (max-width: 380px) {
  .site-navigation .site-navigation-inner {
    column-gap: 4px;
  }
  .site-navigation .brand {
    font-size: 1.05rem;
  }
  .site-navigation .brand .brand-mark {
    width: 1.5rem;
    height: 1.5rem;
  }
  .site-navigation .site-navigation-currency > svg {
    display: none;
  }
  .site-navigation .site-navigation-currency {
    gap: 0;
  }
  .site-navigation .audience-switch {
    gap: 4px;
  }
  .site-navigation .audience-switch a {
    font-size: 0.75rem;
    padding-inline: 6px;
    gap: 4px;
  }
  .site-navigation .audience-mark {
    width: 12px;
    height: 12px;
  }
  .site-navigation .site-navigation-refer {
    font-size: 0.75rem;
    padding-inline: 8px;
  }
}
@media (max-width: 380px) {
  .site-navigation .site-navigation-inner {
    width: var(--site-content-width);
  }
  .site-navigation .site-navigation-currency select {
    width: 3rem;
    min-width: 3rem;
    padding-inline: 2px;
  }
  .site-navigation .site-navigation-locales summary {
    gap: 4px;
    padding-inline: 4px;
    min-width: 44px;
  }
  .site-navigation .navigation-sign-in {
    padding-inline: 6px;
  }
}
@media (max-width: 380px) {
  .site-navigation .site-navigation-account .navigation-sign-in {
    padding-inline: 6px;
  }
  .site-navigation .audience-switch .audience-mark {
    display: none;
  }
}

/* October10 owner symbol revision: a solid D with a negative-space cup. */
.site-navigation .brand .brand-mark {
  fill: currentColor;
  stroke: none;
}

/* Owner result-card revision: public description follows the address. */
.discovery-list .discovery-place-content .discovery-description {
  grid-column: 1 / -1;
  grid-row: 3;
  color: var(--interior-ink, #243746);
  font-size: 0.875rem;
  line-height: 1.5;
  white-space: pre-line;
  overflow-wrap: anywhere;
}

.discovery-list
  .discovery-place-content:has(.discovery-description)
  .discovery-price {
  grid-row: 4;
}
.discovery-list
  .discovery-place-content:has(.discovery-description)
  :is(.discovery-show-map, .discovery-place-action) {
  grid-row: 5;
}

/* Shared audience heroes, balanced against the navbar's trailing space. */
.explore-workspace .catalog-heading:has(.discovery-heading-copy),
.owner-dashboard .owner-heading-inner {
  --hero-start-space: 3rem;
  --hero-navigation-gap: 12px;
  padding-block-start: var(--hero-start-space);
  padding-block-end: calc(var(--hero-start-space) + var(--hero-navigation-gap));
}
.site-frame:has(.site-navigation .navigation-avatar)
  :is(
    .explore-workspace .catalog-heading:has(.discovery-heading-copy),
    .owner-dashboard .owner-heading-inner
  ) {
  --hero-navigation-gap: 10px;
}
.explore-workspace .discovery-heading-copy #hero-title,
.owner-dashboard .owner-home-heading h1 {
  margin-block: 0 1.25rem;
  font: 750 clamp(1.6rem, 2.65vw, 2.75rem)/1.2 var(--font-body, sans-serif);
  letter-spacing: -0.035em;
}
.explore-workspace .discovery-heading-copy .catalog-subtitle,
.owner-dashboard .owner-heading-inner .catalog-subtitle {
  margin-block: 0;
  font: 400 clamp(1.0625rem, 1.4vw, 1.25rem)/1.5 var(--font-body, sans-serif);
}
@media (max-width: 1000px) {
  .explore-workspace .catalog-heading:has(.discovery-heading-copy),
  .owner-dashboard .owner-heading-inner {
    --hero-navigation-gap: 9px;
  }
  .site-frame:has(.site-navigation .navigation-avatar)
    :is(
      .explore-workspace .catalog-heading:has(.discovery-heading-copy),
      .owner-dashboard .owner-heading-inner
    ) {
    --hero-navigation-gap: 8px;
  }
}
@media (max-width: 900px) {
  .explore-workspace .catalog-heading:has(.discovery-heading-copy),
  .owner-dashboard .owner-heading-inner {
    --hero-navigation-gap: 8px;
  }
}
@media (max-width: 760px) {
  .explore-workspace .catalog-heading:has(.discovery-heading-copy),
  .owner-dashboard .owner-heading-inner {
    --hero-start-space: 2rem;
    --hero-navigation-gap: 8px;
  }
  .explore-workspace .discovery-heading-copy #hero-title,
  .owner-dashboard .owner-home-heading h1 {
    margin-block-end: 1rem;
  }
}

/* October10: visible, compact actions in the venue workspace. */
.identity-root .identity-main .venue-hub-primary {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-block: 0.5rem 1.5rem;
}
.identity-root .identity-main .venue-hub-primary > a {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-block-size: 44px;
  padding: 0.6rem 0.75rem;
  border: 1px solid var(--brand-action);
  border-radius: 8px;
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
}
.identity-root .identity-main .venue-hub-secondary {
  color: var(--brand-action);
  background: #fff;
}
.identity-root .identity-main .venue-hub .venue-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin-block: 0 1.5rem;
  list-style: none;
}
.identity-root .identity-main .venue-hub .venue-grid > li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem 1.25rem;
}
.identity-root .identity-main .venue-hub-summary {
  flex: 1 1 16rem;
  min-inline-size: 0;
}
.identity-root .identity-main .venue-hub-summary h2 {
  margin: 0 0 0.4rem;
  font-size: 1.0625rem;
  overflow-wrap: anywhere;
}
.identity-root .identity-main .venue-hub-status {
  margin: 0;
  color: var(--interior-muted, #5a6d7e);
  font-size: 0.8125rem;
}
.identity-root .identity-main .venue-hub .workspace-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.identity-root .identity-main .venue-hub .venue-manage-link {
  padding: 0.6rem 0.8rem;
  border: 1px solid #d5e2f1;
  border-radius: 8px;
  background: #f1f6fc;
  font-size: 0.8125rem;
  font-weight: 600;
}
.identity-root .identity-main .venue-hub-tools {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: 1.25rem;
  padding-block-start: 1.25rem;
  border-block-start: 1px solid var(--interior-line);
}
.identity-root .identity-main .venue-hub-group h2 {
  margin: 0 0 0.5rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--interior-ink, #243746);
}
.identity-root .identity-main .venue-hub-group > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  min-block-size: 44px;
  padding: 0.55rem 0.65rem;
  border-radius: 8px;
  color: var(--brand-action);
  font-size: 0.8125rem;
  line-height: 1.4;
  text-decoration: none;
}
.identity-root .identity-main .venue-hub-group > a:hover,
.identity-root .identity-main .venue-hub-secondary:hover {
  background: #f1f6fc;
}
.identity-root .identity-main .venue-hub-arrow {
  flex-shrink: 0;
  opacity: 0.65;
}
[dir="rtl"] .venue-hub-arrow {
  transform: rotate(180deg);
}
@media (max-width: 600px) {
  .identity-root .identity-main .venue-hub .venue-grid > li {
    padding: 1rem;
  }
  .identity-root .identity-main .venue-hub-tools {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }
  .identity-root
    .identity-main
    .venue-hub-group[aria-labelledby="venue-tools-review"] {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1rem;
  }
  .identity-root
    .identity-main
    .venue-hub-group[aria-labelledby="venue-tools-review"]
    h2 {
    grid-column: 1 / -1;
  }
}

/* October10 owner walkthrough and compact discovery refinements, issue291. */
.owner-home.owner-dashboard .owner-how {
  padding-block: 3rem;
  border-top: 1px solid #e0e7ef;
}
.owner-home.owner-dashboard .owner-how > h2 {
  font-size: clamp(1.65rem, 2.6vw, 2.2rem);
  margin-block: 0 0.5rem;
}
.owner-home.owner-dashboard .owner-how > .owner-section-description {
  margin-block: 0 2rem;
}
.owner-home.owner-dashboard .owner-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 0;
  gap: 2rem;
  padding: 0;
  margin: 0;
  list-style: none;
  align-items: stretch;
}
.owner-home.owner-dashboard .owner-steps > li {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  box-shadow: none;
  border-block-start: 0;
  padding: 0;
  gap: 1.25rem;
  background: transparent;
  border: 0;
}
.owner-home.owner-dashboard .owner-steps img {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 8px;
}
.owner-home.owner-dashboard .owner-step-copy {
  display: block;
  width: 100%;
}
.owner-home.owner-dashboard .owner-step-number {
  display: block;
  width: auto;
  min-height: 0;
  background: none;
  border: 0;
  font-size: 2rem;
  line-height: 1.1;
  letter-spacing: -0.04em;
  font-weight: 700;
  color: #0062e3;
  margin-block-end: 0.75rem;
}
.owner-home.owner-dashboard .owner-step-copy h3 {
  margin: 0 0 0.75rem;
  font-size: 1.25rem;
}
.owner-home.owner-dashboard .owner-step-copy > p {
  margin: 0 0 1rem;
  color: #3b5063;
  font-weight: 600;
  line-height: 1.65;
}
.owner-home.owner-dashboard .owner-step-details {
  display: grid;
  gap: 0.9rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.owner-home.owner-dashboard .owner-step-details > li {
  display: block;
  position: relative;
  padding-inline-start: 1rem;
  font-size: 0.9rem;
  line-height: 1.65;
  color: #53677b;
}
.owner-home.owner-dashboard .owner-step-details > li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: 0.65em;
  width: 4px;
  height: 4px;
  border-radius: 4px;
  background: #0062e3;
}
.owner-how-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-block-start: 2rem;
  padding-block-start: 1.5rem;
  border-top: 1px solid #e0e7ef;
}
.owner-how-footer p {
  margin: 0;
  color: #53677b;
  font-size: 0.875rem;
  line-height: 1.6;
}
.owner-how-footer .owner-add-action {
  flex-shrink: 0;
}
.site-navigation .brand {
  align-items: center;
  line-height: 1;
  gap: 0.45rem;
}
.site-navigation .brand .brand-mark {
  width: 1.15em;
  height: 1.15em;
}
.site-navigation .brand-name {
  display: block;
  line-height: 1;
}
.discovery-filters .discovery-filter-list .filter-rating {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: fit-content;
  max-width: 100%;
  gap: 0.35rem;
  background: transparent;
  border: 0;
  padding: 0;
}
.discovery-filters .discovery-filter-list .filter-rating .filter-choice {
  flex: 0 1 auto;
  min-inline-size: 44px;
  min-block-size: 44px;
  padding: 0.5rem 0.65rem;
  justify-content: center;
  text-align: center;
  background: #f4f7fb;
  border: 1px solid #dce4ef;
  font-variant-numeric: tabular-nums;
}
.discovery-filters .discovery-filter-list .filter-rating .filter-choice input {
  position: absolute;
  opacity: 0;
  inline-size: 1px;
  block-size: 1px;
  clip-path: inset(50%);
}
.discovery-filters
  .discovery-filter-list
  .filter-rating
  .filter-choice:has(input:checked) {
  background: #0062e3;
  border-color: #0062e3;
  color: white;
}
.discovery-filters .discovery-filter-list .filter-boolean .filter-choice {
  flex-direction: row;
  justify-content: flex-start;
}
.discovery-filters .discovery-filter-list .filter-boolean .filter-choice input {
  order: 0;
  margin: 0;
}
.discovery-filters .discovery-filter-list .filter-boolean .filter-choice span {
  order: 1;
  flex: 0 1 auto;
}
.discovery-filters .price-range {
  display: grid;
  gap: 0.65rem;
  padding: 0.65rem 0 1rem;
}
.price-range-bound {
  display: grid;
  gap: 0.1rem;
}
.price-range-caption {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem;
  font-size: 0.75rem;
  color: #53677b;
}
.price-range-caption output {
  color: #152c4a;
  font-size: 0.875rem;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
.price-range-bound .price-range-track {
  display: block;
  height: 44px;
  margin: 0;
}
.price-range-bound .price-range-track::before {
  top: 20px;
  background: #d4e1f1;
}
.price-range-bound .price-range-track input[type="range"] {
  height: 44px;
  min-height: 44px;
  pointer-events: auto;
  cursor: pointer;
}
.price-range-bound .price-range-track input::-webkit-slider-thumb {
  width: 22px;
  height: 22px;
  border: 2px solid #0062e3;
  border-radius: 4px;
  background: #fff;
}
.price-range-bound .price-range-track input::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border: 2px solid #0062e3;
  border-radius: 4px;
  background: #fff;
}
.native-price-range {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
}
.native-price-range input {
  width: 100%;
  min-width: 0;
}
@media (max-width: 760px) {
  .owner-home.owner-dashboard .owner-steps {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
  }
  .owner-home.owner-dashboard .owner-steps > li + li {
    padding-block-start: 2rem;
    border-top: 1px solid #e0e7ef;
  }
  .owner-home.owner-dashboard .owner-steps img {
    max-height: 240px;
  }
  .owner-home.owner-dashboard .owner-how {
    padding-block: 2rem;
  }
  .owner-how-footer {
    align-items: start;
    flex-direction: column;
    gap: 1rem;
  }
  .discovery-form[data-mobile-filters="open"]
    .discovery-sidebar
    > .discovery-filters {
    inset-block: 0;
    margin: 0;
    max-height: 100dvh;
    height: 100dvh;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-block: max(1rem, env(safe-area-inset-top))
      max(2rem, env(safe-area-inset-bottom));
    border: 0;
    border-radius: 0 8px 8px 0;
    scroll-padding-top: 1rem;
  }
  [dir="rtl"]
    .discovery-form[data-mobile-filters="open"]
    .discovery-sidebar
    > .discovery-filters {
    border-radius: 8px 0 0 8px;
  }
  .discovery-form[data-mobile-filters="open"] .discovery-filters > h2 {
    margin-block: 0 0.75rem;
    padding: 0;
  }
  .discovery-form[data-mobile-filters="open"] .discovery-filters-close {
    position: static;
    margin-block-end: 0.25rem;
  }
}

.discovery-filters-backdrop {
  display: none;
}
@media (max-width: 760px) {
  .discovery-form[data-mobile-filters="open"] .discovery-filters-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #112b4b66;
    z-index: 190;
    cursor: pointer;
  }
  .discovery-form[data-mobile-filters="open"]
    .discovery-sidebar
    > .discovery-filters {
    position: fixed;
    box-shadow: none;
  }
}

.owner-home.owner-dashboard .owner-steps .owner-step-details > li {
  margin: 0;
  padding: 0;
  padding-inline-start: 1rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

@media (max-width: 760px) {
  .explore-workspace:has(.discovery-form[data-mobile-filters="open"]) {
    z-index: 60;
  }
}

/* October10 desktop discovery sizing, issue295. */
@media (min-width: 1001px) {
  .discovery-form:has(> .discovery-sidebar):not(.discovery-map-expanded) {
    --discovery-sidebar-inset: 4px;
    grid-template-columns:
      calc(
        var(--discovery-sidebar-width, 17rem) + var(--discovery-sidebar-inset)
      )
      minmax(0, 1fr);
  }
  .discovery-form:not(.discovery-map-expanded) > .discovery-sidebar {
    inline-size: var(--discovery-sidebar-width, 17rem);
    margin-inline-start: var(--discovery-sidebar-inset, 4px);
  }
  .discovery-form:not(.discovery-map-expanded)
    .discovery-results-column
    .discovery-list {
    grid-auto-rows: 1fr;
  }
  .discovery-form:not(.discovery-map-expanded)
    .discovery-sidebar
    > .discovery-map-column {
    height: var(--discovery-result-row-height, 250px);
    padding: 0;
    box-sizing: border-box;
  }
  .discovery-form:not(.discovery-map-expanded)
    .discovery-sidebar
    .discovery-map-column
    .explore-map {
    height: 100%;
    min-height: 0;
    border: 0;
  }
  .discovery-form:not(.discovery-map-expanded)
    .discovery-sidebar
    .discovery-map-column
    .map-viewport {
    height: 100%;
    min-height: 0;
  }
}

/* October10 mobile filters: one drawer in ordinary and expanded discovery. */
.price-range-caption output {
  display: inline-flex;
  gap: 0.3rem;
  align-items: baseline;
}
@media (max-width: 760px) {
  .discovery-form .discovery-sidebar > .discovery-filters {
    display: none;
  }
  .discovery-form[data-mobile-filters="open"]
    .discovery-sidebar
    > .discovery-filters {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto minmax(0, 1fr);
    column-gap: 0.75rem;
    position: fixed;
    inset-inline: 0 auto;
    inset-block: var(--mobile-filter-top, 0px) auto;
    width: min(calc(100vw - 56px), 22rem);
    max-width: none;
    height: var(--mobile-filter-height, 100dvh);
    max-height: var(--mobile-filter-height, 100dvh);
    min-height: 0;
    margin: 0;
    padding: max(0.75rem, env(safe-area-inset-top)) 1rem 0;
    border: 0;
    border-radius: 0 8px 8px 0;
    background: #fff;
    color: #152c4a;
    box-shadow: none;
    overflow: hidden;
    z-index: 300;
  }
  [dir="rtl"]
    .discovery-form[data-mobile-filters="open"]
    .discovery-sidebar
    > .discovery-filters {
    inset-inline: 0 auto;
    border-radius: 8px 0 0 8px;
  }
  .discovery-form[data-mobile-filters="open"] .discovery-filters > h2 {
    display: flex;
    align-items: center;
    grid-row: 1;
    grid-column: 1;
    min-height: 44px;
    margin: 0;
    padding: 0;
    font-size: 1.0625rem;
  }
  .discovery-form[data-mobile-filters="open"] .discovery-filters-close {
    grid-row: 1;
    grid-column: 2;
    position: static;
    margin: 0;
    border: 0;
    background: #f3f6fa;
    font-size: 1.375rem;
  }
  .discovery-form[data-mobile-filters="open"] .discovery-filter-list {
    grid-row: 2;
    grid-column: 1 / -1;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    align-content: start;
    padding-block: 0.75rem max(1.5rem, env(safe-area-inset-bottom));
    scrollbar-width: thin;
    touch-action: pan-y pinch-zoom;
    scroll-padding-block: 0.75rem;
  }
  .discovery-filters:popover-open::backdrop {
    background: #112b4b66;
  }
  .discovery-form:has(.discovery-filters:popover-open)
    .discovery-filters-backdrop {
    background: transparent;
  }
  .discovery-form.discovery-with-map.discovery-map-expanded {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 55% minmax(0, 1fr);
  }
  .discovery-form.discovery-map-expanded .discovery-map-column {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    height: 100%;
  }
  .discovery-form.discovery-map-expanded > .discovery-results-column {
    grid-column: 1;
    grid-row: 2;
    min-height: 0;
    width: 100%;
  }
  .discovery-form.discovery-map-expanded .discovery-mobile-filters {
    display: inline-flex;
    position: absolute;
    top: 1rem;
    left: 1rem;
    right: auto;
    width: fit-content;
    grid-column: auto;
    grid-row: auto;
    margin: 0;
    z-index: 15;
    box-shadow: 0 2px 8px #062b7314;
  }
  .discovery-filters .discovery-filter-list .filter-rating {
    align-items: center;
    width: fit-content;
    gap: 8px;
    padding-inline: 4px;
    background: #f3f6fa;
    border: 1px solid #e0e7ef;
    border-radius: 8px;
  }
  .discovery-filters .discovery-filter-list .filter-rating .filter-choice {
    position: relative;
    min-inline-size: 36px;
    min-block-size: 32px;
    padding: 3px 6px;
    margin-block: 6px;
    background: transparent;
    border: 0;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.2;
    border-radius: 8px;
  }
  .discovery-filters
    .discovery-filter-list
    .filter-rating
    .filter-choice::before {
    content: "";
    position: absolute;
    inset: -6px -4px;
  }
  .discovery-filters
    .discovery-filter-list
    .filter-rating
    .filter-choice:has(input:checked) {
    background: #0062e3;
    color: white;
  }
  .discovery-filters
    .discovery-filter-list
    .filter-choices:not(.filter-rating)
    .filter-choice {
    flex-direction: row;
    justify-content: flex-start;
    gap: 8px;
  }
  .discovery-filters
    .discovery-filter-list
    .filter-choices:not(.filter-rating)
    .filter-choice
    input {
    order: 0;
    margin: 0;
    flex: 0 0 auto;
  }
  .discovery-filters
    .discovery-filter-list
    .filter-choices:not(.filter-rating)
    .filter-choice
    span {
    order: 1;
    flex: 0 1 auto;
  }
  .discovery-filters .price-range,
  .discovery-filters .native-price-range {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    padding-block: 0.4rem 0.9rem;
  }
  .discovery-filters .price-range-bound,
  .discovery-filters .native-price-range > label {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 0.35rem;
    padding: 0.75rem 0.6rem 0;
    border-radius: 8px;
    border: 1px solid #e0e7ef;
    background: #f5f8fc;
  }
  .discovery-filters .price-range-caption {
    display: grid;
    justify-content: stretch;
    gap: 0.4rem;
    font-size: 0.6875rem;
    line-height: 1.4;
  }
  .discovery-filters .price-range-caption output {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.3rem;
    font-size: 1.25rem;
    line-height: 1.25;
    letter-spacing: -0.025em;
    color: #062b73;
    overflow-wrap: anywhere;
  }
  .discovery-filters .price-range-currency {
    font-size: 0.625rem;
    font-weight: 650;
    letter-spacing: 0;
    color: #5a6d7e;
  }
  .discovery-filters .price-range-bound .price-range-track::before {
    background: linear-gradient(
      to right,
      #0062e3 0 var(--range-fill, 0%),
      #d6e2f2 var(--range-fill, 0%) 100%
    );
  }
  [dir="rtl"] .discovery-filters .price-range-bound .price-range-track::before {
    background: linear-gradient(
      to left,
      #0062e3 0 var(--range-fill, 0%),
      #d6e2f2 var(--range-fill, 0%) 100%
    );
  }
  .discovery-filters
    .price-range-bound
    .price-range-track
    input::-webkit-slider-thumb {
    width: 18px;
    height: 22px;
    border-radius: 4px;
    border: 2px solid white;
    background: #0062e3;
    box-shadow: 0 0 0 1px #0062e3;
  }
  .discovery-filters
    .price-range-bound
    .price-range-track
    input::-moz-range-thumb {
    width: 16px;
    height: 20px;
    border-radius: 4px;
    border: 2px solid white;
    background: #0062e3;
    box-shadow: 0 0 0 1px #0062e3;
  }
  .discovery-filters .native-price-amount {
    display: flex;
    align-items: baseline;
    gap: 0.4rem;
    min-width: 0;
    margin-block-end: 0.4rem;
  }
  .discovery-filters .native-price-amount input {
    width: 100%;
    min-width: 0;
    height: 44px;
    min-height: 44px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #062b73;
    font-size: 1.25rem;
    font-weight: 650;
    line-height: 1.25;
    letter-spacing: -0.025em;
    box-shadow: none;
  }
  .discovery-filters .native-price-amount input:focus-visible {
    outline: 2px solid #0062e3;
    outline-offset: 2px;
  }
}

/* Availability above the sorting column; reserve its space outside sticky search. */
.discovery-form > .discovery-open-now-space {
  grid-column: 1 / -1;
  min-height: 44px;
}
.explore-workspace .discovery-open-now-space {
  position: relative;
  isolation: isolate;
}
.explore-workspace .discovery-open-now-space::before {
  content: "";
  position: absolute;
  inset-block: 0 -1rem;
  left: calc((100% - 100cqw) / 2);
  width: 100cqw;
  z-index: -1;
  background: var(--header-surface);
  pointer-events: none;
}
.discovery-search > .discovery-open-now-row {
  position: absolute;
  grid-column: 4;
  grid-row: 1;
  inset-inline: 0;
  inset-block-end: 100%;
  min-height: 52px;
  padding-block-end: 8px;
  padding-inline-start: 16px;
  z-index: 1;
  box-sizing: border-box;
}
.discovery-open-now-row .search-open-now-choice {
  display: flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  min-height: 44px;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  cursor: pointer;
}
.discovery-open-now-row .search-open-now-choice input {
  appearance: none;
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  inline-size: 18px;
  block-size: 18px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 1px solid #fff;
  border-radius: 4px;
  background: transparent;
  color: #062b73;
  position: relative;
  cursor: pointer;
}
.discovery-open-now-row .search-open-now-choice input:checked {
  background: #fff;
}
.discovery-open-now-row .search-open-now-choice input:checked::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 9px;
  top: 2px;
  left: 5px;
  border: solid currentColor;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.discovery-open-now-row .search-open-now-choice input:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
.discovery-open-now-row[data-scrolled="true"] > .search-open-now-choice {
  visibility: hidden;
  pointer-events: none;
}
.discovery-form.discovery-map-expanded .discovery-open-now-row,
.discovery-form.discovery-map-expanded > .discovery-open-now-space {
  display: none;
}
.discovery-open-now-filter-slot:not([data-open-now-linked="true"]) {
  display: none;
}
@media (max-width: 900px) and (min-width: 761px) {
  .discovery-search > .discovery-open-now-row {
    grid-column: 2;
    padding-inline-start: 10px;
  }
}
@media (max-width: 760px) {
  .discovery-search > .discovery-open-now-row {
    grid-column: 6 / span 4;
    padding-inline-start: 8px;
  }
  .discovery-open-now-row .search-open-now-choice {
    font-size: 12px;
    gap: 5px;
  }
}
@media (max-width: 360px) {
  .discovery-search > .discovery-open-now-row {
    grid-column: 5 / span 4;
  }
}

/* Two mobile rows: geography, then name/order/search, with full touch targets. */
@media (max-width: 760px) {
  .explore-workspace .discovery-form .discovery-fields.discovery-search {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 4px;
    padding: 4px;
    min-height: 0;
  }
  .explore-workspace .discovery-search > .search-field {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 44px;
    grid-column: span 6;
    min-height: 52px;
    padding: 4px 8px;
    gap: 0;
    box-sizing: border-box;
  }
  .explore-workspace .discovery-search > .search-field:nth-child(3) {
    grid-column: span 5;
  }
  .explore-workspace .discovery-search > .search-field:nth-child(4) {
    grid-column: span 4;
  }
  .explore-workspace .discovery-search .search-field-title {
    position: absolute;
    inset-block-start: 6px;
    inset-inline: 8px;
    font-size: 10px;
    line-height: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    pointer-events: none;
  }
  .explore-workspace .discovery-search .search-combo {
    grid-column: 1;
    grid-row: 1;
  }
  .explore-workspace .discovery-search .search-field :is(input, select) {
    grid-column: 1;
    grid-row: 1;
    height: 44px;
    min-height: 44px;
    margin: 0;
    padding: 12px 0 0;
    font-size: 16px;
    line-height: 24px;
    text-overflow: ellipsis;
    box-sizing: border-box;
  }
  .explore-workspace .discovery-search .search-field-icon {
    display: none;
  }
  .explore-workspace .discovery-search .search-options {
    inset-inline: -8px;
    top: calc(100% + 4px);
  }
  .explore-workspace .discovery-search button[data-discovery-submit] {
    grid-column: span 3;
    align-self: center;
    min-width: 0;
    min-height: 44px;
    margin: 0;
    padding: 6px;
    font-size: 13px !important;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }
  .explore-workspace .discovery-search button[data-discovery-submit]::after {
    font-size: inherit;
  }
}
@media (max-width: 360px) {
  .explore-workspace .discovery-search > .search-field:nth-child(3),
  .explore-workspace .discovery-search button[data-discovery-submit] {
    grid-column: span 4;
  }
}

/* A quiet consent panel with separate copy, aligned choices and policy links. */
.site-frame > .consent-banner {
  grid-template-columns: minmax(0, 1fr) 21rem;
  align-items: center;
  gap: 24px;
  padding: 24px;
  border: 1px solid #d5e0ec;
  border-radius: 8px;
  background: #fff;
  color: #213b58;
  box-shadow: 0 8px 30px #062b731a;
  box-sizing: border-box;
  scrollbar-width: thin;
}
.consent-banner .consent-banner-copy h2 {
  font-size: 18px;
  line-height: 1.35;
  font-weight: 700;
  color: #062b73;
  letter-spacing: -0.015em;
}
.consent-banner .consent-banner-copy > p {
  max-width: none;
  margin-block-start: 8px;
  font-size: 13px;
  line-height: 1.6;
  color: #4c6075;
}
.consent-banner .consent-banner-copy > .consent-inactive-note {
  margin-block-start: 12px;
  padding-inline-start: 12px;
  border-inline-start: 2px solid #dce8f8;
  font-size: 12px !important;
  line-height: 1.55;
}
.consent-banner .consent-banner-controls {
  gap: 0;
  min-width: 0;
  padding-inline-start: 24px;
  border-inline-start: 1px solid #e3eaf2;
}
.consent-banner .consent-banner-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  align-items: stretch;
  margin: 0;
}
.consent-banner .consent-banner-form .consent-decision-button {
  grid-row: 1;
  width: 100%;
  inline-size: 100%;
  min-width: 0;
  min-height: 48px;
  padding: 8px;
  margin: 0;
  border: 1px solid #b7cbe6;
  border-radius: 8px;
  background: #f5f8fd;
  color: #062b73;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  box-shadow: none;
  box-sizing: border-box;
}
.consent-banner .consent-banner-form .consent-decision-button:hover {
  border-color: #0062e3;
  background: #e9f1ff;
  color: #062b73;
}
.consent-banner :is(.consent-decision-button, a):focus-visible {
  outline: 2px solid #0062e3;
  outline-offset: 3px;
}
.consent-banner .consent-policy-links {
  grid-column: 1 / -1;
  grid-row: 2;
  display: block;
  margin: 0;
  min-height: 44px;
  align-content: center;
  text-align: center;
  font-size: 12px;
  line-height: 1.5;
  color: #8090a3;
}
.consent-banner .consent-policy-links a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #365b88;
  text-underline-offset: 3px;
}
.consent-banner .consent-manage-link {
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: stretch;
  min-height: 44px;
  margin: 0;
  border-block-start: 1px solid #e3eaf2;
  color: #365b88;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  text-underline-offset: 3px;
}
@media (max-width: 900px) {
  .site-frame > .consent-banner {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    padding: 16px;
  }
  .consent-banner .consent-banner-controls {
    padding-inline-start: 0;
    padding-block-start: 12px;
    border-inline-start: 0;
    border-block-start: 1px solid #e3eaf2;
  }
  .consent-banner .consent-banner-form .consent-decision-button {
    min-height: 44px;
  }
}
@media (max-width: 900px) and (max-height: 650px) {
  .consent-banner .consent-banner-controls {
    position: sticky;
    inset-block-end: 0;
    z-index: 1;
    background: #fff;
  }
}

/* Account and opt-in profile insights; full history, compact identity header. */
.identity-root .identity-main .social-profile .workspace-heading,
.profile-banner + .public-profile-heading {
  align-items: flex-start;
  flex-wrap: nowrap;
  gap: 1.5rem;
  padding-block-end: 2rem;
}
.identity-root
  .identity-main
  .social-profile
  .workspace-heading
  > .profile-image,
.profile-banner + .public-profile-heading > .profile-image {
  inline-size: 148px;
  block-size: 148px;
  flex: 0 0 148px;
  margin-top: -48px;
  border-width: 6px;
  box-sizing: border-box;
}
.profile-identity {
  flex: 1;
  min-width: 0;
  padding-block-start: 0.85rem;
}
.identity-root .profile-identity h1 {
  margin: 0;
  line-height: 1.15;
}
.identity-root .profile-identity .profile-handle {
  margin: 0.2rem 0 0;
  color: #5a6d7e;
  line-height: 1.4;
}
.identity-root .profile-identity .profile-biography {
  margin: 0.85rem 0 0;
  max-width: none;
  white-space: pre-wrap;
}
.profile-location {
  margin-block-start: 0.8rem;
}
.identity-root .profile-location-indicator {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
  color: #5a6d7e;
  margin: 0;
  font-size: 0.875rem;
}
.profile-location-indicator svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}
.identity-root .profile-location-edit {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  width: auto;
  border: 0;
  background: transparent;
  color: #0062e3;
  font: inherit;
  font-size: 0.8rem;
  padding: 0.35rem 0.6rem;
  border-radius: 8px;
  cursor: pointer;
}
.profile-location-edit:hover {
  background: #eef4fa;
}
.profile-location-fields:not([hidden]) {
  display: grid;
  grid-template-columns: minmax(0, 15rem) minmax(0, 15rem);
  gap: 0.75rem;
  margin-block-start: 0.5rem;
  padding-block: 0.75rem;
  border-block: 1px solid #e1e8f0;
}
.profile-location-fields label {
  display: grid;
  gap: 0.4rem;
  font-size: 0.8rem;
  font-weight: 600;
}
.profile-location-fields .identity-text-input {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.identity-root .profile-location-hint {
  grid-column: 1 / -1;
  margin: 0;
}
.identity-root .profile-location-status {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
}
.profile-location-status:empty {
  display: none;
}
.profile-statistics h2,
.profile-reviews h2 {
  margin-block: 0 1.5rem;
}
.profile-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 0 1.25rem;
  gap: 0;
}
.profile-stat {
  padding: 1.1rem 1rem 1.1rem 0;
  border-block-start: 1px solid #e1e8f0;
}
.profile-stat:nth-child(-n + 3) {
  border-block-start: 0;
}
.profile-stat dt {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #5a6d7e;
  font-size: 0.82rem;
}
.profile-stat dt svg {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  color: #0062e3;
}
.profile-stat dd {
  margin: 0.6rem 0 0;
  color: #062b73;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  font-weight: 650;
  line-height: 1.2;
}
.profile-stat:nth-child(2) dd {
  color: #0062e3;
}
.profile-rating-summary {
  padding: 1.5rem;
  background: #f3f7fc;
  border-radius: 8px;
  margin-block-end: 1rem;
}
.profile-rating-summary h3 {
  margin-block: 0 1.25rem;
  font-size: 1rem;
}
.profile-rating-layout {
  display: grid;
  grid-template-columns: minmax(9rem, 1fr) minmax(0, 2fr);
  gap: 2rem;
  align-items: center;
}
.profile-overall-mean {
  display: grid;
  gap: 0.4rem;
}
.profile-overall-mean > strong {
  color: #062b73;
  font-size: 3rem;
  line-height: 1;
  font-weight: 650;
}
.profile-overall-mean small,
.profile-rating-means small {
  font-size: 0.8rem;
  font-weight: 400;
  color: #5a6d7e;
  margin-inline-start: 0.2rem;
}
.profile-overall-mean > span {
  font-size: 0.8rem;
}
.profile-rating-distribution > div {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr) 2.5rem;
  gap: 0.6rem;
  align-items: center;
  padding-block: 0.3rem;
  font-size: 0.8rem;
}
.profile-rating-distribution meter {
  appearance: none;
  width: 100%;
  height: 0.6rem;
  border-radius: 4px;
  background: #dce7f4;
}
.profile-rating-distribution meter::-webkit-meter-bar {
  background: #dce7f4;
  border: 0;
  border-radius: 4px;
}
.profile-rating-distribution meter::-webkit-meter-optimum-value {
  background: #0062e3;
  border-radius: 4px;
}
.profile-rating-distribution meter::-moz-meter-bar {
  background: #0062e3;
  border-radius: 4px;
}
.profile-rating-means {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  padding-block-start: 1.25rem;
  margin: 1.25rem 0 0;
  border-block-start: 1px solid #dce7f4;
}
.profile-rating-means dt {
  font-size: 0.75rem;
  color: #5a6d7e;
}
.profile-rating-means dd {
  display: grid;
  gap: 0.2rem;
  margin: 0.3rem 0 0;
}
.profile-rating-means strong {
  font-size: 1.1rem;
  color: #062b73;
}
.profile-rating-means dd > span {
  font-size: 0.7rem;
  color: #5a6d7e;
}
.identity-root .profile-rating-summary > .identity-hint {
  font-size: 0.75rem;
  margin-block: 1.25rem 0;
}
.profile-review-post {
  padding-block: 1.75rem;
  border-block-end: 1px solid #e1e8f0;
}
.profile-review-venue {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.profile-review-venue > a {
  flex: 0 0 108px;
}
.profile-review-venue .profile-image {
  width: 108px;
  height: 80px;
  border-radius: 8px;
  object-fit: cover;
}
.profile-review-venue > div {
  min-width: 0;
}
.profile-review-venue h3 {
  margin: 0;
  font-size: 1.15rem;
}
.profile-review-venue a {
  text-decoration: none;
  color: #062b73;
}
.profile-review-post .review-card {
  padding: 0 !important;
  margin-block-start: 0.75rem;
  border: 0 !important;
}
.profile-review-post .review-card > header {
  justify-content: flex-start;
  margin-block: 0 0.85rem;
}
.profile-review-post .review-card > header > .profile-image,
.profile-review-post .review-card > header > strong {
  display: none;
}
.profile-review-post .review-card > header > time {
  color: #5a6d7e;
  font-size: 0.75rem;
}
.profile-review-post .review-title {
  margin-block: 0 0.85rem;
  font-size: 1.1rem;
  color: #3b5063;
}
.profile-review-post .review-body {
  margin-block: 1rem;
  font-size: 0.95rem;
  line-height: 1.65;
}
.profile-more-reviews {
  margin-block-start: 1.5rem;
}
.public-profile-content > .profile-feed {
  margin-block-start: 2.5rem;
}
.review-title-field {
  display: grid;
  gap: 0.4rem;
  margin-block: 1rem;
}
.review-title-field input {
  max-width: 24rem;
}
@media (max-width: 760px) {
  .identity-root .identity-main .social-profile .workspace-heading,
  .profile-banner + .public-profile-heading {
    gap: 1rem;
    padding-inline: 0.5rem;
  }
  .identity-root
    .identity-main
    .social-profile
    .workspace-heading
    > .profile-image,
  .profile-banner + .public-profile-heading > .profile-image {
    inline-size: 128px;
    block-size: 128px;
    flex-basis: 128px;
    margin-top: -38px;
    border-width: 5px;
  }
  .profile-identity {
    padding-block-start: 0.65rem;
  }
  .identity-root .profile-identity h1 {
    font-size: 1.5rem;
  }
  .profile-location-fields:not([hidden]) {
    grid-template-columns: minmax(0, 1fr);
  }
  .profile-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .profile-stat:nth-child(3) {
    border-block-start: 1px solid #e1e8f0;
  }
  .profile-stat {
    padding: 1rem 0.6rem 1rem 0;
  }
  .profile-rating-summary {
    padding: 1rem;
  }
  .profile-rating-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
  }
  .profile-overall-mean > strong {
    font-size: 2.5rem;
  }
  .profile-rating-means {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem 0.6rem;
  }
  .profile-review-venue > a {
    flex-basis: 88px;
  }
  .profile-review-venue .profile-image {
    width: 88px;
    height: 72px;
  }
  .profile-review-venue h3 {
    font-size: 1rem;
  }
}
@media (max-width: 420px) {
  .identity-root .identity-main .social-profile .workspace-heading,
  .profile-banner + .public-profile-heading {
    flex-wrap: wrap;
  }
  .profile-identity {
    flex-basis: 100%;
    padding-block-start: 0;
  }
}

/* Public sections use the full profile width rather than the old feed sidebar. */
.identity-root .identity-main .review-workspace .public-profile-content {
  display: block;
}
.review-workspace .profile-stat-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.review-workspace .profile-stat:nth-child(-n + 5) {
  border-block-start: 0;
}
.profile-review-post .review-card > header > time {
  margin-inline: 0 auto;
}
@media (max-width: 900px) {
  .review-workspace .profile-stat-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .review-workspace .profile-stat:nth-child(n + 4) {
    border-block-start: 1px solid #e1e8f0;
  }
}
@media (max-width: 760px) {
  .review-workspace .profile-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .review-workspace .profile-stat:nth-child(n + 3) {
    border-block-start: 1px solid #e1e8f0;
  }
}

/* Named rating bands in two compact rows; retain44px pointer targets. */
.discovery-filters .discovery-filter-list .filter-rating {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 8px;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
}
.discovery-filters .discovery-filter-list .filter-rating .filter-choice {
  width: auto;
  min-width: 0;
  min-height: 32px;
  min-inline-size: 0;
  min-block-size: 32px;
  margin-block: 0;
  padding: 5px 7px;
  font-size: 12px;
  line-height: 1.35;
  white-space: normal;
  text-align: center;
}
.discovery-filters
  .discovery-filter-list
  .filter-rating
  .filter-choice:has(input[value="9"]) {
  grid-column: 1 / -1;
  justify-self: start;
  text-align: start;
}

.discovery-filters
  .discovery-filter-list
  .filter-rating
  .filter-choice::before {
  content: "";
  position: absolute;
  inset: -6px -4px;
}

/* Shared audience hero envelope, including discovery's availability/search join. */
.explore-workspace,
.owner-dashboard {
  --audience-title-size: clamp(1.6rem, 2.65vw, 2.75rem);
  --audience-subtitle-size: clamp(1.0625rem, 1.4vw, 1.25rem);
  --audience-title-lines: 1;
  --audience-subtitle-lines: 1;
  --audience-copy-gap: 1.25rem;
  --audience-search-half: 33px;
  --audience-search-join: calc(44px + var(--audience-search-half));
  --audience-copy-height: calc(
    var(--audience-title-size) * 1.2 * var(--audience-title-lines) +
      var(--audience-copy-gap) + var(--audience-subtitle-size) * 1.5 *
      var(--audience-subtitle-lines)
  );
}
.explore-workspace .catalog-heading:has(.discovery-heading-copy),
.owner-dashboard .owner-heading-inner {
  box-sizing: border-box;
  min-block-size: calc(
    2 * var(--hero-start-space) + var(--hero-navigation-gap) +
      var(--audience-copy-height)
  );
}
.explore-workspace .discovery-search::before {
  height: calc(var(--audience-search-half) + 3px);
}
.owner-dashboard .owner-heading-inner {
  min-block-size: calc(
    2 * var(--hero-start-space) + var(--hero-navigation-gap) +
      var(--audience-copy-height) + var(--audience-search-join)
  );
}
.explore-workspace .discovery-heading-copy .catalog-subtitle {
  min-block-size: calc(
    var(--audience-subtitle-size) * 1.5 * var(--audience-subtitle-lines)
  );
}
@media (max-width: 1000px) {
  .explore-workspace,
  .owner-dashboard {
    --audience-title-lines: 2;
    --audience-subtitle-lines: 2;
  }
}
@media (max-width: 760px) {
  .explore-workspace,
  .owner-dashboard {
    --audience-subtitle-lines: 3;
    --audience-copy-gap: 1rem;
    --audience-search-half: 58px;
  }
}

/* Separate content with whitespace rather than decorative section rules. */
.owner-home.owner-dashboard :is(.owner-benefits, .owner-how, .owner-how-footer),
.owner-home.owner-dashboard .owner-steps > li + li,
.site-information.site-information,
.site-footer.site-footer,
.privacy-preferences .preference-card,
.identity-root
  .identity-main
  :is(
    .identity-fieldset,
    fieldset,
    .workspace-heading,
    .workspace-navigation,
    .venue-hub-tools,
    .venue-confirmation-heading,
    .venue-proof-method,
    .venue-search-form,
    .venue-search-results-heading,
    .workspace-danger,
    .identity-email-method,
    .identity-totp-details,
    .visit-history-record,
    .schedule-day,
    .review-card,
    .public-venue-reviews,
    .venue-location,
    .profile-stat,
    .profile-rating-means,
    .profile-review-post,
    .profile-location-fields
  ),
.identity-root
  .identity-main
  :is(.connected-accounts, .developer-applications)
  > section,
.identity-root .identity-main .connected-accounts > ul > li,
.identity-root .identity-main .venue-grid > li {
  border-block-start-width: 0;
  border-block-end-width: 0;
}
main hr {
  border: 0;
  background: transparent;
}

/* Issue330: use the accepted field geometry and only documented Google parts. */
.google-location-combo {
  display: block;
  position: relative;
  min-width: 0;
}
.google-location-combo > span:not([hidden]) {
  display: block;
}
.google-location-combo gmp-basic-place-autocomplete {
  display: block;
  width: 100%;
  height: 44px;
  min-height: 0;
  border: 0;
  border-radius: 8px;
  box-shadow: none;
  color-scheme: light;
  font-family: inherit;
  color: inherit;
}
.google-location-combo gmp-basic-place-autocomplete::part(input) {
  font-family: inherit;
  color: inherit;
  outline: none;
  box-shadow: none;
}
.google-location-combo gmp-basic-place-autocomplete::part(focus-ring) {
  outline: none;
  border: 0;
  box-shadow: none;
}
.google-location-combo[data-location-confirmed="true"]
  > .google-location-input {
  visibility: hidden;
}
/* Issue334: plain selected text with the same field target and typography. */
.google-location-combo .google-location-change {
  position: absolute;
  inset-inline: 0;
  inset-block-start: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: start;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  box-shadow: none;
  cursor: text;
}
.google-location-combo .google-location-change:is(:hover, :focus) {
  background: transparent;
  box-shadow: none;
}
.explore-workspace .discovery-search .google-location-change {
  inset-block-start: -10px;
  color: #152f3e;
  font: 600 1rem / 24px var(--font-body);
  letter-spacing: -0.01em;
}
.explore-workspace .discovery-search .google-location-combo {
  grid-column: 2;
  grid-row: 2;
  min-height: 24px;
}
.explore-workspace
  .discovery-search
  .google-location-combo
  gmp-basic-place-autocomplete {
  height: 24px;
  border-radius: 0;
  background: transparent;
  color: #152f3e;
  font: 600 1rem / 1.4 var(--font-body);
  letter-spacing: -0.01em;
}
.explore-workspace
  .discovery-search
  .google-location-combo
  gmp-basic-place-autocomplete::part(input) {
  padding: 0;
  font: inherit;
  letter-spacing: inherit;
}

.google-location-combo[data-location-selected="true"]
  gmp-basic-place-autocomplete::part(input)::placeholder {
  color: inherit;
  opacity: 1;
}
@media (max-width: 760px) {
  .explore-workspace .discovery-search .google-location-combo {
    grid-column: 1;
    grid-row: 1;
  }
  .explore-workspace .discovery-search .google-location-change {
    inset-block-start: 0;
    padding-block-start: 12px;
  }
  .explore-workspace
    .discovery-search
    .google-location-combo
    gmp-basic-place-autocomplete {
    height: 44px;
    line-height: 24px;
  }
  .explore-workspace
    .discovery-search
    .google-location-combo
    gmp-basic-place-autocomplete::part(input) {
    padding: 12px 0 0;
    box-sizing: border-box;
  }
}
.explore-workspace
  .discovery-search
  .google-location-combo
  gmp-basic-place-autocomplete::part(input)::placeholder {
  color: inherit;
  opacity: 1;
  font: inherit;
}

/* Issue336: profile section navigation stays below the identity header. */
.identity-root .review-workspace .profile-section-navigation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 28px;
  padding: 0;
}
.identity-root .profile-section-navigation a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: #f1f5fa;
  color: #3b5063;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
}
.identity-root .profile-section-navigation a:hover {
  background: #e4edf9;
  color: #062b73;
}
.identity-root .profile-section-navigation a[aria-selected="true"] {
  background: var(--accent-primary, #0062e3);
  color: #fff;
}
.profile-section-navigation .workspace-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}
.identity-root .identity-main .public-profile-content > .profile-section {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  scroll-margin-block-start: calc(var(--sticky-nav-height, 68px) + 16px);
}
.identity-root .public-profile-content > .profile-section[hidden] {
  display: none !important;
}
.public-profile-content:not([data-profile-enhanced])
  > .profile-section
  + .profile-section {
  margin-block-start: 40px;
}
.profile-section > .profile-feed {
  margin: 0;
}
@media (max-width: 420px) {
  .identity-root .review-workspace .profile-section-navigation {
    gap: 6px;
  }
  .identity-root .profile-section-navigation a {
    gap: 6px;
    padding-inline: 10px;
    font-size: 0.82rem;
  }
}

/* Issue338: compact Owners cards and a concise starting guide. */
.owner-home.owner-dashboard
  :is(.owner-empty-icon, .owner-steps img, .owner-step-details) {
  display: none;
}
.owner-home.owner-dashboard .owner-venues {
  margin-block: 16px 0;
  padding: 32px;
  border: 0;
  border-radius: 8px;
  background: #f1f5fa;
}
.owner-home.owner-dashboard .owner-venues > .owner-section-heading {
  margin-block-end: 24px;
  align-items: flex-start;
}
.owner-home.owner-dashboard .owner-venues h2 {
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  letter-spacing: -0.035em;
}
.owner-home.owner-dashboard .owner-empty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 0;
  border: 0;
  background: transparent;
}
.owner-home.owner-dashboard .owner-empty-copy {
  max-width: 40rem;
}
.owner-home.owner-dashboard .owner-empty-copy h3 {
  font-size: 1.5rem;
}
.owner-home.owner-dashboard .owner-empty-copy p {
  margin-block: 10px 0;
  max-width: none;
}
.owner-home.owner-dashboard :is(.owner-empty-actions, .owner-hub-actions) {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  flex-shrink: 0;
}
.owner-home.owner-dashboard .owner-hub-actions .owner-workspace-link {
  margin: 0;
}
.owner-home.owner-dashboard :is(.owner-sign-in, .owner-workspace-link) {
  display: inline-flex;
  justify-content: center;
  min-height: 44px;
  padding: 10px 14px;
  margin: 0;
  border: 1px solid #d5dfeb;
  border-radius: 8px;
  color: #3b5063;
  background: transparent;
  text-decoration: none;
  font-weight: 600;
}
.owner-home.owner-dashboard .owner-venue-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}
.owner-home.owner-dashboard .owner-venue-grid > li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 24px;
  padding: 20px 24px;
  border: 0;
  border-radius: 8px;
  background: #fff;
}
.owner-home.owner-dashboard .owner-venue-grid h3 {
  margin: 0;
  font-size: 1.125rem;
}
.owner-home.owner-dashboard .owner-venue-grid p {
  margin: 6px 0 0;
}
.owner-home.owner-dashboard .owner-venue-status {
  display: inline-block;
  margin-inline-start: 10px;
  padding: 0;
  color: #5a6d7e;
  background: transparent;
  font-size: 0.75rem;
  font-weight: 500;
}
.owner-home.owner-dashboard .owner-venue-actions {
  margin: 0;
  gap: 8px;
}
.owner-home.owner-dashboard .owner-venue-actions a {
  padding: 10px 14px;
  border: 1px solid #d5dfeb;
  background: transparent;
  color: #3b5063;
  font-weight: 600;
}
.owner-home.owner-dashboard .owner-how {
  display: grid;
  grid-template-columns: minmax(180px, 0.7fr) minmax(0, 1.5fr);
  gap: 12px 64px;
  margin-block-start: 64px;
  padding: 0 0 24px;
  border: 0;
}
.owner-home.owner-dashboard .owner-how > :is(h2, .owner-how-heading) {
  grid-column: 1;
  grid-row: 1;
}
.owner-home.owner-dashboard .owner-how h2 {
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  letter-spacing: -0.035em;
}
.owner-home.owner-dashboard .owner-how > .owner-section-description {
  grid-column: 1;
  grid-row: 2;
  margin: 0;
}
.owner-home.owner-dashboard .owner-steps {
  grid-column: 2;
  grid-row: 1 / span 2;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  border: 0;
  background: transparent;
}
.owner-home.owner-dashboard .owner-steps > li {
  display: block;
  padding: 0;
  border: 0;
  background: transparent;
}
.owner-home.owner-dashboard .owner-step-copy {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 6px 16px;
}
.owner-home.owner-dashboard .owner-step-number {
  grid-column: 1;
  grid-row: 1 / span 2;
  min-height: 0;
  margin: 0;
  padding-block-start: 2px;
  font-size: 1.125rem;
  line-height: 1.4;
  color: #0062e3;
}
.owner-home.owner-dashboard .owner-step-copy h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  font-size: 1.0625rem;
}
.owner-home.owner-dashboard .owner-step-copy > p {
  grid-column: 2;
  grid-row: 2;
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.65;
  color: #5a6d7e;
}
.owner-home.owner-dashboard .owner-how-footer {
  grid-column: 2;
  grid-row: 3;
  margin-block-start: 12px;
  padding: 0 0 0 48px;
  border: 0;
}
.owner-home.owner-dashboard .owner-how-footer .owner-add-action {
  display: none;
}
@media (max-width: 760px) {
  .owner-home.owner-dashboard .owner-venues {
    padding: 24px;
  }
  .owner-home.owner-dashboard :is(.owner-empty, .owner-section-heading) {
    align-items: flex-start;
    flex-direction: column;
    gap: 20px;
  }
  .owner-home.owner-dashboard .owner-venue-grid > li {
    grid-template-columns: minmax(0, 1fr);
    padding: 20px;
    gap: 16px;
  }
  .owner-home.owner-dashboard .owner-how {
    display: block;
    margin-block-start: 40px;
    padding-block: 0 16px;
  }
  .owner-home.owner-dashboard .owner-steps {
    margin-block-start: 24px;
  }
  .owner-home.owner-dashboard .owner-how-footer {
    margin-block-start: 24px;
    padding-inline-start: 48px;
  }
}
@media (max-width: 380px) {
  .owner-home.owner-dashboard .owner-venues {
    padding: 20px;
  }
  .owner-home.owner-dashboard :is(.owner-empty-actions, .owner-hub-actions) {
    flex-shrink: 1;
  }
}

.owner-home.owner-dashboard :is(.owner-empty-actions, .owner-hub-actions) {
  max-width: 100%;
}
.owner-home.owner-dashboard .owner-venues a {
  max-width: 100%;
  overflow-wrap: anywhere;
}
.owner-home.owner-dashboard .owner-unavailable {
  padding: 0;
  border: 0;
  background: transparent;
}

/* Owner refinement: familiar icons, compact venue cards and a green empty CTA. */
.owner-home.owner-dashboard .owner-benefits > article > svg {
  display: block;
  margin-block-end: 14px;
}
.owner-home.owner-dashboard .owner-venues {
  padding: 0;
  background: transparent;
}
.owner-home.owner-dashboard .owner-venue-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
.owner-home.owner-dashboard :is(.owner-venue-grid > li, .owner-empty) {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: 0 1 22rem;
  width: min(100%, 22rem);
  min-height: 240px;
  padding: 24px;
  box-sizing: border-box;
  background: #f1f5fa;
  border: 0;
  border-radius: 8px;
}
.owner-home.owner-dashboard .owner-venue-grid > li {
  justify-content: space-between;
  gap: 28px;
}
.owner-home.owner-dashboard .owner-venue-actions {
  margin-block-start: auto;
}
.owner-home.owner-dashboard .owner-venue-status {
  margin-inline-start: 0;
}
.owner-home.owner-dashboard .owner-venue-identity p {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
}
.owner-home.owner-dashboard .owner-empty {
  align-items: center;
  justify-content: center;
  gap: 0;
}
.owner-home.owner-dashboard .owner-empty .owner-add-action {
  align-self: center;
  width: fit-content;
  background: #15803d;
  border-color: #15803d;
  color: #fff;
}
.owner-home.owner-dashboard .owner-empty .owner-add-action:hover {
  background: #166534;
  border-color: #166534;
}
/* The empty prototype stays centered while its simplified markup compiles. */
.owner-home.owner-dashboard .owner-empty-copy,
.owner-home.owner-dashboard .owner-empty-actions > :not(.owner-add-action) {
  display: none;
}

/* Even an empty result page must allow search to reach its sticky position. */
#discovery-panel[data-view="results"]
  .discovery-form:not(.discovery-map-expanded)
  > .discovery-results-column {
  min-block-size: calc(100svh - var(--sticky-nav-height, 68px));
}

/* Issue338: results retain a compact header even when scrolled back to the top. */
.explore-workspace:has(#discovery-panel[data-hero-hidden="true"])
  .catalog-heading,
#discovery-panel[data-hero-hidden="true"] .discovery-open-now-space,
#discovery-panel[data-hero-hidden="true"] .discovery-open-now-row {
  display: none;
}
#discovery-panel[data-hero-hidden="true"]
  .discovery-form:not(.discovery-map-expanded)
  > .discovery-search {
  grid-row: 1;
}
#discovery-panel[data-hero-hidden="true"]
  .discovery-form:not(.discovery-map-expanded)
  > :is(.discovery-sidebar, .discovery-results-column) {
  grid-row: 2;
}
/* WebKit otherwise supplies a light native surface underneath white currency text. */
.site-navigation .site-navigation-currency {
  position: relative;
}
.site-navigation .site-navigation-currency select {
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
  color: #fff;
  padding-inline-end: 16px;
}
.site-navigation .site-navigation-currency::after {
  content: "";
  position: absolute;
  inset-inline-end: 5px;
  top: calc(50% - 5px);
  width: 6px;
  height: 6px;
  border: solid currentColor;
  border-width: 0 1.5px 1.5px 0;
  transform: rotate(45deg);
  pointer-events: none;
}
@media (max-width: 760px) {
  .explore-workspace .catalog-heading:has(.discovery-heading-copy),
  .owner-dashboard .owner-heading-inner {
    min-block-size: 0;
    padding-block: 24px 12px;
  }
  .explore-workspace .discovery-heading-copy #hero-title,
  .owner-dashboard .owner-home-heading h1 {
    min-block-size: 2.4em;
    margin-block-end: 12px;
    font-size: 24px;
  }
  .explore-workspace .discovery-heading-copy .catalog-subtitle,
  .owner-dashboard .owner-heading-inner .catalog-subtitle {
    min-block-size: 0;
    font-size: 16px;
    line-height: 1.5;
  }
  .explore-workspace {
    --audience-search-half: 84px;
  }
  .explore-workspace .discovery-form .discovery-fields.discovery-search {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .explore-workspace .discovery-search > .search-field:nth-child(n) {
    grid-column: auto;
  }
  .explore-workspace .discovery-search > .search-field::after {
    display: none;
  }
  .explore-workspace .discovery-search > .search-field {
    background: #f5f8fc;
  }
  .explore-workspace .discovery-search .search-field-title {
    font-size: 11px;
    line-height: 13px;
  }
  .explore-workspace .discovery-search button[data-discovery-submit] {
    grid-column: 1 / -1;
    width: 100%;
    min-height: 44px;
    font-size: 15px !important;
    overflow-wrap: normal;
  }
  .discovery-search > .discovery-open-now-row {
    grid-column: 1 / -1;
    padding-inline: 8px;
  }
  .explore-workspace .discovery-search .search-options {
    max-height: min(19rem, 35svh);
  }
  .site-navigation .site-navigation-currency select {
    padding-inline-end: 14px;
  }
}

/* Landing recommendations must not inherit the mobile result drawer/map preview. */
#discovery-panel[data-view="landing"]
  .discovery-form
  > :is(
    .discovery-sidebar,
    .discovery-filters,
    .discovery-results-column,
    .discovery-map-column,
    .discovery-actions,
    .discovery-mobile-filters,
    .discovery-filters-backdrop
  ) {
  display: none;
}
@media (max-width: 760px) {
  .explore-workspace .discovery-heading-copy .hero-phrase-slot {
    display: block;
  }
  .explore-workspace .discovery-search .search-field :is(input, select) {
    -webkit-appearance: none;
    appearance: none;
    border: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
  }
}

@media (max-width: 760px) {
  .owner-dashboard .owner-home-heading h1 {
    min-block-size: 0;
  }
}

/* Issue338: a compact venue search and Add action below the Owners introduction. */
.owner-dashboard .owner-hero-actions {
  display: flex;
  align-items: stretch;
  gap: 12px;
  width: min(100%, 36rem);
  margin-block-start: 28px;
}
.owner-dashboard .owner-hero-search {
  display: block;
  flex: 1 1 24rem;
  min-width: 0;
  max-width: 24rem;
}
.owner-dashboard .owner-hero-search input {
  -webkit-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #d5e0ec;
  border-radius: 8px;
  background: #fff;
  color: #152f3e;
  font: 500 16px / 22px var(--font-body, sans-serif);
  box-sizing: border-box;
}
.owner-dashboard .owner-hero-search input::placeholder {
  color: #657382;
  opacity: 1;
}
.owner-dashboard .owner-hero-search input:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
  border-color: #0062e3;
}
.owner-home.owner-dashboard .owner-hero-actions .owner-add-action {
  flex: 0 0 auto;
  min-height: 48px;
  margin: 0;
  padding: 12px 16px;
  border-color: #0062e3;
  background: #0062e3;
  color: #fff;
  box-sizing: border-box;
}
.owner-home.owner-dashboard .owner-hero-actions .owner-add-action:hover {
  background: #0052bf;
  border-color: #0052bf;
}
@media (max-width: 760px) {
  .owner-dashboard .owner-hero-actions {
    margin-block: 20px 8px;
    gap: 8px;
  }
  .owner-home.owner-dashboard .owner-hero-actions .owner-add-action {
    padding-inline: 12px;
  }
}
@media (max-width: 480px) {
  .owner-dashboard .owner-hero-actions {
    flex-wrap: wrap;
  }
  .owner-dashboard .owner-hero-search {
    flex: 1 1 8rem;
  }
}

/* The existing private finder opens only after a deliberate Add action. */
.owner-home .owner-lookup-dialog {
  width: min(calc(100% - 32px), 76rem);
  max-width: none;
  max-height: calc(100dvh - 32px);
  padding: 24px;
  border: 0;
  border-radius: 8px;
  background: #fff;
  color: #243746;
  box-sizing: border-box;
  overscroll-behavior: contain;
}
.owner-lookup-dialog::backdrop {
  background: #062b7380;
}
.owner-lookup-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-block-end: 20px;
}
.owner-lookup-heading > button {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: #f1f5fa;
  color: #243746;
  font-size: 24px;
  cursor: pointer;
}
.owner-lookup-dialog .identity-main {
  width: 100%;
  margin: 0;
  padding: 0;
}
.owner-lookup-dialog .owner-lookup-name {
  display: grid;
  gap: 6px;
  width: min(100%, 24rem);
  margin-block-end: 20px;
}
@media (max-width: 760px) {
  .owner-home .owner-lookup-dialog {
    width: calc(100% - 16px);
    max-height: calc(100dvh - 16px);
    padding: 16px;
  }
}

.owner-home .owner-lookup-dialog:not([open]) {
  display: none;
}
.owner-home .owner-lookup-dialog[open] {
  display: block;
  min-height: 0;
  margin: auto;
}
.owner-lookup-dialog .venue-map-finder input[type="search"] {
  font-size: 16px;
}

@media (max-width: 400px) {
  .owner-home .owner-lookup-dialog {
    width: 100%;
    max-height: 100dvh;
    padding: 8px;
  }
}
