:root {
  --ink: #17131f;
  --muted: #746f7b;
  --paper: #fbfaf8;
  --line: #e9e5e9;
  --violet: #7929d2;
  --pink: #f5258e;
  --orange: #ff7a28;
  --yellow: #ffc746;
  --lavender: #f1eafd;
  --night: #181321;
  --white: #fff;
  --display: "Manrope", sans-serif;
  --body: "DM Sans", sans-serif;
  --radius: 20px;
  --shadow: 0 24px 70px rgba(29, 18, 40, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; color: var(--ink); background: var(--paper); font-family: var(--body); -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }
img { display: block; max-width: 100%; }
.shell { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 99; padding: 10px 15px; background: var(--ink); color: white; transform: translateY(-140%); }
.skip-link:focus { transform: none; }
:focus-visible { outline: 3px solid var(--pink); outline-offset: 3px; }

.site-header { position: sticky; z-index: 50; top: 0; border-bottom: 1px solid rgba(233,229,233,.8); background: rgba(251,250,248,.9); backdrop-filter: blur(18px); }
.nav-wrap { height: 82px; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-family: var(--display); font-weight: 800; line-height: .92; letter-spacing: -.045em; }
.brand img { width: 42px; height: 44px; object-fit: contain; object-position: top; }
.desktop-nav { display: flex; align-items: center; gap: 34px; margin-left: 80px; font-size: 14px; font-weight: 600; }
.desktop-nav a { position: relative; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 2px; background: var(--pink); transition: right .25s ease; }
.desktop-nav a:hover::after { right: 0; }
.nav-actions { display: flex; align-items: center; gap: 9px; }
.icon-button { width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: transparent; display: grid; place-items: center; cursor: pointer; }
.icon-button svg, .search-field svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.ticket-button { padding: 13px 19px; border-radius: 999px; background: var(--ink); color: white; font-size: 14px; font-weight: 700; transition: transform .2s, background .2s; }
.ticket-button:hover { background: var(--violet); transform: translateY(-2px); }
.ticket-button span { color: #ff9e3c; margin-left: 5px; }
.menu-toggle { display: none; }
.search-panel { max-height: 0; overflow: hidden; opacity: 0; transition: max-height .3s ease, opacity .2s; }
.search-panel.open { max-height: 150px; opacity: 1; padding-bottom: 22px; }
.search-panel label { display: block; font: 700 12px var(--display); text-transform: uppercase; letter-spacing: .1em; margin-bottom: 8px; }
.search-field { display: flex; align-items: center; gap: 12px; background: white; border: 1px solid var(--line); padding: 12px 15px; border-radius: 12px; }
.search-field input { flex: 1; border: 0; background: transparent; outline: 0; font-size: 16px; }
.search-field kbd { padding: 3px 6px; border-radius: 4px; border: 1px solid var(--line); color: var(--muted); font-size: 10px; }
.mobile-menu { display: none; }

.hero { display: grid; grid-template-columns: 1.05fr .95fr; min-height: 610px; align-items: center; gap: 7.5vw; padding-block: 62px 52px; }
.eyebrow { margin: 0 0 20px; display: flex; align-items: center; gap: 9px; font: 800 11px var(--display); letter-spacing: .13em; text-transform: uppercase; color: var(--violet); }
.eyebrow span { width: 7px; height: 7px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 0 5px rgba(245,37,142,.09); }
.hero h1 { max-width: 650px; margin: 0; font: 800 clamp(60px, 7.1vw, 104px)/.9 var(--display); letter-spacing: -.075em; }
.hero h1 em, .footer-top em { font-style: normal; background: linear-gradient(100deg, var(--violet) 0%, var(--pink) 52%, var(--orange) 85%, var(--yellow)); color: transparent; background-clip: text; -webkit-background-clip: text; }
.hero-lead { max-width: 520px; margin: 30px 0; color: #5f5966; font-size: 17px; line-height: 1.65; }
.hero-search { display:flex; max-width:520px; overflow:hidden; border:1px solid var(--line); border-radius:999px; background:#fff; box-shadow:0 12px 35px rgba(29,18,40,.06); }.hero-search input { min-width:0; flex:1; padding:15px 20px; border:0; outline:0; background:transparent; }.hero-search button { margin:5px; padding:0 20px; border:0; border-radius:999px; background:var(--ink); color:#fff; font-weight:700; cursor:pointer; }.hero:not(:has(.hero-slider)){grid-template-columns:1fr;min-height:560px}.hero:not(:has(.hero-slider)) .hero-copy{max-width:760px}
.hero-trust { display: flex; align-items: center; gap: 14px; }
.avatars { display: flex; padding-left: 8px; }
.avatars span { width: 36px; height: 36px; margin-left: -8px; border: 3px solid var(--paper); border-radius: 50%; display: grid; place-items: center; color: white; font: 800 12px var(--display); }
.avatars span:nth-child(1) { background: var(--orange); }.avatars span:nth-child(2) { background: var(--violet); }.avatars span:nth-child(3) { background: var(--pink); }
.hero-trust p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.4; }.hero-trust strong { color: var(--ink); font-size: 13px; }
.tonight-card { position: relative; justify-self: end; width: min(100%, 470px); aspect-ratio: 4/5.05; overflow: hidden; border-radius: 32px 32px 110px 32px; box-shadow: var(--shadow); background: var(--ink); }
.tonight-card > img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.tonight-card:hover > img { transform: scale(1.035); }
.tonight-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,7,14,.03) 35%, rgba(15,8,22,.94) 100%); }
.live-pill { position: absolute; top: 22px; left: 22px; display: flex; align-items: center; gap: 8px; padding: 9px 13px; background: rgba(255,255,255,.94); border-radius: 999px; font-size: 12px; font-weight: 700; }
.live-pill i { width: 7px; height: 7px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 0 4px rgba(245,37,142,.14); }
.save-button { position: absolute; top: 20px; right: 20px; width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.36); border-radius: 50%; background: rgba(20,12,26,.24); color: white; backdrop-filter: blur(8px); cursor: pointer; }
.save-button svg { width: 18px; fill: transparent; stroke: currentColor; stroke-width: 1.8; }
.save-button.saved svg { fill: currentColor; }
.tonight-content { position: absolute; left: 28px; right: 28px; bottom: 26px; color: white; }
.tonight-content > p { color: rgba(255,255,255,.72); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.tonight-content h2 { margin: 8px 0 21px; font: 800 clamp(29px,3vw,42px)/.98 var(--display); letter-spacing: -.05em; }.tonight-content h2 span { color: #ffbf58; }
.tonight-content > div { display: grid; grid-template-columns: auto auto 1fr; gap: 13px; align-items: center; padding-top: 17px; border-top: 1px solid rgba(255,255,255,.25); }
.tonight-content > div strong, .tonight-content > div span { font-size: 13px; }.tonight-content > div a { justify-self: end; color: #ffbf58; font-size: 13px; font-weight: 700; }

.discovery { position: relative; z-index: 3; display: grid; grid-template-columns: 1fr 340px; align-items: stretch; min-height: 96px; margin-bottom: 105px; border: 1px solid var(--line); border-radius: 22px; background: white; box-shadow: 0 14px 50px rgba(28,18,36,.06); }
.time-tabs { display: grid; grid-template-columns: repeat(3,1fr); }
.time-tabs button { position: relative; padding: 20px 25px; border: 0; border-right: 1px solid var(--line); background: transparent; text-align: left; font: 700 15px var(--display); cursor: pointer; }
.time-tabs button:first-child { border-radius: 21px 0 0 21px; }.time-tabs button.active { background: var(--lavender); color: var(--violet); }
.time-tabs button.active::after { content: ""; position: absolute; left: 25px; right: 25px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: linear-gradient(90deg,var(--violet),var(--pink)); }
.time-tabs small { display: block; margin-top: 6px; color: var(--muted); font: 400 11px var(--body); }.time-tabs .active small { color: #8f62bd; }
.location-button { padding: 15px 18px; display: grid; grid-template-columns: 48px 1fr 25px; align-items: center; gap: 12px; border: 0; border-radius: 0 21px 21px 0; color: white; background: var(--ink); text-align: left; cursor: pointer; }
.location-icon { width: 43px; height: 43px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.1); }.location-icon svg, .card-body p svg { width: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.location-button small { display: block; margin-bottom: 3px; color: rgba(255,255,255,.55); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }.location-button strong { font-size: 13px; }.location-button .arrow { justify-self: end; color: #ffb143; font-size: 20px; }

.events-section { padding-bottom: 122px; scroll-margin-top: 90px; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 32px; }
.section-heading .eyebrow { margin-bottom: 11px; }.section-heading h2 { margin: 0; font: 800 clamp(34px,4vw,55px)/1.02 var(--display); letter-spacing: -.055em; }
.section-heading > a { padding-bottom: 8px; border-bottom: 1px solid var(--ink); font-size: 13px; font-weight: 700; }.section-heading > a span { color: var(--pink); margin-left: 6px; }
.category-row { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 24px; scrollbar-width: none; }
.category-row::-webkit-scrollbar { display: none; }.category-row button,.category-row a { flex:0 0 auto; padding:11px 16px; border:1px solid var(--line); border-radius:999px; background:white; font-size:12px; font-weight:600; cursor:pointer; }.category-row button span { margin-right: 5px; color: var(--pink); }.category-row button.active,.category-row a:hover { border-color:var(--ink); background:var(--ink); color:white; }
.event-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; }
.event-card { min-width: 0; transition: opacity .25s, transform .25s; }.event-card[hidden] { display: none; }.event-card:hover { transform: translateY(-6px); }
.card-image { position: relative; display: block; aspect-ratio: 4/5; overflow: hidden; border-radius: var(--radius); background: #ece7ef; }.card-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .5s; }.event-card:hover .card-image img { transform: scale(1.035); }
.card-image img[src*="/curated/rental/"],.detail-visual img[src*="/curated/rental/"],.card-image img[src*="/curated/followup/"],.detail-visual img[src*="/curated/followup/"]{object-fit:contain;object-position:center;padding:10%;background:#e5deef;filter:drop-shadow(0 2px 2px rgba(30,18,49,.36))}
.place-image-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:12px;overflow:hidden;padding:10%;background:#241d32;color:#fff}
.place-image-placeholder::before{content:"";position:absolute;width:75%;aspect-ratio:1;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:-35%;top:-18%;box-shadow:0 0 0 28px rgba(255,255,255,.035),0 0 0 60px rgba(255,255,255,.025)}
.place-placeholder-mark{position:relative;color:#a77bf5;font:800 clamp(48px,8vw,105px)/.8 var(--display)}
.place-placeholder-title{position:relative;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;max-width:20ch;font:800 clamp(16px,2vw,26px)/1.12 var(--display);letter-spacing:-.035em}
.place-image-placeholder-detail{align-items:flex-start;padding:8%}.place-image-placeholder-detail .place-placeholder-mark{font-size:clamp(90px,15vw,230px)}.place-image-placeholder-detail .place-placeholder-title{font-size:clamp(28px,4vw,55px)}
.place-source-credit{margin:10px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.place-source-credit a{color:var(--violet);text-decoration:underline}
@media(max-width:720px){.place-image-placeholder{gap:6px;padding:9%}.place-placeholder-mark{font-size:clamp(27px,8vw,55px)}.place-placeholder-title{font-size:clamp(9px,3vw,15px)}.place-image-placeholder-detail .place-placeholder-title{font-size:clamp(21px,6vw,34px)}}
.date-badge { position: absolute; left: 12px; bottom: 12px; min-width: 52px; padding: 7px 8px 6px; border-radius: 11px; background: rgba(255,255,255,.94); backdrop-filter: blur(6px); text-align: center; font: 700 9px var(--display); letter-spacing: .08em; }.date-badge strong { display: block; font-size: 20px; letter-spacing: -.03em; line-height: 1; }
.card-body { padding: 17px 3px 0; }.card-meta { display: flex; justify-content: space-between; align-items: center; }.card-meta > span { color: var(--violet); font: 700 10px var(--display); letter-spacing: .08em; text-transform: uppercase; }.card-meta button { border: 0; background: transparent; color: var(--muted); font-size: 22px; cursor: pointer; }.card-meta button.saved { color: var(--pink); }
.card-body h3 { margin: 7px 0 8px; font: 800 19px/1.15 var(--display); letter-spacing: -.035em; }.card-body p { margin: 0; display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 11px; }.card-body p svg { width: 13px; }.price-row { display: flex; justify-content: space-between; margin-top: 15px; padding-top: 12px; border-top: 1px solid var(--line); font-size: 11px; }.price-row strong { color: var(--violet); }
.empty-state { padding: 50px 20px; border: 1px dashed var(--line); border-radius: 18px; color: var(--muted); text-align: center; }

.guide-section { padding: 110px 0 120px; background: var(--night); color: white; }
.light-heading .eyebrow { color: #c8a2ff; }.light-heading > p { max-width: 240px; color: #9e96a7; font-size: 14px; line-height: 1.5; }.light-heading > p:not(.eyebrow) { margin: 0 0 6px; }
.mood-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 48px; }
.mood-card { position: relative; min-height: 390px; padding: 28px; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; border-radius: 24px; transition: transform .25s; }.mood-card:hover { transform: translateY(-7px); }.mood-card::after { content: ""; position: absolute; width: 190px; height: 190px; border-radius: 50%; filter: blur(1px); }
.mood-card > * { position: relative; z-index: 2; }.mood-number { font: 700 12px var(--display); opacity: .55; }.mood-card small { font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.mood-card h3 { margin: 10px 0 27px; font: 800 31px/1.04 var(--display); letter-spacing: -.05em; }.mood-card p { margin: 0; font-size: 12px; font-weight: 700; }.mood-card p span { float: right; font-size: 18px; }
.beach { color: #2c1d08; background: #ffbd57; }.beach::before { content: ""; position: absolute; right: -40px; top: 60px; width: 250px; height: 250px; border: 2px solid rgba(255,255,255,.55); border-radius: 50%; box-shadow: 0 0 0 30px rgba(255,255,255,.08),0 0 0 60px rgba(255,255,255,.06); }.beach::after { right: -60px; top: 40px; background: #ff7845; }
.music { color: white; background: #8b38d4; }.music::before { content: "\f001"; position: absolute; right: 15px; top: 5px; font: 900 240px/1 "Font Awesome 6 Free"; color: rgba(255,255,255,.1); transform: rotate(12deg); }.music::after { left: -90px; top: 50px; background: #f22a96; }
.night { color: white; background: #34303c; }.night::before { content: ""; position: absolute; right: 30px; top: 45px; width: 150px; height: 150px; border-radius: 50%; background: linear-gradient(145deg,#ff3b99,#7b32d9); box-shadow: -60px 80px 0 -25px #ff8b3d; }.night::after { display:none; }

.discover-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:44px; }
.discover-card { position:relative; min-height:205px; padding:24px; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; border-radius:22px; color:#fff; isolation:isolate; }
.discover-card::after { content:""; position:absolute; z-index:-1; right:-45px; bottom:-55px; width:150px; height:150px; border-radius:50%; background:rgba(255,255,255,.15); box-shadow:0 0 0 28px rgba(255,255,255,.06); }
.discover-card small { font-size:11px; opacity:.76; }.discover-card h3 { max-width:180px; margin:0; font:800 25px/1.02 var(--display); letter-spacing:-.045em; }.discover-card > span { font-size:20px; }
.discover-card.stay,.discover-card.campus { background:#7f35d3; }.discover-card.places,.discover-card.route { background:#302a3a; }.discover-card.breakfast,.discover-card.coffee { background:#ffb84d; color:#271a08; }.discover-card.beach,.discover-card.club { background:#ff5f62; }
.discover-card:hover { transform:translateY(-4px); }.discover-card:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.home-block { padding-top:105px; }.home-block + .home-block { padding-top:25px; }
[data-home-grid]>[hidden],.home-more[hidden]{display:none!important}
.home-more{display:none}

.venues-section, .stories-section { padding-block: 120px; scroll-margin-top: 90px; }
.venue-list { border-top: 1px solid var(--line); }.venue-list a { display: grid; grid-template-columns: 55px 1fr auto 40px; gap: 18px; align-items: center; padding: 25px 8px; border-bottom: 1px solid var(--line); transition: padding .2s, background .2s; }.venue-list a:hover { padding-inline: 18px; background: white; }.venue-index { color: var(--pink); font: 700 11px var(--display); }.venue-list a > span:nth-child(2) { display: flex; align-items: center; gap: 22px; }.venue-list strong { min-width: 240px; font: 800 22px var(--display); letter-spacing: -.035em; }.venue-list small { color: var(--muted); font-size: 12px; }.venue-list b { padding: 8px 11px; border-radius: 999px; background: var(--lavender); color: var(--violet); font-size: 10px; }.venue-list i { font-style: normal; font-size: 19px; }
.stories-section { padding-top: 10px; }
.story-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 22px; }.story-main { display: grid; grid-template-columns: .9fr 1.1fr; min-height: 390px; border: 1px solid var(--line); border-radius: 24px; overflow: hidden; background: white; }.story-main > div:last-child { padding: 40px; align-self: center; }.story-main span, .story-side article > span { color: var(--violet); font: 700 10px var(--display); letter-spacing: .1em; text-transform: uppercase; }.story-main h3 { margin: 14px 0; font: 800 31px/1.08 var(--display); letter-spacing: -.05em; }.story-main p { color: var(--muted); line-height: 1.55; font-size: 13px; }.story-main a, .story-side a { display: inline-block; margin-top: 20px; color: var(--violet); font-size: 12px; font-weight: 700; }
.story-art { position: relative; overflow: hidden; background: linear-gradient(160deg,#e85c9c 0 35%,#fd9561 36% 58%,#ffd460 59%); }.story-art .sun { position: absolute; width: 170px; height: 170px; border-radius: 50%; right: -30px; top: 45px; background: #ffeaa5; box-shadow: 0 0 0 25px rgba(255,255,255,.13); }.story-art::after { content:""; position:absolute; left:0; right:0; bottom:-30px; height:130px; border-radius:50% 50% 0 0; background:#6e37cc; transform:skewY(-8deg); }.story-art > span { position: absolute; z-index:2; left: 25px; bottom: 28px; color: white; font: 800 74px/.75 var(--display); letter-spacing: -.07em; }.story-art > span small { display:block; margin-left:5px; font-size:18px; letter-spacing:.05em; }
.story-side { display: grid; gap: 16px; }.story-side article { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 30px; border: 1px solid var(--line); border-radius: 20px; background: #f3eff8; }.story-side article:last-child { background: #fff1eb; }.story-side h3 { margin: 10px 0 0; font: 800 21px/1.2 var(--display); letter-spacing: -.04em; }

.newsletter { overflow: hidden; margin-top: 15px; padding: 90px 0; background: #efe8f7; }.newsletter-inner { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 12vw; }.newsletter-inner > div { position: relative; }.newsletter img { position: absolute; width: 190px; right: 10px; bottom: -82px; opacity: .06; transform: rotate(8deg); }.newsletter h2 { margin: 0; font: 800 clamp(42px,5vw,68px)/.95 var(--display); letter-spacing: -.06em; }.newsletter form label { display: block; margin-bottom: 10px; font: 700 11px var(--display); text-transform: uppercase; letter-spacing: .08em; }.newsletter form > div { display: flex; border-bottom: 1px solid #958c9e; }.newsletter input { min-width: 0; flex: 1; padding: 15px 0; border: 0; background: transparent; outline: 0; font-size: 17px; }.newsletter form button { border: 0; background: transparent; color: var(--violet); font-size: 13px; font-weight: 700; cursor: pointer; }.newsletter form button span { margin-left: 7px; font-size: 18px; }.newsletter form > p { color: var(--muted); font-size: 10px; }
.signup-cta { overflow:hidden; margin-top:15px; padding:90px 0; background:#efe8f7; }.signup-cta-inner { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:12vw; }.signup-cta-inner > div:first-child { position:relative; }.signup-cta img { position:absolute; width:190px; right:10px; bottom:-82px; opacity:.06; transform:rotate(8deg); }.signup-cta h2 { margin:0; font:800 clamp(42px,5vw,68px)/.95 var(--display); letter-spacing:-.06em; }.signup-cta-action { display:flex; flex-direction:column; align-items:flex-start; gap:18px; }.signup-cta-action > p { max-width:470px; margin:0; color:var(--muted); font-size:15px; line-height:1.6; }.signup-button { display:inline-flex; align-items:center; justify-content:space-between; gap:26px; min-width:260px; padding:17px 21px; border-radius:999px; background:var(--ink); color:#fff; font:700 13px var(--display); transition:transform .2s ease, background .2s ease; }.signup-button:hover { background:var(--violet); transform:translateY(-2px); }.signup-button span { color:#ff7c2f; font-size:19px; }.signup-cta-action small { color:var(--muted); font-size:10px; }
.footer { padding-top: 70px; }.footer-top { display: flex; justify-content: space-between; align-items: center; padding-bottom: 50px; }.footer-top > p { margin: 0; font: 800 clamp(26px,4vw,48px) var(--display); letter-spacing: -.05em; }.footer-links { display:flex; flex-wrap:wrap; gap:12px 24px; padding:0 0 34px; color:var(--muted); font-size:12px; font-weight:600; }.footer-links a:hover { color:var(--violet); }.footer-bottom { display: flex; justify-content: space-between; padding: 25px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }.footer-bottom p { margin: 0; }.footer-bottom div { display: flex; gap: 22px; }
.skip-link { position:fixed; z-index:999; left:12px; top:8px; padding:10px 14px; transform:translateY(-150%); border-radius:9px; background:var(--ink); color:#fff; }.skip-link:focus { transform:none; }
.panel-nav { display:flex; gap:8px; overflow-x:auto; margin:0 0 32px; padding:9px; border:1px solid var(--line); border-radius:16px; background:#fff; scrollbar-width:none; }.panel-nav::-webkit-scrollbar{display:none}.panel-nav a{flex:0 0 auto;padding:10px 13px;border-radius:10px;font-size:12px;font-weight:700}.panel-nav a:hover{background:var(--lavender);color:var(--violet)}
.toast { position: fixed; z-index: 100; left: 50%; bottom: 25px; max-width: calc(100% - 32px); padding: 12px 18px; border-radius: 999px; background: var(--ink); color: white; box-shadow: var(--shadow); font-size: 13px; transform: translate(-50%,120px); opacity: 0; transition: .3s; }.toast.show { transform: translate(-50%,0); opacity: 1; }

@media (max-width: 950px) {
  .desktop-nav { display: none; }.menu-toggle { display:grid; }.hero { grid-template-columns: 1fr 1fr; gap: 28px; }.hero h1 { font-size: clamp(56px,8.6vw,78px); }.event-grid { grid-template-columns: repeat(2,1fr); }.mood-card h3 { font-size: 26px; }.story-grid { grid-template-columns: 1fr; }.story-side { grid-template-columns: 1fr 1fr; }
  .mobile-menu {
    display: flex;
    position: fixed;
    z-index: 49;
    top: 82px;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(100dvh - 82px);
    padding: 18px max(24px, calc((100vw - 1200px) / 2));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #fbfaf8;
    flex-direction: column;
    gap: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-12px);
    transition: opacity .2s ease, transform .25s ease, visibility .25s ease;
  }
  .mobile-menu.open { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
  .mobile-menu a { display:block; flex:0 0 auto; padding:17px 0; border-bottom:1px solid var(--line); color:var(--ink); font:800 clamp(24px,7vw,30px)/1.05 var(--display); }
}

@media (max-width: 950px) and (min-width: 721px) { .discover-grid { grid-template-columns:repeat(2,1fr); } }

.hotel-stars { position:absolute; z-index:2; right:14px; bottom:14px; padding:7px 10px; border-radius:999px; background:rgba(20,13,28,.86); color:#ffbf58; box-shadow:0 8px 20px rgba(0,0,0,.18); font-size:12px; letter-spacing:.08em; backdrop-filter:blur(10px); }
.hotel-features { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.hotel-features span { padding:9px 12px; border:1px solid var(--line); border-radius:999px; background:white; color:#514b57; font-size:11px; font-weight:700; }
.detail-map:has(iframe) { display:block; padding:0; overflow:hidden; background:#eee; }
.detail-map iframe { display:block; width:100%; height:260px; border:0; }
.detail-map:has(iframe) a { display:table; position:relative; z-index:2; margin:-22px auto 16px; }
.hotel-gallery-section,.hotel-contact-section,.hotel-events-section { padding-bottom:105px; }
.hotel-gallery-section h2,.hotel-contact-section h2,.hotel-events-section h2 { margin:7px 0 0; font:800 clamp(34px,4vw,52px)/1 var(--display); letter-spacing:-.055em; }
.hotel-gallery { display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:205px; gap:12px; margin-top:28px; }
.hotel-gallery-item { overflow:hidden; padding:0; border:0; border-radius:18px; background:#eee; cursor:zoom-in; }
.hotel-gallery-item:first-child { grid-column:span 2; grid-row:span 2; }
.hotel-gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.hotel-gallery-item:hover img { transform:scale(1.04); }
.hotel-lightbox { width:min(1000px,calc(100% - 32px)); max-width:none; padding:0; border:0; overflow:visible; background:transparent; }
.hotel-lightbox::backdrop { background:rgba(13,9,17,.88); backdrop-filter:blur(8px); }
.hotel-lightbox img { display:block; max-width:100%; max-height:84vh; margin:auto; border-radius:18px; object-fit:contain; }
.hotel-lightbox-close { position:absolute; z-index:2; top:-16px; right:-12px; width:42px; height:42px; border:0; border-radius:50%; background:white; color:var(--ink); cursor:pointer; font-size:25px; line-height:1; }
.hotel-contact-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:7vw; align-items:start; }
.hotel-contact-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.hotel-contact-grid a { min-width:0; min-height:110px; padding:20px; border:1px solid var(--line); border-radius:17px; background:white; }
.hotel-contact-grid small { display:block; margin-bottom:8px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.hotel-contact-grid strong { display:block; overflow-wrap:anywhere; font-size:13px; line-height:1.45; }
.hotel-events-section .event-grid { margin-top:30px; }
.hotel-events-section .event-card { background:white; }

@media (max-width: 720px) {
  .shell { width: min(100% - 32px,1200px); }.nav-wrap { height: 70px; }.brand img { width:36px;height:38px; }.brand span { font-size:14px; }.nav-actions { gap:6px; }.ticket-button { display:none; }.mobile-menu { top:70px; height:calc(100dvh - 70px); }
  .hero { display:flex; flex-direction:column; align-items:stretch; min-height:0; padding-block:47px 32px; }.hero-copy { min-width:0; text-align:left; }.hero .eyebrow { margin-bottom:17px; }.hero h1 { max-width:100%; font-size:clamp(52px,15.5vw,68px); }.hero h1 em { display:block; }.hero-lead { margin:24px 0; font-size:15px; }.tonight-card { justify-self:auto; width:100%; max-height:540px; border-radius:24px 24px 76px 24px; }
  .discovery { grid-template-columns:1fr; margin-bottom:80px; }.time-tabs button { padding:17px 13px; font-size:12px; }.time-tabs button:last-child { border-right:0; }.time-tabs button.active::after { left:13px;right:13px; }.location-button { border-radius:0 0 21px 21px; }
  .section-heading { align-items:flex-start; }.section-heading h2 { font-size:38px; }.section-heading > a { font-size:0; white-space:nowrap; }.section-heading > a span { font-size:20px; }.event-grid { gap:28px 12px; }.card-image { border-radius:15px; }.card-body h3 { font-size:16px; }.card-body p { align-items:flex-start; line-height:1.3; }.price-row { margin-top:11px; }.events-section { padding-bottom:90px; }
  .guide-section { padding-block:85px; }.light-heading > p { display:none; }.mood-grid { grid-template-columns:1fr; margin-top:35px; }.mood-card { min-height:300px; }.mood-card h3 { font-size:31px; }.discover-grid { grid-template-columns:repeat(2,1fr); gap:10px; margin-top:30px; }.discover-card { min-height:155px; padding:18px; border-radius:18px; }.discover-card h3 { font-size:20px; }.home-block { padding-top:75px; }
  .venues-section,.stories-section { padding-block:90px; }.venue-list a { grid-template-columns:35px 1fr 28px; gap:10px; }.venue-list a > span:nth-child(2) { display:block; }.venue-list strong { min-width:0; font-size:18px; }.venue-list small { display:block; margin-top:5px; }.venue-list b { display:none; }.story-main { grid-template-columns:1fr; }.story-art { min-height:270px; }.story-main > div:last-child { padding:27px; }.story-main h3 { font-size:27px; }.story-side { grid-template-columns:1fr; }.story-side article { min-height:200px; }
  .newsletter { padding:75px 0; }.newsletter-inner { grid-template-columns:1fr; gap:50px; }.newsletter img { width:140px;bottom:-42px; }.newsletter form > div { display:grid; }.newsletter form button { padding:14px 0; text-align:left; }.signup-cta { padding:75px 0; }.signup-cta-inner { grid-template-columns:1fr; gap:42px; }.signup-cta img { width:140px; bottom:-42px; }.signup-button { width:100%; min-width:0; }.footer-top { display:block; }.footer-top > p { margin-top:35px; }.footer-bottom { display:block; line-height:1.6; }.footer-bottom div { margin-top:14px; flex-wrap:wrap; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; }
}

/* Portal additions */
.page-loader { position: fixed; inset: 0; z-index: 999; display: grid; place-items: center; background: var(--paper); transition: opacity .35s, visibility .35s; }
.page-loader.loaded { opacity: 0; visibility: hidden; }
.page-loader img { width: 72px; animation: loaderPulse 1s ease-in-out infinite alternate; }
.page-loader span { position: absolute; top: calc(50% + 58px); width: 80px; height: 3px; overflow: hidden; border-radius: 9px; background: #e5dde8; }
.page-loader span::after { content:""; display:block; width:45%; height:100%; background:linear-gradient(90deg,var(--violet),var(--pink),var(--orange)); animation:loaderLine 1s ease-in-out infinite alternate; }
@keyframes loaderPulse { to { transform: translateY(-5px); } }
@keyframes loaderLine { to { transform: translateX(120%); } }

.desktop-nav { gap: 18px; margin-left: 35px; }
.hero-slider { position: relative; justify-self: end; width: min(100%,470px); aspect-ratio: 4/5.05; touch-action: pan-y; }
.hero-slides { position: relative; width: 100%; height: 100%; }
.hero-slide { position: absolute; inset: 0; width: 100%; opacity: 0; visibility: hidden; transform: translateX(18px) scale(.985); transition: opacity .45s ease, transform .55s cubic-bezier(.2,.75,.2,1), visibility .45s; }
.hero-slide.active { opacity: 1; visibility: visible; transform: none; }
.hero-slider .tonight-card { justify-self: auto; }
.slider-arrow { position: absolute; z-index: 6; top: 50%; width: 42px; height: 42px; border: 0; border-radius: 50%; background: rgba(255,255,255,.94); box-shadow: 0 8px 24px rgba(0,0,0,.16); cursor: pointer; transform: translateY(-50%); }
.slider-prev { left: -18px; }.slider-next { right: -18px; }
.slider-dots { position: absolute; z-index: 7; left: 50%; bottom: -28px; display: flex; gap: 7px; transform: translateX(-50%); }
.slider-dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 99px; background: #cfc8d2; cursor: pointer; transition: width .25s, background .25s; }
.slider-dots button.active { width: 24px; background: var(--pink); }
.tonight-content > div { grid-template-columns: auto auto minmax(82px,1fr); }
.tonight-content > div a { white-space: nowrap; }
.tonight-content > div a b { color: #ffbf58; }

.universities-section { padding: 115px 0; background: #f0ebf7; }
.university-grid { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 18px; }
.university-card { min-width: 0; min-height: 360px; padding: 25px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid rgba(121,41,210,.12); border-radius: 24px; background: rgba(255,255,255,.74); transition: transform .25s, box-shadow .25s; }
.university-card:hover { transform: translateY(-6px); box-shadow: 0 18px 45px rgba(40,22,55,.09); }
.university-featured { overflow: hidden; background: white; }
.university-featured > img { width: 180px; height: 155px; margin: 0 auto 16px; object-fit: contain; }
.uni-mark { width: 108px; height: 108px; display:grid; place-items:center; border-radius: 28px; color:white; font:800 38px var(--display); transform:rotate(-4deg); }
.violet-mark { background:linear-gradient(145deg,var(--violet),var(--pink)); }.blue-mark { background:linear-gradient(145deg,#0b64b8,#23a8dc); font-size:25px; }
.university-card span { color:var(--violet); font:700 10px var(--display); letter-spacing:.1em; text-transform:uppercase; }
.university-card h3 { margin:9px 0 10px; font:800 23px/1.08 var(--display); letter-spacing:-.045em; }
.university-card p { margin:0 0 22px; color:var(--muted); font-size:12px; }.university-card b { font-size:12px; color:var(--violet); }
.hotel-teaser { margin-block: 115px; display:grid; grid-template-columns: .9fr 1.1fr; min-height:430px; overflow:hidden; border-radius:28px; background:var(--night); color:white; }
.hotel-teaser > img { width:100%; height:100%; object-fit:cover; }.hotel-teaser > div { align-self:center; padding:65px; }
.hotel-teaser h2 { margin:0 0 16px; font:800 48px/1 var(--display); letter-spacing:-.055em; }.hotel-teaser > div > p:not(.eyebrow) { color:#aaa2b1; line-height:1.65; }.hotel-teaser a { display:inline-flex; margin-top:25px; padding:13px 17px; border-radius:999px; background:white; color:var(--ink); font-size:12px; font-weight:700; }
.bottom-nav, .more-sheet, .sheet-backdrop { display:none; }

/* Shared detail pages */
.detail-page { background:#f7f5f8; }
.detail-header .desktop-nav a.active { color:var(--violet); }
.breadcrumb { padding-top:35px; color:var(--muted); font-size:12px; }.breadcrumb ol { display:flex; flex-wrap:wrap; gap:7px; margin:0; padding:0; list-style:none; }.breadcrumb li:not(:last-child)::after { content:"/"; margin-left:7px; color:#b7b0bb; }.breadcrumb a { color:var(--violet); }
.detail-hero { display:grid; grid-template-columns: 1.05fr .95fr; gap:6vw; align-items:center; padding-block:55px 70px; }
.detail-visual { position:relative; min-height:520px; overflow:hidden; border-radius:30px; background:#ddd; box-shadow:var(--shadow); }.detail-visual img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }.detail-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(15,9,19,.34)); }
.university-visual { background:#fff; }.university-visual img { object-fit:contain; padding:55px; }.university-visual::after { display:none; }
.detail-label { display:inline-flex; padding:8px 11px; border-radius:99px; color:var(--violet); background:var(--lavender); font:700 10px var(--display); letter-spacing:.1em; text-transform:uppercase; }
.detail-copy h1 { margin:18px 0 22px; font:800 clamp(45px,5vw,74px)/.95 var(--display); letter-spacing:-.065em; }.detail-copy .lead { color:#5f5966; font-size:17px; line-height:1.65; }
.detail-facts { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin:30px 0; }.detail-fact { padding:15px; border:1px solid var(--line); border-radius:14px; background:white; }.detail-fact small { display:block; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }.detail-fact strong { display:block; margin-top:5px; font-size:13px; }
.detail-actions { display:flex; gap:10px; flex-wrap:wrap; }.detail-actions a { padding:13px 17px; border-radius:999px; background:var(--ink); color:white; font-size:12px; font-weight:700; }.detail-actions a.secondary { border:1px solid var(--line); background:white; color:var(--ink); }
.detail-content { display:grid; grid-template-columns:1fr 330px; gap:70px; padding-block:20px 110px; }.detail-content h2 { margin:0 0 18px; font:800 34px var(--display); letter-spacing:-.045em; }.detail-content h3 { margin-top:34px; font:800 21px var(--display); }.detail-content p { color:#5f5966; line-height:1.75; }.detail-aside { align-self:start; padding:25px; border-radius:20px; background:white; border:1px solid var(--line); }.detail-aside h2 { font-size:20px; }.detail-aside a { display:flex; justify-content:space-between; padding:13px 0; border-bottom:1px solid var(--line); font-size:13px; font-weight:600; }.detail-aside a:last-child { border:0; }
.detail-map { margin-top:30px; min-height:210px; display:grid; place-items:center; border-radius:18px; background:radial-gradient(circle at 30% 30%,#fff 0 2px,transparent 3px),linear-gradient(135deg,#eee7f6,#e5eef4); background-size:36px 36px,auto; }.detail-map span { padding:10px 13px; border-radius:99px; background:white; box-shadow:0 8px 25px rgba(0,0,0,.1); font-size:12px; font-weight:700; }
.detail-map a { padding:10px 13px; border-radius:99px; background:white; box-shadow:0 8px 25px rgba(0,0,0,.1); font-size:12px; font-weight:700; }.api-rich-text { color:#5f5966; line-height:1.75; }.api-rich-text img { max-width:100%; height:auto; }.api-notice { margin:20px 0; padding:20px 22px; border:1px solid #ead7df; border-radius:18px; background:#fff6f9; color:#5f5966; }.api-notice strong { color:var(--ink); }.api-notice p { margin:6px 0 0; }.detail-error { margin-block:70px 110px; }.detail-error h1 { font:800 clamp(42px,6vw,76px)/1 var(--display); letter-spacing:-.06em; }
.venue-detail-page .detail-content { grid-template-columns:minmax(0,1fr) minmax(250px,330px); gap:clamp(24px,4vw,54px); padding-bottom:48px; }
.venue-detail-page .detail-content article { min-width:0; }
.venue-detail-page .detail-content article>.api-rich-text { max-width:65ch; }
.venue-detail-page .media-section { padding-bottom:42px; }
.detail-aside { min-width:0; overflow-wrap:anywhere; }
.detail-aside .contact-location { margin:0 0 15px; overflow-wrap:anywhere; }
.detail-aside a.contact-map-button { justify-content:center; gap:20px; margin:0 0 10px; padding:13px 16px; border:0; border-radius:12px; background:var(--night); color:#fff; font-size:12px; }
.detail-aside a.contact-map-button span { color:#ffc16d; }
@media (max-width:720px) {
  .venue-detail-page .detail-hero { padding-bottom:36px; }
  .venue-detail-page .detail-visual { min-height:270px; }
  .venue-detail-page .detail-content { grid-template-columns:1fr; gap:25px; padding-bottom:55px; }
  .venue-detail-page .media-section { padding-bottom:35px; }
  .venue-detail-page .detail-copy h1 { font-size:clamp(36px,10vw,48px); }
  .venue-detail-page .detail-facts { margin:20px 0; }
}

.hotel-stars { position:absolute; z-index:2; right:14px; bottom:14px; padding:7px 10px; border-radius:999px; background:rgba(20,13,28,.86); color:#ffbf58; font-size:12px; letter-spacing:.08em; }
.hotel-features { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.hotel-features span { padding:9px 12px; border:1px solid var(--line); border-radius:999px; background:#fff; font-size:11px; font-weight:700; }
.detail-map:has(iframe) { display:block; padding:0; overflow:hidden; }
.detail-map iframe { display:block; width:100%; height:260px; border:0; }
.detail-map:has(iframe) a { display:table; position:relative; z-index:2; margin:-22px auto 16px; }
.hotel-gallery-section,.hotel-contact-section,.hotel-events-section { padding-bottom:105px; }
.hotel-gallery-section h2,.hotel-contact-section h2,.hotel-events-section h2 { margin:7px 0 0; font:800 clamp(34px,4vw,52px)/1 var(--display); letter-spacing:-.055em; }
.hotel-gallery { display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:205px; gap:12px; margin-top:28px; }
.hotel-gallery-item { overflow:hidden; padding:0; border:0; border-radius:18px; background:#eee; cursor:zoom-in; }
.hotel-gallery-item:first-child { grid-column:span 2; grid-row:span 2; }
.hotel-gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.hotel-gallery-item:hover img { transform:scale(1.04); }
.hotel-lightbox { width:min(1000px,calc(100% - 32px)); max-width:none; padding:0; border:0; overflow:visible; background:transparent; }
.hotel-lightbox::backdrop { background:rgba(13,9,17,.88); backdrop-filter:blur(8px); }
.hotel-lightbox img { display:block; max-width:100%; max-height:84vh; margin:auto; border-radius:18px; object-fit:contain; }
.hotel-lightbox-close { position:absolute; z-index:2; top:-16px; right:-12px; width:42px; height:42px; border:0; border-radius:50%; background:#fff; cursor:pointer; font-size:25px; }
.hotel-contact-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:7vw; align-items:start; }
.hotel-contact-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.hotel-contact-grid a { min-width:0; min-height:110px; padding:20px; border:1px solid var(--line); border-radius:17px; background:#fff; }
.hotel-contact-grid small { display:block; margin-bottom:8px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.hotel-contact-grid strong { display:block; overflow-wrap:anywhere; font-size:13px; line-height:1.45; }
.hotel-events-section .event-grid { margin-top:30px; }
.hotel-events-section .event-card { background:#fff; }

@media (max-width: 720px) {
  body { padding-bottom:76px; }.desktop-nav { display:none; }.hero-slider { display:none; }
  .university-grid { grid-template-columns:1fr; }.universities-section { padding:85px 0; }.university-card { min-height:300px; }.hotel-teaser { grid-template-columns:1fr; margin-block:80px; }.hotel-teaser > img { height:300px; }.hotel-teaser > div { padding:35px 25px; }.hotel-teaser h2 { font-size:38px; }
  .bottom-nav { position:fixed; z-index:80; left:8px; right:8px; bottom:8px; height:66px; display:grid; grid-template-columns:repeat(5,1fr); padding:6px 4px; border:1px solid rgba(23,19,31,.08); border-radius:18px; background:rgba(255,255,255,.94); box-shadow:0 12px 40px rgba(25,15,35,.18); backdrop-filter:blur(18px); }.bottom-nav a,.bottom-nav button { min-width:0; border:0; background:transparent; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; color:#77717d; font-size:8px; font-weight:700; }.bottom-nav svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; }.bottom-nav .active { color:var(--violet); }.bottom-nav .active svg { fill:rgba(121,41,210,.12); }
  .more-sheet { position:fixed; z-index:92; left:12px; right:12px; bottom:84px; padding:25px; border-radius:24px; background:white; box-shadow:0 20px 70px rgba(20,10,30,.25); }.more-sheet.open { display:block; }.more-sheet p { margin:0 0 15px; font:800 20px var(--display); }.more-sheet a { display:flex; justify-content:space-between; padding:15px 0; border-top:1px solid var(--line); font-weight:700; }.sheet-close { position:absolute; right:18px;top:15px;border:0;background:transparent;font-size:25px; }.sheet-backdrop { position:fixed;z-index:90;inset:0;background:rgba(18,12,23,.35); }.sheet-backdrop.open { display:block; }
  .detail-hero { grid-template-columns:1fr; padding-block:30px 55px; }.detail-visual { min-height:390px; order:-1; }.detail-copy h1 { font-size:48px; }.detail-content { grid-template-columns:1fr; gap:35px; padding-bottom:80px; }.detail-facts { grid-template-columns:1fr 1fr; }
  .hotel-gallery-section,.hotel-contact-section,.hotel-events-section { padding-bottom:72px; }
  .hotel-gallery { grid-template-columns:repeat(2,1fr); grid-auto-rows:150px; }
  .hotel-gallery-item:first-child { grid-column:span 2; grid-row:span 2; }
  .hotel-contact-section { grid-template-columns:1fr; gap:24px; }
  .hotel-contact-grid { grid-template-columns:1fr; }
  .hotel-events-section .event-grid { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .page-loader img, .page-loader span::after { animation:none !important; }
  .hero-slide, .university-card, .slider-dots button { transition:none !important; }
}

/* Category listing pages */
.listing-page { background:var(--paper); }
.listing-hero { padding-block:70px 46px; }
.listing-hero-inner { display:grid; grid-template-columns:1fr 380px; gap:7vw; align-items:end; }
.listing-hero h1 { max-width:760px; margin:0; font:800 clamp(54px,7vw,92px)/.92 var(--display); letter-spacing:-.07em; }
.listing-hero h1 em { font-style:normal; background:linear-gradient(100deg,var(--violet),var(--pink),var(--orange)); color:transparent; background-clip:text; -webkit-background-clip:text; }
.listing-intro { margin:0 0 7px; color:var(--muted); font-size:15px; line-height:1.65; }
.listing-tools { position:sticky; z-index:10; top:82px; display:flex; align-items:center; gap:10px; padding-block:15px; background:rgba(251,250,248,.94); backdrop-filter:blur(14px); }
.listing-search { flex:1; min-width:220px; display:flex; align-items:center; gap:10px; padding:13px 16px; border:1px solid var(--line); border-radius:999px; background:white; }
.listing-search svg { width:18px; fill:none; stroke:currentColor; stroke-width:1.8; }.listing-search input { width:100%; border:0; outline:0; background:transparent; }
.listing-filter { display:flex; gap:7px; overflow-x:auto; scrollbar-width:none; }.listing-filter::-webkit-scrollbar{display:none}.listing-filter button { flex:0 0 auto; padding:11px 15px; border:1px solid var(--line); border-radius:999px; background:white; cursor:pointer; font-size:11px; font-weight:700; }.listing-filter button.active { border-color:var(--ink); background:var(--ink); color:white; }
.listing-section { padding-block:38px 115px; }.listing-count { margin:0 0 22px; color:var(--muted); font-size:12px; }.listing-count strong { color:var(--ink); }
.directory-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.directory-card { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:22px; background:white; transition:transform .25s,box-shadow .25s; }.directory-card:hover { transform:translateY(-5px); box-shadow:0 18px 45px rgba(32,20,41,.08); }.directory-card[hidden]{display:none}.directory-card-media { position:relative; height:235px; overflow:hidden; background:#eee9f1; }.directory-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .45s; }.directory-card:hover img { transform:scale(1.035); }.directory-card-media .directory-mark { width:100%; height:100%; display:grid; place-items:center; color:white; background:linear-gradient(145deg,var(--violet),var(--pink) 60%,var(--orange)); font:800 56px var(--display); letter-spacing:-.06em; }.directory-card-body { padding:22px; }.directory-kicker { display:flex; justify-content:space-between; gap:12px; color:var(--violet); font:700 9px var(--display); letter-spacing:.09em; text-transform:uppercase; }.directory-card h2 { margin:10px 0 9px; font:800 23px/1.1 var(--display); letter-spacing:-.045em; }.directory-card p { min-height:38px; margin:0; color:var(--muted); font-size:12px; line-height:1.55; }.directory-card-footer { display:flex; justify-content:space-between; align-items:center; margin-top:18px; padding-top:14px; border-top:1px solid var(--line); font-size:11px; }.directory-card-footer strong { color:var(--violet); }.directory-empty { display:none; padding:60px 20px; border:1px dashed var(--line); border-radius:20px; text-align:center; color:var(--muted); }.directory-empty.show { display:block; }
.directory-card > a[href*="/etkinlik-detay/"] .directory-card-media { height:clamp(300px,42vh,410px); aspect-ratio:auto; }
.directory-card > a[href*="/etkinlik-detay/"] .directory-card-media img { object-fit:cover; object-position:center; }
.pagination{margin-top:45px}.pagination>nav{width:100%;display:grid;gap:14px}.pagination>nav>div:first-child{display:none}.pagination>nav>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:18px}.pagination>nav>div:last-child>div:first-child{color:var(--muted);font-size:11px}.pagination>nav>div:last-child>div:last-child>span{display:inline-flex;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(29,18,38,.05)}.pagination a,.pagination span[aria-current="page"]>span,.pagination span[aria-disabled="true"]>span{min-width:42px;height:42px;display:inline-grid;place-items:center;padding:0 13px;border-right:1px solid var(--line);color:var(--violet);font-size:12px;font-weight:800;line-height:1}.pagination span[aria-current="page"]>span{background:var(--ink);color:#fff}.pagination span[aria-disabled="true"]>span{color:#b2abb7;background:#faf8fb}.pagination a:hover{background:var(--lavender)}.pagination svg{display:block;width:17px;height:17px}.pagination a:last-child,.pagination span:last-child>span{border-right:0}
.list-promo { margin-bottom:110px; padding:35px 40px; display:flex; align-items:center; justify-content:space-between; gap:30px; border-radius:24px; background:var(--night); color:white; }.list-promo h2 { margin:0 0 8px; font:800 28px var(--display); }.list-promo p { margin:0;color:#aaa2b1;font-size:13px; }.list-promo a { flex:0 0 auto; padding:12px 16px; border-radius:999px; background:white; color:var(--ink); font-size:12px;font-weight:700; }
.blog-strip { margin-block:20px 115px; padding:55px; display:grid; grid-template-columns:.85fr 1.15fr; gap:7vw; align-items:center; border-radius:28px; background:#fff1e9; }.blog-strip h2 { margin:0 0 17px; font:800 48px/1 var(--display); letter-spacing:-.055em; }.blog-strip > div > p:not(.eyebrow) { color:var(--muted); line-height:1.6; }.blog-strip > div > a { display:inline-flex; margin-top:19px; padding-bottom:6px; border-bottom:1px solid var(--ink); font-size:12px; font-weight:700; }.blog-strip-card { position:relative; min-height:330px; overflow:hidden; border-radius:22px; color:white; }.blog-strip-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.blog-strip-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(14,8,20,.88)); }.blog-strip-card span,.blog-strip-card strong { position:absolute; z-index:2; left:25px; }.blog-strip-card span { bottom:69px; color:#ffbd57; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }.blog-strip-card strong { bottom:25px; font:800 32px var(--display); }

@media(max-width:900px){.directory-grid{grid-template-columns:repeat(2,1fr)}.listing-hero-inner{grid-template-columns:1fr}.listing-tools{flex-direction:column;align-items:stretch}.listing-filter{padding-bottom:2px}}
@media(max-width:720px){.listing-hero{padding-block:45px 25px}.listing-hero h1{font-size:54px}.listing-tools{top:70px}.directory-grid{grid-template-columns:1fr}.directory-card-media{height:260px}.list-promo{display:block;padding:28px}.list-promo a{display:inline-flex;margin-top:22px}.blog-strip{grid-template-columns:1fr;padding:28px;margin-block:0 80px}.blog-strip h2{font-size:38px}.blog-strip-card{min-height:280px}}
@media(max-width:720px){.pagination>nav>div:last-child{justify-content:center}.pagination>nav>div:last-child>div:first-child{display:none}.pagination a,.pagination span[aria-current="page"]>span,.pagination span[aria-disabled="true"]>span{min-width:38px;height:40px;padding:0 10px}}

/* Site search */
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.site-search-page { min-height:62vh; }
.site-search-hero { position:relative; overflow:hidden; padding:78px 0 70px; background:#f1ebf7; }
.site-search-hero::before { content:""; position:absolute; width:430px; height:430px; right:-105px; top:-205px; border:95px solid rgba(255,106,43,.32); border-radius:50%; }
.site-search-hero::after { content:""; position:absolute; width:230px; height:230px; right:19%; bottom:-160px; border-radius:50%; background:linear-gradient(140deg,var(--pink),var(--orange)); opacity:.2; }
.site-search-inner { position:relative; z-index:1; }
.site-search-heading { max-width:780px; }
.site-search-heading > p,.site-search-results-head p { margin:0 0 15px; color:var(--violet); font:800 11px var(--display); letter-spacing:.08em; }
.site-search-heading h1 { margin:0; font:800 clamp(48px,6.8vw,92px)/.94 var(--display); letter-spacing:-.065em; }
.site-search-heading > span { display:block; max-width:610px; margin-top:22px; color:var(--muted); font-size:16px; line-height:1.6; }
.site-search-form { position:relative; display:flex; align-items:center; max-width:900px; min-height:76px; margin-top:38px; padding:8px 9px 8px 25px; border:1px solid rgba(23,18,31,.12); border-radius:24px; background:#fff; box-shadow:0 18px 55px rgba(37,19,49,.1); }
.site-search-form > svg { flex:0 0 auto; width:22px; height:22px; margin-right:15px; fill:none; stroke:var(--ink); stroke-width:1.8; }
.site-search-form input { min-width:0; flex:1; height:58px; padding:0; border:0; outline:0; background:transparent; color:var(--ink); font:600 18px var(--body); }
.site-search-form input::placeholder { color:#938c99; opacity:1; }
.site-search-form:focus-within { border-color:rgba(121,41,210,.55); box-shadow:0 18px 60px rgba(121,41,210,.16),0 0 0 4px rgba(121,41,210,.09); }
.site-search-form button { flex:0 0 auto; width:58px; height:58px; display:grid; place-items:center; border:0; border-radius:17px; background:var(--ink); color:#fff; cursor:pointer; transition:background .2s,transform .2s; }
.site-search-form button:hover { background:var(--violet); transform:translateX(2px); }
.site-search-form button:focus-visible { outline:3px solid rgba(121,41,210,.35); outline-offset:3px; }
.site-search-form button svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; }
.site-search-suggestions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:17px; color:var(--muted); font-size:11px; }
.site-search-suggestions a { padding:7px 11px; border:1px solid rgba(23,18,31,.12); border-radius:999px; background:rgba(255,255,255,.48); color:var(--ink); font-weight:700; }
.site-search-suggestions a:hover { border-color:var(--violet); color:var(--violet); }
.site-search-results { padding-block:55px 115px; }
.site-search-results-head { display:flex; align-items:end; justify-content:space-between; gap:25px; padding-bottom:25px; border-bottom:1px solid var(--line); }
.site-search-results-head p { margin-bottom:8px; }
.site-search-results-head h2 { margin:0; font:800 clamp(34px,4vw,52px)/1 var(--display); letter-spacing:-.05em; }
.site-search-results-head > strong { color:var(--muted); font-size:12px; }
.site-search-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:25px; }
.site-search-group { min-width:0; padding:25px; border:1px solid var(--line); border-radius:22px; background:#fff; }
.site-search-group h3 { display:flex; align-items:center; gap:10px; margin:0 0 13px; font:800 18px var(--display); }
.site-search-group h3 span { display:grid; place-items:center; min-width:28px; height:28px; border-radius:9px; background:var(--lavender); color:var(--violet); font-size:11px; }
.site-search-group > a { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 0; border-top:1px solid var(--line); font-size:13px; font-weight:650; line-height:1.35; }
.site-search-group > a:hover { color:var(--violet); }
.site-search-group > a b { flex:0 0 auto; color:var(--violet); font-size:15px; }
.site-search-group > p { margin:0; padding:17px 0 4px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.site-search-empty { margin-top:25px; padding:42px; border:1px dashed #cfc5d6; border-radius:22px; text-align:center; background:#fff; }
.site-search-empty strong { font:800 22px var(--display); }
.site-search-empty p { margin:9px 0 0; color:var(--muted); font-size:13px; }
@media(max-width:900px){.site-search-grid{grid-template-columns:1fr}.site-search-hero::after{display:none}}
@media(max-width:720px){.site-search-hero{padding:48px 0 45px}.site-search-hero::before{width:230px;height:230px;right:-105px;top:-115px;border-width:55px}.site-search-heading h1{font-size:48px}.site-search-heading>span{font-size:14px}.site-search-form{min-height:64px;margin-top:28px;padding:6px 6px 6px 18px;border-radius:19px}.site-search-form>svg{width:19px;height:19px;margin-right:10px}.site-search-form input{height:50px;font-size:14px}.site-search-form button{width:50px;height:50px;border-radius:14px}.site-search-results{padding-block:38px 85px}.site-search-results-head{align-items:start;flex-direction:column;gap:9px}.site-search-group{padding:20px}.site-search-suggestions span{width:100%}}

/* Account, authentication and saved plans */
.account-link,.nav-logout button{padding:9px 5px;border:0;background:transparent;color:var(--ink);font:700 11px var(--display);cursor:pointer}.nav-logout{margin:0}.nav-logout button{color:var(--muted)}.mobile-logout button{width:100%;padding:17px 0;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;color:var(--violet);font:800 clamp(24px,7vw,30px)/1.05 var(--display);cursor:pointer}
.mobile-menu-discover{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:24px 0}.mobile-menu-discover p{grid-column:1/-1;margin:0 0 4px;color:var(--violet);font:800 10px var(--display);letter-spacing:.1em}.mobile-menu .mobile-menu-discover a{padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:13px;line-height:1.2}.mobile-menu-account{padding-bottom:35px}.mobile-menu-account>a{color:var(--violet)}
.auth-page{min-height:680px;display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:center;padding-block:70px 100px}.auth-intro h1{margin:15px 0 25px;font:800 clamp(58px,7vw,100px)/.88 var(--display);letter-spacing:-.075em}.auth-intro h1 em{font-style:normal;background:linear-gradient(100deg,var(--violet),var(--pink),var(--orange));color:transparent;background-clip:text;-webkit-background-clip:text}.auth-intro>p:last-of-type{max-width:570px;color:var(--muted);font-size:16px;line-height:1.7}.auth-benefits{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.auth-benefits span{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:white;font-size:11px;font-weight:700}.auth-card{position:relative;padding:42px;border:1px solid var(--line);border-radius:28px;background:white;box-shadow:var(--shadow)}.auth-card::before{content:"";position:absolute;right:28px;top:28px;width:12px;height:12px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 7px rgba(245,37,142,.1)}.auth-card h2{margin:0;font:800 36px var(--display);letter-spacing:-.05em}.auth-card>p{margin:8px 0 28px;color:var(--muted);font-size:13px}.auth-card form{display:grid;gap:17px}.auth-card .field input{height:54px;background:#fcfbfd}.auth-submit{width:100%;justify-content:space-between;margin-top:5px}.auth-submit span{color:#ff9e3c;font-size:18px}.auth-switch{margin:24px 0 0!important;padding-top:20px;border-top:1px solid var(--line);text-align:center}.auth-switch a{color:var(--violet);font-weight:800}
.detail-actions form{display:inline-flex;margin:0}.detail-save{padding:13px 17px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}
.member-page{padding-block:65px 110px}.member-heading{max-width:820px;margin-bottom:48px}.member-heading h1{margin:15px 0;font:800 clamp(48px,6vw,78px)/.94 var(--display);letter-spacing:-.065em}.member-heading h1 em{font-style:normal;color:var(--violet)}.member-heading>p:last-child{color:var(--muted);font-size:15px}.member-layout{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:start}.member-summary{position:sticky;top:110px;padding:25px;border-radius:22px;background:var(--night);color:white}.member-avatar{width:55px;height:55px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,var(--violet),var(--pink),var(--orange));font:800 24px var(--display)}.member-summary h2{margin:17px 0 4px;font:800 19px var(--display)}.member-summary p{margin:0 0 20px;color:#aaa3b0;font-size:11px;overflow-wrap:anywhere}.member-summary a,.member-summary button{display:block;width:100%;padding:12px 0;border:0;border-top:1px solid rgba(255,255,255,.13);background:transparent;color:white;text-align:left;font-size:11px;font-weight:700;cursor:pointer}.member-content{display:grid;gap:18px}.member-section{padding:30px;border:1px solid var(--line);border-radius:24px;background:white}.member-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.member-section-title small,.user-list-head small,.saved-item small{color:var(--violet);font:800 9px var(--display);letter-spacing:.09em}.member-section-title h2{margin:5px 0 0;font:800 29px var(--display);letter-spacing:-.045em}.member-section-title>strong{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:var(--lavender);color:var(--violet)}.saved-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.saved-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px;border:1px solid var(--line);border-radius:16px}.saved-item h3{margin:5px 0 0;font:800 14px var(--display)}.saved-item button{width:30px;height:30px;border:0;border-radius:50%;background:#fff0f5;color:var(--pink);font-size:20px;cursor:pointer}.member-empty{grid-column:1/-1;margin:0;padding:28px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);text-align:center;font-size:12px}.quick-list-form{display:grid;grid-template-columns:1fr 130px auto;gap:8px}.quick-list-form input,.quick-list-form select{min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:white}.quick-list-form button{padding:12px 17px;border:0;border-radius:12px;background:var(--ink);color:white;font-weight:700;cursor:pointer}.user-lists{display:grid;gap:10px;margin-top:16px}.user-lists>article{padding:18px;border-radius:16px;background:#f8f5fa}.user-list-head{display:flex;justify-content:space-between;gap:20px}.user-list-head h3{margin:4px 0 12px;font:800 18px var(--display)}.user-list-head button,.user-list-entry button{border:0;background:transparent;color:var(--muted);font-size:10px;cursor:pointer}.user-list-entry{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.member-section>form>h3{margin:25px 0 10px;font:800 14px var(--display)}.choice-cloud{display:flex;flex-wrap:wrap;gap:7px}.choice-cloud input{position:absolute;opacity:0}.choice-cloud span{display:block;padding:9px 12px;border:1px solid var(--line);border-radius:999px;font-size:10px;font-weight:700;cursor:pointer}.choice-cloud input:checked+span{border-color:var(--violet);background:var(--lavender);color:var(--violet)}.member-section>form>.button{margin-top:25px}
@media(max-width:1050px){.desktop-nav{gap:18px;margin-left:20px}.account-link,.nav-logout{display:none}}
@media(max-width:720px){.auth-page{grid-template-columns:1fr;min-height:0;gap:35px;padding-block:45px 90px}.auth-intro h1{font-size:56px}.auth-card{padding:28px 22px}.member-page{padding-block:45px 90px}.member-layout{grid-template-columns:1fr}.member-summary{position:static}.saved-grid{grid-template-columns:1fr}.quick-list-form{grid-template-columns:1fr}.member-section{padding:23px 18px}}
.place-attributes{padding-bottom:90px}.place-attributes h2{margin:8px 0 25px;font:800 clamp(32px,4vw,48px)/1 var(--display);letter-spacing:-.05em}.attribute-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.attribute-list>div{padding:18px;border:1px solid var(--line);border-radius:16px;background:white}.attribute-list small{display:block;margin-bottom:7px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em}.attribute-list strong{font:800 15px var(--display)}@media(max-width:720px){.attribute-list{grid-template-columns:1fr 1fr}.place-attributes{padding-bottom:65px}}

/* Access portal */
.access-page{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);min-height:720px;padding-block:54px 96px}
.access-story{position:relative;min-height:620px;overflow:hidden;border-radius:32px 0 0 32px;background:linear-gradient(160deg,rgba(20,17,29,.78),rgba(20,17,29,.96)),url('assets/content/venue.jpg') center/cover;color:#fff}
.access-story::after{content:"";position:absolute;inset:auto -110px -160px auto;width:390px;height:390px;border-radius:50%;background:linear-gradient(135deg,var(--violet),var(--pink) 58%,var(--orange))}
.access-story-copy{position:relative;z-index:2;display:flex;min-height:620px;flex-direction:column;justify-content:center;padding:58px 64px}.access-kicker{margin:0 0 22px;color:#ffbd58;font:800 11px var(--display);letter-spacing:.08em}.access-story h1{max-width:650px;margin:0;font:800 clamp(52px,5.6vw,88px)/.9 var(--display);letter-spacing:-.07em}.access-story h1 span{color:#ffb342}.access-story-copy>p:not(.access-kicker){max-width:570px;margin:28px 0;color:#d7d2dc;font-size:15px;line-height:1.65}.access-story ul{display:grid;gap:10px;margin:12px 0 0;padding:0;list-style:none}.access-story li{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:700}.access-story li b{display:grid;width:31px;height:31px;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;color:#ffb342;font-size:9px}
.access-map{position:absolute;z-index:3;right:36px;bottom:34px;display:grid;width:190px;height:148px;align-content:center;padding:24px;border:1px solid rgba(255,255,255,.2);border-radius:26px;background:rgba(20,17,29,.76);backdrop-filter:blur(12px)}.access-map strong{font:800 18px var(--display)}.access-map small{margin-top:4px;color:#bab2c2;font-size:10px}.map-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px rgba(255,158,60,.14)}.dot-girne{left:35px;top:25px}.dot-lefkosa{left:85px;top:48px;background:var(--pink)}.dot-magusa{right:27px;bottom:28px;background:var(--violet)}
.access-panel{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:52px 58px;border:1px solid var(--line);border-left:0;border-radius:0 32px 32px 0;background:#fff}.access-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:38px;padding:5px;border-radius:14px;background:#f3eff5}.access-tabs button{padding:12px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:800 12px var(--display);cursor:pointer}.access-tabs button.active{background:#fff;color:var(--ink);box-shadow:0 3px 14px rgba(30,20,40,.08)}
.auth-pane[hidden]{display:none}.auth-pane header{margin-bottom:28px}.auth-pane h2{margin:0 0 8px;font:800 clamp(34px,3vw,44px)/1 var(--display);letter-spacing:-.05em}.auth-pane header p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.auth-pane form{display:grid;gap:16px}.auth-pane .field input{width:100%;height:54px;border:1px solid var(--line);border-radius:13px;background:#fcfbfd;padding:0 15px;font:inherit;outline:0}.auth-pane .field input:focus{border-color:var(--violet);box-shadow:0 0 0 4px rgba(134,45,221,.1)}.auth-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-consent{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:11px;line-height:1.45}.auth-consent input{margin-top:2px;accent-color:var(--violet)}.auth-feedback{margin:0 0 22px;padding:13px 15px;border-radius:12px;font-size:12px;font-weight:700}.auth-feedback.success{background:#e9f8f1;color:#146b4b}.auth-feedback.error{background:#fff0f3;color:#a32148}.auth-submit{width:100%;min-height:52px;justify-content:space-between;margin-top:4px}.auth-submit b{color:#ffb342;font-size:18px}.auth-submit:disabled{opacity:.65;cursor:wait}.auth-text-button,.auth-back{margin-top:20px;padding:0;border:0;background:transparent;color:var(--violet);font-size:11px;font-weight:800;cursor:pointer}.auth-back{margin:0 0 24px;color:var(--muted)}.account-register{color:var(--violet)}

/* Home discovery rail */
.discovery>.category-row{min-width:0;align-items:center;margin:0;padding:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}.discovery>.category-row a{scroll-snap-align:start;white-space:nowrap;padding:16px 18px}.discovery>.location-button{min-width:0;grid-template-columns:38px 1fr;padding:18px 22px}.discovery>.location-button>span:first-child{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:rgba(255,255,255,.1);font-size:17px}
@media(max-width:1050px){.access-page{grid-template-columns:1fr 440px}.access-story-copy{padding:48px 42px}.access-panel{padding:44px 38px}.nav-actions .account-register{display:none}}
@media(max-width:760px){.access-page{display:block;padding-block:22px 92px}.access-story{min-height:340px;border-radius:25px 25px 0 0}.access-story-copy{min-height:340px;padding:35px 28px}.access-story h1{font-size:48px}.access-story-copy>p:not(.access-kicker){margin:20px 0;font-size:13px}.access-story ul{display:none}.access-map{right:18px;bottom:17px;width:155px;height:105px;padding:18px}.access-story::after{width:240px;height:240px;right:-90px;bottom:-120px}.access-panel{padding:30px 22px 38px;border:1px solid var(--line);border-top:0;border-radius:0 0 25px 25px}.auth-field-row{grid-template-columns:1fr}.discovery{grid-template-columns:1fr;overflow:hidden}.discovery>.category-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;overflow:visible;padding:10px}.discovery>.category-row a{min-width:0;padding:13px 10px;text-align:center;white-space:normal}.discovery>.location-button{border-radius:0 0 21px 21px}}

/* Complete place profile and moderation flows */
.place-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:240px;gap:12px;padding-bottom:65px}.place-gallery figure{margin:0;overflow:hidden;border-radius:20px;background:#ece8ef}.place-gallery figure:first-child{grid-column:span 2;grid-row:span 2}.place-gallery img{width:100%;height:100%;object-fit:cover}.open-now{color:#14825b}.closed-now{color:#b53d54}.add-to-list{display:flex;align-items:center;gap:8px;margin-top:14px}.add-to-list label{font-size:11px;font-weight:800}.add-to-list select,.add-to-list button,.claim-box input,.claim-box select,.claim-box textarea{min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#fff;font:inherit}.add-to-list button{border-color:var(--ink);background:var(--ink);color:#fff;font-weight:800}.claim-box{margin-top:18px;border-top:1px solid var(--line)}.claim-box summary{padding:17px 0;cursor:pointer;color:var(--violet);font-size:12px;font-weight:800}.claim-box form{display:grid;gap:9px}.claim-box textarea{min-height:88px;resize:vertical}.claim-box .button{justify-content:center}.report-box summary{color:var(--muted)}.menu-block{margin:20px 0;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff}.menu-block h3{margin:0 0 12px}.menu-block h4{margin:18px 0 4px}.menu-block p{display:flex;justify-content:space-between;gap:20px;margin:0;padding:9px 0;border-bottom:1px solid var(--line)}.campaign-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.campaign-card{min-height:190px;padding:24px;border-radius:20px;background:linear-gradient(145deg,#251a32,#15101d);color:#fff}.campaign-card small{color:#ffb342}.campaign-card h3{font:800 24px var(--display)}.campaign-card p{color:#c9c1cf}.operation-grid{margin-top:20px}.report-item{padding:16px 0;border-top:1px solid var(--line)}.report-item form{display:flex;gap:8px}.report-item input{min-width:0;flex:1;padding:10px;border:1px solid var(--line);border-radius:10px}.approval-actions{display:grid;gap:10px}.approval-actions textarea{width:100%;min-height:75px;margin-bottom:8px;padding:10px;border:1px solid var(--line);border-radius:10px}.button.danger{background:#8e2945}.business-place-row{display:grid;grid-template-columns:1fr auto;gap:15px;padding:15px 0;border-top:1px solid var(--line)}.business-place-row small{display:block;margin-top:5px;color:var(--muted)}.business-place-row>div:last-child{display:grid;justify-items:end;gap:7px}.business-place-row button{border:0;background:transparent;color:var(--violet);font-size:11px;font-weight:800;cursor:pointer}
@media(max-width:760px){.place-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:145px}.place-gallery figure:first-child{grid-column:span 2}.campaign-grid{grid-template-columns:1fr}.add-to-list{align-items:stretch;flex-direction:column}.business-place-row{grid-template-columns:1fr}.business-place-row>div:last-child{justify-items:start}}

.listing-tools>select{max-width:190px;padding:12px 34px 12px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;font:700 11px var(--body)}.open-filter{display:flex;align-items:center;gap:6px;white-space:nowrap;padding:11px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11px;font-weight:700}.open-filter input{accent-color:var(--violet)}
@media(max-width:900px){.listing-tools>select{width:100%;max-width:none}.open-filter{justify-content:center}}

/* Product workspace: profile, business and administration */
.panel-shell{max-width:1240px;margin:0 auto;padding:56px 32px 120px}.panel-shell>h1{margin:10px 0 12px;font:800 clamp(42px,5vw,70px)/.95 var(--display);letter-spacing:-.06em}.panel-shell>p:not(.eyebrow){max-width:760px;color:var(--muted);line-height:1.65}.panel-nav{position:sticky;z-index:20;top:82px;display:flex;gap:7px;overflow-x:auto;margin:0 0 36px;padding:8px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 34px rgba(30,20,40,.07);backdrop-filter:blur(18px);scrollbar-width:none}.panel-nav::-webkit-scrollbar{display:none}.panel-nav a{flex:0 0 auto;padding:10px 14px;border-radius:12px;color:var(--muted);font-size:11px;font-weight:800}.panel-nav a:hover,.panel-nav a[aria-current="page"]{background:var(--night);color:#fff}.panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:24px}.panel-card{min-width:0;padding:25px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 8px 28px rgba(30,20,40,.04)}.panel-card>h2:first-child,.panel-card>h3:first-child{margin-top:0;font-family:var(--display);letter-spacing:-.035em}.panel-card>h2{font-size:26px}.panel-card h3{margin:0 0 8px}.panel-card>strong:first-child{color:var(--muted);font-size:10px;letter-spacing:.06em}.panel-card>strong:first-child+h2{margin:12px 0 0;font:800 42px var(--display)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}.form-grid .wide{grid-column:1/-1}.field{display:flex;min-width:0;flex-direction:column;gap:8px}.field label{font-size:11px;font-weight:800}.field input,.field textarea,.field select,.homepage-admin-row input,.panel-card>form select{width:100%;min-width:0;padding:13px 14px;border:1px solid #ddd5e2;border-radius:13px;background:#fcfbfd;color:var(--ink);font:inherit;outline:0}.field input:focus,.field textarea:focus,.field select:focus,.homepage-admin-row input:focus{border-color:var(--violet);box-shadow:0 0 0 4px rgba(121,41,210,.09)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:13px 21px;background:var(--night);color:#fff;font-size:12px;font-weight:800;cursor:pointer}.button:hover{background:var(--violet)}.notice{max-width:1180px;margin:18px auto;padding:14px 18px;border-radius:13px;background:#eaf6f1;color:#147a57;font-weight:700}.notice.error{background:#fff0f2;color:#a62742}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{color:var(--muted);font-size:9px;letter-spacing:.06em}.data-table th,.data-table td{padding:13px;border-bottom:1px solid #ece8ef;text-align:left;vertical-align:top}.data-table tbody tr:hover{background:#fbf9fc}.translation-set{margin:0 0 24px;padding:20px;border:1px solid var(--line);border-radius:16px}.translation-set legend{padding:0 8px;font-weight:800}.homepage-admin-list{display:grid;gap:10px}.homepage-admin-row{display:grid;grid-template-columns:80px 1fr auto auto;gap:10px;align-items:center}.status-chip{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f2edf5;color:var(--muted);font-size:9px;font-weight:800}.status-active,.status-approved,.status-published{background:#e9f8f1;color:#147a57}.status-pending{background:#fff5df;color:#9a6300}.status-rejected{background:#fff0f2;color:#a62742}

.event-card{position:relative}.favorite-form{margin:0}.event-card>.favorite-form,.event-card>.favorite-button{position:absolute;z-index:5;right:12px;top:12px}.favorite-button{min-width:42px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 13px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(255,255,255,.92);color:var(--ink);box-shadow:0 8px 25px rgba(20,12,28,.13);font:800 10px var(--body);cursor:pointer;backdrop-filter:blur(10px)}.favorite-button svg{width:17px;height:17px;fill:transparent;stroke:currentColor;stroke-width:1.8}.favorite-button.saved{background:#fff0f7;color:var(--pink)}.favorite-button.saved svg{fill:currentColor}.favorite-button:disabled{opacity:.65}.event-card .favorite-button span{display:none}.detail-actions .favorite-form{display:inline-flex}.detail-actions .favorite-button{min-height:44px;border-color:var(--line);box-shadow:none}.detail-actions .favorite-button span,.article-meta-actions .favorite-button span{display:inline}.article-meta-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:12px 0 26px}.article-meta-actions p{margin:0}.article-meta-actions .favorite-button{box-shadow:none}

.member-heading{max-width:none;margin-bottom:28px}.member-heading-row{display:flex;align-items:end;justify-content:space-between;gap:30px}.member-heading-row>div>p{max-width:650px;margin:0;color:var(--muted);font-size:14px}.member-discover-link{flex:0 0 auto;display:flex;align-items:center;gap:18px;padding:13px 17px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11px;font-weight:800}.member-discover-link span{color:var(--orange)}.member-tabs{position:sticky;z-index:25;top:81px;display:flex;gap:5px;margin-bottom:25px;padding:6px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(30,20,40,.06);backdrop-filter:blur(16px)}.member-tabs a{display:flex;align-items:center;gap:8px;padding:10px 15px;border-radius:11px;color:var(--muted);font-size:11px;font-weight:800}.member-tabs a:hover{background:var(--lavender);color:var(--violet)}.member-tabs b{display:grid;min-width:20px;height:20px;place-items:center;border-radius:7px;background:#eee7f4;color:var(--violet);font-size:9px}.member-summary{overflow:hidden;padding:28px}.member-summary::after{content:"";position:absolute;width:150px;height:150px;right:-80px;top:-65px;border-radius:50%;background:linear-gradient(135deg,var(--pink),var(--orange));opacity:.2}.member-account-label{display:block;margin:18px 0 0;color:#ffb342;font-size:9px;font-weight:800;letter-spacing:.06em}.member-summary-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px 0}.member-summary-stats div{padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:14px}.member-summary-stats strong,.member-summary-stats span{display:block}.member-summary-stats strong{font:800 23px var(--display)}.member-summary-stats span{margin-top:2px;color:#aaa3b0;font-size:9px}.member-summary a{display:flex;justify-content:space-between}.member-section{scroll-margin-top:150px;padding:32px}.member-section-title{align-items:start}.member-section-title p{margin:8px 0 0;color:var(--muted);font-size:11px}.saved-item{padding:0;overflow:hidden}.saved-item>a{min-width:0;flex:1;padding:18px}.saved-item>a>span{display:block;margin-top:10px;color:var(--violet);font-size:10px;font-weight:800}.saved-item form{padding-right:15px}.member-empty{min-height:170px;display:flex;align-items:center;justify-content:center;flex-direction:column}.member-empty svg{width:28px;height:28px;margin-bottom:13px;fill:none;stroke:var(--violet);stroke-width:1.6}.member-empty strong{color:var(--ink);font:800 17px var(--display)}.member-empty p{margin:7px 0 12px}.member-empty a{color:var(--violet);font-weight:800}.quick-list-form{grid-template-columns:1fr 190px auto;align-items:end;padding:18px;border-radius:17px;background:#f7f3f9}.quick-list-form label{display:grid;gap:6px}.quick-list-form label>span{font-size:9px;font-weight:800}.user-list-head p{margin:0;color:var(--muted);font-size:10px}.user-list-actions{display:flex;align-items:start;gap:12px}.user-list-actions a,.user-list-actions button{color:var(--violet);font-size:9px;font-weight:800}.list-empty{margin:0;padding-top:13px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.preferences-section>form>details{border-top:1px solid var(--line)}.preferences-section>form>details:last-of-type{border-bottom:1px solid var(--line)}.preferences-section summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 0;cursor:pointer;list-style:none}.preferences-section summary::-webkit-details-marker{display:none}.preferences-section summary span,.preferences-section summary b,.preferences-section summary small{display:block}.preferences-section summary b{font:800 15px var(--display)}.preferences-section summary small{margin-top:4px;color:var(--muted);font-size:10px}.preferences-section summary>i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#f5f1f7}.preferences-section summary>i::before{content:"+";font-style:normal}.preferences-section details[open] summary>i::before{content:"−"}.preferences-section .choice-cloud,.notification-switches{padding:0 0 22px}.notification-switches{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.notification-switches label{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border:1px solid var(--line);border-radius:14px;font-size:11px;font-weight:800}.notification-switches input{position:absolute;opacity:0}.notification-switches i{position:relative;width:38px;height:22px;border-radius:999px;background:#d9d3de}.notification-switches i::after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#fff;transition:.2s}.notification-switches input:checked+i{background:var(--violet)}.notification-switches input:checked+i::after{transform:translateX(16px)}.preference-save{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px}.preference-save p{margin:0;color:var(--muted);font-size:10px}

.bottom-nav-logout{min-width:0;margin:0}.bottom-nav-logout button{width:100%;height:100%;cursor:pointer}.bottom-nav a,.bottom-nav button{text-decoration:none}.bottom-nav .active{position:relative}.bottom-nav .active::after{content:"";position:absolute;bottom:1px;width:4px;height:4px;border-radius:50%;background:var(--violet)}

@media(max-width:900px){.panel-shell{padding:38px 20px 105px}.panel-nav{top:70px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.panel-card{overflow-x:auto}.homepage-admin-row{grid-template-columns:70px 1fr}.homepage-admin-row label,.homepage-admin-row button{grid-column:auto}.member-heading-row{align-items:start;flex-direction:column}.member-discover-link{display:none}.member-tabs{top:69px}.member-layout{grid-template-columns:1fr}.member-summary{position:static}.quick-list-form{grid-template-columns:1fr 1fr}.quick-list-form button{grid-column:1/-1}.saved-grid{grid-template-columns:1fr}}
@media(max-width:720px){.panel-shell>h1{font-size:42px}.panel-shell{padding-inline:16px}.panel-card{padding:20px}.data-table{min-width:650px}.member-page{padding:28px 14px 100px}.member-heading{margin-bottom:22px}.member-heading h1{font-size:47px}.member-heading-row>div>p{font-size:12px;line-height:1.5}.member-tabs{margin-inline:-6px;overflow-x:auto}.member-tabs a{flex:0 0 auto}.member-summary{padding:24px}.member-content{gap:12px}.member-section{padding:23px 18px;border-radius:20px}.member-section-title{gap:15px}.member-section-title h2{font-size:27px}.quick-list-form{grid-template-columns:1fr;padding:14px}.quick-list-form button{grid-column:auto}.notification-switches{grid-template-columns:1fr}.preference-save{align-items:stretch;flex-direction:column}.preference-save .button{width:100%}.event-card>.favorite-form,.event-card>.favorite-button{right:9px;top:9px}.favorite-button{min-width:40px;min-height:40px;padding:9px}.detail-actions .favorite-button span{display:none}.article-meta-actions{align-items:flex-start;flex-direction:column}}

.autocomplete-wrap{position:relative;z-index:35}.autocomplete-wrap>form{margin:0}.autocomplete-results{position:absolute;z-index:80;top:calc(100% + 8px);left:0;right:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 22px 55px rgba(30,20,40,.16)}.autocomplete-results[hidden]{display:none}.autocomplete-results a{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:12px;padding:12px 15px;border-bottom:1px solid #eee9f0}.autocomplete-results a:last-child{border-bottom:0}.autocomplete-results a:hover{background:#faf6fd}.autocomplete-results small{color:var(--violet);font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.autocomplete-results span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800}.autocomplete-results b{color:var(--orange)}.article-meta-actions>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.create-list-hint{display:inline-flex;padding:10px 13px;border:1px solid var(--line);border-radius:999px;color:var(--violet);font-size:10px;font-weight:800}
.panel-section-heading{margin-top:10px;padding-top:22px;border-top:1px solid var(--line)}.panel-section-heading small,.menu-builder-head small{color:var(--violet);font-size:9px;font-weight:900;letter-spacing:.08em}.panel-section-heading h2,.menu-builder-head h2{margin:5px 0;font:800 24px var(--display)}.panel-section-heading p{margin:0;color:var(--muted);font-size:11px}.panel-subtitle{margin:42px 0 15px;font:800 30px var(--display);letter-spacing:-.04em}.menu-admin-preview{display:grid;gap:7px;margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}.menu-admin-preview span{display:flex;justify-content:space-between;font-size:11px}.menu-builder{padding:19px;border-radius:17px;background:#f8f5fa}.menu-builder-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.menu-builder-head .secondary{background:#fff;color:var(--violet);border:1px solid var(--line)}.menu-builder-category{margin-top:13px;padding:14px;border:1px solid var(--line);border-radius:15px;background:#fff}.menu-builder-category>div:first-child{display:flex;align-items:center;gap:8px}.menu-builder-category>div:first-child input{flex:1;padding:11px;border:1px solid var(--line);border-radius:11px}.menu-builder-category button{border:0;background:transparent;color:var(--violet);font-size:10px;font-weight:800;cursor:pointer}.menu-product-row{display:grid;grid-template-columns:1.2fr 1.6fr 100px 100px 30px;gap:7px;margin-top:8px}.menu-product-row input{min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px}.menu-product-row>button{font-size:20px;color:var(--pink)}@media(max-width:800px){.menu-builder-head,.menu-builder-category>div:first-child{align-items:stretch;flex-direction:column}.menu-product-row{grid-template-columns:1fr 1fr}.menu-product-row input:nth-child(1),.menu-product-row input:nth-child(2){grid-column:1/-1}.menu-product-row>button{grid-column:2;justify-self:end}}

/* Public business directory */
.directory-page,.business-public-page{padding-bottom:110px}.directory-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:end;gap:70px;padding-block:78px 60px}.directory-hero h1,.business-public-hero h1{margin:14px 0 20px;font:800 clamp(54px,6.5vw,94px)/.9 var(--display);letter-spacing:-.072em}.directory-hero h1 em{font-style:normal;background:linear-gradient(95deg,var(--violet),var(--pink),var(--orange));color:transparent;background-clip:text;-webkit-background-clip:text}.directory-hero>div>p:last-child,.business-public-hero p{max-width:650px;color:var(--muted);line-height:1.65}.directory-search{padding:22px;border-radius:23px;background:var(--night);color:#fff}.directory-search label{display:block;margin-bottom:10px;color:#cfc8d5;font-size:10px;font-weight:800}.directory-search>div{display:flex;gap:8px}.directory-search input{min-width:0;flex:1;padding:15px;border:0;border-radius:14px;background:#fff;color:var(--ink);font:inherit}.directory-search button{padding:0 19px;border:0;border-radius:14px;background:linear-gradient(120deg,var(--violet),var(--pink));color:#fff;font-weight:800;cursor:pointer}.directory-results{padding-top:24px}.business-directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.business-directory-card{display:grid;grid-template-columns:74px minmax(0,1fr) 42px;align-items:center;gap:18px;padding:20px;border:1px solid var(--line);border-radius:21px;background:#fff}.business-monogram{display:grid;width:74px;height:74px;place-items:center;border-radius:21px;background:linear-gradient(145deg,var(--violet),var(--pink) 62%,var(--orange));color:#fff;font:800 29px var(--display)}.business-directory-card small{color:var(--violet);font-size:9px;font-weight:900}.business-directory-card h2{margin:5px 0;font:800 21px var(--display);letter-spacing:-.04em}.business-directory-card p{margin:0;color:var(--muted);font-size:10px}.business-place-chips{display:flex;gap:5px;overflow:hidden;margin-top:10px}.business-place-chips a{max-width:160px;overflow:hidden;padding:6px 8px;border-radius:8px;background:#f5f0f8;text-overflow:ellipsis;white-space:nowrap;color:var(--violet);font-size:8px;font-weight:800}.round-link{display:grid;width:39px;height:39px;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:18px}.business-public-hero{display:grid;grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:30px;padding-block:72px}.business-monogram.large{width:125px;height:125px;border-radius:34px;font-size:50px}.business-public-hero h1{font-size:clamp(50px,6vw,82px)}.business-public-page .card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.directory-empty{grid-column:1/-1;display:block}
@media(max-width:900px){.directory-hero{grid-template-columns:1fr;gap:25px;padding-block:50px 40px}.business-directory-grid{grid-template-columns:1fr}.business-public-hero{grid-template-columns:100px 1fr}.business-monogram.large{width:96px;height:96px;border-radius:27px}.business-public-hero>.button{grid-column:1/-1;justify-self:start}.business-public-page .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.directory-page,.business-public-page{padding-bottom:90px}.directory-hero{padding-block:34px 28px}.directory-hero h1,.business-public-hero h1{font-size:48px}.directory-search{padding:15px}.directory-search>div{flex-direction:column}.directory-search button{min-height:46px}.business-directory-card{grid-template-columns:58px minmax(0,1fr) 34px;gap:12px;padding:14px}.business-monogram{width:58px;height:58px;border-radius:17px;font-size:23px}.business-directory-card h2{font-size:18px}.business-public-hero{grid-template-columns:1fr;gap:18px;padding-block:38px}.business-monogram.large{width:82px;height:82px}.business-public-page .card-grid{grid-template-columns:1fr}}

/* Living discovery navigation */
.discover-menu{position:relative}.discover-menu summary{position:relative;list-style:none;cursor:pointer}.discover-menu summary::-webkit-details-marker{display:none}.discover-menu summary span{display:inline-block;margin-left:3px;color:var(--pink);transition:transform .2s}.discover-menu[open] summary span{transform:rotate(180deg)}.discover-popover{position:absolute;top:38px;left:50%;width:660px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(26,16,36,.17);transform:translateX(-36%)}.discover-popover>div{display:grid;align-content:start;gap:4px}.discover-popover small{margin-bottom:7px;color:var(--muted);font-size:9px;font-weight:800}.discover-popover a{padding:7px 0;font-size:13px}.discover-popover a::after{display:none}.discover-popover a:hover{color:var(--violet)}.discover-popover .discover-all{grid-column:1/-1;display:flex;justify-content:space-between;margin-top:4px;padding:15px 17px;border-radius:14px;background:var(--night);color:#fff}.discover-popover .discover-all:hover{color:#fff}.discover-all b{color:var(--orange)}

/* Filter workspace: never overflows the viewport */
.listing-tools{position:sticky;top:82px;display:block;padding-block:12px}.filter-panel{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.97);box-shadow:0 12px 34px rgba(30,20,40,.06)}.filter-panel>summary{display:none}.filter-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;padding:15px}.listing-search,.select-filter,.compact-filter{min-width:0;display:grid;align-content:start;gap:7px;padding:0;border:0;border-radius:0;background:transparent}.listing-search{grid-column:span 3}.select-filter,.compact-filter{grid-column:span 2}.listing-search>span,.select-filter>span,.compact-filter>span,.toggle-filters>span{color:var(--muted);font-size:9px;font-weight:800}.listing-search>div{display:flex;align-items:center;gap:8px}.listing-search>div,.select-filter select,.compact-filter input{width:100%;height:44px;min-width:0;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:#fff}.listing-search>div input{min-width:0;border:0;outline:0;background:transparent}.select-filter select{padding-right:30px;font:600 11px var(--body)}.compact-filter input{font:600 12px var(--body)}.toggle-filters{grid-column:1/-3;min-width:0}.toggle-filters>div{display:flex;gap:7px;overflow-x:auto;padding-top:7px;scrollbar-width:thin}.toggle-filters label{flex:0 0 auto;display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:10px;font-weight:700;cursor:pointer}.toggle-filters input{position:absolute;opacity:0}.toggle-filters i{position:relative;width:28px;height:17px;border-radius:999px;background:#ded8e3}.toggle-filters i::after{content:"";position:absolute;width:11px;height:11px;left:3px;top:3px;border-radius:50%;background:#fff;transition:.18s}.toggle-filters input:checked+i{background:var(--violet)}.toggle-filters input:checked+i::after{transform:translateX(11px)}.filter-actions{grid-column:-3/-1;align-self:end;display:flex;align-items:center;justify-content:flex-end;gap:11px}.filter-actions a{color:var(--muted);font-size:10px;font-weight:800}.listing-count{display:flex;align-items:center;justify-content:space-between;gap:20px}.listing-count p{margin:0}.listing-count>span{color:var(--muted);font-size:11px}.inventory-badge{position:absolute;left:12px;top:12px;padding:8px 10px;border-radius:999px;background:var(--night);color:#fff;font-size:9px;font-weight:800}

/* Explore hub */
.explore-page{padding-bottom:110px}.explore-hero{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:8vw;padding-block:82px}.explore-hero h1{margin:0;font:800 clamp(58px,7vw,100px)/.88 var(--display);letter-spacing:-.075em}.explore-hero h1 em{font-style:normal;color:var(--violet)}.explore-search{padding:24px;border-radius:22px;background:var(--night);color:#fff}.explore-search label{display:block;margin-bottom:10px;color:#c9c1cf;font-size:10px;font-weight:800}.explore-search>div{display:flex;gap:8px}.explore-search input{min-width:0;flex:1;padding:14px;border:0;border-radius:12px;font:inherit}.explore-search button{padding:0 20px;border:0;border-radius:12px;background:var(--orange);font-weight:800;cursor:pointer}.explore-catalog{padding-bottom:105px}.explore-catalog .section-heading p,.explore-regions .section-heading p,.media-section .section-heading p,.vehicle-section .section-heading p{margin:8px 0 0;color:var(--muted);font-size:13px}.explore-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.explore-groups article{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff}.explore-parent{display:flex;justify-content:space-between;padding:20px;border-bottom:1px solid var(--line);font:800 20px var(--display);letter-spacing:-.035em}.explore-parent b{color:var(--pink)}.explore-groups article>div{display:flex;flex-wrap:wrap;gap:7px;padding:16px}.explore-groups article>div a,.explore-groups article>div span{padding:8px 10px;border-radius:999px;background:#f5f1f7;color:var(--violet);font-size:10px;font-weight:700}.explore-regions{margin-bottom:105px;padding:80px 0;background:var(--night);color:#fff}.explore-regions .section-heading p{color:#a9a0b0}.region-ribbon{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.16)}.region-ribbon a{display:flex;min-height:105px;flex-direction:column;justify-content:space-between;padding:18px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.region-ribbon strong{font:800 21px var(--display)}.region-ribbon span{color:#ffb34b;font-size:10px;font-weight:800}

/* Public menus, galleries and rental fleet */
.media-section,.vehicle-section{padding-bottom:90px}.media-section>.section-heading,.vehicle-section>.section-heading{margin-bottom:22px}.media-section>.section-heading>span,.vehicle-section>.section-heading>span{color:var(--violet);font-size:11px;font-weight:800}.place-gallery{padding-bottom:0}.place-gallery figure{position:relative}.place-gallery figcaption{position:absolute;left:10px;right:10px;bottom:10px;padding:8px 10px;border-radius:10px;background:rgba(20,14,27,.72);color:#fff;font-size:10px;backdrop-filter:blur(8px)}.video-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.video-gallery figure{margin:0;overflow:hidden;border-radius:20px;background:#19131f}.video-gallery video{display:block;width:100%;aspect-ratio:16/9;background:#19131f}.video-gallery figcaption{padding:12px 15px;color:#fff;font-size:11px}.public-menu{margin-top:45px}.public-menu .section-heading.compact{margin-bottom:18px}.menu-block{padding:0;overflow:hidden}.menu-title{display:flex;align-items:start;justify-content:space-between;gap:20px;padding:20px 22px;background:#f7f3f9}.menu-title h3{margin:0}.menu-title p{margin:5px 0 0;font-size:11px}.menu-title>a{flex:0 0 auto;padding:9px 11px;border-radius:999px;background:#fff;color:var(--violet);font-size:10px;font-weight:800}.menu-category{padding:8px 22px 18px}.menu-category h4{margin:16px 0 8px;font:800 15px var(--display)}.menu-items{display:grid}.menu-items article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.menu-items article:last-child{border-bottom:0}.menu-items img{width:54px;height:54px;border-radius:12px;object-fit:cover}.menu-items article>div strong,.menu-items article>div span{display:block}.menu-items article>div strong{font-size:12px}.menu-items article>div span{margin-top:4px;color:var(--muted);font-size:10px}.menu-items article>p{display:grid;justify-items:end;gap:2px;margin:0;white-space:nowrap}.menu-items del{color:var(--muted);font-size:9px}.menu-items b{color:var(--violet);font-size:12px}.vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.vehicle-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff}.vehicle-image{position:relative;aspect-ratio:16/10;overflow:hidden;background:#ece8ef}.vehicle-image img{width:100%;height:100%;object-fit:cover}.vehicle-image>span{position:absolute;left:12px;top:12px;padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.92);font-size:9px;font-weight:800}.vehicle-body{padding:18px}.vehicle-body>small{color:var(--violet);font-size:9px;font-weight:800}.vehicle-body h3{margin:5px 0 15px;font:800 22px var(--display);letter-spacing:-.04em}.vehicle-body ul{margin:0;padding:0;list-style:none}.vehicle-body li{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line);font-size:10px}.vehicle-body li b{color:var(--muted)}.vehicle-price{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:16px}.vehicle-price strong,.vehicle-price span{display:block}.vehicle-price strong{font:800 20px var(--display)}.vehicle-price span{color:var(--muted);font-size:9px}.vehicle-price a{padding:10px 12px;border-radius:999px;background:var(--night);color:#fff;font-size:9px;font-weight:800}.panel-vehicle-grid{margin-top:25px}.panel-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}.panel-media-grid figure{margin:0;padding:12px}.panel-media-grid img,.panel-media-grid video{width:100%;aspect-ratio:4/3;border-radius:14px;object-fit:cover;background:var(--night)}.panel-media-grid figcaption{display:grid;gap:3px;padding:11px 5px 3px}.panel-media-grid figcaption strong{font-size:10px}.panel-media-grid figcaption span{color:var(--muted);font-size:10px}

/* Branded file controls */
.visually-hidden-file{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.file-picker{display:flex!important;align-items:center;gap:12px;min-height:58px;padding:8px!important;border:1px dashed #cfc4d7;border-radius:15px;background:#faf7fc;cursor:pointer}.file-picker-action{flex:0 0 auto;padding:11px 14px;border-radius:10px;background:var(--night);color:#fff;font-size:11px;font-weight:800}.file-picker [data-file-name]{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.claim-box input[type=file],.field input[type=file]{padding:7px;background:#faf7fc;color:var(--muted);font-size:10px}.claim-box input[type=file]::file-selector-button,.field input[type=file]::file-selector-button{margin-right:10px;padding:10px 13px;border:0;border-radius:9px;background:var(--night);color:#fff;font:800 10px var(--body);cursor:pointer}.menu-product-row{grid-template-columns:1.1fr 1.4fr 1.2fr 90px 90px 30px}

@media(max-width:1050px){.discover-menu{display:none}.filter-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.listing-search{grid-column:span 2}.select-filter,.compact-filter{grid-column:span 2}.toggle-filters{grid-column:1/-1}.filter-actions{grid-column:1/-1;justify-content:flex-start}.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.listing-tools{top:69px;padding-block:8px}.filter-panel>summary{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:9px;padding:14px 15px;list-style:none;cursor:pointer}.filter-panel>summary::-webkit-details-marker{display:none}.filter-panel>summary span{font-size:12px;font-weight:800}.filter-panel>summary b{color:var(--muted);font-size:9px}.filter-panel>summary i{font-style:normal;color:var(--violet);transition:transform .2s}.filter-panel[open]>summary i{transform:rotate(180deg)}.filter-panel[open]>summary{border-bottom:1px solid var(--line)}.filter-grid{grid-template-columns:1fr 1fr;padding:13px}.listing-search,.select-filter,.compact-filter{grid-column:auto}.listing-search{grid-column:1/-1}.toggle-filters,.filter-actions{grid-column:1/-1}.filter-actions{align-items:stretch;flex-direction:column}.filter-actions .button{width:100%}.listing-count{align-items:start;flex-direction:column;gap:5px}.explore-hero{grid-template-columns:1fr;gap:30px;padding-block:48px}.explore-hero h1{font-size:55px}.explore-groups{grid-template-columns:1fr}.region-ribbon{grid-template-columns:repeat(2,1fr)}.video-gallery,.vehicle-grid,.panel-media-grid{grid-template-columns:1fr}.media-section,.vehicle-section{padding-bottom:65px}.menu-title{align-items:stretch;flex-direction:column}.menu-title>a{align-self:flex-start}.menu-items article{grid-template-columns:auto 1fr}.menu-items article>p{grid-column:2;justify-items:start}.menu-product-row{grid-template-columns:1fr 1fr}.menu-product-row input:nth-child(1),.menu-product-row input:nth-child(2),.menu-product-row input:nth-child(3){grid-column:1/-1}}

.nav-wrap{gap:22px}.desktop-nav{flex:1;justify-content:center;margin-left:0}.brand,.nav-actions{flex:0 0 auto}.toggle-filters>div{flex-wrap:wrap;overflow:visible}.toggle-filters>div::-webkit-scrollbar{display:none}

/* 2026 listing workspace: compact commerce-style filters */
.listing-workspace{display:grid;grid-template-columns:264px minmax(0,1fr);gap:28px;align-items:start;padding-bottom:115px}
.listing-workspace .listing-tools{position:sticky;top:94px;z-index:25;max-height:calc(100dvh - 106px);overflow-y:auto;padding:0;scrollbar-width:thin}
.listing-workspace .filter-panel{overflow:hidden;border-radius:18px;box-shadow:0 10px 30px rgba(30,20,40,.055)}
.listing-workspace .filter-grid{display:grid;grid-template-columns:1fr;gap:17px;padding:20px}
.listing-workspace .listing-search,.listing-workspace .select-filter,.listing-workspace .compact-filter,.listing-workspace .toggle-filters,.listing-workspace .filter-actions{grid-column:1/-1}
.listing-workspace .listing-search>span,.listing-workspace .select-filter>span,.listing-workspace .compact-filter>span,.listing-workspace .toggle-filters>span{font-size:10px;color:#625b69}
.listing-workspace .listing-search>div,.listing-workspace .select-filter select,.listing-workspace .compact-filter input{height:46px;border-radius:11px}
.listing-workspace .toggle-filters>div{display:grid;gap:7px;padding-top:4px}
.listing-workspace .toggle-filters label{width:100%;justify-content:space-between;padding:10px 11px;border-radius:11px}
.listing-workspace .toggle-filters label i{order:2}
.listing-workspace .filter-actions{display:grid;justify-content:stretch;gap:10px;padding-top:3px}
.listing-workspace .filter-actions .button{width:100%;border-radius:12px}
.listing-workspace .filter-actions [data-listing-clear]{width:100%;min-height:40px;border:1px solid var(--line);border-radius:11px;background:#f7f2fa;color:var(--violet);font:800 11px var(--body);cursor:pointer}
.listing-workspace .filter-actions [data-listing-clear]:hover{background:#eee3f6}
.listing-workspace .filter-actions [data-listing-clear][hidden],.directory-filter-actions [data-business-clear][hidden],.explore-filter [data-explore-clear][hidden]{display:none!important}
.listing-workspace .listing-section{min-width:0;padding:3px 0 0}
.listing-workspace .event-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 16px}

/* Keşfet is the single navigation accent. */
.desktop-nav .discover-menu summary{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid rgba(121,41,210,.42);border-radius:999px;background:#fbf7ff;color:var(--violet);font-weight:800;line-height:1}
.desktop-nav .discover-menu summary span{display:grid;width:14px;height:14px;margin:0;place-items:center;color:var(--pink)}
.desktop-nav .discover-menu summary svg{display:block;width:10px;height:7px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.desktop-nav .discover-menu[open] summary{border-color:var(--violet);background:var(--lavender)}
.desktop-nav .discover-popover{top:48px}

@media(max-width:1050px) and (min-width:901px){.listing-workspace{grid-template-columns:238px minmax(0,1fr);gap:20px}.listing-workspace .event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:900px){
  .listing-workspace{display:block;padding-bottom:95px}
  .listing-workspace .listing-tools{position:sticky;top:82px;z-index:25;max-height:calc(100dvh - 90px);margin-bottom:22px;padding:8px 0;overflow-y:auto}
  .listing-workspace .filter-panel>summary{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:9px;padding:14px 15px;list-style:none;cursor:pointer}
  .listing-workspace .filter-panel>summary::-webkit-details-marker{display:none}
  .listing-workspace .filter-panel>summary span{font-size:12px;font-weight:800}.listing-workspace .filter-panel>summary b{color:var(--muted);font-size:9px}
  .listing-workspace .filter-panel>summary i{font-style:normal;color:var(--violet);transition:transform .2s}.listing-workspace .filter-panel[open]>summary i{transform:rotate(180deg)}
  .listing-workspace .filter-panel[open]>summary{border-bottom:1px solid var(--line)}
  .listing-workspace .filter-grid{grid-template-columns:1fr 1fr;padding:15px}
  .listing-workspace .listing-search{grid-column:1/-1}.listing-workspace .select-filter,.listing-workspace .compact-filter{grid-column:auto}
  .listing-workspace .toggle-filters,.listing-workspace .filter-actions{grid-column:1/-1}
  .listing-workspace .toggle-filters>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .listing-workspace .filter-actions{display:flex;align-items:center}.listing-workspace .filter-actions .button{width:auto}
}

@media(max-width:720px){
  body{padding-bottom:94px}
  .listing-hero{padding-block:35px 19px}.listing-hero h1{font-size:47px}.listing-intro{font-size:13px}
  .listing-workspace .listing-tools{top:70px;max-height:calc(100dvh - 78px);margin-bottom:16px}
  .listing-workspace .filter-grid{grid-template-columns:1fr}.listing-workspace .select-filter,.listing-workspace .compact-filter{grid-column:1/-1}
  .listing-workspace .toggle-filters>div{grid-template-columns:1fr}
  .listing-workspace .filter-actions{align-items:stretch;flex-direction:column}.listing-workspace .filter-actions .button{width:100%}
  .listing-workspace .event-grid{grid-template-columns:1fr;gap:30px}
  .bottom-nav{left:10px;right:10px;bottom:10px;height:78px;padding:7px 5px;border-color:rgba(39,25,49,.11);border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(28,18,36,.2);backdrop-filter:none}
  .bottom-nav a,.bottom-nav button{gap:5px;font-size:9.5px;font-weight:750;line-height:1;color:#6f6875}
  .bottom-nav svg{width:24px;height:24px;stroke-width:1.7}
  .bottom-nav .active{color:#89578e}
  .bottom-nav .active svg{width:38px;height:38px;margin-top:-10px;padding:9px;border-radius:13px;background:linear-gradient(145deg,#d46aab,#8667b0);fill:none;stroke:#fff;box-shadow:0 5px 13px rgba(138,91,155,.22)}
  .bottom-nav .active::after{display:none}
}

/* Searchable Select2 controls and compact quick-filter disclosure */
.select-filter .select2-container{display:block;width:100%!important;font-family:var(--body)}
.select-filter .select2-container .select2-selection--single{height:46px;border:1px solid var(--line);border-radius:11px;background:#fff;outline:0}
.select-filter .select2-container .select2-selection--single .select2-selection__rendered{height:44px;padding:0 38px 0 13px;color:var(--ink);font-size:11px;font-weight:650;line-height:44px}
.select-filter .select2-container .select2-selection--single .select2-selection__arrow{right:10px;top:10px;width:22px;height:25px}
.select-filter .select2-container .select2-selection--single .select2-selection__arrow b{border-color:var(--ink) transparent transparent;border-width:5px 4px 0;margin-left:-4px;margin-top:-2px}
.select-filter .select2-container--open .select2-selection--single{border-color:var(--violet);box-shadow:0 0 0 4px rgba(121,41,210,.09)}
.select2-container--open{z-index:120}
.select2-dropdown{overflow:hidden;border:1px solid #d9d0df;border-radius:12px;background:#fff;box-shadow:0 16px 40px rgba(30,20,40,.16)}
.select2-search--dropdown{padding:8px}.select2-search--dropdown .select2-search__field{height:38px;padding:0 11px;border:1px solid var(--line)!important;border-radius:8px;outline:0;font:600 12px var(--body)}
.select2-search--dropdown .select2-search__field:focus{border-color:var(--violet)!important;box-shadow:0 0 0 3px rgba(121,41,210,.08)}
.select2-results__options{padding:4px}.select2-results__option{margin:2px 0;padding:9px 10px;border-radius:8px;font:600 11px var(--body)}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:var(--lavender);color:var(--violet)}
.select2-container--default .select2-results__option--selected{background:var(--night);color:#fff}
.quick-choice-hidden{display:none!important}
.quick-filters-toggle{width:100%;display:flex;align-items:center;justify-content:center;gap:5px;margin-top:9px;padding:10px;border:1px dashed #cfc4d7;border-radius:11px;background:#faf7fc;color:var(--violet);font:800 10px var(--body);cursor:pointer}
.quick-filters-toggle[hidden]{display:none}.quick-filters-toggle b{font-size:9px}.quick-filters-toggle i{margin-left:auto;font-style:normal;transition:transform .2s}
.quick-filters-toggle[aria-expanded="true"] i{transform:rotate(180deg)}
.quick-filters-toggle:hover{border-style:solid;background:var(--lavender)}
.quick-filters-toggle:focus-visible{outline:2px solid var(--violet);outline-offset:2px}
.vehicle-editor{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.vehicle-editor>summary{cursor:pointer;color:var(--violet);font-size:11px;font-weight:850}.vehicle-editor .form-grid{margin-top:14px;grid-template-columns:1fr}.vehicle-editor-actions{display:flex;align-items:center;gap:12px}.text-danger{margin-top:10px;padding:0;border:0;background:transparent;color:#b33a4c;font:800 11px var(--body);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.reviews-section{padding-block:72px 100px}.reviews-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:24px;align-items:start}.review-list{display:grid;gap:12px}.review-card,.review-form{padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff}.review-card>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.review-stars{color:#f28b19;letter-spacing:.08em}.review-card time{color:var(--muted);font-size:10px}.review-card p{color:var(--muted);line-height:1.65}.review-card>strong{font-size:12px}.review-average{font:800 34px var(--display);color:var(--violet)}.review-average span{font-size:13px;color:var(--muted)}.review-form{position:sticky;top:100px;display:grid;gap:15px}.review-form h3{margin:0;font:800 24px var(--display)}.review-form label{display:grid;gap:7px;font-size:11px;font-weight:800}.review-form select,.review-form textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fcfbfd;font:inherit}.review-form textarea{min-height:130px;resize:vertical}.social-page{min-height:70vh;padding-block:70px 120px}.social-page>h1,.social-profile h1{margin:8px 0 14px;font:800 clamp(48px,6vw,78px)/.94 var(--display);letter-spacing:-.06em}.social-profile{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;margin-bottom:60px}.social-actions{display:flex;flex-wrap:wrap;gap:9px}.button.secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}
@media(max-width:720px){.reviews-layout{grid-template-columns:1fr}.review-form{position:static}.reviews-section{padding-block:48px 90px}.social-page{padding:40px 16px 100px}.social-profile{grid-template-columns:auto 1fr}.social-profile>form{grid-column:1/-1}.social-profile h1{font-size:42px}}

/* Task-led administration dashboard */
.admin-dashboard{max-width:1320px}.admin-nav{align-items:stretch;padding:7px}.admin-nav-brand{display:flex!important;align-items:center;gap:8px!important;margin-right:4px!important;padding:7px 12px!important;background:var(--night)!important;color:#fff!important}.admin-nav-brand span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,#8f31ee,#ff318a);font-size:9px}.admin-nav-brand b{font-size:11px}.admin-nav>div{display:flex;align-items:center;gap:2px;padding:0 5px;border-left:1px solid var(--line)}.admin-nav>div>small{padding:0 5px;color:#aaa2ad;font-size:7px;font-weight:900;letter-spacing:.1em}.admin-nav>div>a{padding:9px 10px}.admin-welcome{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.7fr);gap:55px;align-items:end;padding:22px 0 40px}.admin-welcome h1{margin:12px 0 18px;font:800 clamp(50px,6vw,82px)/.89 var(--display);letter-spacing:-.065em}.admin-welcome>div>p:last-child{max-width:630px;color:var(--muted);line-height:1.6}.admin-quick-actions{display:grid;gap:9px}.admin-quick-actions>a{display:flex;align-items:center;gap:14px;padding:15px;border:1px solid var(--line);border-radius:17px;background:#fff;transition:.2s}.admin-quick-actions>a:hover{transform:translateX(-4px);border-color:#c9a6ed}.admin-quick-actions>a>b{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#f2ebf7;color:var(--violet);font-size:18px}.admin-quick-actions span,.admin-quick-actions strong,.admin-quick-actions small{display:block}.admin-quick-actions strong{font-size:12px}.admin-quick-actions small{margin-top:3px;color:var(--muted);font-size:9px}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.admin-stat{position:relative;min-height:145px;padding:22px;overflow:hidden;border-radius:22px;background:#19131f;color:#fff}.admin-stat>span{position:absolute;right:-20px;top:-35px;width:105px;height:105px;border-radius:50%;background:#7730d7;opacity:.7}.admin-stat.is-pink>span{background:#fa318a}.admin-stat.is-orange>span{background:#ee8d25}.admin-stat.is-green>span{background:#1aa678}.admin-stat small,.admin-stat strong{position:relative;display:block}.admin-stat small{color:#d7d0dc;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.admin-stat strong{margin-top:25px;font:800 43px var(--display)}.admin-command-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:16px}.admin-card-heading{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:18px}.admin-card-heading small{color:var(--violet);font-size:8px;font-weight:900;letter-spacing:.1em}.admin-card-heading h2{margin:5px 0 0;font:800 26px var(--display);letter-spacing:-.04em}.admin-card-heading p{margin:6px 0 0;color:var(--muted);font-size:10px}.admin-card-heading>a{font-size:9px;font-weight:800}.admin-pending>a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);font-size:11px;font-weight:700}.admin-pending>a b{display:grid;place-items:center;min-width:29px;height:29px;padding:0 7px;border-radius:10px;background:#f2eef4;color:var(--muted)}.admin-pending>a b.has-work{background:#fff0db;color:#9b6200}.admin-content-links>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:9px}.admin-content-links>div>a{display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-items:center;padding:14px;border-radius:16px;background:#f8f5f9}.admin-content-links>div>a .content-icon{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eaddf3;color:var(--violet);font-size:17px}.content-icon.event{background:#ffe7f1!important;color:#ca2f72!important}.content-icon.place{background:#e7f4ff!important;color:#1773a5!important}.content-icon.article{background:#fff1dc!important;color:#a4670a!important}.content-icon.home{background:#e7f7f0!important;color:#168259!important}.admin-content-links b{font-size:11px}.admin-content-links small{color:var(--muted);font-size:8px}.admin-recent,.admin-sync{margin-top:16px}.admin-recent-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}.admin-recent-columns h3{margin:0 0 8px;font:800 14px var(--display)}.admin-recent-columns a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-top:1px solid var(--line)}.admin-recent-columns a span,.admin-recent-columns a b,.admin-recent-columns a small{display:block}.admin-recent-columns a b{font-size:10px}.admin-recent-columns a small{margin-top:4px;color:var(--muted);font-size:8px}.admin-recent-columns i{color:var(--violet);font-style:normal}.admin-sync form{display:flex;align-items:end;gap:12px;margin:15px 0 25px;padding:16px;border-radius:17px;background:#f8f5f9}.admin-sync form label{display:grid;flex:1;gap:7px}.admin-sync form label>span{font-size:9px;font-weight:800}.admin-sync form select{background:#fff}.table-scroll{overflow-x:auto}

/* Hotel pages use a photo-and-amenity led hierarchy */
.hotel-subnav{position:sticky;z-index:12;top:82px;display:flex;gap:6px;overflow-x:auto;margin-bottom:70px;padding:8px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 10px 35px rgba(25,15,35,.07);backdrop-filter:blur(18px);scrollbar-width:none}.hotel-subnav a{flex:0 0 auto;padding:10px 14px;border-radius:11px;color:var(--muted);font-size:10px;font-weight:800}.hotel-subnav a:hover{background:var(--night);color:#fff}.hotel-media-section>.section-heading h2{margin:5px 0 8px;font:800 clamp(36px,5vw,62px)/.95 var(--display);letter-spacing:-.055em}.hotel-category-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 22px}.hotel-category-tags span{padding:8px 11px;border-radius:999px;background:#efe7f5;color:var(--violet);font-size:9px;font-weight:800}.hotel-amenities .attribute-list>div{position:relative;padding-left:48px}.hotel-amenities .attribute-list>div:before{content:'\f00c';font-family:'Font Awesome 6 Free';position:absolute;left:16px;top:18px;display:grid;place-items:center;width:23px;height:23px;border-radius:8px;background:#eee5f6;color:var(--violet);font-weight:900}.hotel-amenities .attribute-list a{color:var(--violet);font-size:12px;font-weight:800}.hotel-gallery-empty{padding:0 0 80px}.hotel-gallery-empty h2{font:800 38px var(--display)}.hotel-gallery-empty p{color:var(--muted)}html{scroll-padding-top:160px}.admin-inline-form{display:flex;gap:7px;min-width:280px}.admin-inline-form select{min-width:160px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff}.admin-inline-form .button{padding:10px 14px}

@media(max-width:1000px){.admin-nav>div>small{display:none}.admin-welcome{grid-template-columns:1fr}.admin-quick-actions{grid-template-columns:repeat(3,1fr)}.admin-quick-actions>a{align-items:flex-start;flex-direction:column}.admin-stat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.admin-nav{top:69px}.admin-nav-brand{display:none!important}.admin-nav>div{border:0;padding:0}.admin-welcome{padding-top:5px;gap:24px}.admin-welcome h1{font-size:49px}.admin-quick-actions{grid-template-columns:1fr}.admin-quick-actions>a{align-items:center;flex-direction:row}.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-stat{min-height:118px;padding:17px}.admin-stat strong{margin-top:19px;font-size:34px}.admin-command-grid{grid-template-columns:1fr}.admin-content-links>div:last-child{grid-template-columns:1fr}.admin-recent-columns{grid-template-columns:1fr}.admin-sync form{align-items:stretch;flex-direction:column}.admin-sync form .button{width:100%}.hotel-subnav{top:69px;margin-bottom:45px}.hotel-media-section .place-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.hotel-media-section .place-gallery figure{flex:0 0 86%;height:270px;scroll-snap-align:start}.hotel-media-section .place-gallery figure:first-child{grid-column:auto;grid-row:auto}}

/* Real business imagery; falls back to the monogram only when no place photo exists. */
.business-monogram{overflow:hidden}.business-monogram.has-image{background:#ece8ef}.business-monogram img{display:block;width:100%;height:100%;object-fit:cover}.admin-business-create{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:35px;margin:20px 0}.admin-business-create h2{margin:0 0 8px}.admin-business-create>div p{color:var(--muted);font-size:11px;line-height:1.6}.admin-business-create form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-business-create form .button{align-self:end;min-height:45px}

/* Mobile navigation is a compact app drawer, not a second desktop page. */
@media(max-width:720px){body.menu-open{overflow:hidden}.mobile-menu{display:block;padding:12px 16px calc(104px + env(safe-area-inset-bottom));background:#fbfafc}.mobile-menu-main{display:grid;grid-template-columns:1fr 1fr;gap:6px}.mobile-menu .mobile-menu-main a{min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;font:800 14px/1.15 var(--display)}.mobile-menu .mobile-menu-main a:first-child{grid-column:1/-1;background:var(--night);color:#fff}.mobile-menu-discover{gap:6px;padding:17px 0}.mobile-menu-discover p{font-size:8px}.mobile-menu .mobile-menu-discover a{padding:9px 10px;border-radius:10px;font-size:10px}.mobile-menu-account{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:0 0 18px}.mobile-menu .mobile-menu-account>a,.mobile-menu .mobile-menu-account form{min-width:0}.mobile-menu .mobile-menu-account>a{padding:11px 12px;border:1px solid #e6d9ef;border-radius:11px;background:#f4eef9;color:var(--violet);font:800 11px/1.25 var(--display)}.mobile-menu .mobile-menu-account form{grid-column:1/-1}.mobile-menu .mobile-logout button{width:100%;padding:12px;border:0;border-radius:11px;background:var(--night);color:#fff;font-weight:800}.admin-business-create{grid-template-columns:1fr;gap:16px}.admin-business-create form{grid-template-columns:1fr}}

/* Profile: an island-night header and one task at a time on phones. */
.member-page .member-heading{position:relative;isolation:isolate;overflow:hidden;min-height:260px;display:flex;align-items:end;padding:38px 42px;border-radius:27px;background:#14111d url('assets/content/venue.jpg') center 42%/cover no-repeat;color:#fff}
.member-page .member-heading::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(16,11,29,.94) 0%,rgba(16,11,29,.74) 52%,rgba(16,11,29,.26) 100%)}
.member-page .member-heading h1{margin:8px 0 12px;color:#fff;font-size:clamp(39px,5vw,66px);line-height:1.02;letter-spacing:-.05em}
.member-page .member-heading-row{width:100%;align-items:end}
.member-page .member-heading-row>div>p{color:#f2eef7;font-size:15px;line-height:1.5}
.member-page .member-hero-label{margin:0;color:#fff!important;font-size:12px!important;font-weight:800;letter-spacing:.02em}
.member-hero-stats{display:flex;gap:18px;margin-top:22px;color:#eee6f8;font-size:12px}
.member-hero-stats strong{color:#fff;font-size:17px}
.member-page .member-discover-link{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.13);color:#fff;backdrop-filter:blur(7px)}
.member-page .member-discover-link span{color:#ffbd69}
.member-page .member-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.member-page .member-tabs a{justify-content:center;min-width:0;min-height:44px;padding:9px 8px;text-align:center}
.member-page .member-tabs a[aria-selected="true"]{background:var(--night);color:#fff}
.member-page .member-tabs a[aria-selected="true"] b{background:rgba(255,255,255,.15);color:#fff}
.member-page .member-layout,.member-page .member-content,.member-page .member-section{min-width:0}
.member-page .member-summary{position:sticky;top:110px}
.member-panel-links{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 17px}.member-panel-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;min-height:45px;padding:10px 15px;border:1px solid #e2d6ed;border-radius:13px;background:#f6effc;color:#6533a5;font-size:12px;font-weight:800}.member-panel-links a span{font-size:16px}

/* Mobile navigation is short by default; optional destinations live in disclosures. */
@media(max-width:950px){
  .mobile-menu{gap:0;padding-bottom:calc(114px + env(safe-area-inset-bottom));background:#fff}
  .mobile-menu-heading{position:sticky;z-index:2;top:-18px;display:flex;align-items:center;justify-content:space-between;margin:-18px -24px 18px;padding:16px 24px;border-bottom:1px solid var(--line);background:#fff}
  .mobile-menu-heading strong{font:800 23px var(--display)}
  .mobile-menu-close{width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font-size:25px;cursor:pointer}
  .mobile-menu-main,.mobile-menu-extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .mobile-menu .mobile-menu-main a,.mobile-menu .mobile-menu-extra a{display:flex;align-items:center;min-width:0;min-height:52px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:#faf9fb;color:var(--ink);font:800 14px/1.2 var(--display)}
  .mobile-menu .mobile-menu-main a:nth-child(3){border-color:#dac3ed;background:#f4eafa;color:var(--violet)}
  .mobile-menu .mobile-menu-main a:first-child{grid-column:auto;background:#faf9fb;color:var(--ink)}
  .mobile-menu-group{margin-top:15px;border-top:1px solid var(--line)}
  .mobile-menu-group summary{display:flex;align-items:center;justify-content:space-between;min-height:54px;cursor:pointer;list-style:none;font-size:14px;font-weight:800}
  .mobile-menu-group summary::-webkit-details-marker{display:none}
  .mobile-menu-group summary span{font-size:22px;transition:transform .2s}
  .mobile-menu-group[open] summary span{transform:rotate(180deg)}
  .mobile-menu .mobile-menu-discover{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 0 15px}
  .mobile-menu .mobile-menu-discover a{display:flex;align-items:center;min-height:48px;padding:11px 13px;border-radius:12px;font:800 12px/1.2 var(--display)}
  .mobile-menu-account{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:20px;padding:17px 0 0;border-top:1px solid var(--line)}
  .mobile-menu .mobile-menu-account>a{display:flex;align-items:center;min-height:48px;padding:11px 13px;border:1px solid #e6d9ef;border-radius:12px;background:#f4eef9;color:var(--violet);font:800 12px/1.2 var(--display)}
  .mobile-menu .mobile-menu-account form{grid-column:1/-1}
  .mobile-menu .mobile-logout button{min-height:48px;font:800 14px var(--display)}
  body.menu-open .bottom-nav{display:none}
  .mobile-menu a:focus-visible,.mobile-menu summary:focus-visible,.mobile-menu button:focus-visible,.member-tabs a:focus-visible{outline:3px solid #a568e2;outline-offset:2px}
}

@media(max-width:720px){
  .home-block.events-section{padding-top:44px;padding-bottom:33px}.home-block+.home-block.events-section{padding-top:26px}
  .home-block .section-heading{margin-bottom:18px}.home-block .section-heading h2{font-size:clamp(25px,8vw,34px)}
  .home-block .event-grid,.home-block .university-grid,.home-block .story-side,.guide-section .discover-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .home-block .card-image{border-radius:10px}.home-block .card-body{padding:8px 1px 0}.home-block .card-meta>span{font-size:8px;letter-spacing:0;line-height:1.2}.home-block .card-body h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:4px 0;font-size:clamp(10px,3vw,12px);line-height:1.2}.home-block .card-body p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;font-size:9px;line-height:1.2}.home-block .price-row{display:none}.home-block .date-badge{left:5px;bottom:5px;min-width:31px;padding:4px;border-radius:6px;font-size:7px}.home-block .date-badge strong{font-size:13px}.home-block .event-card>.favorite-form,.home-block .event-card>.favorite-button{right:5px;top:5px}.home-block .favorite-button{min-width:30px;min-height:30px;padding:5px}.home-block .favorite-button svg{width:14px;height:14px}
  .home-block .university-card{min-height:0;padding:8px;border-radius:11px}.home-block .university-card img{width:100%;height:75px;object-fit:cover;border-radius:7px}.home-block .university-card h3{font-size:11px;line-height:1.2}.home-block .university-card p{display:none}.home-block .university-card a{font-size:10px}
  .home-block .story-side article{min-width:0;min-height:145px;padding:10px;border-radius:12px}.home-block .story-side time{font-size:9px}.home-block .story-side h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:11px;line-height:1.25}.home-block .story-side p{display:none}.home-block .story-side a{margin-top:auto;font-size:10px}
  .guide-section{padding-block:48px}.guide-section .discover-grid{margin-top:20px}.guide-section .discover-card{min-height:100px;padding:10px;border-radius:11px}.guide-section .discover-card small{font-size:8px}.guide-section .discover-card h3{font-size:13px}.guide-section .discover-card>span{font-size:14px}
  .home-more{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:46px;margin-top:18px;border:1px solid #d5b7f5;border-radius:13px;background:#faf6ff;color:#6830b5;font-size:12px;font-weight:800;cursor:pointer}.guide-section .home-more{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff}
  .mobile-menu-heading{top:-12px;margin:-12px -16px 17px;padding:12px 16px}
  .member-page{padding:18px 0 calc(128px + env(safe-area-inset-bottom));width:min(100% - 24px,1200px)}
  .member-page .member-heading{min-height:218px;margin-bottom:13px;padding:25px 22px;border-radius:21px;background-position:55% center;align-items:center;text-align:center}
  .member-page .member-heading::before{background:rgba(16,11,29,.8)}
  .member-page .member-heading-row{align-items:center;justify-content:center}.member-page .member-heading-row>div{width:100%}.member-page .member-heading-row>div>p{max-width:none}
  .member-page .member-heading h1{margin:8px 0;font-size:clamp(31px,9vw,42px)}
  .member-page .member-heading-row>div>p{font-size:12px;line-height:1.45}
  .member-hero-stats{justify-content:center;gap:14px;margin-top:15px;font-size:11px}
  .member-panel-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:12px}.member-panel-links a{min-width:0;min-height:48px;padding:9px 10px;font-size:11px;line-height:1.2}.member-panel-links a:last-child:nth-child(odd){grid-column:1/-1}
  .member-page .member-tabs{position:sticky;top:69px;z-index:25;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin:0 0 15px;padding:4px;border-radius:14px}
  .member-page .member-tabs a{min-height:46px;gap:3px;flex-direction:column;padding:5px 2px;border-radius:10px;font-size:10px;line-height:1.15;white-space:normal}
  .member-page .member-tabs b{min-width:17px;height:17px;font-size:9px}
  .member-page .member-layout{display:flex;flex-direction:column}
  .member-page .member-content{display:block;order:1;width:100%}
  .member-page .member-section{margin-bottom:12px;padding:22px 18px;border-radius:18px;scroll-margin-top:185px}
  .member-page .member-summary{position:relative;top:auto;order:2;width:100%;margin-bottom:12px;padding:22px;border-radius:18px;scroll-margin-top:140px}
  .member-page.profile-tabs-ready [data-profile-panel][hidden]{display:none!important}
  .member-page .member-section-title{gap:10px}
  .member-page .member-section-title h2{font-size:clamp(22px,7vw,28px);line-height:1.1}
  .member-page .member-section-title p{font-size:11px;line-height:1.45}
  .member-page .quick-list-form{gap:11px}
  .member-page .quick-list-form input,.member-page .quick-list-form select,.member-page .quick-list-form button{min-height:46px;width:100%}
  .member-page .user-list-head,.member-page .user-list-entry{min-width:0;flex-wrap:wrap}
  .admin-welcome h1{font-size:clamp(32px,10vw,46px);line-height:1.02;overflow-wrap:anywhere}
}

/* Dense directory browsing: two useful choices per swipe on a phone. */
.directory-filter-form{display:grid;gap:11px}.directory-filter-form>input,.directory-filter-form select{width:100%;min-width:0;min-height:46px;padding:11px 13px;border:0;border-radius:11px;background:#fff;color:var(--ink);font:inherit}.directory-filter-form>label{margin:0}.directory-filter-selects{display:grid!important;grid-template-columns:1fr 1fr;gap:9px}.directory-filter-selects label{min-width:0;color:#d2cad8;font-size:10px;font-weight:800}.directory-filter-selects select{display:block;margin-top:7px}.directory-filter-actions{display:flex!important;align-items:center;gap:10px}.directory-filter-actions button{min-height:46px;padding:0 16px}.directory-filter-actions a{color:#fff;font-size:11px;text-decoration:underline}
.directory-filter-selects label{display:grid;gap:7px;font-size:12px}
.directory-filter-selects .select2-container{display:block;width:100%!important;min-width:0}
.directory-filter-selects .select2-selection--single{height:46px;border:0;border-radius:11px;background:#fff}
.directory-filter-selects .select2-selection--single .select2-selection__rendered{padding:0 34px 0 13px;color:var(--ink);font:700 13px/46px var(--body)}
.directory-filter-selects .select2-selection--single .select2-selection__arrow{top:10px;right:9px}
.directory-filter-selects .select2-container--focus .select2-selection--single{outline:3px solid #a568e2;outline-offset:2px}
@media(max-width:520px){.directory-filter-selects{grid-template-columns:1fr}}
.business-directory-card,.business-directory-card>div{min-width:0}.business-directory-card h2{overflow-wrap:anywhere}.business-directory-card>a:focus-visible,.directory-filter-form :focus-visible{outline:3px solid #a568e2;outline-offset:2px}
.business-directory-card[hidden],.directory-empty[hidden]{display:none!important}.directory-filter-actions [data-business-clear]{min-height:46px;padding:0 12px;background:transparent;border:1px solid rgba(255,255,255,.42);color:#fff}
.hotel-listing-page .date-badge{background:rgba(30,20,42,.94);color:#fff;box-shadow:0 3px 12px rgba(10,7,14,.2)}
.menu-file-wrap{padding:17px 20px 19px}.menu-file-wrap>p{margin:0 0 12px;color:var(--muted);font-size:11px;font-weight:700}.menu-file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.menu-file-card{display:flex;min-width:0;flex-direction:column;align-items:stretch;gap:6px;padding:8px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.menu-file-card:hover,.menu-file-card:focus-visible{border-color:var(--violet);outline:2px solid transparent}.menu-file-card img,.menu-pdf-mark{width:100%;height:105px;border-radius:8px;object-fit:cover}.menu-pdf-mark{display:grid;place-items:center;background:#f3eafa;color:var(--violet);font:800 22px var(--display)}.menu-file-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.menu-file-card>span:last-child{color:var(--violet);font-size:10px;font-weight:800}.menu-file-card[hidden],.menu-files-more[hidden],.menu-file-viewer [hidden]{display:none!important}.menu-files-more{display:none}.menu-file-viewer{width:min(980px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:17px;background:#fff;box-shadow:0 28px 90px rgba(0,0,0,.3)}.menu-file-viewer::backdrop{background:rgba(15,10,23,.86);backdrop-filter:blur(5px)}.menu-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:54px;padding:10px 16px;border-bottom:1px solid var(--line)}.menu-viewer-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.menu-viewer-head button{width:36px;height:36px;border:0;border-radius:50%;background:#f4eff8;font-size:24px;cursor:pointer}.menu-viewer-body{display:grid;place-items:center;min-height:180px;max-height:calc(100dvh - 130px);overflow:auto;background:#f3f0f5}.menu-viewer-body img{display:block;max-width:100%;max-height:calc(100dvh - 140px);object-fit:contain}.menu-viewer-body iframe{display:block;width:100%;height:calc(100dvh - 142px);min-height:420px;border:0}.menu-viewer-body p{padding:24px;text-align:center}.menu-file-viewer>a{display:block;padding:11px 16px;color:var(--violet);font-size:11px;font-weight:800}.menu-file-wrap .menu-files-more{width:100%;min-height:42px;margin-top:9px;border:1px solid #dac6eb;border-radius:10px;background:#faf6fd;color:var(--violet);font-size:11px;font-weight:800;cursor:pointer}
.panel-shell #menu-files{display:block;width:100%;min-height:56px;padding:8px;border:1px dashed #c4aadf;border-radius:13px;background:#faf6ff;color:#6b547b;font-size:11px}.panel-shell #menu-files::file-selector-button{min-height:38px;margin-right:12px;padding:8px 13px;border:0;border-radius:9px;background:var(--violet);color:#fff;font:800 11px var(--body);cursor:pointer}
.menu-attachment-form{display:grid;gap:9px;margin-top:17px;padding-top:16px;border-top:1px solid var(--line)}.menu-attachment-form label{font-size:11px;font-weight:800}.menu-attachment-form input{width:100%;min-width:0;padding:8px;border:1px dashed #c4aadf;border-radius:11px;background:#faf6ff;font-size:10px}.menu-attachment-form input::file-selector-button{margin-right:8px;padding:8px;border:0;border-radius:7px;background:#eee3fa;color:var(--violet);font-size:10px;font-weight:800}.menu-attachment-form button{min-height:42px;border:0;border-radius:10px;background:var(--night);color:#fff;font-size:11px;font-weight:800;cursor:pointer}
@media(max-width:900px){.business-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
  .mobile-menu{background:linear-gradient(180deg,rgba(252,250,255,.92),rgba(252,250,255,.94)),url('assets/content/mobile-menu-coast-v2.jpg') center 52%/cover no-repeat}
  .mobile-menu-heading{background:rgba(255,255,255,.96)}
  .hotel-listing-page .listing-workspace .event-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 9px}
  .hotel-listing-page .card-image{aspect-ratio:1/1;border-radius:12px}.hotel-listing-page .card-body{padding:9px 1px 0}.hotel-listing-page .card-meta>span{font-size:8px}.hotel-listing-page .card-body h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:5px 0;font-size:13px;line-height:1.2}.hotel-listing-page .card-body p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:10px}.hotel-listing-page .price-row{margin-top:8px;padding-top:7px;font-size:9px}.hotel-listing-page .price-row>span{display:none}.hotel-listing-page .date-badge{left:6px;bottom:6px;min-width:34px;padding:5px;border-radius:8px;font-size:8px}.hotel-listing-page .date-badge strong{font-size:14px}
  .directory-hero{gap:14px;padding-block:26px 20px}.directory-hero h1{margin:8px 0 12px;font-size:clamp(35px,10vw,48px)}.directory-hero>div>p:last-child{font-size:12px;line-height:1.4}.directory-search{padding:15px;border-radius:17px}.directory-filter-selects{gap:7px}.directory-filter-form>input,.directory-filter-form select{font-size:12px}.directory-results{padding-top:17px}.directory-results .section-heading{margin-bottom:16px}.directory-results .section-heading h2{font-size:29px}
  .business-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.business-directory-card{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:9px;border-radius:14px}.business-directory-card .business-monogram{width:100%;height:auto;aspect-ratio:4/3;border-radius:10px;font-size:34px}.business-directory-card .business-monogram img{width:100%;height:100%;object-fit:cover}.business-directory-card small{font-size:8px;line-height:1.2}.business-directory-card h2{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:4px 0;font-size:13px;line-height:1.2}.business-directory-card p{font-size:9px}.business-directory-card .business-place-chips{display:none}.business-directory-card .round-link{width:30px;height:30px;align-self:flex-end;font-size:16px}
  .menu-file-wrap{padding:13px}.menu-file-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.menu-file-card img,.menu-pdf-mark{height:90px}.menu-file-wrap .menu-files-more{display:block}
}

/* Sparse venue records need useful actions, not a duplicate paragraph beside an empty column. */
.venue-detail-page .compact-detail-content{display:block;padding-block:0 50px}
.venue-detail-page .media-section:has(.place-gallery figure:only-child){display:none}
.venue-detail-page .compact-detail-content .detail-aside{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 26px;padding:25px 28px}
.venue-detail-page .compact-detail-content .detail-aside h2{grid-column:1/-1;margin:0 0 3px}
.venue-detail-page .compact-detail-content .contact-location{margin:0}
.venue-detail-page .compact-detail-content .contact-map-button{min-width:180px;margin:0}
.venue-detail-page .compact-detail-content .claim-box{grid-column:1/-1;margin:0}
.venue-detail-page .compact-detail-content .detail-aside>a:not(.contact-map-button){grid-column:1/-1}
@media (min-width:1060px){.desktop-nav{gap:clamp(10px,1.15vw,17px);font-size:13px}}
@media (max-width:720px){
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .bottom-nav{left:0;right:0;bottom:0;width:100%;height:calc(68px + env(safe-area-inset-bottom));padding:6px 7px max(5px,env(safe-area-inset-bottom));border:0;border-top:1px solid rgba(39,25,49,.12);border-radius:17px 17px 0 0;background:#fff;box-shadow:0 -8px 26px rgba(28,18,36,.12);box-sizing:border-box}
  .bottom-nav a,.bottom-nav button{min-height:50px}
  .venue-detail-page .compact-detail-content .detail-aside{grid-template-columns:1fr;gap:8px;padding:20px}
  .venue-detail-page .compact-detail-content .detail-aside h2,.venue-detail-page .compact-detail-content .contact-location,.venue-detail-page .compact-detail-content .contact-map-button,.venue-detail-page .compact-detail-content .claim-box{grid-column:1}
  .venue-detail-page .compact-detail-content .contact-map-button{width:100%}
}

/* Desktop administration uses a persistent left rail instead of a crowded top row. */
.admin-business-create .form-grid{margin-top:20px}
.explore-filter{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:end;gap:10px;margin:22px 0;padding:15px;border:1px solid var(--line);border-radius:18px;background:#fff}
.explore-filter label{display:grid;min-width:0;gap:6px;color:var(--muted);font-size:11px;font-weight:800}
.explore-filter input,.explore-filter select{width:100%;min-width:0;min-height:46px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font:inherit}
.explore-filter button,.explore-filter>a{display:grid;min-height:46px;place-items:center;padding:0 16px;border:0;border-radius:11px;background:var(--night);color:#fff;font-size:11px;font-weight:800;cursor:pointer}
.explore-filter>a{background:#f2e9f9;color:var(--violet)}
.explore-filter [data-explore-clear]{background:#f2e9f9;color:var(--violet)}
.explore-filter .select2-container{display:block;width:100%!important;font-family:var(--body)}
.explore-filter .select2-container .select2-selection--single{height:46px;border:1px solid var(--line);border-radius:11px;background:#fff}
.explore-filter .select2-container .select2-selection--single .select2-selection__rendered{height:44px;padding:0 36px 0 13px;color:var(--ink);font-size:11px;font-weight:650;line-height:44px}
.explore-filter .select2-container .select2-selection--single .select2-selection__arrow{right:9px;top:9px;height:26px}
.explore-empty{grid-column:1/-1;padding:24px;border:1px dashed var(--line);border-radius:15px;color:var(--muted)}
.site-header .brand-logo-only img{width:65px;height:70px;object-fit:contain}
@media(max-width:720px){.site-header .brand-logo-only img{width:55px;height:58px}}
@media(max-width:720px){.explore-filter{grid-template-columns:1fr 1fr}.explore-filter label:first-child{grid-column:1/-1}.explore-filter button,.explore-filter>a{width:100%}}
.admin-business-create .admin-publish-choice{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800}
.admin-business-create .admin-publish-choice input{width:20px;height:20px;accent-color:var(--violet)}
.admin-business-create #business-type-hint{margin:0;color:var(--muted);font-size:11px}
@media(min-width:1101px){
  .panel-shell:has(>.admin-nav,.business-nav){max-width:1500px;display:grid;grid-template-columns:235px minmax(0,1fr);column-gap:30px;align-items:start}
  .panel-shell:has(>.admin-nav,.business-nav)>:not(.admin-nav):not(.business-nav){grid-column:2;min-width:0}
  .panel-shell>.admin-nav,.panel-shell>.business-nav{grid-column:1;grid-row:1/span 100;position:sticky;top:92px;max-height:calc(100vh - 112px);display:flex;flex-direction:column;align-items:stretch;gap:14px;overflow-y:auto;overflow-x:hidden;margin:0;padding:12px;border-radius:20px}
  .panel-shell>.business-nav{gap:3px}
  .panel-shell>.business-nav>a{width:100%;padding:11px 12px;white-space:normal}
  .panel-shell>.admin-nav>div{display:flex;flex-direction:column;align-items:stretch;gap:2px;padding:10px 0 0;border-left:0;border-top:1px solid var(--line)}
  .panel-shell>.admin-nav>div>small{padding:0 10px 5px;font-size:9px}
  .panel-shell>.admin-nav>div>a{width:100%;padding:10px 12px;font-size:12px;white-space:normal}
  .panel-shell>.admin-nav>.admin-nav-brand{margin:0!important}
}

/* Searchable selects and compact vehicle management */
.field .select2-container,.form-grid .select2-container{display:block;width:100%!important;min-width:0;font-family:var(--body)}
.field .select2-container .select2-selection--single,.form-grid .select2-container .select2-selection--single{height:48px;border:1px solid var(--line);border-radius:12px;background:#fff}
.field .select2-container .select2-selection--single .select2-selection__rendered,.form-grid .select2-container .select2-selection--single .select2-selection__rendered{padding:0 38px 0 14px;color:var(--ink);font-size:13px;font-weight:650;line-height:46px}
.field .select2-container .select2-selection--single .select2-selection__arrow,.form-grid .select2-container .select2-selection--single .select2-selection__arrow{top:11px;right:10px}
.select2-container--focus .select2-selection--single{border-color:var(--violet)!important;box-shadow:0 0 0 3px rgba(121,41,210,.12)}
.vehicle-panel .vehicle-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:22px}
.vehicle-panel .vehicle-form .field{min-width:0}.vehicle-panel .vehicle-form .field small{display:block;margin-top:6px;color:var(--muted);font-size:11px}
.vehicle-panel .vehicle-form .field .field-error{color:#b3263e;font-weight:750}.vehicle-panel .vehicle-form [aria-invalid="true"]{border-color:#d23e58!important}
.vehicle-panel .vehicle-editor .vehicle-form{margin-top:15px;padding:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
.panel-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:38px;padding:9px 13px;border:1px solid transparent;border-radius:10px;font:800 11px var(--body);cursor:pointer;text-decoration:none}
.panel-action-edit{background:#f2e9ff;color:#6621a9}.panel-action-danger{margin-top:10px;background:#fff0f1;color:#a9263c;border-color:#f5c4cc}.panel-action-save{background:#30123e;color:#fff}
@media(max-width:700px){.vehicle-panel .vehicle-form,.vehicle-panel .vehicle-editor .vehicle-form{grid-template-columns:1fr;padding:14px}.vehicle-panel .vehicle-form .wide{grid-column:auto}.vehicle-panel .vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-panel .vehicle-body{padding:12px}.vehicle-panel .vehicle-body h3{font-size:17px}}
@media(max-width:390px){.vehicle-panel .vehicle-grid{grid-template-columns:1fr}}
.closure-request{margin-top:18px;padding-top:15px;border-top:1px solid var(--line)}.closure-request summary{cursor:pointer;color:#a9263c;font-weight:800;font-size:12px}.closure-request p{font-size:12px}.closure-request textarea{display:block;width:100%;margin-top:8px;min-height:80px;padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit}

/* Keep every event action on the same baseline, even with short or long names. */
.event-grid>.event-card{display:flex;flex-direction:column}.event-grid>.event-card>.card-body{display:flex;flex:1;flex-direction:column}.event-grid>.event-card .price-row{margin-top:auto}.event-grid>.event-card .card-body>p{margin-bottom:12px}
/* Articles should lead into the story instead of becoming a full-screen poster. */
.article-body{max-width:920px}.article-body>img,.article-body>figure img{display:block;width:100%;height:auto;max-height:430px;object-fit:cover;object-position:center;border-radius:20px;margin:0 0 26px}.article-body>figure{margin:0 0 26px}.article-body>figure img{margin-bottom:8px}.article-body>figure figcaption{font-size:12px;color:#73717f}.article-body>div:last-child{max-width:74ch;line-height:1.75}
/* Instant district discovery: native controls are deliberate on iOS. */
.nearby-browser{min-width:0}.nearby-browser-page{margin-top:32px}.nearby-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.nearby-controls label{display:grid;gap:7px;min-width:0;font-size:11px;font-weight:800}.nearby-controls select{display:block;width:100%;min-width:0;min-height:48px;padding:11px 12px;border:1px solid #d9cde4;border-radius:10px;background:#fff;color:var(--ink);font:700 13px var(--body)}.nearby-controls select:focus-visible,.nearby-controls button:focus-visible,.nearby-widget button:focus-visible,.nearby-result-card:focus-visible{outline:3px solid #a756dd;outline-offset:2px}.nearby-location-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 15px;border:0;border-radius:10px;background:var(--night);color:#fff;font:800 12px var(--body);cursor:pointer;white-space:nowrap}.nearby-browser .nearby-feedback{margin:13px 0 0;padding:10px 14px;border-radius:10px;background:#f7effd;color:#653180;font-size:12px}.nearby-result-surface{margin-top:26px}.nearby-result-surface[aria-busy="true"]{opacity:.55}.nearby-result-count{margin:0 0 13px;color:var(--muted);font-size:12px;font-weight:750}.nearby-result-group{margin:0 0 27px}.nearby-result-group h2{margin:0 0 12px;font:800 clamp(21px,3vw,29px) var(--display)}.nearby-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.nearby-result-card{display:flex;align-items:center;gap:12px;min-width:0;padding:8px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);text-decoration:none}.nearby-result-card:hover{border-color:#b78bd5;background:#fcf8ff}.nearby-result-card img{width:70px;height:70px;flex:0 0 70px;border-radius:9px;object-fit:cover}.nearby-result-card>span{display:grid;gap:3px;min-width:0}.nearby-result-card small{color:var(--violet);font-size:10px;font-weight:800}.nearby-result-card strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px;line-height:1.25}.nearby-result-card em{overflow:hidden;color:var(--muted);font-size:10px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.nearby-result-card>i{margin-left:auto;color:var(--violet);font-size:11px}.nearby-empty{display:grid;justify-items:start;gap:5px;padding:25px;border:1px dashed #d2bde2;border-radius:14px;background:#faf7fd}.nearby-empty i{color:var(--violet);font-size:24px}.nearby-empty strong{font-size:15px}.nearby-empty p{margin:0;color:var(--muted);font-size:12px}
.nearby-widget{position:fixed;z-index:80;right:22px;bottom:22px;width:min(390px,calc(100vw - 32px));font-family:var(--body)}.nearby-widget-trigger{display:flex;align-items:center;gap:10px;margin-left:auto;padding:14px 18px;border:1px solid #7534af;border-radius:999px;background:var(--night);color:#fff;box-shadow:0 13px 35px rgba(32,12,48,.25);font:800 13px var(--body);cursor:pointer}.nearby-widget-trigger>i:first-child{color:#ffab52}.nearby-widget-chevron{margin-left:10px;font-size:9px;transition:transform .2s}.nearby-widget-trigger[aria-expanded="true"] .nearby-widget-chevron{transform:rotate(180deg)}.nearby-widget-panel{max-height:min(75vh,700px);overflow-y:auto;margin-bottom:10px;padding:0 15px 12px;border:1px solid #e7ddeb;border-radius:19px;background:#fff;box-shadow:0 20px 70px rgba(23,13,34,.25)}.nearby-widget-panel[hidden]{display:none}.nearby-widget-heading{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;padding:17px 0 12px;background:#fff;border-bottom:1px solid var(--line)}.nearby-widget-heading strong{font:800 20px var(--display)}.nearby-widget-heading p{margin:2px 0 0;color:var(--muted);font-size:11px}.nearby-widget-heading button{width:32px;height:32px;border:0;border-radius:9px;background:#f7f1fb;color:var(--violet);cursor:pointer}.nearby-browser-widget .nearby-controls{grid-template-columns:1fr 1fr;gap:9px;padding:14px 0;border:0;border-radius:0}.nearby-browser-widget .nearby-location-button{grid-column:1/-1;min-height:40px}.nearby-browser-widget .nearby-result-surface{margin-top:10px}.nearby-browser-widget .nearby-result-grid{grid-template-columns:1fr}.nearby-browser-widget .nearby-result-card img{width:56px;height:56px;flex-basis:56px}.nearby-browser-widget .nearby-result-group h2{font-size:17px}.nearby-browser-widget .nearby-prompt{margin-top:0;padding:17px}.nearby-browser-widget .nearby-prompt h2{font-size:17px}.nearby-widget-full{display:block;padding:12px 2px 3px;border-top:1px solid var(--line);color:var(--violet);font-size:11px;font-weight:800;text-align:right}
@media(min-width:761px){.access-story{display:flex;flex-direction:column}.access-story-copy{min-height:0;flex:1;padding-bottom:20px}.access-map{position:relative;right:auto;bottom:auto;align-self:flex-end;margin:0 34px 34px}}
@media(max-width:760px){.access-map{display:none}.access-story{min-height:0}.access-story-copy{min-height:0;padding:34px 27px 38px}.access-story-copy>p:not(.access-kicker){max-width:50ch}.article-body>img,.article-body>figure img{max-height:240px;border-radius:13px}.nearby-widget{display:none}.nearby-page{padding-block:30px 100px}.nearby-browser-page{margin-top:20px}.nearby-controls{grid-template-columns:1fr 1fr;gap:9px;padding:14px}.nearby-location-button{grid-column:1/-1}.nearby-result-grid{grid-template-columns:1fr}.nearby-result-card img{width:62px;height:62px;flex-basis:62px}.nearby-result-group h2{font-size:22px}.event-listing-page .event-card .card-body h3,.hotel-events-section .event-card .card-body h3{min-height:2.4em}.event-listing-page .event-card .price-row,.hotel-events-section .event-card .price-row{min-height:25px}.event-listing-page .event-card .card-body>p,.hotel-events-section .event-card .card-body>p{margin-bottom:7px}}

/* Clear recovery and location choices. */
.state-page{min-height:70vh;display:grid;place-items:center;padding-block:58px 120px}.state-card{width:min(100%,650px);padding:clamp(26px,5vw,54px);border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:0 24px 70px rgba(37,19,45,.08)}.state-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:#f3e6ff;color:var(--violet);font-size:25px}.state-card h1{margin:12px 0;font:800 clamp(33px,5vw,55px)/1.04 var(--display);letter-spacing:-.05em}.state-card>p:not(.eyebrow){color:var(--muted);line-height:1.65}.state-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:26px}.state-actions>a:last-child{color:var(--violet);font-weight:800}.state-card .state-hint{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-size:12px}
.verification-resend-form{margin-top:19px}.verification-resend-form button{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid #d7bfe8;border-radius:11px;background:#faf6fd;color:var(--violet);font:800 12px var(--body);cursor:pointer}
.nearby-widget{display:flex;flex-direction:column}.nearby-widget-trigger{order:2}.nearby-widget-panel{order:1}
body.menu-open .nearby-widget,body.menu-open .bottom-nav{display:none}
@media(max-width:760px){.nearby-widget{display:none}}
.auth-provider-note{margin:0;padding:10px 13px;border-left:3px solid #bb92dc;border-radius:0 9px 9px 0;background:#f8f4fb;color:#51465a;font-size:12px;line-height:1.5}
.ke-pagination{display:flex;justify-content:center;max-width:100%;margin-top:32px}
.ke-pagination-mobile{display:none}
.ke-pagination-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;max-width:100%}
.ke-pagination a,.ke-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:39px;min-height:39px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-size:12px;font-weight:800;text-decoration:none}
.ke-pagination a:hover,.ke-pagination a:focus-visible{border-color:#b88ad8;color:var(--violet);outline:2px solid transparent}
.ke-pagination .is-current{border-color:var(--night);background:var(--night);color:#fff}
.ke-pagination [aria-disabled="true"]{color:#99919d;background:#f8f6f9}
.ke-pagination .ke-pagination-gap{min-width:24px;padding:0 4px;border:0;background:none}
@media(max-width:720px){
  .ke-pagination-mobile{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;width:100%}
  .ke-pagination-mobile>*{min-width:0;white-space:nowrap}
  .ke-pagination-mobile>:first-child{justify-self:start}.ke-pagination-mobile>:last-child{justify-self:end}
  .ke-pagination-mobile>[aria-current="page"]{border:0;background:none;color:var(--muted)}
  .ke-pagination-pages{display:none}
  .listing-page .listing-workspace .event-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 7px}
  .listing-page .event-card{min-width:0}
  .listing-page .card-image{aspect-ratio:3/4;border-radius:10px}
  .listing-page .card-body{min-width:0;padding:8px 1px 0}
  .listing-page .card-meta>span{font-size:7px}
  .listing-page .card-body h2,.listing-page .card-body h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:4px 0;font-size:11px;line-height:1.2;overflow-wrap:anywhere}
  .listing-page .card-body p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
  .listing-page .price-row{margin-top:auto;padding-top:5px;font-size:8px}
  .listing-page .price-row>span{display:none}
  .listing-page .price-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .listing-page .date-badge{left:4px;bottom:4px;max-width:calc(100% - 8px);min-width:28px;padding:3px 4px;border-radius:6px;font-size:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .listing-page .date-badge strong{font-size:12px}
  .listing-page .favorite-button{transform:scale(.75);transform-origin:top right}
}
.auth-pane .auth-feedback{margin:0;padding:13px 15px;border:1px solid transparent;border-radius:11px;line-height:1.5}.auth-pane .auth-feedback.error{border-color:#efbfd0}.auth-pane .auth-feedback[hidden],.auth-duplicate-actions[hidden]{display:none}.auth-duplicate-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:-8px}.auth-duplicate-actions button{padding:9px 13px;border:1px solid #cda9e5;border-radius:9px;background:#fff;color:var(--violet);font:800 12px var(--body);cursor:pointer}.auth-duplicate-actions button:hover,.auth-duplicate-actions button:focus-visible{background:#f7edfd;outline-color:var(--violet)}
.nearby-page{min-height:70vh;padding-block:58px 120px}.nearby-intro{max-width:680px}.nearby-intro h1{margin:10px 0 15px;font:800 clamp(39px,6vw,76px)/.96 var(--display);letter-spacing:-.06em}.nearby-intro>p:last-child{color:var(--muted);line-height:1.6}.nearby-choice{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-top:32px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.nearby-choice>.button{min-height:48px}.nearby-choice form{display:flex;flex-wrap:wrap;align-items:end;gap:9px}.nearby-choice label{width:100%;font-size:11px;font-weight:800}.nearby-choice select{min-width:190px;min-height:48px;padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit}.nearby-choice form button{min-height:48px;padding:10px 16px;border:0;border-radius:10px;background:#f3e6ff;color:var(--violet);font-weight:800;cursor:pointer}.nearby-feedback{margin-top:15px;color:#7c348a}.nearby-results{margin-top:50px}.nearby-results-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.nearby-results-head h2{font:800 clamp(28px,4vw,46px) var(--display)}.nearby-results-head p{color:var(--muted)}.nearby-prompt{margin-top:48px;padding:32px;border:1px dashed #cfb3e4;border-radius:18px;background:#fbf7ff}.nearby-prompt i{color:var(--violet);font-size:27px}.nearby-prompt h2{margin:10px 0 4px}.nearby-prompt p{margin:0;color:var(--muted)}
@media(max-width:720px){.event-listing-page .listing-workspace .event-grid,.hotel-events-section .event-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 7px}.event-listing-page .event-card,.hotel-events-section .event-card{min-width:0}.event-listing-page .card-image,.hotel-events-section .card-image{aspect-ratio:3/4;border-radius:10px}.event-listing-page .card-body,.hotel-events-section .card-body{padding:8px 1px 0}.event-listing-page .card-meta>span,.hotel-events-section .card-meta>span{font-size:7px}.event-listing-page .card-body h3,.hotel-events-section .card-body h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:4px 0;font-size:11px;line-height:1.2}.event-listing-page .card-body p,.hotel-events-section .card-body p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.event-listing-page .price-row,.hotel-events-section .price-row{margin-top:5px;padding-top:5px;font-size:8px}.event-listing-page .price-row>span,.hotel-events-section .price-row>span{display:none}.event-listing-page .date-badge,.hotel-events-section .date-badge{left:4px;bottom:4px;min-width:28px;padding:3px 4px;border-radius:6px;font-size:7px}.event-listing-page .date-badge strong,.hotel-events-section .date-badge strong{font-size:12px}.event-listing-page .favorite-button,.hotel-events-section .favorite-button{transform:scale(.75);transform-origin:top right}.nearby-page{padding-block:30px 100px}.nearby-choice{display:grid}.nearby-choice form{display:grid;grid-template-columns:1fr auto}.nearby-choice form label{grid-column:1/-1}.nearby-choice select{min-width:0}.nearby-results .event-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 9px}}

/* Safari zooms focused fields below 16px. Preserve user-controlled pinch zoom. */
.signup-interests{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:16px;background:#faf7fc}.signup-interests h3{margin:0 0 5px;font:800 17px var(--display)}.signup-interests>p{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.5}.signup-interests details{border-top:1px solid var(--line)}.signup-interests summary{padding:12px 0;cursor:pointer;font-weight:800}.signup-interests .choice-cloud{max-height:170px;overflow:auto;padding:0 0 12px}.signup-interests .choice-cloud label{position:relative}.signup-interests .choice-cloud span{background:#fff;font-size:11px}.home-recommendations{padding-block:45px}.recommendation-group{margin:24px 0 32px}.recommendation-group .section-heading{margin-bottom:15px}.recommendation-group .section-heading h3{margin:0;font:800 clamp(20px,3vw,30px) var(--display)}.recommendation-businesses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.recommendation-businesses a{display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:17px;border:1px solid var(--line);border-radius:15px;background:#fff}.recommendation-businesses strong{font:800 15px var(--display)}.recommendation-businesses span{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.personal-recommendations .event-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.application-status-list{display:grid;gap:10px}.application-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px}.application-row strong{font:800 14px var(--display)}.application-row p{margin:5px 0 0;color:var(--muted);font-size:11px}.application-cancel{padding:10px 12px;border:1px solid #e8b4c4;border-radius:10px;background:#fff5f7;color:#a21d4b;font-weight:800;cursor:pointer}.application-rejection-note{grid-column:1/-1}.application-new{margin-top:18px;border-top:1px solid var(--line)}.application-new>summary{padding:17px 0;color:var(--violet);font-weight:800;cursor:pointer}.application-new>p{margin:0 0 15px;color:var(--muted);font-size:12px}.application-new .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.application-new .form-grid .field{display:grid;gap:6px}.application-new .form-grid label{font-size:12px;font-weight:800}.application-new .form-grid input{width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px}.application-new .form-grid .wide{grid-column:1/-1}
@media(max-width:720px){.recommendation-businesses{grid-template-columns:repeat(2,minmax(0,1fr))}.personal-recommendations .event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.application-row{grid-template-columns:minmax(0,1fr) auto}.application-row form{grid-column:1/-1}.application-cancel{width:100%}.application-new .form-grid{grid-template-columns:1fr}.member-page .member-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  select,textarea,.select2-search--dropdown .select2-search__field{font-size:16px!important}
}

/* Keep directory filters within reach throughout the results, without a tall overlay. */
.directory-page .directory-hero{display:block;padding-block:48px 22px}
.directory-page .directory-hero h1{font-size:clamp(44px,5vw,72px)}
.directory-filter-sticky{position:sticky;top:82px;z-index:30;padding-block:8px;background:rgba(251,250,248,.96);backdrop-filter:blur(12px)}
.directory-filter-panel>summary{display:none}
.directory-filter-sticky .directory-filter-form{grid-template-columns:minmax(200px,1.1fr) minmax(300px,1.6fr) auto;grid-template-rows:auto 46px;grid-template-areas:"search-label selects actions" "search-input selects actions";align-items:end;column-gap:14px;row-gap:4px;padding:14px 18px;border-radius:18px}
.directory-filter-form>label[for="business-search"]{grid-area:search-label}
.directory-filter-form>input{grid-area:search-input}
.directory-filter-form>.directory-filter-selects{grid-area:selects}
.directory-filter-form>.directory-filter-actions{grid-area:actions;align-self:end}
.directory-filter-form .directory-filter-selects select{margin-top:0}
.directory-filter-form .directory-filter-selects label{gap:4px;margin:0}
.directory-filter-sticky .directory-filter-actions button{white-space:nowrap}
@media(max-width:900px){
  .directory-filter-sticky .directory-filter-form{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"search-label" "search-input" "selects" "actions";gap:8px;padding:15px}
  .directory-filter-panel{border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 9px 25px rgba(30,20,40,.08)}
  .directory-filter-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 15px;list-style:none;cursor:pointer;font-size:13px;font-weight:800}
  .directory-filter-panel>summary::-webkit-details-marker{display:none}
  .directory-filter-panel>summary>span:last-child{color:var(--violet);font-size:11px;white-space:nowrap}
  .directory-filter-panel>summary i{margin-left:7px;transition:transform .2s}
  .directory-filter-panel[open]>summary i{transform:rotate(180deg)}
  .directory-filter-panel[open]>summary{border-bottom:1px solid var(--line)}
  .directory-filter-panel[open] .directory-filter-form{max-height:calc(100dvh - 170px);overflow-y:auto;border-radius:0 0 16px 16px}
}
@media(max-width:720px){
  .directory-page .directory-hero{padding-block:27px 14px}
  .directory-filter-sticky{top:70px;padding-block:6px}
}

/* Place the ticket action away from the hero card's deep rounded corner. */
.hero-slider .tonight-content>div{grid-template-columns:auto 1fr;column-gap:13px;row-gap:9px}
.hero-slider .tonight-content>div>a{grid-column:1/-1;justify-self:start;display:inline-flex;align-items:center;gap:5px;min-height:30px;white-space:nowrap}
.hero-slider .tonight-content{bottom:29px}
.hero-slider .tonight-content h2{margin-bottom:14px}
.discovery>.location-button{height:100%;text-decoration:none}
.discovery>.location-button:focus-visible{outline:3px solid var(--violet);outline-offset:3px}
.nearby-swal{border-radius:19px!important;font-family:var(--body)!important}
.nearby-swal .swal2-input,.nearby-swal .swal2-file,.nearby-swal .swal2-range,.nearby-swal .swal2-select,.nearby-swal .swal2-radio,.nearby-swal .swal2-checkbox,.nearby-swal .swal2-textarea{display:none!important}
.nearby-loading-dialog{width:min(380px,calc(100vw - 32px));padding:32px 24px;border:0;border-radius:19px;background:#fff;color:var(--ink);box-shadow:0 25px 80px rgba(20,12,30,.28);text-align:center}
.nearby-loading-dialog::backdrop{background:rgba(20,12,30,.58)}
.nearby-loading-dialog strong{display:block;margin-top:17px;font:800 23px var(--display)}
.nearby-loading-dialog p{margin:9px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
.nearby-loading-spinner{display:block;width:44px;height:44px;margin:auto;border:4px solid #e9d8f6;border-top-color:var(--violet);border-radius:50%;animation:nearby-spin .8s linear infinite}
@keyframes nearby-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.nearby-loading-spinner{animation-duration:2s}}

/* Give the home discovery choices and nearby action their own breathing room. */
.discovery{grid-template-columns:minmax(0,1fr) 300px;gap:16px;margin-bottom:48px;border:0;background:transparent;box-shadow:none}
.discovery>.category-row{gap:9px;padding:18px 24px;scroll-snap-type:none;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(28,18,36,.055)}
.discovery>.location-button{padding-inline:22px;border-radius:20px;box-shadow:0 12px 34px rgba(28,18,36,.11)}
.discovery>.category-row{padding-right:72px}
.discovery-arrow{position:absolute;z-index:2;top:50%;right:calc(300px + 32px);display:grid;width:42px;height:42px;place-items:center;transform:translateY(-50%);border:1px solid #d9c9e8;border-radius:50%;background:#fff;color:var(--violet);box-shadow:0 5px 18px rgba(37,21,49,.13);cursor:pointer}
.discovery-arrow[hidden]{display:none}
.discovery-arrow:hover{background:var(--lavender)}
.discovery-arrow:focus-visible{outline:3px solid var(--violet);outline-offset:3px}
.nearby-swal>.select2-container{display:none!important}
@media(max-width:760px){
  .discovery{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:36px;overflow:visible}
  .discovery>.category-row{padding:14px}
  .discovery-arrow{display:none}
  .discovery>.location-button{min-height:72px;border-radius:18px}
}

/* Select2 uses the same clear two-field layout on the nearby page and widget. */
.nearby-controls .select2-container{display:block;width:100%!important;min-width:0}
.nearby-controls .select2-selection--single{height:48px;border:1px solid #d9cde4;border-radius:10px;background:#fff}
.nearby-controls .select2-selection--single .select2-selection__rendered{padding:0 35px 0 12px;color:var(--ink);font:700 13px/46px var(--body)}
.nearby-controls .select2-selection--single .select2-selection__arrow{top:10px;right:9px}
.nearby-controls .select2-container--focus .select2-selection--single{border-color:var(--violet)}
@media(max-width:767px){.nearby-controls .select2-selection--single .select2-selection__rendered{font-size:16px}}
.inline-list-actions{margin-top:14px}
.inline-list-create{margin-top:10px}
.inline-list-create summary{cursor:pointer;color:var(--violet);font-size:12px;font-weight:800}
.inline-list-create form{display:flex;gap:8px;margin-top:10px}
.inline-list-create input{min-width:0;flex:1;padding:11px 12px;border:1px solid var(--line);border-radius:11px;font:inherit}
.inline-list-create button{padding:11px 14px;border:0;border-radius:11px;background:var(--violet);color:#fff;font:inherit;font-weight:800;cursor:pointer}
.site-search-group.is-empty{display:none}
.site-search-results{scroll-margin-top:80px}
@media(max-width:760px){.inline-list-create form{flex-direction:column}}
.community-page{padding-block:48px 130px;max-width:1200px}.community-hero{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:36px}.community-hero h1{margin:12px 0;font:800 clamp(48px,7vw,82px)/.95 var(--display);letter-spacing:-.065em}.community-hero h1 em{font-style:normal;color:var(--violet)}.community-hero p{color:var(--muted)}.community-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}.community-filters{display:flex;gap:7px;overflow-x:auto;margin-bottom:19px;padding-bottom:6px}.community-filters a{flex:0 0 auto;padding:10px 15px;border-radius:999px;background:#f3edf8;color:var(--ink);font-size:12px;font-weight:800}.community-filters a.active{background:var(--violet);color:white}.community-card,.community-post-detail,.community-compose,.community-side-note{margin-bottom:16px;padding:22px;border:1px solid var(--line);border-radius:23px;background:white}.community-card>header,.community-post-detail>header{display:flex;align-items:center;gap:12px}.community-card header strong,.community-post-detail header strong{display:block;font:800 15px var(--display)}.community-card header small,.community-post-detail header small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.community-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:linear-gradient(140deg,var(--violet),var(--pink));color:#fff;font-weight:800}.community-verified{display:inline-grid;place-items:center;width:17px;height:17px;margin-left:5px;border-radius:50%;background:var(--violet);color:#fff;font:800 11px sans-serif}.community-card>p,.community-post-detail>p{white-space:pre-wrap;line-height:1.65}.community-media{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:7px}.community-media-open{position:relative;overflow:hidden;min-height:180px;padding:0;border:0;border-radius:14px;background:#181421;cursor:zoom-in}.community-media-open img,.community-media-open video,.community-post-detail .community-media img,.community-post-detail .community-media video{display:block;width:100%;max-height:500px;object-fit:cover;border-radius:14px}.community-media-open span{position:absolute;inset:0;display:grid;place-items:center;color:white;font-size:42px;text-shadow:0 2px 15px #000}.community-card footer,.community-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px;color:var(--muted);font-size:12px}.community-card footer a,.community-actions button{color:var(--violet);font-weight:800}.community-side{position:sticky;top:100px}.community-compose h2{margin:9px 0 22px;font:800 24px var(--display)}.community-compose label{display:grid;gap:6px;margin-bottom:12px;font-size:11px;font-weight:800}.community-compose input,.community-compose select,.community-compose textarea,.community-post-detail textarea{width:100%;min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#fff;font:inherit}.community-compose small,.community-side-note p{color:var(--muted);font-size:11px;line-height:1.5}.community-compose button,.community-post-detail form button{margin-top:14px;padding:12px 17px;border:0;border-radius:12px;background:var(--ink);color:white;font-weight:800;cursor:pointer}.community-error{color:#b31c50;font-size:12px}.community-sentinel{text-align:center;padding:25px;color:var(--muted);cursor:pointer}.community-post-detail{max-width:750px;margin-inline:auto}.community-comment{padding:12px 0;border-bottom:1px solid var(--line)}.community-lightbox{position:fixed;inset:0;max-width:95vw;max-height:95vh;padding:38px 10px 10px;border:0;border-radius:18px;background:#0c0a10;color:white}.community-lightbox::backdrop{background:rgba(0,0,0,.88)}.community-lightbox>button{position:absolute;right:10px;top:4px;border:0;background:transparent;color:white;font-size:32px;cursor:pointer}.community-lightbox img,.community-lightbox video{display:block;max-width:90vw;max-height:85vh;object-fit:contain}
@media(max-width:900px){.community-layout{grid-template-columns:1fr}.community-side{position:static;order:-1}.community-hero{align-items:start;flex-direction:column}.community-page{padding-inline:15px}.community-media{grid-template-columns:repeat(2,minmax(0,1fr))}}
.community-scope{display:flex;gap:8px;margin-bottom:14px}.community-scope a{padding:10px 16px;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:12px;font-weight:800}.community-scope a.active{background:var(--ink);color:#fff}.community-edit{margin-top:24px;padding:18px;border:1px solid var(--line);border-radius:16px}.community-edit summary{cursor:pointer;font-weight:800;color:var(--violet)}.community-edit form{display:grid;gap:12px;margin-top:16px}.community-edit label{display:grid;gap:6px;font-size:12px;font-weight:700}.community-edit select,.community-edit input[type=file]{padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.community-edit fieldset{padding:12px;border:1px solid var(--line);border-radius:12px}.community-edit-media{display:flex!important;align-items:center;gap:8px;margin:8px 0}.community-edit-media input{width:auto!important}.community-edit .community-error:empty{display:none}

/* Feed composer and small-screen discovery */
.community-main,.community-side,.community-card{min-width:0}
.community-location{position:relative}
.community-location-results{position:absolute;z-index:45;top:100%;left:0;right:0;max-height:240px;overflow-y:auto;margin:0;padding:5px;list-style:none;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 15px 35px rgba(20,12,30,.14)}
.community-location-results[hidden]{display:none}
.community-location-results button{display:block;width:100%;margin:0;padding:11px 12px;border:0;border-radius:8px;background:#fff;color:var(--ink);text-align:left;font-size:12px;cursor:pointer}
.community-location-results button:hover,.community-location-results button:focus{background:var(--lavender)}
.community-nearby-button{margin:0 0 8px!important;padding:6px 0!important;border:0!important;background:transparent!important;color:var(--violet)!important;font-size:11px!important;cursor:pointer}
.community-file-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:8px;margin:8px 0 14px}
.community-file-preview:empty{display:none}
.community-file-preview>div{position:relative;min-width:0;aspect-ratio:1;overflow:hidden;border-radius:10px;background:#eee}
.community-file-preview img,.community-file-preview video{width:100%;height:100%;object-fit:cover}
.community-file-preview button{position:absolute;right:3px;top:3px;width:27px;height:27px;margin:0;padding:0;border:0;border-radius:50%;background:#21172acc;color:#fff;font-size:18px;cursor:pointer}
.community-comment-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.community-comment-head time{color:var(--muted);font-size:11px}.community-comment-actions{display:flex;gap:10px;margin-top:5px}.community-comment-actions button{margin:0!important;padding:3px 0!important;background:transparent!important;color:var(--violet)!important;font-size:11px}.community-comment-edit[hidden]{display:none}.community-comment-edit textarea{width:100%;min-height:75px}
.community-edit-media img,.community-edit-media video{width:56px;height:56px;object-fit:cover;border-radius:7px}
@media(max-width:720px){.explore-page,.explore-hero,.explore-catalog,.explore-regions,.explore-groups{min-width:0;max-width:100%}.explore-hero{gap:18px;padding-block:34px}.explore-hero>div,.explore-search{min-width:0}.explore-hero h1{font-size:clamp(32px,10vw,48px);line-height:1;overflow-wrap:anywhere}.explore-search{padding:16px}.explore-search>div{min-width:0}.explore-search button{padding-inline:13px}.explore-catalog{padding-bottom:65px}.explore-filter{grid-template-columns:minmax(0,1fr);padding:12px}.explore-filter label:first-child,.explore-filter label,.explore-filter button{grid-column:1/-1}.explore-groups article{min-width:0}.explore-parent{gap:12px;min-width:0;font-size:18px}.explore-parent span{min-width:0;overflow-wrap:anywhere}.community-media{grid-template-columns:repeat(2,minmax(0,1fr))}.community-media-open{min-height:120px}}
@media(max-width:720px){.region-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}.region-ribbon a{min-width:0;overflow-wrap:anywhere}.region-ribbon strong{font-size:clamp(15px,5vw,21px)}}

/* Island feed: portrait media, short captions and bottom comments */
.community-layout{grid-template-columns:minmax(0,620px) 330px;justify-content:center}
.community-card,.community-post-detail{overflow:hidden;padding:0;border-radius:17px}
.community-card{cursor:pointer}
.community-card>header,.community-post-detail>header{padding:12px 14px;min-width:0}
.community-card-author{min-width:0;flex:1}
.community-card-author strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.community-post-menu{margin-left:auto;padding:1px 8px;border:0;background:transparent;color:var(--ink);font-size:26px;line-height:1;cursor:pointer}
.community-post-location{margin:0!important;padding:0 14px 10px;color:var(--violet);font-size:11px;font-weight:700}
.community-feed-media{display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;background:#f5f2f7}
.community-feed-media::-webkit-scrollbar{display:none}
.community-feed-media .community-media-tile{position:relative;flex:0 0 100%;display:block;width:100%;max-height:min(75dvh,700px);min-height:0;aspect-ratio:4/5;overflow:hidden;scroll-snap-align:start;padding:0;border:0;border-radius:0;background:#f5f2f7;cursor:pointer}
.community-feed-media img,.community-feed-media video{display:block;width:100%;height:100%;max-height:none;object-fit:cover;border-radius:0}
.community-feed-media .community-media-tile>span{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:45px;text-shadow:0 2px 14px #111}
.community-social-actions{display:flex;align-items:center;gap:9px;padding:6px 12px 0}
.community-social-actions button{display:grid;place-items:center;width:35px;height:38px;padding:0;border:0;background:transparent;color:var(--ink);font-size:28px;line-height:1;cursor:pointer}
.community-social-actions button[aria-pressed=true]{color:var(--violet)}
.community-social-actions svg{width:26px;height:26px}
.community-social-actions small{margin-left:auto;color:var(--muted)}
.community-social-actions form{display:flex;margin:0}
.community-post-detail .community-social-actions form button{margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);font-size:28px}
.community-like-count{display:block;margin:2px 16px 4px;font-size:12px}
.community-caption{margin:0 16px 5px;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.community-caption-body{white-space:pre-line}
.community-caption-body.is-clamped{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;white-space:pre-line}
.community-caption button,.community-comments-link{display:block;margin:3px 0 0;padding:0;border:0;background:transparent;color:var(--muted);font-size:12px;text-align:left;cursor:pointer}
.community-comments-link{margin:4px 16px 14px}
.community-post-time{display:block;margin:0 16px 16px;color:var(--muted);font-size:11px}
.community-back{display:inline-block;margin:0 0 14px;color:var(--violet);font-weight:700}
.community-detail-page .community-post-detail{max-width:620px}
.community-compose-disclosure summary{display:none}
.community-edit-sheet{width:min(520px,calc(100vw - 20px));max-height:88dvh;overflow-y:auto;padding:22px;border:0;border-radius:20px;background:white;box-shadow:0 24px 80px #1113}
.community-edit-sheet::backdrop{background:#16101baa}
.community-edit-sheet h2{margin:4px 30px 20px;font:800 21px var(--display)}
.community-edit-sheet>form:not(.community-edit-close){display:grid;gap:11px}
.community-edit-sheet label{display:grid;gap:5px;font-size:12px;font-weight:700}
.community-edit-sheet textarea,.community-edit-sheet select,.community-edit-sheet input:not([type=checkbox]):not([type=hidden]){width:100%;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit}
.community-edit-sheet fieldset{max-height:160px;overflow:auto;border:1px solid var(--line);border-radius:12px}
.community-edit-close{position:absolute;right:12px;top:8px}.community-edit-close button{border:0;background:transparent;font-size:28px;cursor:pointer}
.community-edit-sheet .button,.community-edit-sheet [type=submit]{padding:11px 16px;border:0;border-radius:11px;background:var(--ink);color:white;font-weight:800;cursor:pointer}
.community-edit-sheet .community-delete-post{margin-top:14px;background:#fff;color:#b31c50}
.community-comments-sheet{position:fixed;inset:auto 0 0;display:flex;flex-direction:column;width:min(100%,560px);height:min(80dvh,760px);max-height:calc(100dvh - 25px);margin:auto auto 0;padding:0;border:0;border-radius:23px 23px 0 0;background:#fff;box-shadow:0 -20px 60px #110a1833}
.community-comments-sheet:not([open]){display:none}
.community-comments-sheet::backdrop{background:rgba(15,11,20,.5)}
.community-sheet-handle{width:42px;height:4px;margin:10px auto 5px;border-radius:5px;background:#b8b3bd}
.community-comments-sheet>header{display:flex;align-items:center;justify-content:center;flex:0 0 55px;border-bottom:1px solid var(--line)}
.community-comments-sheet h2{margin:0;font:800 18px var(--display)}
.community-comments-sheet>header button{position:absolute;right:15px;top:10px;border:0;background:transparent;font-size:27px;cursor:pointer}
.community-comments-content{flex:1;min-height:0;overflow-y:auto;padding:12px 15px}
.community-comments-empty{display:grid;place-content:center;min-height:80%;text-align:center}.community-comments-empty strong{font:800 20px var(--display)}.community-comments-empty p{color:var(--muted)}
.community-sheet-comment{display:flex;align-items:start;gap:10px;margin:10px 0 18px}.community-sheet-comment .community-avatar{flex:0 0 34px;width:34px;height:34px;border-radius:50%}
.community-sheet-comment-body{min-width:0;flex:1;font-size:13px}.community-sheet-comment-body p{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.community-comment-menu{position:relative}.community-comment-menu summary{list-style:none;cursor:pointer;font-size:23px}.community-comment-menu summary::-webkit-details-marker{display:none}.community-comment-menu button{display:block;width:105px;padding:9px;border:0;background:#fff;text-align:left;cursor:pointer}
.community-comment-menu[open]{z-index:5}.community-comment-menu[open] button{box-shadow:0 4px 16px #1112}
.community-inline-actions{display:flex;gap:8px}.community-inline-actions button{border:0;background:none;color:var(--violet);cursor:pointer}
.community-sheet-comment textarea{width:100%;padding:8px;border:1px solid var(--line);border-radius:9px}
.community-comments-sheet [data-comments-error]:empty{display:none}.community-comments-sheet [data-comments-error]{margin:0 15px}
.community-emoji-row{display:flex;justify-content:space-around;gap:5px;overflow-x:auto;padding:8px 10px;border-top:1px solid var(--line)}
.community-emoji-row button{padding:3px;border:0;background:none;font-size:22px;cursor:pointer}
.community-comments-sheet [data-comments-form]{display:flex;gap:8px;padding:8px 14px 16px}
.community-comments-sheet [data-comments-form] input{flex:1;min-width:0;padding:10px 16px;border:1px solid var(--line);border-radius:25px;font:inherit}
.community-comments-sheet [data-comments-form] button{width:40px;border:0;border-radius:50%;background:var(--violet);color:white;font-size:20px;cursor:pointer}
.community-compose-emoji{display:flex;gap:5px;margin:-4px 0 12px}.community-compose-emoji button{margin:0!important;padding:4px!important;border:0!important;background:transparent!important;font-size:18px!important;cursor:pointer}
.community-admin-delete{max-width:620px;margin:12px auto;text-align:right}.community-admin-delete button{border:0;background:none;color:#b31c50;font-weight:800;cursor:pointer}
@media(max-width:900px){.community-layout{display:flex;flex-direction:column}.community-main{width:100%;max-width:620px;margin-inline:auto}.community-side{width:100%;max-width:620px;margin-inline:auto}.community-compose-disclosure summary{display:block;margin-bottom:12px;padding:13px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--violet);font-weight:800;cursor:pointer}.community-side-note{display:none}}
@media(max-width:620px){.community-page{width:100%;padding:14px 0 100px}.community-hero{margin:0 15px 17px}.community-hero h1{font-size:35px}.community-hero p:not(.eyebrow){display:none}.community-layout{gap:8px}.community-main{min-width:0}.community-scope,.community-filters{margin-inline:15px}.community-side{order:-1;padding-inline:15px}.community-card,.community-post-detail{margin-bottom:8px;border-inline:0;border-radius:0}.community-card>header,.community-post-detail>header{padding-inline:15px}.community-feed-media .community-media-tile{max-height:min(75dvh,560px)}.community-detail-page .community-back{margin-left:15px}}

/* Social discovery layout: quiet chrome around photographs and local places. */
.community-page{max-width:1220px;padding-top:34px}
.community-hero{align-items:center;max-width:1010px;margin:0 auto 20px;padding:0 8px}
.community-hero h1{margin:0;font:800 clamp(25px,3vw,34px)/1.15 var(--display);letter-spacing:-.04em}
.community-hero p{margin:5px 0 0;font-size:13px}
.community-create-button{display:flex;align-items:center;gap:9px;padding:11px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:800 13px var(--display);cursor:pointer}
.community-create-button:hover{border-color:var(--violet);color:var(--violet)}
.community-layout{grid-template-columns:minmax(0,620px) 310px;gap:38px}
.community-category-stories{display:flex;gap:16px;overflow-x:auto;margin:0 0 23px;padding:8px 2px 17px;scrollbar-width:none}
.community-category-stories::-webkit-scrollbar,.community-filters::-webkit-scrollbar{display:none}
.community-category-stories>a{flex:0 0 73px;min-width:0;color:var(--ink);text-align:center;text-decoration:none}
.community-story-ring{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 6px;border-radius:50%;background:conic-gradient(#ee287b,#7a2dd5,#f8a638,#ee287b)}
.community-story-face{display:grid;place-items:center;width:63px;height:63px;overflow:hidden;border:3px solid #fff;border-radius:50%;background:#f4ecfa;color:var(--violet);font-size:22px}
.community-story-face img{width:100%;height:100%;object-fit:cover}
.community-story-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700}
.community-scope{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:12px}
.community-scope a{padding:10px 1px;color:var(--muted);font-size:14px;font-weight:800;border-bottom:2px solid transparent}
.community-scope a.active{color:var(--ink);border-color:var(--violet)}
.community-scope a,.community-scope a.active{background:transparent;border-top:0;border-right:0;border-left:0;border-radius:0}
.community-filters{margin-bottom:12px;scrollbar-width:none}
.community-card{border-radius:4px;margin-bottom:26px}
.community-card>header,.community-post-detail>header{padding:11px 12px}
.community-avatar{border-radius:50%;background:linear-gradient(140deg,#7434d8,#f12f9b)}
.community-feed-media{background:#f6f4f8}
.community-feed-media .community-media-tile{aspect-ratio:1/1;max-height:620px}
.community-social-actions{padding-top:9px}
.community-side{top:92px}
.community-side-profile{display:flex;align-items:center;gap:10px;margin:10px 0 25px}
.community-side-profile>div:nth-child(2){min-width:0;flex:1}
.community-side-profile strong,.community-place-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.community-side-profile small,.community-place-row small{display:block;color:var(--muted);font-size:11px}
.community-side-profile>a,.community-recommendations-head>a{color:var(--violet);font-size:11px;font-weight:800}
.community-recommendations-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:13px;font-size:13px}
.community-place-row{display:flex;align-items:center;gap:10px;padding:8px 0;color:var(--ink)}
.community-place-row>span:nth-child(2){min-width:0;flex:1}
.community-place-row>i{font-size:12px;color:var(--muted)}
.community-place-image{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;overflow:hidden;border-radius:50%;background:#f4ecfa;color:var(--violet)}
.community-place-image img{width:100%;height:100%;object-fit:cover}
.community-nearby-link{display:inline-block;margin-top:15px;color:var(--violet);font-size:12px;font-weight:800}
.community-compose-dialog{width:min(620px,calc(100vw - 20px));max-height:min(90dvh,900px);padding:0;border:0;border-radius:18px;background:#fff;box-shadow:0 30px 90px #100e2233}
.community-compose-dialog::backdrop{background:#101019aa}
.community-compose-title{display:flex;align-items:center;justify-content:center;position:sticky;top:0;z-index:2;height:50px;border-bottom:1px solid var(--line);background:#fff}
.community-compose-title h2{margin:0;font:800 16px var(--display)}
.community-compose-title button{position:absolute;right:12px;border:0;background:transparent;font-size:26px;cursor:pointer}
.community-compose-dialog .community-compose{margin:0;padding:18px 22px;border:0;border-radius:0}
.community-compose-dialog .community-compose h2{margin-top:4px}
.community-media-picker input{border:1px dashed var(--violet)!important;background:#f9f6ff!important}
.community-detail-page .community-post-detail{max-width:620px}
@media(max-width:900px){.community-layout{gap:0}.community-main{max-width:620px}.community-side{order:0;display:none}.community-page{padding-top:18px}.community-category-stories{margin-inline:15px}}
@media(max-width:620px){.community-hero{flex-direction:row;margin:0 14px 12px}.community-hero h1{font-size:22px}.community-hero p{display:none}.community-create-button{width:42px;height:42px;justify-content:center;padding:0;font-size:20px}.community-create-button span{display:none}.community-category-stories{gap:12px;margin-bottom:9px}.community-scope,.community-filters{margin-inline:14px}.community-card{border-radius:0;margin-bottom:12px}.community-feed-media .community-media-tile{max-height:calc(100vw + 15px)}.community-compose-dialog{width:100vw;max-height:100dvh;height:100dvh;border-radius:0}.community-compose-dialog .community-compose{padding-bottom:100px}.community-detail-page .community-post-detail{margin-bottom:75px}}
.community-compose-dialog [hidden]{display:none!important}
.community-compose-dialog{width:min(690px,calc(100vw - 24px));height:min(720px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);overflow:auto}
.community-compose-dialog .community-compose{min-height:100%;padding:0;display:flex;flex-direction:column}
.community-compose-title{flex:0 0 54px}
.community-compose-title [data-compose-back]{left:12px;right:auto;font-size:23px}
.community-compose-dialog .community-compose-title button{color:var(--ink)}
.community-compose-pick{display:flex;flex:1;min-height:390px;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center}
.community-compose-pick-icon{position:relative;display:block;width:96px;height:70px;margin-inline:auto;color:#272431}
.community-compose-pick-icon i{position:absolute;line-height:1}
.community-compose-pick-icon i:first-child{left:5px;top:0;font-size:53px}
.community-compose-pick-icon i+ i{right:3px;bottom:0;margin:0;font-size:40px;border-radius:50%;background:#fff}
.community-compose-pick h3{margin:22px 0 7px;font-size:20px;font-weight:700}
.community-compose-pick p{margin:0 0 19px;color:var(--muted);font-size:13px}
.community-pick-button,.community-compose-next{display:inline-flex;justify-content:center;align-items:center;margin:0;padding:11px 21px;border:0;border-radius:9px;background:#4d5fe6;color:#fff;font-size:13px;font-weight:800;cursor:pointer}
.community-pick-button input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.community-text-only{margin:15px 0 0!important;padding:3px!important;border:0!important;background:transparent!important;color:#4d5fe6!important;font-size:12px!important;font-weight:700!important}
.community-compose-pick .community-file-preview{width:100%;max-width:520px;max-height:200px;overflow:auto;margin:17px 0 0}
.community-compose-pick .community-compose-next{margin-top:15px}
.community-compose-details{display:flex;flex-direction:column;gap:0;padding:18px 23px 22px}
.community-compose-user{display:flex;align-items:center;gap:10px;margin-bottom:9px;font-size:13px}
.community-compose-user .community-avatar{width:34px;height:34px}
.community-compose-dialog .community-compose-caption{margin:0}
.community-compose-caption textarea{min-height:130px;padding:9px 0!important;border:0!important;border-radius:0!important;font-size:15px!important;resize:vertical;outline:none}
.community-compose-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;padding-bottom:12px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}
.community-compose-dialog .community-compose-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:50px;margin:0;border-bottom:1px solid var(--line);font-size:13px}
.community-compose-dialog .community-compose-row select,.community-compose-dialog .community-compose-row input{width:min(220px,55%);border:0;text-align:right;font-size:13px}
.community-compose-dialog .community-location{position:relative}
.community-compose-dialog .community-nearby-button{font-size:11px}
.community-details-preview{grid-template-columns:repeat(auto-fill,minmax(68px,1fr));max-height:100px;overflow:auto}
.community-compose-dialog .community-publish{align-self:flex-end;margin-top:6px!important;padding:11px 24px!important;border-radius:9px!important;background:#4d5fe6!important}
.community-card:not(:has(.community-feed-media)) .community-caption,.community-post-detail:not(:has(.community-feed-media)) .community-caption{margin-top:6px;margin-bottom:7px}
.community-card:not(:has(.community-feed-media)) .community-social-actions,.community-post-detail:not(:has(.community-feed-media)) .community-social-actions{padding-top:0}
.community-social-actions svg{display:block;flex:0 0 26px;width:26px;height:26px}
.community-post-detail .community-social-actions form button svg{display:block;width:26px;height:26px}
.community-comment-delete{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:var(--muted);cursor:pointer}
.community-comment-delete:hover{color:#a4214d}
@media(max-width:620px){.community-compose-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0}.community-compose-pick{min-height:0}.community-compose-details{padding:14px 18px 80px}}
.community-compose-dialog .community-compose-pick.has-media{padding:0;justify-content:flex-start;min-height:0}
.community-compose-dialog .community-compose{height:100%}
.community-compose-dialog .community-compose-pick.has-media{height:calc(100% - 54px);flex:1 1 0;overflow:hidden}
.community-compose-pick.has-media .community-pick-intro,.community-compose-pick.has-media>.community-pick-button,.community-compose-pick.has-media>.community-text-only{display:none}
.community-compose-pick.has-media .community-file-preview{order:0;display:flex;width:100%;max-width:none;max-height:none;min-height:0;flex:1 1 0;margin:0;overflow-x:auto;scroll-snap-type:x mandatory;background:#18151d}
.community-compose-pick.has-media .community-file-preview>div{position:relative;flex:0 0 100%;height:100%;min-height:0;scroll-snap-align:start;display:grid;place-items:center}
.community-compose-pick.has-media .community-file-preview img,.community-compose-pick.has-media .community-file-preview video{width:100%;height:100%;object-fit:contain}
.community-compose-pick.has-media .community-file-preview>div>button{position:absolute;top:12px;right:12px;z-index:1;width:36px;height:36px;border:0;border-radius:50%;background:#1c182bbb;color:#fff;font-size:24px}
.community-compose-pick.has-media .community-compose-pick-actions{order:1;display:flex;justify-content:space-between;width:100%;padding:10px 20px}
.community-compose-pick-actions button{border:0;background:transparent;color:var(--violet);font-weight:800;cursor:pointer}
.community-compose-pick.has-media [data-compose-next]{order:2;margin:0 20px 14px auto}
.community-compose-pick.has-media [data-compose-pick-error]{order:3;margin:0 20px 12px;align-self:flex-start}
.community-compose-pick [data-compose-next]:disabled{opacity:.55;cursor:wait}
.community-compose-categories{margin:12px 0;padding:0;border:0}
.community-compose-categories{min-width:0;width:100%}
.community-compose-categories legend{margin-bottom:10px;font-size:13px;font-weight:800}
.community-compose-categories>div{display:flex;flex-wrap:wrap;gap:8px}
.community-compose-categories button{padding:9px 15px;border:1px solid #e9e4ed;border-radius:999px;background:#fff;color:var(--ink);font-weight:700;cursor:pointer}
.community-compose-categories button[aria-pressed=true]{border-color:var(--violet);background:#f2eafb;color:var(--violet)}
.community-compose-dialog .community-compose-row input{text-align:left;width:min(300px,65%)}
.community-toast{position:fixed;z-index:10000;right:20px;bottom:20px;max-width:min(360px,calc(100vw - 40px));padding:14px 20px;border-radius:12px;background:#173f33;color:#fff;box-shadow:0 12px 32px #16112033;font-weight:800}
.community-toast.is-error{background:#992b46}
.community-toast[hidden]{display:none}
.community-compose-details:has(.community-details-preview:not(:empty)){display:grid;grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr);column-gap:22px;align-content:start}
.community-compose-details:has(.community-details-preview:not(:empty))>*:not(.community-details-preview){grid-column:2}
.community-compose-details .community-details-preview:not(:empty){grid-column:1;grid-row:1 / span 8;display:flex;overflow:auto;scroll-snap-type:x mandatory;align-self:start;width:100%;max-height:560px;margin:0;background:#19151e;border-radius:12px}
.community-compose-details .community-details-preview:not(:empty)>div{flex:0 0 100%;height:450px;display:grid;place-items:center;scroll-snap-align:start}
.community-compose-details .community-details-preview img,.community-compose-details .community-details-preview video{width:100%;height:100%;object-fit:contain}
@media(max-width:620px){.community-compose-dialog .community-compose-details{gap:4px}.community-toast{left:14px;right:14px;bottom:24px}}
@media(max-width:620px){.community-compose-details:has(.community-details-preview:not(:empty)){display:flex;flex-direction:column}.community-compose-details .community-details-preview:not(:empty){order:-1;height:38dvh;max-height:38dvh}.community-compose-details .community-details-preview:not(:empty)>div{height:38dvh}.community-compose-details .community-details-preview img,.community-compose-details .community-details-preview video{max-height:38dvh}.community-compose-categories>div{flex-wrap:nowrap;overflow:auto;padding-bottom:4px}.community-compose-categories button{flex:0 0 auto}}
@media(max-width:620px){.community-compose-dialog{overflow:hidden}.community-compose-dialog .community-compose-details{height:calc(100dvh - 54px);overflow-y:auto;overflow-x:hidden;min-width:0;width:100%;padding-bottom:28px}.community-compose-dialog .community-publish{position:fixed;top:0;right:50px;bottom:auto;left:auto;z-index:4;width:auto;height:54px;margin:0!important;padding:0 8px!important;border-radius:8px!important;background:transparent!important;color:#4d5fe6!important;box-shadow:none;font-size:13px}.community-compose-dialog .community-compose-categories>div{max-width:100%}}

/* Feed actions and composer refinement. */
.community-card,.community-post-detail{border-color:#e9e7ed;box-shadow:none}
.community-card-author{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.community-card-author .community-post-location{display:block;margin:0!important;padding:0;color:#554b61;text-decoration:none;font-size:12px;font-weight:600}
.community-card-author a.community-post-location:hover{text-decoration:underline}
.community-post-actions{position:relative;margin-left:auto;flex:none}
.community-post-actions summary{list-style:none;display:grid;place-items:center;width:36px;height:36px}
.community-post-actions summary::-webkit-details-marker{display:none}
.community-post-actions[open]{z-index:20}
.community-post-actions>div{position:absolute;top:37px;right:0;width:150px;padding:5px;border:1px solid #ece8ef;border-radius:13px;background:#fff;box-shadow:0 12px 30px #17101f24}
.community-post-actions button{display:block;width:100%;padding:11px 12px;border:0;border-radius:9px;background:transparent;color:#221d2a;text-align:left;font-size:13px;font-weight:700;cursor:pointer}
.community-post-actions button:hover{background:#f5f1f9}
.community-post-actions [data-feed-delete],.community-post-actions form button{color:#a32c4f}
.community-delete-confirm{width:min(92vw,420px);max-width:420px;border:1px solid #e8dce9;border-radius:22px;padding:28px;background:#fff;color:#1c1724;box-shadow:0 20px 80px #1c172440}
.community-delete-confirm::backdrop{background:#17121bc2}
.community-delete-confirm h2{margin:0 0 10px;font-size:1.5rem}
.community-delete-confirm p{margin:0 0 24px;line-height:1.5;color:#655c6b}
.community-delete-confirm-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.community-delete-confirm-actions button{min-height:44px;border:1px solid #ded4e2;border-radius:12px;padding:10px 16px;background:#fff;color:#211b27;font:inherit;font-weight:700;cursor:pointer}
.community-delete-confirm-actions [data-delete-approve]{border-color:#a32c4f;background:#a32c4f;color:#fff}
.community-post-actions form{margin:0}
/* Portrait posts use the same 3:4 frame while composing and in the feed. */
.community-layout{grid-template-columns:minmax(0,500px) 310px}
.community-main{width:100%;max-width:500px}
.community-card{width:100%;max-width:none;margin-inline:0}
.community-detail-page .community-post-detail{width:100%;max-width:500px;margin-inline:auto}
#community-feed{display:block}
#community-feed .community-card{min-width:0;margin:0 0 18px}
.community-feed-media{background:#f5f2f7}
.community-feed-media .community-media-tile{aspect-ratio:3/4;max-height:none;background:#f5f2f7}
.community-feed-media img,.community-feed-media video,.community-post-detail .community-feed-media img,.community-post-detail .community-feed-media video{height:100%;object-fit:cover}
.community-card:has(.community-feed-media),.community-post-detail:has(.community-feed-media){display:flex;flex-direction:column;align-items:stretch}
.community-card:has(.community-feed-media)>header,.community-post-detail:has(.community-feed-media)>header{order:0;width:100%}
.community-card:has(.community-feed-media)>.community-feed-media,.community-post-detail:has(.community-feed-media)>.community-feed-media{order:1;width:100%;aspect-ratio:auto}
.community-card:has(.community-feed-media)>.community-social-actions,.community-post-detail:has(.community-feed-media)>.community-social-actions{order:2;width:100%;padding:6px 12px 0}
.community-card:has(.community-feed-media)>.community-like-count,.community-post-detail:has(.community-feed-media)>.community-like-count{order:3;margin:2px 16px 4px}
.community-card:has(.community-feed-media)>.community-caption,.community-post-detail:has(.community-feed-media)>.community-caption{order:4;margin:0 16px 5px}
.community-card:has(.community-feed-media)>.community-comments-link,.community-post-detail:has(.community-feed-media)>.community-comments-link{order:5;margin:4px 16px 14px}
.community-post-detail:has(.community-feed-media)>.community-post-time{order:6;margin:0 16px 16px}
.community-card .community-feed-media .community-media-tile,.community-post-detail .community-feed-media .community-media-tile{height:auto;aspect-ratio:3/4}
.community-compose-pick.has-media .community-file-preview{background:#f5f2f7}
.community-compose-pick.has-media .community-file-preview>div{width:100%;height:100%;max-height:100%;aspect-ratio:auto;min-width:0;min-height:0;overflow:hidden}
.community-compose-pick.has-media .community-file-preview img,.community-compose-pick.has-media .community-file-preview video{display:block;width:auto;height:min(100%,65dvh);max-width:100%;max-height:100%;aspect-ratio:3/4;object-fit:cover;background:#f5f2f7}
.community-compose-pick.has-media .community-file-preview img{touch-action:none;cursor:grab}
.community-compose-pick.has-media .community-file-preview img:active{cursor:grabbing}
.community-edit-sheet .community-file-preview{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}
.community-edit-sheet .community-file-preview>div{aspect-ratio:3/4}
.community-edit-sheet .community-file-preview img{touch-action:none;cursor:grab}
.community-frame-hint{display:none;margin:6px 12px 0;color:#5f5369;font-size:12px;font-weight:700;text-align:center}
.community-compose-pick.has-media .community-frame-hint{order:1;display:block}
.community-edit-sheet .community-frame-hint{display:block;text-align:left}
.community-compose-details .community-details-preview:not(:empty){background:#f5f2f7}
.community-compose-details .community-details-preview img,.community-compose-details .community-details-preview video{width:auto;height:min(100%,60dvh);max-width:100%;aspect-ratio:3/4;object-fit:cover}
@media(max-width:900px){.community-layout{grid-template-columns:minmax(0,1fr)}.community-main{max-width:500px;margin-inline:auto}}
@media(max-width:620px){.community-compose-details .community-details-preview img,.community-compose-details .community-details-preview video{height:100%}}
.community-compose-dialog .community-compose-row,.community-edit-sheet .community-compose-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:9px 0;border-bottom:1px solid #efebf1;font-weight:700}
.community-compose-dialog .community-compose-row input,.community-edit-sheet .community-compose-row input{width:min(290px,60%);min-width:0;padding:9px 12px;border:0;border-radius:10px;background:#f6f4f8;text-align:left;font-weight:500}
.community-compose-dialog .community-compose-row input:focus,.community-edit-sheet .community-compose-row input:focus{outline:2px solid #a579d8}
.community-compose-dialog .community-location,.community-edit-sheet .community-location{position:relative}
.community-location-results{top:calc(100% - 30px);left:auto;right:0;width:min(310px,100%);max-height:185px}
.community-compose-dialog .community-nearby-button,.community-edit-sheet .community-nearby-button{margin:7px 0 3px;padding:4px 0;border:0;background:none;color:#7250a9;font-size:12px;font-weight:700;text-align:left}
.community-media-status{display:block;min-height:18px;color:#766b82;font-size:12px}
.community-compose-details:has(.community-details-preview:not(:empty)) .community-media-status{grid-column:2}
.community-edit-sheet{width:min(850px,calc(100vw - 24px));height:min(720px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:0;overflow-y:auto;border-radius:20px}
.community-edit-sheet .community-compose-title{position:sticky;top:0;z-index:3}
.community-edit-sheet .community-compose-title button{position:absolute;left:16px;right:auto;padding:0 8px;border:0;background:transparent;color:#211a2a;font-size:24px;cursor:pointer}
.community-edit-sheet .community-compose-title h2{margin:0;font:800 16px var(--display)}
.community-edit-sheet>form{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,.82fr);column-gap:24px;align-content:start;gap:6px!important;padding:22px!important}
.community-edit-sheet>form>*:not(.community-edit-gallery){grid-column:2}
.community-edit-gallery{grid-column:1;grid-row:1 / span 9;display:flex;gap:3px;overflow:auto;scroll-snap-type:x mandatory;align-self:start;min-height:440px;background:#1e1a22;border-radius:13px}
.community-edit-gallery:empty{display:none}
.community-edit-sheet>form:not(:has(.community-edit-gallery:not(:empty))){grid-template-columns:minmax(0,1fr);max-width:600px;margin:auto}
.community-edit-sheet>form:not(:has(.community-edit-gallery:not(:empty)))>*{grid-column:1}
.community-edit-media{position:relative;display:block!important;flex:0 0 100%;height:440px;scroll-snap-align:start}
.community-edit-media img,.community-edit-media video{width:100%;height:100%;object-fit:contain;border-radius:0}
.community-edit-media input{position:absolute;right:13px;top:13px;z-index:1;width:22px;height:22px;accent-color:#a32c4f}
.community-edit-media span{position:absolute;right:43px;top:12px;color:#fff;text-shadow:0 1px 5px #111;font-weight:700}
.community-edit-sheet .community-compose-caption textarea{min-height:145px;padding:10px 0!important;border:0!important;resize:vertical;font-size:15px}
.community-edit-sheet .community-compose-categories{max-height:none;overflow:visible;border:0;border-radius:0}
.community-edit-sheet .community-edit-add-media{display:block;padding:10px 0;color:#7250a9;cursor:pointer}
.community-edit-sheet .community-edit-add-media input{display:block;margin-top:6px;font-size:12px}
.community-edit-sheet .community-publish{justify-self:end;min-width:100px;margin-top:10px;background:#4d5fe6!important}
@media(max-width:620px){.community-edit-sheet{width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0}.community-edit-sheet>form{display:flex!important;flex-direction:column;padding:16px 18px 95px!important}.community-edit-gallery{width:100%;min-height:0;height:35dvh}.community-edit-media{height:35dvh}.community-edit-sheet .community-publish{position:fixed;bottom:0;left:18px;right:18px;width:calc(100% - 36px);margin:0 0 12px;box-shadow:0 0 0 12px #fff}.community-post-actions>div{right:8px}}
@media(max-width:620px){.community-compose-dialog .community-compose-categories>div,.community-edit-sheet .community-compose-categories>div{display:flex;flex-wrap:wrap;overflow:visible;gap:8px;padding-bottom:0}.community-compose-dialog .community-compose-categories button,.community-edit-sheet .community-compose-categories button{flex:0 0 auto}}

/* The category rail must begin at its real scroll origin, even when it overflows. */
.community-stories-wrap{position:relative;min-width:0}
.community-story-controls{display:flex;justify-content:flex-end;gap:7px;margin:0 0 3px}
.community-story-controls button{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer}
.community-story-controls button:hover:not(:disabled){border-color:var(--violet);color:var(--violet)}
.community-story-controls button:disabled{opacity:.35;cursor:default}
.community-category-stories{justify-content:flex-start;overscroll-behavior-inline:contain;touch-action:auto;scroll-behavior:smooth;cursor:grab}
.community-category-stories.is-dragging{scroll-behavior:auto;cursor:grabbing;user-select:none}
.community-category-stories.is-dragging a{pointer-events:none}
@media(max-width:620px){.community-story-controls{margin-right:14px}.community-category-stories{padding-inline:15px;scroll-padding-inline:15px}}

/* Align the feed title and action with the same columns as the feed below. */
@media(min-width:901px){
  .community-hero{display:grid;grid-template-columns:minmax(0,500px) 310px;column-gap:38px;justify-content:center;align-items:center;max-width:none;padding:0}
  .community-hero .community-create-button{justify-self:end}
}
@media(min-width:621px) and (max-width:900px){
  .community-hero{width:min(500px,100%);max-width:none;margin-inline:auto;padding:0}
}

/* Admin content: clear actions, direct uploads and tap-friendly field guidance. */
.admin-content-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.admin-content-heading h1{margin:0;font:800 clamp(32px,4vw,52px)/1 var(--display);letter-spacing:-.045em}
.admin-tutorial{margin:18px 0 22px;border:1px solid #d9cbe5;border-radius:15px;background:#faf7fd}
.admin-tutorial summary{display:flex;align-items:center;gap:9px;min-height:48px;padding:12px 16px;color:#63358e;font-size:13px;font-weight:800;cursor:pointer;list-style:none}
.admin-tutorial summary::-webkit-details-marker,.admin-field-help summary::-webkit-details-marker{display:none}
.admin-tutorial summary:focus-visible,.admin-field-help summary:focus-visible,.admin-row-action:focus-visible{outline:3px solid #a756dd;outline-offset:2px}
.admin-tutorial>div{padding:0 16px 15px;color:#514658;font-size:12px;line-height:1.6}
.admin-tutorial p{max-width:78ch;margin:0 0 8px}
.admin-field-heading{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}
.admin-field-help{position:relative;z-index:5;flex:none}
.admin-field-help[open]{z-index:30}
.admin-field-help summary{display:grid;place-items:center;width:28px;height:28px;border:1px solid #cdb2e5;border-radius:50%;background:#f7f0fc;color:#7136a6;cursor:pointer;list-style:none}
.admin-field-help-text{position:absolute;top:34px;right:0;width:min(290px,calc(100vw - 48px));padding:12px 14px;border:1px solid #d7c3e9;border-radius:12px;background:#fff;color:#33293e;box-shadow:0 12px 28px #21142d25;font-size:12px;font-weight:500;line-height:1.5}
.admin-image-field input[type=file]{padding:9px;background:#fff}
.admin-image-field input[type=file]::file-selector-button{min-height:38px;margin-right:12px;padding:9px 12px;border:0;border-radius:9px;background:#6e2aa9;color:#fff;font:800 11px var(--body);cursor:pointer}
.admin-image-field>small{color:#72677b;font-size:11px}
.admin-image-current{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #e5dcea;border-radius:12px;background:#faf8fc;font-size:12px;font-weight:700}
.admin-image-current img{display:block;width:78px;height:60px;flex:none;border-radius:8px;object-fit:contain;background:#eae3ee}
.admin-image-current small{color:#72677b;font-weight:500}
.admin-field-error{color:#a62742!important;font-weight:700}
.admin-content-table{min-width:630px}
.admin-content-table td:first-child{min-width:180px;max-width:330px;overflow-wrap:anywhere}
.admin-content-source{display:block;margin-top:4px;color:#73667e}
.admin-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.admin-row-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:35px;padding:7px 10px;border:1px solid #b48ed5;border-radius:9px;background:#f5ebfc;color:#632998;font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}
.admin-row-action-translate{border-color:#d6c8e0;background:#fff;color:#554360}
.admin-row-action:hover{border-color:#7133a8;background:#7133a8;color:#fff}
@media(max-width:900px){.admin-field-heading{flex-wrap:wrap}.admin-field-help[open]{flex-basis:100%}.admin-field-help[open] summary{margin-left:auto}.admin-field-help-text{position:static;display:block;width:100%;margin-top:7px;box-shadow:none}.admin-tutorial{margin-block:14px}}
@media(max-width:620px){.admin-content-heading .button{width:100%}.admin-content-table{min-width:570px}.admin-row-action{min-height:40px}.admin-image-current img{width:65px;height:55px}}
.menu-product-upload{display:grid;gap:4px;min-width:0;color:#65576d;font-size:11px;font-weight:700}
.menu-product-upload input[type=file]{width:100%;min-width:0;padding:5px;border:1px solid var(--line);border-radius:10px;font-size:10px}
.menu-product-upload input[type=file]::file-selector-button{margin-right:5px;padding:7px;border:0;border-radius:7px;background:#eee4f6;color:#653088;font-weight:800;cursor:pointer}
@media(max-width:720px){.menu-product-upload{grid-column:1/-1}}

/* Local member avatar: small, optional and kept separate from AdaTickets identity. */
.member-avatar-upload{display:grid;gap:9px;margin-bottom:19px}
.member-summary .member-avatar{width:80px;height:80px;overflow:hidden;border-radius:50%;font-size:30px}
.member-avatar img,.community-avatar img,.social-profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.member-avatar-upload form:first-of-type{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.member-avatar-picker{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border:1px solid #a977d5;border-radius:11px;background:#3c244f;color:#fff;font-size:11px;font-weight:800;cursor:pointer}
.member-avatar-picker input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.member-avatar-picker:focus-within{outline:2px solid #ddabff;outline-offset:3px}
.member-summary .member-avatar-upload .member-avatar-save{width:auto;min-height:40px;padding:9px 13px;border:0;border-radius:11px;background:#fff;color:#432260;font-size:11px;font-weight:800;text-align:center}
.member-summary .member-avatar-upload .member-avatar-save:disabled{opacity:.48;cursor:not-allowed}
.member-summary .member-avatar-upload .member-avatar-remove{width:auto;padding:2px 0;border:0;background:transparent;color:#e3bfdc;font-size:11px;text-decoration:underline}
.member-avatar-upload small{color:#c3b9cb;font-size:10px;line-height:1.4}
.member-avatar-error{color:#ffd1dc;font-size:11px;font-weight:700}
.member-avatar-error:empty{display:none}
.community-avatar{flex:none;overflow:hidden}
.social-profile-avatar{display:grid;place-items:center;flex:none;width:88px;height:88px;overflow:hidden;border-radius:50%;background:linear-gradient(135deg,var(--violet),var(--pink),var(--orange));color:#fff;font:800 34px var(--display)}
.avatar-onboarding{width:min(420px,calc(100vw - 28px));padding:28px;border:1px solid #e9dfee;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 22px 75px #17102040}
.avatar-onboarding::backdrop{background:#17102099}
.avatar-onboarding-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#f4eef8;color:#513864;font-size:22px;cursor:pointer}
.avatar-onboarding-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--violet),var(--pink));color:#fff;font-size:25px}
.avatar-onboarding h2{margin:18px 0 9px;font:800 24px/1.15 var(--display)}
.avatar-onboarding p{margin:0;color:#65596d;font-size:13px;line-height:1.55}
.avatar-onboarding-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}
.avatar-onboarding-actions a,.avatar-onboarding-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #d7c5e4;border-radius:11px;font:800 12px var(--body);text-decoration:none;cursor:pointer}
.avatar-onboarding-actions a{background:var(--violet);border-color:var(--violet);color:#fff}
.avatar-onboarding-actions button{background:#fff;color:#5b416b}
@media(max-width:720px){.member-avatar-upload form:first-of-type{gap:8px}.avatar-onboarding{padding:24px}.avatar-onboarding-actions a,.avatar-onboarding-actions button{flex:1}}
