@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--lilac:#eee9f6;--grape:#482d58;--butter:#f8db75;--berry:#8c3047;--paper:#fffefa;--ink:#2c2333;--muted:#746b7c;--line:#ded7e3;--serif:'Fraunces',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--sans)}button,input,select{font:inherit}button,a,summary,input,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,summary{cursor:pointer}a{color:inherit;text-underline-offset:4px}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--berry);outline-offset:4px}button:disabled{opacity:.5;cursor:default}.skip{position:absolute;left:20px;top:-80px;padding:15px;background:white;z-index:100}.skip:focus{top:10px}.top{max-width:1440px;margin:auto;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;background:var(--lilac)}body:before{content:'';position:absolute;inset:0 0 auto;background:var(--lilac);height:660px;z-index:-1}.wordmark{font-weight:800;font-size:13px;text-decoration:none}.wordmark span{font-size:23px;margin-left:9px;vertical-align:middle;color:var(--berry)}.top nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:600}.top nav a{text-decoration:none}.share-button{border:1px solid #b4a5bf;padding:9px 15px;border-radius:30px;background:transparent}.share-button span{margin-left:8px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr;background:var(--lilac);padding:46px 8% 55px;min-height:555px;position:relative;overflow:hidden}.hero-note{font-size:14px;color:var(--grape);margin:0 0 20px;font-weight:600}h1{font:500 clamp(80px,8vw,124px)/.88 var(--serif);letter-spacing:-6px;color:var(--grape);margin:0 0 25px}.period{color:var(--berry)}.hero-description{font-size:14px;line-height:1.8;color:#65556e}.browse{display:inline-flex;align-items:center;gap:37px;padding:12px 20px;background:var(--grape);color:white;border-radius:30px;text-decoration:none;margin-top:14px;font-size:12px;font-weight:600}.hero-art{position:relative;display:flex;align-items:end;justify-content:center}.date-ticket{position:absolute;top:-15px;right:1%;background:var(--butter);width:156px;text-align:center;padding:21px 15px;transform:rotate(8deg);border-radius:3px;box-shadow:5px 6px 0 #482d5810}.date-ticket span{display:block;font-size:11px;font-weight:600}.date-ticket strong{font:39px/1.4 var(--serif);letter-spacing:-2px}.glasses{width:min(100%,410px);margin-bottom:9px}.art-caption{position:absolute;bottom:0;left:19%;font:21px var(--serif);transform:rotate(-7deg);color:var(--berry)}.weekend{max-width:1200px;margin:0 auto;padding:31px 35px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:42px;border-bottom:1px solid var(--line)}.day{font-size:11px;font-weight:700;color:var(--berry)}.weekend h2{font:24px/1.3 var(--serif);margin:7px 0}.weekend p{font-size:11px;color:var(--muted);margin:0}.weekend-heart{font-size:36px;color:var(--berry)}.places{max-width:1200px;margin:0 auto;padding:65px 35px 45px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.small-note{font-size:11px;font-weight:700;color:var(--berry);margin:0 0 14px}.section-heading h2{font:43px/1.12 var(--serif);letter-spacing:-1.5px;margin:0}.intro{color:var(--muted);font-size:12px;margin:0 0 3px;line-height:1.9}.updates{padding:18px 20px;background:#f4f0f8;display:flex;align-items:center;gap:15px;border-radius:10px;margin-bottom:25px}.update-dot{width:8px;height:8px;background:#5c725e;border-radius:50%;flex-shrink:0}.updates strong{font-size:11px}.updates p{font-size:11px;color:var(--muted);margin:3px 0 0}.updated{margin-left:auto;white-space:nowrap;font-size:10px;color:var(--muted)}.planning{display:flex;align-items:center;gap:25px;margin:25px 0}.guest-control{display:flex;align-items:center;gap:15px;font-size:12px;font-weight:600}.guest-control>div,.view-control{display:flex;gap:3px;background:#f0ecf3;padding:4px;border-radius:8px}.guest-control button,.view-control button{background:none;border:0;border-radius:5px;padding:7px 12px;font-size:11px;min-height:34px}.guest-control button[aria-pressed=true],.view-control button[aria-pressed=true]{background:var(--grape);color:white}.planning p{margin:0;border-left:1px solid var(--line);padding-left:25px;font-size:12px}.planning p strong{font-weight:800}.planning p span{display:block;font-size:10px;color:var(--muted)}.planning-note{font-size:10px;color:var(--muted);margin-left:auto}.toolbar{display:flex;align-items:stretch;gap:10px}.search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:7px 15px;flex:1;min-width:160px}.search span{font-size:24px;line-height:1}.search input{border:0;outline-offset:5px;background:none;min-width:0;width:100%;color:var(--ink);font-size:12px}.toolbar select{border:1px solid var(--line);background:var(--paper);padding:8px 30px 8px 12px;border-radius:8px;font-size:11px;max-width:180px;color:var(--ink)}.view-control{padding:4px}.view-control button{font-size:13px;padding:6px 12px}.view-control span{font-size:11px;margin-left:3px}.list-meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted);margin:20px 0 14px}.text-button{border:0;background:none;padding:6px;font-size:10px;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}.column-labels{display:grid;grid-template-columns:1.4fr 1fr 1.05fr 45px;gap:25px;padding:10px 24px;font-size:10px;color:var(--muted)}.column-labels[hidden]{display:none}.venue{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:10px;margin-bottom:10px;overflow:hidden}.venue > summary{list-style:none;display:grid;grid-template-columns:1.4fr 1fr 1.05fr 45px;align-items:center;gap:25px;padding:23px}.venue > summary::-webkit-details-marker{display:none}.venue > summary:hover{background:#faf8fc}.venue[open] > summary{background:#f6f1fa;border-bottom:1px solid var(--line)}.venue h3{font:22px/1.2 var(--serif);letter-spacing:-.45px;margin:0 0 6px}.location{font-size:10px;color:var(--muted);margin:0}.setting{display:block;font-size:10px;color:#685675;margin:5px 0 0}.badge{display:inline-block;font-size:9px;line-height:1.5;padding:4px 7px;border-radius:4px;font-weight:700}.badge.reply{background:#e7eee6;color:#365639}.badge.pending{background:#efecf1;color:#6b626f}.badge.form,.badge.ack{background:#f7ecc5;color:#71581d}.badge.unavailable{background:#f4e1e5;color:#873b4c}.status-line{font-size:10px;color:var(--muted);margin:7px 0 0;max-width:180px}.venue-price strong{display:block;font:26px var(--serif);letter-spacing:-.6px}.venue-price span{display:block;font-size:10px;color:var(--muted);line-height:1.6}.venue-price .over{color:var(--berry)}.expand{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:20px;color:var(--grape);justify-self:end}.expand:before{content:'+'}.venue[open] .expand:before{content:'−'}.venue-body{padding:25px}.venue-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.favorite{border:1px solid var(--line);background:transparent;border-radius:25px;padding:8px 13px;font-size:11px}.favorite[aria-pressed=true]{background:#f4e1e5;color:var(--berry);border-color:#ead0d8}.compare-label{display:flex;align-items:center;gap:7px;font-size:11px;cursor:pointer}.compare-label input{accent-color:var(--grape);width:17px;height:17px}.venue-description{font-size:13px;margin:0 0 18px;max-width:80ch}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 35px}.detail-item{border-top:1px solid var(--line);padding-top:14px}.detail-item h4{font-size:11px;margin:0 0 7px;color:var(--grape)}.detail-item p{font-size:12px;color:#655d6b;white-space:pre-line;margin:0;line-height:1.85;max-width:75ch}.venue-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:22px;font-size:11px;font-weight:700}.source-note{font-size:10px;color:var(--muted);margin:20px 0 0;max-width:100ch}.price-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:11px;max-width:700px}.price-table th,.price-table td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}.price-table th{color:var(--muted);font-weight:500}.price-table caption{text-align:left;font-size:11px;font-weight:700;margin:5px 0}.table-note{font-size:10px;color:var(--muted)}.venue-list.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}.cards .venue{margin:0}.cards .venue > summary{display:flex;flex-direction:column;align-items:start;gap:20px;padding:24px;min-height:270px}.cards .venue[open]{grid-column:1/-1}.cards .venue[open] > summary{display:grid;grid-template-columns:1.4fr 1fr 1.05fr 45px;min-height:0}.cards .venue h3{font-size:25px}.cards .venue > summary .expand{position:absolute;right:20px;top:21px}.cards .venue > summary>div:first-child{padding-right:26px}.cards .venue[open] > summary .expand{position:static}.cards .venue .status-line{max-width:100%}.cards .venue-price{margin-top:auto}.cards .venue-price strong{font-size:30px}.cards .venue[open] .venue-price{margin:0}.local-note{font-size:10px;color:var(--muted);margin-top:22px}#empty{text-align:center;padding:55px;color:var(--muted)}.end-note{margin:10px auto 0;max-width:1130px;display:flex;gap:25px;align-items:center;padding:35px 0 55px;border-top:1px solid var(--line)}.end-note>span{font-size:50px;color:var(--berry)}.end-note h2{font:29px var(--serif);margin:0}.end-note p{font-size:12px;color:var(--muted);margin-bottom:0}.end-note a{font-size:11px;margin-left:auto}footer{background:var(--lilac);padding:35px max(5%,calc((100vw - 1130px)/2));display:flex;justify-content:space-between;gap:30px;align-items:center;font-size:10px;color:#6b5f73;padding-bottom:80px}.footer-brand{font:26px var(--serif);text-decoration:none;color:var(--grape)}.compare-bar{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;z-index:5;background:var(--grape);color:white;border-radius:14px;padding:12px 16px;box-shadow:0 6px 30px #482d5833;font-size:12px}.compare-bar[hidden]{display:none}.compare-bar button{background:none;border:0;color:white;font-size:11px;padding:10px}.compare-bar #compareButton{background:var(--butter);color:var(--grape);border-radius:7px;font-weight:700;padding:10px 15px}.compare-bar #compareButton:disabled{background:#93819e}.compare-bar span{white-space:nowrap}.compare-bar button:focus-visible{outline-color:var(--butter)}dialog{border:0;border-radius:14px;padding:30px;max-width:1200px;width:calc(100% - 32px);max-height:90vh;background:var(--paper);color:var(--ink);box-shadow:0 20px 90px #2c233344}dialog::backdrop{background:#2c2333a6;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:20px}.dialog-heading h2{font:35px var(--serif);margin:0}.dialog-heading .small-note{margin:0 0 6px}.dialog-heading button{border:0;border-radius:50%;background:var(--lilac);width:36px;height:36px;font-size:24px}#comparison{overflow:auto}#comparison table{border-collapse:collapse;width:100%;font-size:12px}#comparison th,#comparison td{min-width:210px;max-width:300px;text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--line);line-height:1.8}#comparison th{font:23px var(--serif);background:var(--lilac)}#comparison th:first-child,#comparison td:first-child{min-width:100px;font:600 11px var(--sans);color:var(--muted)}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:8px;max-width:90%;font-size:12px;z-index:10}#toast:not(:empty){padding:12px 18px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1500px){body:before{height:645px}}@media(max-width:1000px){.hero{padding:45px 6%;grid-template-columns:1.2fr 1fr;min-height:510px}h1{font-size:90px;letter-spacing:-4px}.date-ticket{width:130px;padding:15px;right:0}.date-ticket strong{font-size:33px}.glasses{margin-bottom:25px}.hero-art{padding-top:90px}.weekend{padding:28px 35px;gap:25px}.planning-note{max-width:140px}.venue > summary,.column-labels{grid-template-columns:1.25fr 1fr 1fr 28px;gap:15px}.venue-list.cards{grid-template-columns:repeat(2,1fr)}.end-note{margin:10px 35px 0}.top nav{gap:20px}.toolbar select{max-width:160px}.view-control span{display:none}.view-control button{font-size:17px}.section-heading h2{font-size:39px}}
@media(max-width:680px){.top{padding:19px 22px}.wordmark{font-size:11px}.wordmark span{margin-left:4px}.top nav>a{display:none}.share-button{font-size:10px;padding:8px 12px}.hero{padding:28px 24px 38px;min-height:0;grid-template-columns:1fr;overflow:visible}.hero-copy{position:relative;z-index:1}.hero-note{font-size:11px;margin-bottom:18px}h1{font-size:80px;letter-spacing:-4px;margin-bottom:20px}.hero-description{font-size:12px;max-width:250px}.desktop{display:none}.browse{font-size:11px;padding:11px 16px;gap:30px}.hero-art{position:absolute;right:8px;top:34px;width:112px;height:295px;padding:0;align-items:end;opacity:1}.date-ticket{width:90px;right:10px;top:0;padding:12px 5px;transform:rotate(9deg)}.date-ticket span{font-size:8px}.date-ticket strong{font-size:26px}.glasses{width:135px;max-width:none;margin:0 0 -15px;transform:rotate(-7deg)}.art-caption{display:none}.hero-copy h1{max-width:280px}.weekend{grid-template-columns:1fr;gap:22px;padding:26px 24px}.weekend-heart{display:none}.weekend h2{font-size:23px}.weekend p{font-size:10px}.day{font-size:10px}.places{padding:36px 20px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:35px}.intro{margin-top:16px;font-size:11px;max-width:300px}.intro br{display:none}.small-note{font-size:10px;margin-bottom:10px}.updates{padding:15px;align-items:start;gap:9px}.update-dot{margin-top:5px}.updates p{font-size:10px}.updates .updated{display:none}.planning{gap:15px;flex-wrap:wrap;margin:20px 0}.guest-control{gap:9px;font-size:11px}.guest-control button{padding:6px 9px}.planning p{font-size:10px;padding-left:15px}.planning-note{max-width:none;width:100%;margin:0;font-size:9px}.toolbar{flex-wrap:wrap;gap:8px}.search{flex-basis:100%;padding:10px 13px}.toolbar select{flex:1;max-width:none;min-width:0;width:30%;padding:8px;font-size:10px}.view-control{flex-shrink:0}.view-control button{padding:4px 10px}.column-labels{display:none}.list-meta{margin:15px 0 8px}.venue > summary{padding:19px;grid-template-columns:1fr 85px;gap:15px;position:relative}.venue h3{font-size:23px;padding-right:10px}.venue > summary>div:first-child{grid-column:1;grid-row:1}.venue-status{grid-column:1;grid-row:2}.venue-price{grid-column:2;grid-row:1 / 3;align-self:end;text-align:right}.venue-price strong{font-size:23px;line-height:1.2}.venue-price span{font-size:9px;margin-top:5px}.expand{position:absolute;top:17px;right:19px;width:23px;height:23px;font-size:16px}.status-line{font-size:9px;max-width:170px}.setting{font-size:9px}.badge{font-size:8px}.location{font-size:9px}.venue-body{padding:19px}.detail-grid{grid-template-columns:1fr;gap:18px}.detail-item p{font-size:11px}.venue-description{font-size:12px}.venue-tools{gap:8px}.favorite{font-size:10px;padding:8px 10px}.compare-label{font-size:10px}.venue-list.cards{grid-template-columns:1fr}.cards .venue > summary{min-height:240px;padding:23px}.cards .venue[open] > summary{display:flex;flex-direction:column;align-items:start;gap:18px;min-height:240px}.cards .venue-price{text-align:left}.cards .venue[open] > summary .expand{position:absolute}.cards .venue h3{font-size:27px}.cards .venue-price strong{font-size:32px}.cards .venue > summary .expand{width:30px;height:30px}.end-note{padding:28px 0 35px;margin:0 24px;display:grid;grid-template-columns:35px 1fr;gap:15px}.end-note>span{font-size:35px;align-self:start}.end-note h2{font-size:25px}.end-note p{font-size:10px}.end-note a{grid-column:2;margin:0;font-size:10px}footer{padding:28px 24px 90px;display:block}.footer-brand{font-size:28px}footer p{font-size:9px;margin-top:20px}.compare-bar{bottom:12px;width:calc(100% - 24px);gap:8px;justify-content:space-between;padding:9px 12px;font-size:11px}.compare-bar button{font-size:10px;padding:8px}.compare-bar #compareButton{padding:10px}.price-table{font-size:10px}.price-table td,.price-table th{padding:8px 4px}dialog{padding:22px}.dialog-heading h2{font-size:29px}}
@media(max-width:375px){h1{font-size:70px}.hero-art{width:95px;right:2px}.hero-description{max-width:220px}.date-ticket{right:8px;width:80px}.glasses{width:112px}.guest-control{font-size:10px}.planning p{padding-left:10px}.planning{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep the masthead background aligned with its actual responsive height. */
body:before{display:none}.top,.hero{box-shadow:0 0 0 100vmax var(--lilac);clip-path:inset(0 -100vmax)}

@media(max-width:680px){.venue-price strong.text-price{font-size:16px}.cards .venue-price strong.text-price{font-size:25px}}

.weekend{grid-template-columns:1fr}.quick-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px;font-size:10px;font-weight:700;color:var(--grape)}.quick-links a{padding:3px 0;position:relative}.quick-links a:hover{color:var(--berry)}

/* Keep the shortlist entrance compact; optional controls open on request. */
.places{padding-top:34px}.compact-heading{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:20px}.compact-heading h2{font:36px/1.15 var(--serif);letter-spacing:-1px;margin:0}.compact-heading p{margin:0;font-size:11px;color:var(--muted)}.simple-toolbar{display:flex;gap:9px;align-items:stretch}.simple-toolbar .search{min-width:0}.simple-toolbar .search input{font-size:12px}#optionsToggle{border:1px solid var(--line);border-radius:8px;padding:9px 14px;background:var(--paper);font-size:11px;white-space:nowrap}#optionsToggle span{display:inline-block;margin-left:10px}#optionsToggle[aria-expanded=true]{background:var(--lilac)}#optionsToggle[aria-expanded=true] span{transform:rotate(180deg)}#optionsToggle.filtered:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--berry);margin-right:7px}.venue-options{margin-top:10px;padding:18px 20px;background:#f6f3f9;border-radius:9px}.venue-options[hidden]{display:none}.venue-options .planning{margin:0 0 15px;gap:22px}.option-filters{display:flex;align-items:end;gap:14px}.option-filters label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:var(--muted)}.option-filters select{min-width:150px;padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font-size:11px}.option-filters .text-button{margin-left:auto;margin-bottom:5px}.list-meta{margin:13px 0 10px}.list-meta>span:last-child{text-align:right}.simple-toolbar .view-control button{min-width:36px}
@media(max-width:680px){.places{padding-top:26px}.compact-heading{display:block;margin-bottom:18px}.compact-heading h2{font-size:31px}.compact-heading p{font-size:10px;margin-top:6px}.simple-toolbar{gap:6px;flex-wrap:nowrap}.simple-toolbar .search{flex:1 1 0;padding:8px 10px}.simple-toolbar .search input{font-size:11px}.simple-toolbar .search>span{display:none}#optionsToggle{padding:8px 10px;font-size:10px}#optionsToggle span{margin-left:4px}.simple-toolbar .view-control{padding:3px}.simple-toolbar .view-control button{padding:4px 8px;min-width:30px}.venue-options{padding:15px}.venue-options .planning{gap:14px;flex-wrap:wrap}.option-filters{gap:10px;flex-wrap:wrap}.option-filters label{flex:1;min-width:100px}.option-filters select{width:100%;min-width:0;padding:8px;font-size:10px}.option-filters .text-button{flex-basis:100%;text-align:left;margin:0;padding:4px 0}.list-meta{font-size:9px;gap:12px}.simple-toolbar .view-control span{display:none}}
/* Photo previews stay compact in the list; larger galleries live inside details. */
.venue.has-photos > summary{grid-template-columns:88px 1.4fr 1fr 1.05fr 30px;gap:18px}.photo-preview{position:relative;display:block;width:88px;height:82px;border:0;padding:0;background:var(--lilac);border-radius:7px;overflow:hidden;align-self:center}.photo-preview img{width:100%;height:100%;object-fit:cover;display:block}.photo-preview>span{position:absolute;bottom:5px;left:5px;background:#2c2333dc;color:white;border-radius:4px;padding:2px 5px;font-size:8px;line-height:1.5}.venue-gallery{margin-bottom:24px}.gallery-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px}.gallery-heading h4{font:23px var(--serif);margin:0}.gallery-heading>span{font-size:10px;color:var(--muted)}.gallery-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b8a7c5 transparent;padding:2px 2px 8px}.gallery-photo{flex:0 0 290px;scroll-snap-align:start;border:0;padding:0;text-align:left;background:none}.gallery-photo img{display:block;aspect-ratio:16/10;width:100%;height:auto;object-fit:cover;border-radius:8px}.gallery-photo>span{display:block;font-size:11px;color:var(--muted);margin:7px 0 0}.gallery-credit{font-size:9px;color:var(--muted);margin:6px 0 0}.venue-list.cards .venue.has-photos > summary{display:flex;flex-direction:column;gap:18px}.venue-list.cards .photo-preview{width:calc(100% + 48px);height:175px;margin:-24px -24px 0;border-radius:0;align-self:stretch}.venue-list.cards .photo-preview>span{bottom:10px;left:12px;font-size:10px}.venue-list.cards .venue.has-photos > summary .expand{top:185px;background:var(--paper)}.venue-list.cards .venue.has-photos[open] > summary{display:grid;grid-template-columns:88px 1.4fr 1fr 1.05fr 30px;gap:18px}.venue-list.cards .venue.has-photos[open] .photo-preview{width:88px;height:82px;margin:0;border-radius:7px;align-self:center}.venue-list.cards .venue.has-photos[open] > summary .expand{position:static}.venue-list.cards .venue.has-photos[open] .photo-preview>span{font-size:8px;bottom:5px;left:5px}.photos-open{overflow:hidden}#photoDialog{width:min(1100px,calc(100% - 40px));max-width:1100px;max-height:94dvh;padding:18px;background:#201925;color:#fffefa;overflow:hidden}#photoDialog::backdrop{background:#160f1ee8;backdrop-filter:blur(5px)}.photo-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 2px 15px}.photo-top h2{font:25px var(--serif);margin:0}.photo-top button{background:#ffffff16;border:0;color:white;width:40px;height:40px;border-radius:50%;font-size:25px;flex-shrink:0}.photo-slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;border-radius:7px;touch-action:pan-x pan-y pinch-zoom}.photo-slides::-webkit-scrollbar{display:none}.photo-slide{flex:0 0 100%;min-width:0;scroll-snap-align:center;margin:0;display:flex;align-items:center;justify-content:center;height:min(65dvh,680px)}.photo-slide img{display:block;width:100%;height:100%;object-fit:contain}.photo-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:13px}.photo-controls button{border:1px solid #756c7d;background:none;color:white;border-radius:50%;width:40px;height:40px;font-size:20px}.photo-controls span{font-size:12px;min-width:50px;text-align:center}.photo-controls button:disabled{opacity:.25}.photo-bottom{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:13px;color:#d7cddd;font-size:11px}.photo-bottom p{margin:0}.photo-bottom a{white-space:nowrap}#photoDialog button:focus-visible,#photoDialog a:focus-visible,#photoSlides:focus-visible{outline-color:var(--butter)}
@media(max-width:1000px) and (min-width:681px){.venue.has-photos > summary{grid-template-columns:70px 1.3fr .9fr 1fr 24px;gap:12px}.photo-preview{width:70px;height:72px}.venue.has-photos h3{font-size:20px}}
@media(max-width:680px){.venue.has-photos > summary{grid-template-columns:72px 1fr 85px;gap:15px 12px}.venue.has-photos > summary>.photo-preview{grid-column:1;grid-row:1;width:72px;height:85px;align-self:start;margin-top:2px}.venue.has-photos > summary>.venue-identity{grid-column:2/4;grid-row:1;padding-right:15px}.venue.has-photos > summary>.venue-status{grid-column:1/3;grid-row:2}.venue.has-photos > summary>.venue-price{grid-column:3;grid-row:2}.venue.has-photos h3{font-size:22px}.photo-preview>span{font-size:8px;left:4px;bottom:4px}.gallery-heading h4{font-size:21px}.gallery-heading>span{font-size:9px}.gallery-strip{gap:10px}.gallery-photo{flex-basis:85%}.gallery-photo>span{font-size:10px}.gallery-credit{font-size:9px}.venue-list.cards .venue.has-photos > summary,.venue-list.cards .venue.has-photos[open] > summary{display:flex;flex-direction:column;gap:18px}.venue-list.cards .venue.has-photos > summary>.photo-preview,.venue-list.cards .venue.has-photos[open] > summary>.photo-preview{width:calc(100% + 46px);height:180px;margin:-23px -23px 0;border-radius:0;align-self:stretch}.venue-list.cards .venue.has-photos > summary>.venue-identity{width:100%;padding-right:25px}.venue-list.cards .venue.has-photos > summary>.venue-price{align-self:start}.venue-list.cards .venue.has-photos > summary .expand,.venue-list.cards .venue.has-photos[open] > summary .expand{position:absolute;top:198px}.venue-list.cards .venue.has-photos h3{font-size:27px}.venue-list.cards .venue.has-photos .photo-preview>span{left:12px;bottom:10px;font-size:10px}#photoDialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:16px 12px max(20px,env(safe-area-inset-bottom));border-radius:0;display:none;flex-direction:column}#photoDialog[open]{display:flex}.photo-top{padding:0 4px 16px}.photo-top h2{font-size:23px}.photo-slides{flex:1;min-height:0}.photo-slide{height:100%}.photo-controls{margin-top:18px}.photo-bottom{margin:16px 4px 0;align-items:start;font-size:10px}.photo-bottom p{max-width:65%;line-height:1.7}}

/* Review detail stays tucked inside each venue; only one small score is visible. */
.vibe-score{display:block;font-size:11px;font-weight:800;color:var(--grape);margin-bottom:3px}.review-teaser{font-size:10px;color:var(--muted);margin:0 0 10px}.review-panel{margin:0 0 28px;padding-bottom:25px;border-bottom:1px solid var(--line)}.review-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.review-heading h4{font:25px var(--serif);margin:0}.review-heading>span{font-size:12px;font-weight:700;color:var(--grape)}.review-tldr{font-size:14px;line-height:1.8;max-width:90ch;margin:12px 0 16px}.review-label{font-size:10px;color:var(--muted);margin:0 0 10px}.score-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.score-grid>div{border-top:2px solid #d5c9df;padding-top:10px}.score-top{display:flex;justify-content:space-between;gap:8px;font-size:11px}.score-top strong{color:var(--grape);white-space:nowrap}.score-grid p{font-size:10px;color:var(--muted);line-height:1.7;margin:7px 0 0}.review-notes{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:20px}.review-notes h5{font-size:11px;margin:0 0 5px;color:var(--grape)}.review-notes p{font-size:12px;color:#655d6b;line-height:1.8;margin:0}.review-evidence{font-size:10px;color:var(--muted);line-height:1.7;margin-top:17px}.review-sources{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:10px;color:var(--grape)}.review-sources a{padding:5px 0}.score-method{margin-top:17px;font-size:11px;color:var(--muted);max-width:95ch}.score-method > summary{font-weight:700;color:var(--grape);padding:5px 0}.score-method p{line-height:1.8}.option-filters{flex-wrap:wrap}.option-filters select{min-width:135px}
@media(max-width:680px){.vibe-score{font-size:10px}.review-teaser{font-size:9px;line-height:1.6;margin-bottom:8px}.review-heading{display:block}.review-heading>span{display:block;margin-top:6px;font-size:11px}.review-tldr{font-size:12px}.score-grid{grid-template-columns:repeat(2,1fr);gap:15px}.score-grid>div:last-child{grid-column:1/-1}.score-top{font-size:11px}.score-grid p{font-size:10px}.review-notes{grid-template-columns:1fr;gap:15px}.review-notes p{font-size:11px}.review-sources{display:block}.review-sources a{display:block;padding:8px 0;line-height:1.8}.option-filters select{min-width:0}.option-filters label[for=sort]{flex-basis:100%}.score-method{font-size:10px}}

.wine-plan{padding:22px;background:#f6f3f9;border-radius:10px;margin:0 0 24px}.wine-plan h4{font:25px var(--serif);margin:0 0 10px}.wine-plan>p{font-size:12px;line-height:1.8}.wine-table-wrap{overflow-x:auto}.wine-plan .price-table{max-width:none;min-width:480px}.wine-plan .table-note{font-size:10px}.current-plan{background:#e9e1f0;font-weight:700}.wine-menu > summary{font-size:12px;font-weight:700;color:var(--grape);padding:12px 0}.wine-menu a{font-size:11px;font-weight:700}.wine-menu .price-table{min-width:510px}@media(max-width:680px){.wine-plan{padding:16px}.wine-plan h4{font-size:23px}.wine-plan>p{font-size:11px}}

.wine-recommendation{border-left:3px solid var(--grape,#4c315b);padding:4px 0 4px 16px;margin:20px 0}.wine-recommendation h5{font-size:1rem;margin:0 0 8px}.wine-recommendation p{margin:0}.wine-menu>p{line-height:1.65}

.wine-menu>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;padding:14px 0;border-bottom:1px solid var(--line)}.wine-menu>summary::after{content:"+";font-size:20px}.wine-menu[open]>summary::after{content:"−"}.wine-menu>summary::-webkit-details-marker{display:none}

.era-line{font-size:clamp(64px,6.2vw,96px);letter-spacing:-4px;white-space:nowrap}@media(max-width:680px){.era-line{font-size:clamp(44px,11vw,64px);letter-spacing:-2px}}

.badge.checked{background:#f7ecc5;color:#71581d}
