@font-face{font-family:'Mei Manuscript';src:url('assets/manuscript-title.otf') format('opentype');font-display:swap}
:root{--bg:#0c0c0d;--panel:#151518;--line:#2b2b30;--text:#f4f2ed;--muted:#9a9995;--accent:#d8ff57}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 Arial,Helvetica,sans-serif}button,input,select{font:inherit}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:20px 28px;border-bottom:1px solid var(--line);background:rgba(12,12,13,.96)}h1,h2,h3,p{margin-top:0}h1{font-size:22px;letter-spacing:.04em;margin-bottom:0}.eyebrow{font-size:11px;letter-spacing:.16em;color:var(--accent);font-weight:700}nav,.directory-tabs,.linkrow{display:flex;flex-wrap:wrap;gap:8px}button{border:1px solid var(--line);background:#1c1c20;color:var(--text);padding:9px 12px;border-radius:999px;cursor:pointer}button:hover,.subtab.active{border-color:var(--accent)}main{padding:28px}.view{display:none}.view.active{display:block}.welcome{max-width:1050px;margin:20px 0 28px}.welcome h2{font-size:clamp(30px,5vw,64px);line-height:.98;max-width:1000px}.hero{max-width:900px;margin:7vh auto}.hero h2{font-size:44px;line-height:1.05}.searchrow,.filters,.sectionhead{display:flex;gap:10px;align-items:center}.sectionhead{justify-content:space-between;margin:22px 0}.directory-tabs{margin-bottom:18px}input,select{width:100%;background:#111114;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:12px}.filters{width:min(650px,100%)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;min-width:0}.place-card{cursor:pointer}.card h3{font-size:18px;margin-bottom:6px}.meta{color:var(--muted);font-size:13px}.badge{display:inline-block;padding:3px 7px;border:1px solid var(--line);border-radius:999px;font-size:11px;margin:6px 4px 0 0}.card a,.detail-drawer a,#placePage a{color:var(--accent);text-decoration:none}.save{float:right;padding:5px 8px}.card-image{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;margin-bottom:12px}.split{display:grid;grid-template-columns:minmax(320px,440px) 1fr;min-height:70vh;border:1px solid var(--line);border-radius:16px;overflow:hidden}.panel{padding:18px;border-right:1px solid var(--line)}.list{margin-top:12px;max-height:70vh;overflow:auto}.row{padding:12px 4px;border-bottom:1px solid var(--line);cursor:pointer}.map-placeholder{display:grid;place-items:center;padding:40px;background:radial-gradient(circle at 70% 30%,#20222a,#101013 55%)}.map-placeholder>div{max-width:480px}.mini-events{border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.mini-heading{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}.event-mini{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.detail-drawer{position:fixed;right:0;top:0;z-index:40;height:100vh;width:min(520px,92vw);background:#111114;border-left:1px solid var(--line);padding:22px;overflow:auto;transform:translateX(105%);transition:transform .2s ease}.detail-drawer.open{transform:translateX(0)}.drawer-scrim{position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.52)}.backbutton{margin-bottom:18px}.hero-image{width:100%;max-height:480px;object-fit:cover;border-radius:14px;margin-bottom:18px}.view-all{margin-top:16px}.place-page-header{max-width:900px}.place-page-header h2{font-size:48px;line-height:1}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin:20px 0}.photo-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px}.empty-note{border:1px dashed var(--line);padding:18px;border-radius:12px;color:var(--muted);margin-bottom:16px}.hidden{display:none!important}.status-sold_out{color:#ff927e}.status-cancelled{color:#ff927e}.status-new,.status-tickets_open{color:var(--accent)}code{background:#1f1f23;padding:2px 5px;border-radius:5px}
@media(max-width:760px){.topbar{align-items:flex-start;flex-direction:column}.hero h2,.place-page-header h2{font-size:34px}.sectionhead{align-items:stretch;flex-direction:column}.split{grid-template-columns:1fr}.panel{border-right:0;border-bottom:1px solid var(--line)}.map-placeholder{min-height:260px}.searchrow{flex-direction:column}main{padding:18px}}
body{font-size:16px}.meta{font-size:14px}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;min-height:65vh;border:1px solid var(--line);border-radius:14px;overflow:hidden}.live-map{height:68vh;min-height:420px;z-index:1;background:#28282c}.map-layout .panel{min-width:0;border-left:1px solid var(--line);border-right:0}.map-layout .list{max-height:52vh}.map-row{display:block;text-align:left;width:100%;border-radius:0;background:none;border:0;border-bottom:1px solid var(--line)}.map-row span{display:block}.unmapped{margin-top:18px}.unmapped summary{cursor:pointer;margin-bottom:14px}.unmapped .cards{max-height:350px;overflow:auto}.leaflet-container{font-family:Arial,Helvetica,sans-serif}.leaflet-tooltip{color:#111}.calendar-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0}.calendar-toolbar h3{margin:0 auto 0 0}.calendar-toolbar input{width:auto;padding:6px}.calendar-scroll{overflow-x:auto;margin-bottom:14px}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:630px}.weekdays span{padding:8px;color:var(--muted)}.calendar-day{border-radius:0;min-height:160px;display:flex;flex-direction:column;text-align:left;gap:7px;padding:10px;background:var(--panel);overflow:hidden}.calendar-day.other-month{background:#0f0f11;color:var(--muted)}.calendar-day.selected{box-shadow:inset 0 0 0 2px var(--accent)}.calendar-day.today .day-number{color:var(--accent)}.day-number{font-size:14px}.calendar-preview{font-size:14px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;width:100%}.more-events{color:var(--accent);font-size:14px;margin-top:auto}.event-count{font-size:14px;color:var(--muted);margin-top:auto}.day-events{scroll-margin-top:160px;margin:24px 0}.upcoming-group{margin:26px 0}#dayControls{max-width:260px;margin:22px 0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}nav button[aria-current="page"]{border-color:var(--accent)}
@media(max-width:760px){.map-layout{grid-template-columns:1fr}.map-layout .live-map{height:52vh;min-height:340px}.map-layout .panel{border-left:0}.map-layout .list{max-height:35vh}.calendar-day{min-height:140px}.calendar-toolbar h3{width:100%;order:-1}.calendar-toolbar label{width:100%}.day-events{scroll-margin-top:200px}}
.map-legend{display:flex;flex-wrap:wrap;gap:8px 18px;padding:13px 0 18px;font-size:14px;color:var(--text)}.map-legend span{display:inline-flex;align-items:center;gap:7px}.map-legend i,.list-category-dot{width:10px;height:10px;flex-shrink:0;border:1px solid #111318;border-radius:50%;display:inline-block}.list-category-dot{margin-right:8px}.map-actions{margin-top:0}.category-map-pin{background:transparent;border:0}.category-map-pin>span{display:block;width:18px;height:18px;margin:2px;border:2px solid #111318;border-radius:50%;background:var(--pin-color);box-shadow:0 0 0 2px #ffffffcc,0 2px 7px #0008;transition:transform .12s}.category-map-pin:hover>span,.category-map-pin:focus>span{transform:scale(1.3)}.live-map .leaflet-tile-pane{filter:grayscale(1) contrast(.95)}.live-map .leaflet-control-zoom a{background:#151518;color:#f4f2ed;border-color:#414147}.live-map .leaflet-control-zoom a:hover{background:#303036}.live-map .leaflet-control-attribution{background:#151518ed;color:#c6c6c6}.live-map .leaflet-control-attribution a{color:#d8ff57}.live-map .leaflet-tooltip{background:#151518;color:#f4f2ed;border:1px solid #414147;border-radius:5px;padding:7px 10px;box-shadow:0 3px 12px #0005}.live-map .leaflet-tooltip-top:before{border-top-color:#414147}.map-layout{border-radius:8px;border-color:#414147}.map-modes button.active{background:var(--accent);color:#101013;border-color:var(--accent)}

.category-map-pin b{display:block;text-align:center;font-size:12px;color:#111;line-height:18px}.leaflet-popup-content .map-row{color:#171717;background:#fff;max-width:260px}.leaflet-popup-content .meta{color:#444}

.hours-grid{display:grid;grid-template-columns:3rem 1fr;gap:.2rem .8rem;margin:.5rem 0;font-size:.9rem}.hours-grid dt,.hours-grid dd{margin:0}.hours-block>p{margin-bottom:.3rem}.reservation-link{display:inline-block;margin:.4rem 0;text-decoration:underline}



/* Mei's LA: restrained illustrated-book typography and flat paper surfaces. */
:root{
  --bg:#e7ded5;--panel:#f5f1e9;--line:#b5a9a1;--text:#352f32;
  --muted:#635d61;--accent:#625068;--violet:#625068;--blue:#8996a0;
}
html{background:var(--bg)}
.image-title{width:310px;max-width:100%;line-height:0;position:relative;top:-5px}.image-title img{display:block;width:100%;height:auto}@media(max-width:760px){.image-title{width:240px}}
body{background:var(--bg);color:var(--text);font:18px/1.5 'Crimson Pro',Georgia,'Times New Roman',serif}
button,input,select,textarea{font:17px/1.35 'Crimson Pro',Georgia,'Times New Roman',serif}
h1,h2,h3,.calendar-toolbar h3{font-family:'MedievalSharp',Georgia,'Times New Roman',serif;font-weight:400}
.day-number{font-family:'Crimson Pro',Georgia,'Times New Roman',serif;font-weight:500}
h1{color:#493a48;font-size:clamp(34px,3.3vw,48px);letter-spacing:0;line-height:1.05;margin:0}
h2{font-size:clamp(29px,3.2vw,44px);letter-spacing:-.025em;line-height:1.1}
h3{font-size:21px;line-height:1.15}.eyebrow{color:#6e6070;font-size:11px;letter-spacing:.15em}
.topbar{background:#e7ded5 url('assets/menu-palms-landmarks.png') center center / cover no-repeat;aspect-ratio:4.5 / 1;position:relative;align-items:flex-start;border-bottom:3px double #948887;box-shadow:none;padding:12px 28px}
.events-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 14px}
.events-heading h2{font-size:30px;line-height:1.15;margin:0}
.events-heading .meta{margin:0;font-size:15px}
.topbar .eyebrow{color:#756d70}
main{max-width:1560px;margin:auto;padding:24px 28px 60px}
.welcome{max-width:none;min-height:76px;margin:0 0 24px;padding:12px 0;display:grid;place-items:center;border:0;border-bottom:1px solid #a89c98;background:#e7ded5;box-shadow:none;text-align:center}
.welcome .eyebrow{margin-bottom:6px}.welcome h2{max-width:none;font-size:clamp(23px,2.3vw,30px);line-height:1.2;color:#665568;margin:0;letter-spacing:.02em}
nav button{background:none;border:0;border-bottom:1px solid transparent;border-radius:0;padding:7px 10px;color:#4c4349}
nav button:hover,nav button[aria-current="page"]{background:none;color:#594661;border-bottom-color:#594661}
button{background:#efebe4;border:1px solid #9e9290;border-radius:2px;color:#433a43;padding:8px 11px}
button:hover{background:#e2d9d2;border-color:#675963}.subtab.active,.map-modes button.active{background:#5a4b5d;border-color:#5a4b5d;color:#f7f3eb}
input,select{background:#f8f5ee;color:#352e35;border:1px solid #a99d98;border-radius:2px;padding:10px}
input::placeholder{color:#716a6d;opacity:1}
.sectionhead{border-bottom:1px solid #b4aaa4;padding-bottom:10px}
.card,.calendar-day,.panel,.detail-drawer,.empty-note{background:#f5f1e9;color:#352f32;border:1px solid #b8ada5;border-radius:2px;box-shadow:none}
.card{padding:16px}.card:hover{background:#f0ebe3;border-color:#77676f}
.card h3{font-size:21px;color:#40353e;margin-bottom:7px}.card p{color:#403b3d}
.meta{color:#655e62;font-size:13px}.badge{border:1px solid #b4a9af;border-radius:2px;background:#ede5e8;color:#524454;font-size:12px}
.card a,.detail-drawer a,#placePage a,.more-events{color:#624e69;text-decoration:underline;text-underline-offset:2px}
.card-image,.hero-image,.photo-grid img{border-radius:1px}
.map-layout,.split{border:1px solid #b0a59e;border-radius:2px;background:#f5f1e9}.panel{border-color:#b0a59e}
.row{border-color:#cec5be}.map-row{border-radius:0;background:#f5f1e9;box-shadow:none;text-align:left}.map-row:hover{background:#eae4df}
.detail-drawer{background:#f5f1e9;border-left:1px solid #8f8283}.drawer-scrim{background:#28222a99}
.calendar-day{min-height:150px;border-color:#c1b7b0}.calendar-day.other-month{background:#e0dad3;color:#686165}.calendar-day.selected{box-shadow:inset 0 0 0 2px #68566e}.calendar-day.today .day-number{color:#624e69}
.day-number{font-size:18px}.weekdays span{background:#766b72;color:#fffaf3}.calendar-preview,.event-count{font-size:13px}
.hero{max-width:940px;margin:5vh auto;padding:clamp(20px,4vw,40px);background:#f5f1e9;border:1px solid #a99d98;border-radius:2px;color:#352f32}
.hero h2,.place-page-header h2{color:#433840}.hero .eyebrow{color:#6e6070}
.empty-note{border-style:dashed}.unmapped,details{color:#4b4349}code{background:#e2dad4;color:#403942}
.live-map{background:#e4e0da}.live-map .leaflet-tile-pane{filter:grayscale(.8) sepia(.08) contrast(.96)}
.live-map .leaflet-control-zoom a{background:#f5f1e9;color:#4b3f4c;border-color:#a99d98}
.live-map .leaflet-control-zoom a:hover{background:#e9e3dc}.live-map .leaflet-control-attribution{background:#f5f1e9;color:#5a5058}.live-map .leaflet-control-attribution a{color:#624e69}
.live-map .leaflet-tooltip{background:#f5f1e9;color:#352f32;border:1px solid #a99d98;box-shadow:none}.category-map-pin>span{border-color:#423a40;box-shadow:0 0 0 2px #f5f1e9}
.status-sold_out,.status-cancelled{color:#9a4f5b}.status-new,.status-tickets_open{color:#3f695e}
.date-map-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(200px,270px);gap:12px;margin:12px 0 18px;max-width:700px}
.date-map-filters label{display:grid;gap:5px;color:#554b54;font-size:14px}.date-map-filters input,.date-map-filters select{width:100%}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #624e69;outline-offset:2px}
@media(max-width:760px){.topbar{gap:7px;padding:12px 16px}h1{font-size:30px}nav button{padding:7px 8px}main{padding:16px 14px 44px}.welcome{min-height:72px}.welcome h2{font-size:25px}.date-map-filters{grid-template-columns:1fr}.calendar-day{min-height:140px}}
.map-legend i,.list-category-dot,.category-map-pin>span{filter:saturate(.58)}
input[type="checkbox"]{width:auto}
.sectionhead:has(.filters){flex-wrap:wrap;gap:16px;align-items:flex-end}
.sectionhead:has(.filters)>div:first-child{flex:0 0 auto}
.filters{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(220px,1fr) minmax(240px,1fr);flex:1 1 780px;width:auto;max-width:1100px;margin-left:auto;gap:10px;align-items:end}
.filters:has(.subcategory-filter[hidden]){grid-template-columns:minmax(260px,1.4fr) minmax(220px,1fr);max-width:900px}
.filters>*{min-width:0;width:100%}
.filters .subcategory-filter{display:grid;gap:5px;font-size:14px}
@media(max-width:760px){.filters,.filters:has(.subcategory-filter[hidden]){grid-template-columns:1fr;flex-basis:auto;width:100%;max-width:none;margin-left:0}}
.map-filters,.date-map-filters{display:grid;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(150px,230px));gap:12px;margin:12px 0 18px;max-width:930px}
.map-filters label,.date-map-filters label,.event-filters label{display:grid;gap:5px;color:#554b54;font-size:14px}
.map-filters input,.map-filters select,.date-map-filters input,.date-map-filters select,.event-filters select{width:100%}
.event-filters{display:grid;grid-template-columns:repeat(2,minmax(180px,260px));gap:12px;margin:10px 0 18px}
@media(max-width:760px){.filters{flex-wrap:wrap}.filters>*{min-width:100%}.map-filters,.date-map-filters,.event-filters{grid-template-columns:1fr}}
[hidden]{display:none!important}
.map-filters:has(.subcategory-filter[hidden]),.date-map-filters:has(.subcategory-filter[hidden]){grid-template-columns:minmax(220px,1fr) minmax(150px,230px)}
.event-filters:has(.subcategory-filter[hidden]){grid-template-columns:minmax(180px,260px)}
@media(max-width:760px){.map-filters:has(.subcategory-filter[hidden]),.date-map-filters:has(.subcategory-filter[hidden]),.event-filters:has(.subcategory-filter[hidden]){grid-template-columns:1fr}}
.save{float:right;margin:0 0 8px 10px;padding:5px 10px;background:#e5dce5;border:1px solid #75647b;color:#46384b;font-size:13px;font-weight:600}
.save.is-saved{background:#594b5e;color:#fffaf4}
.event-mini .save{float:none;margin:0 5px 5px 0}
.saved-heading{grid-column:1/-1;margin:12px 0 0;border-bottom:1px solid #b8ada5;padding-bottom:6px}
/* Planner conversation uses the guide's existing paper and ink palette. */
#planConversation{max-width:760px;margin:24px auto;text-align:left}
.plan-message{padding:14px 0;border-bottom:1px solid #c4b6a4}
.plan-message p,.plan-stop>p{white-space:pre-wrap}
.plan-message.user{color:#665474}
.plan-stop{text-align:left;min-width:0}
#planStatus{min-height:1.5em}
#planReset{margin-bottom:20px}

@media(max-width:760px){
  .topbar{background:none;aspect-ratio:auto;padding:0;gap:0}
  .topbar>div:first-child{width:100%;padding:12px 16px 0;background:none}
  .topbar>div:first-child::after{content:"";display:block;width:calc(100% + 32px);margin:0 -16px;aspect-ratio:4.5 / 1;min-height:110px;background:#e7ded5 url('assets/menu-palms-landmarks.png') center center / cover no-repeat}
  .topbar>nav{width:100%;padding:10px 16px;gap:4px;justify-content:center}
}
.directory-heading{text-align:center;font-family:'MedievalSharp',Georgia,serif;font-size:30px;line-height:1.2;color:#9b7258;margin:32px 0 22px;letter-spacing:0}
.directory-count{margin:0 0 8px;color:var(--muted);font-size:15px}
.directory-controls.sectionhead{margin:0 0 22px;gap:12px}
.directory-controls .directory-tabs{margin:0;flex-wrap:nowrap;align-items:center;gap:8px}
.directory-controls .directory-tabs button{white-space:nowrap;min-height:44px}
.directory-controls .filters{flex-basis:640px;max-width:none;grid-template-columns:minmax(200px,1.4fr) minmax(160px,1fr) minmax(170px,1fr)}
.directory-controls .filters:has(.subcategory-filter[hidden]){grid-template-columns:minmax(200px,1.4fr) minmax(160px,1fr);max-width:none}
@media(max-width:760px){.directory-controls .filters,.directory-controls .filters:has(.subcategory-filter[hidden]){flex-basis:100%;grid-template-columns:1fr}}
.haunted-title{display:grid;isolation:isolate}
.haunted-title>span,.haunted-title>svg{grid-area:1 / 1}
.ink-lettering{width:auto;max-width:100%;height:.95em;justify-self:center;overflow:visible}
.ink-lettering path{fill:currentColor;stroke:currentColor;stroke-width:18;stroke-linecap:round;stroke-linejoin:round}

@keyframes trace-ink{0%{fill-opacity:0;stroke-dasharray:1;stroke-dashoffset:1}75%{fill-opacity:0;stroke-dasharray:1;stroke-dashoffset:0}100%{fill-opacity:1;stroke-dasharray:1;stroke-dashoffset:0;stroke-opacity:0}}

.haunted-title .ghost-echo{color:#78667c;pointer-events:none;opacity:0;align-self:center}
.view.active .haunted-title .ghost-echo{animation:ghost-echo 9s ease-in-out 5s infinite}
@keyframes ink-reveal{0%{clip-path:inset(0 100% 0 0);opacity:.15}65%{opacity:.8}100%{clip-path:inset(0);opacity:1}}
@keyframes ghost-echo{0%,65%,100%{opacity:0;transform:translate(0,0)}74%{opacity:.35;transform:translate(5px,-2px)}86%{opacity:.16;transform:translate(-4px,2px)}}
@media(prefers-reduced-motion:reduce){.view.active .ink-lettering path{animation:none}.view.active .haunted-title .ghost-echo{animation:none;display:none}}


.calendar-time{display:block;margin-bottom:3px}
.welcome .haunted-title{transform:translateY(3px)}

.events-heading h2,#map>h2,#saved .sectionhead h2{color:#9b7258}

/* Two restrained desert-blue accents: divider and navigation rules. */
:root{--desert-blue:#a3b4b8}
.topbar{border-bottom:0}
.topbar::after{content:"";position:absolute;inset:auto 0 0;height:30px;background:linear-gradient(to bottom,transparent,var(--bg));pointer-events:none}
.welcome{position:relative;border-bottom:0;padding-bottom:18px}
#saved>.sectionhead::after,#map .map-actions::after,.welcome::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 12' preserveAspectRatio='none'%3E%3Cpath d='M0 6 C65 1 115 11 181 6 S293 2 359 7 S470 10 538 5 S642 3 712 7 S831 10 893 5 S1024 2 1085 7 S1160 9 1200 5' fill='none' stroke='%23a3b4b8' stroke-width='1.3' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat;pointer-events:none}
nav button:hover,nav button[aria-current="page"]{border-bottom-color:var(--desert-blue)}
@media(max-width:760px){.topbar::after{display:none}.topbar>div:first-child::after{mask-image:linear-gradient(to bottom,#000 0%,#000 76%,transparent 100%)}}
#decide .hero>.eyebrow{font-size:20px;color:#9b7258;letter-spacing:.08em}

#saved>.sectionhead,#map .map-actions{position:relative;border-bottom:0;padding-bottom:18px}
#map .map-actions>.meta{font-size:16px;color:#75868a}
.calendar-day.selected{box-shadow:inset 0 0 0 2px var(--desert-blue)}
#planQuery::placeholder{color:var(--desert-blue);opacity:1}

.image-title a{display:block;background:none;border:0}
.back-to-top{position:fixed;right:20px;bottom:24px;bottom:calc(24px + env(safe-area-inset-bottom));z-index:900;width:44px;height:44px;padding:0;border:1px solid var(--desert-blue);border-radius:50%;background:#e7ded5;color:var(--accent);font-size:26px;line-height:1;box-shadow:0 2px 8px #00000015}
.back-to-top[hidden]{display:none}

.events-controls{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:16px;width:100%;margin-bottom:18px}
.events-controls .directory-tabs{margin:0;align-items:center}
.events-controls .directory-tabs button{min-height:44px}
.events-controls .event-search{justify-self:end;width:280px;max-width:100%;min-width:0;margin:0}
.events-controls .event-search input{display:block;margin:0;height:44px;padding:9px 12px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.events-controls{gap:10px}.events-controls .directory-tabs{gap:4px}.events-controls .directory-tabs button{padding:9px 8px}.events-controls .event-search{width:100%}}
@media(max-width:380px){.events-controls{grid-template-columns:1fr}.events-controls .event-search{width:100%;max-width:none}}
