.seo-brandline{display:flex;align-items:center;gap:10px;color:#f7eddb;text-decoration:none;font:800 15px Mulish,system-ui;margin-bottom:22px;width:fit-content}.seo-brandline img{width:36px;height:36px}.seo-kicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#946c24;font-weight:800}.seo-guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0 30px}.seo-guide-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:21px}.seo-guide-card h3{font:600 23px/1.25 Fraunces,serif;margin:10px 0}.seo-guide-card h3 a{color:var(--ink);text-decoration:none}.seo-guide-card p{font:400 14px/1.7 Mulish,system-ui;color:var(--muted)}.seo-town-form{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--card);margin:22px 0}.seo-town-form label{font-weight:800}.seo-town-form select{flex:1;min-width:180px;max-width:420px;padding:12px;border:1px solid #d9cdb6;border-radius:10px;font:600 14px Mulish,system-ui;background:#fffdf8;color:var(--ink)}.seo-toc{border:1px solid var(--line);background:var(--soft);border-radius:15px;padding:20px;margin:20px 0;max-width:800px}.seo-toc a{color:var(--terr)}.seo-copy section{scroll-margin-top:90px}.seo-byline{font-size:13px;color:var(--muted)}.seo-provenance{font-size:13px;background:var(--soft);padding:15px;border:1px solid var(--line);border-radius:12px;margin:16px 0}.seo-provenance summary{cursor:pointer;font-weight:800}.seo-pagination{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.seo-pagination .on{background:var(--ink);color:white}.seo-skip{position:absolute;left:10px;top:-100px;padding:12px;background:#fff;color:var(--ink);z-index:100}.seo-skip:focus{top:10px}.seo-consent{position:fixed;bottom:16px;left:16px;right:16px;max-width:600px;z-index:9999;background:#fffdf8;color:#271d18;border:1px solid #d9cdb6;border-radius:18px;box-shadow:0 10px 50px #201a2e33;padding:20px;font:400 14px/1.5 Mulish,system-ui}.seo-consent div{display:flex;gap:12px;flex-wrap:wrap}.seo-consent .btn{flex:1;text-align:center;font:800 14px Mulish,system-ui;cursor:pointer}.seo-note[hidden]{display:none}#catalog-date-note{border:1px solid #e7b65c;border-radius:12px;background:#fff3cd;color:#664d03;padding:14px;margin:15px 0}.seo-foot button{background:transparent;color:#e7b65c;border:0;font:inherit;text-decoration:underline;cursor:pointer;padding:0}.seo-card .meta{flex-wrap:wrap}.seo-facts dd{overflow-wrap:anywhere}.seo-guide-card a:focus-visible,.seo-copy a:focus-visible,.seo-town-form select:focus-visible{outline:3px solid #c1452f;outline-offset:4px}.seo-calendar-note{font-size:12px;color:var(--muted)}@media(max-width:600px){.seo-nav{scrollbar-width:thin}.seo-heading{font-size:25px}.seo-town-form{align-items:stretch}.seo-town-form label{width:100%}.seo-town-form select{max-width:100%;width:100%}.seo-guide-grid{grid-template-columns:1fr}.seo-guide-card h3{font-size:22px}.seo-crumb{overflow-wrap:anywhere}.seo-facts{grid-template-columns:1fr}.seo-copy h2{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.hero .seo-brandline{color:#f7eddb}

.seo-photo{margin:20px 0;max-width:900px}.seo-photo img{display:block;width:auto;max-width:100%;height:auto;max-height:440px;border-radius:14px;margin:auto}.seo-photo figcaption{font-size:12px;line-height:1.65;color:var(--muted);padding:12px 0;overflow-wrap:anywhere}.seo-photo a{color:var(--terr)}.seo-venue-card .seo-photo{margin:16px 16px 0}.seo-venue-card .seo-photo img{max-height:230px}.seo-venue-card figcaption{font-size:11px}.seo-comparison{overflow-x:auto;margin:22px 0;border:1px solid var(--line);border-radius:14px;max-width:100%}.seo-comparison table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6}.seo-comparison caption{text-align:left;padding:14px;font-weight:800;background:var(--soft)}.seo-comparison th,.seo-comparison td{padding:12px;text-align:left;vertical-align:top;border-top:1px solid var(--line);overflow-wrap:anywhere}.seo-comparison thead{background:var(--soft)}

/* Published admission conditions stay readable on small screens. */
.pill.admission{white-space:normal;max-width:100%;line-height:1.5;align-items:flex-start}.pill.admission svg{flex-shrink:0;margin-top:2px}.admission-link{color:var(--terr);text-decoration:none}.admission-link:hover{text-decoration:underline}.pill.admission-link{background:var(--soft);border:1px solid var(--line)}

.card .admission-label{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}.card .pill.admission{display:flex;gap:5px}.seo-provenance li{overflow-wrap:anywhere}

/* V1.0.6 · detalles de interacción basados en las referencias del usuario */
.bar:has(.filter-sheet){position:sticky;backdrop-filter:none;z-index:150}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.event-tools,.filter-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}.event-tools .chip{flex:1;display:flex;gap:7px;justify-content:center;align-items:center;min-height:44px}.chip svg,.btn svg{width:18px;height:18px;display:inline-block;vertical-align:middle}.quick-categories{display:flex;gap:8px;overflow-x:auto;margin:12px 0 0;padding-bottom:5px}.quick-categories .chip{display:flex;align-items:center;gap:5px}
.filter-scrim{position:fixed;inset:0;background:rgba(19,14,28,.56);z-index:110}.filter-sheet.panel{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(760px,100%);max-height:88dvh;overflow:auto;overscroll-behavior:contain;border-radius:28px 28px 0 0;background:var(--bg);padding:22px 24px;z-index:111;box-shadow:0 -12px 50px #0003;margin:0}.filter-sheet:before{content:'';display:block;width:48px;height:5px;border-radius:6px;background:var(--muted);opacity:.45;margin:0 auto 22px}.filter-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.filter-head h2{font:600 30px Fraunces,serif;margin:0}.filter-head button{min-width:44px;min-height:44px}.filter-sheet .flabel{font-size:16px}.filter-sheet .chips{flex-wrap:wrap;overflow:visible}.filter-sheet .selrow{flex-wrap:wrap}.filter-sheet select{min-height:48px;max-width:100%;flex:1 1 180px}.date-range{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0 0}.date-range label{display:grid;gap:7px;font-size:13px;font-weight:800}.date-range input{width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--card);color:var(--ink);font:inherit}.filter-actions{display:flex;gap:12px;padding:14px 0;position:sticky;bottom:-22px;background:var(--bg);z-index:2}.filter-actions button{flex:1;min-height:48px}.plan-finder{background:#201a2e;color:#f7f2e9;border-radius:22px;padding:20px;margin:16px 0}.plan-finder h3{font:600 24px Fraunces,serif;color:#e9b65a;margin:0 0 8px}.plan-finder p{font-size:14px;line-height:1.6}.plan-finder form{display:flex;flex-wrap:wrap;gap:9px}.plan-finder input{flex:1 1 200px;width:100%;min-height:48px;border-radius:12px;border:1px solid var(--line);padding:10px;font:inherit;background:var(--card);color:var(--ink)}
body:has(.filter-sheet){overflow:hidden}.preferences-dialog{border:1px solid var(--line);border-radius:25px;width:min(550px,calc(100% - 24px));max-height:90dvh;padding:24px;color:var(--ink);background:var(--bg);font-family:Mulish,system-ui}.preferences-dialog::backdrop{background:#100c20b0}.preferences-dialog fieldset{border:0;padding:0;margin:0 0 16px}.preferences-dialog legend{font-weight:800;margin-bottom:10px}.preference-option{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--card);margin:7px 0;cursor:pointer;font-weight:700}.preference-option input{accent-color:var(--terr);width:21px;height:21px}.preference-option:has(input:checked){border-color:var(--terr);box-shadow:inset 0 0 0 1px var(--terr)}.preferences-dialog h3{font-family:Fraunces,serif;font-size:23px}.preferences-dialog p{line-height:1.6}.preferences-dialog a{overflow-wrap:anywhere}
html[data-theme=dark]{--bg:#171420;--ink:#f6efdf;--terr:#f69b7d;--muted:#c2b5a8;--line:#4a4052;--card:#252032;--soft:#322b3d;color-scheme:dark}html[data-theme=light]{color-scheme:light}html[data-theme=dark] .bar,html[data-theme=dark] .seg,html[data-theme=dark] .panel,html[data-theme=dark] .guide-card,html[data-theme=dark] .sheet,html[data-theme=dark] .guide-intro{background:var(--card);border-color:var(--line)}html[data-theme=dark] :is(.chip,.seg button,.filtros,.langtog,.guide-tab,.flabel,.meta,.place,.tldr,.sec p,.faq .a,.drows,.seo-trust,table.k td,.guide-card p,.guide-small,.guide-intro p){color:var(--muted);border-color:var(--line)}html[data-theme=dark] :is(.chip.on,.seg button.on,.filtros.on){background:#eadaca;color:#211b2c}html[data-theme=dark] :is(select,input,.faq .qa,.tldr,.guide-search,.guide-route,.guide-event,.guide-empty){background:var(--soft);border-color:var(--line);color:var(--ink)}html[data-theme=dark] .card{border-color:var(--line)}html[data-theme=dark] .btn.p{background:#c1452f;color:white}html[data-theme=dark] .btn.g{background:var(--soft);color:var(--ink);border-color:var(--line)}html[data-large-text=true] :is(.cbody,.guide-card p,.seo-copy,.preferences-dialog p,.preferences-dialog label,.filter-sheet p,.plan-finder p,.meta,.place){font-size:17px;line-height:1.65}html[data-large-text=true] .chip{font-size:15px}
@media(max-width:550px){.filter-sheet.panel{padding:20px 18px;max-height:90dvh}.event-tools{gap:6px}.event-tools .chip{font-size:12px;padding:9px 8px}.filter-sheet .chips{gap:7px}.filter-sheet .chip{font-size:13px;padding:10px 12px}.filter-sheet .btn{font-size:14px}.preferences-dialog{padding:20px}}

/* Panel compacto: orden de la cuarta referencia aportada. */
.filter-sheet select{flex:none;height:48px}
.filter-sheet.panel{animation:none;gap:12px}.filter-sheet .filter-head{margin-bottom:0}.filter-sheet .filter-tabs{margin-bottom:0}.filter-tabs .chip{flex:1;text-align:center;border-radius:12px;min-height:44px}.filter-sheet .fsec{margin:0}.filter-sheet .flabel{display:block;text-transform:none;letter-spacing:0;color:var(--ink);margin-bottom:8px}.filter-sheet select{width:100%;padding:12px 14px;font-size:15px}.filter-sheet .chips.compact-categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.compact-categories .chip{display:inline-flex;align-items:center;gap:5px}.compact-categories .chip svg{width:17px;height:17px}.filter-advanced summary{cursor:pointer;font-size:13px;color:var(--muted);font-weight:700;padding:7px 0}.filter-advanced>.fsec{margin-top:13px}.filter-sheet .filter-actions{position:static;margin:0;padding:4px 0}.filter-sheet .filter-actions .btn.p{background:#201a2e;color:white;border-radius:999px}.filter-sheet .plan-finder{margin:0;padding:18px}.plan-finder .btn.p{background:#e9b65a;color:#201a2e;min-width:50px}.plan-finder form{flex-wrap:nowrap}.plan-finder input{min-width:0;flex-basis:0}.plan-finder .btn.p svg{width:24px;height:24px}.filter-sheet:before{margin-bottom:7px}

/* Filas compactas desplazables con teclado y gesto táctil. */
.date-tools{display:flex;flex-wrap:nowrap;min-width:0}.date-scroll{display:flex;flex:1;min-width:0;flex-wrap:nowrap!important;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x pan-y}.date-scroll>*{flex:0 0 auto;white-space:nowrap}.date-scroll select{width:auto;max-width:180px}.date-tools>.filtros{flex:0 0 auto}.quick-categories{display:flex;flex-wrap:nowrap!important;overflow-x:auto;min-width:0;overscroll-behavior-x:contain}.quick-categories>*{flex:0 0 auto;white-space:nowrap}.date-scroll:focus-visible,.quick-categories:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* La agenda conserva solo tres accesos de fecha fuera del panel. */
.date-tools{gap:6px}.date-scroll{gap:6px}.date-scroll .chip{padding:9px 10px;font-size:12px}.date-tools>.filtros{padding:9px 10px;font-size:12px}.filter-sheet .search{width:100%;margin:0}.filter-sheet .event-tools{margin:0}
.seo-nav{display:none}

.nearby-place{padding:14px 0;border-bottom:1px solid var(--line)}.nearby-place h4{font:600 18px Fraunces,serif;margin:4px 0}.nearby-place p{margin:6px 0;line-height:1.5}

/* Secciones junto a Qué ver; desplazamiento horizontal en móvil. */
.segwrap .seg{display:flex;flex-wrap:nowrap;overflow-x:auto;min-width:0;max-width:100%;scrollbar-width:none}.segwrap .seg>button{flex:0 0 auto;white-space:nowrap}.segwrap{min-width:0}.filter-sheet .fsec .chips{gap:8px}


/* One presentation for the agenda, event sheets and all public collections. */
body{font-family:Mulish,system-ui,sans-serif;line-height:1.55}
body h1,body h2,body h3,body h4{font-family:Fraunces,Georgia,serif;letter-spacing:-.025em}
body button,body input,body select,body textarea{font-family:Mulish,system-ui,sans-serif}
body .hero{background-color:#201a2e;color:#fffdf8}
body .hero h1{color:#fffdf8;font-weight:900;line-height:1.12}
body .hero .eyebrow,body .hero h1 em{color:#e7b65c}
body .hero p{color:#ded4e6;line-height:1.6;max-width:66ch}
body .card,body .guide-card,body .seo-guide-card,body .seo-venue-card{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 3px 14px rgb(32 26 46 / 5%);overflow:hidden}
body .card .body,body .guide-card,body .seo-guide-card{padding:22px}
body .card h3,body .guide-card h3,body .seo-guide-card h3{font:600 24px/1.3 Fraunces,Georgia,serif;margin:0 0 12px;overflow-wrap:anywhere}
body .card p,body .guide-card p,body .seo-guide-card p{line-height:1.7}
body .guide-intro{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px;margin:0 0 20px}
body .guide-intro h2{font:600 30px/1.2 Fraunces,Georgia,serif;margin:8px 0 12px}
body .guide-intro p{font-size:15px;line-height:1.7;max-width:66ch;margin:10px 0;color:var(--muted)}
body .guide-controls,body .seo-town-form{border:1px solid var(--line);background:var(--card);border-radius:18px;padding:16px;gap:10px;margin:18px 0}
body .guide-search,body .guide-empty,body .seo-empty{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;line-height:1.7;margin:18px 0}
body .guide-search h3,body .guide-empty h3{font:600 23px/1.3 Fraunces,Georgia,serif;margin:0 0 12px}
body .guide-actions,body .event-near-actions,body .seo-cta{gap:10px}
body .btn,body .tbtn,body .chip,body .clear,body .filtros{border-radius:999px;min-height:44px;line-height:1.35;font-weight:800;text-decoration:none}
body .btn.p,body .tbtn.p{background:#201a2e;border-color:#201a2e;color:#fffdf8}
body .btn.g,body .tbtn{background:var(--card);border:1px solid var(--line);color:var(--ink)}
body .sheet{border-radius:28px 28px 0 0;background:var(--card)}
body .sheet .body{line-height:1.7}
body .sheet .body h2{font:600 30px/1.25 Fraunces,Georgia,serif}
body.public-shell .seo-copy{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px;line-height:1.8}
body.public-shell .seo-facts div,body.public-shell .seo-dir a{border-radius:18px}
body.public-shell .seo-heading,body.public-shell .seo-copy h2{font:600 27px/1.25 Fraunces,Georgia,serif;margin-top:28px}
body.public-shell .seo-nav{display:flex;flex-wrap:nowrap;gap:4px;padding:5px;background:var(--soft);border-radius:999px;overflow-x:auto}
body.public-shell .seo-nav a{border:0;border-radius:999px;min-height:44px;flex:1 0 auto;padding:12px 16px;color:var(--ink);text-align:center;white-space:nowrap}
body.public-shell .seo-nav a.on{background:var(--ink);color:var(--card)}
body .seo-quickdates{gap:8px;overflow-x:auto;flex-wrap:nowrap}
body .seo-quickdates a{border-radius:999px;min-height:40px;flex:0 0 auto;white-space:nowrap}
body .seo-foot,body footer{background:#201a2e;color:#ded4e6;line-height:1.8}
body .seo-foot a,body footer a{color:#e7b65c}
body .seo-foot strong,body footer h4{color:#fffdf8}
body :is(a,button,input,select):focus-visible{outline:3px solid #e7b65c;outline-offset:3px}
[hidden]{display:none!important}
@media(max-width:600px){
  body .hero{padding-top:24px;padding-bottom:26px}
  body .hero h1{font-size:34px}
  body.public-shell .hero h1{font-size:29px;line-height:1.18}
  body .hero p{font-size:14px}
  body .card .body,body .guide-card,body .seo-guide-card{padding:20px}
  body .card h3,body .guide-card h3,body .seo-guide-card h3{font-size:23px}
  body .guide-intro,body .guide-search,body .guide-empty,body.public-shell .seo-copy{padding:20px}
  body .guide-intro h2{font-size:27px}
  body .guide-controls{padding:14px}
  body .guide-controls select{max-width:100%;min-width:0}
  body .guide-grid,body .seo-guide-grid{grid-template-columns:minmax(0,1fr);gap:16px}
  body .guide-actions .tbtn,body .event-near-actions .btn{flex:1 1 140px;justify-content:center;text-align:center}
  body .sheet .body{padding:22px 20px 30px}
  body .sheet .body h2{font-size:28px}
  body.public-shell .seo-heading,body.public-shell .seo-copy h2{font-size:25px}
  body.public-shell .seo-facts{grid-template-columns:minmax(0,1fr)}
  body .seo-copy p,body .guide-card p{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){body *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
