/* Mapa d'Espais: mateix contracte visual, filtres i pins que Home.
   Els espais de la dreta no utilitzen fotografies atribuïdes sense verificació. */
#main .fira-venues-page{min-width:0;width:100%;color:#233348}
#main .fira-venues-page .venue-page-heading{
 display:flex;align-items:end;justify-content:space-between;gap:14px;
 margin:0 0 15px
}
#main .fira-venues-page .venue-page-heading h1{
 margin:0 0 4px;color:#1f3044;letter-spacing:-.045em;
 font-size:clamp(22px,2.1vw,31px);font-weight:790;line-height:1.08
}
#main .fira-venues-page .venue-page-heading p{
 margin:0;color:#667589;font-size:13px;line-height:1.4
}
#main .fira-venues-page .venue-heading-count{
 flex:none;padding:6px 11px;background:#f2f5f8;border:1px solid #e4e9f0;
 border-radius:99px;color:#38516b;font-size:12px;font-weight:700
}
#main .fira-venues-page .map-layout{
 display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,.75fr);
 align-items:stretch;gap:18px;min-width:0;margin:0
}
#main .fira-venues-page .fira-map-frame{
 display:flex;flex-direction:column;min-width:0;
 padding:0;border:1px solid #e1e7ef;border-radius:14px;
 background:#fff;overflow:visible;box-shadow:0 6px 24px #20344b0b;
 isolation:isolate
}
#main .fira-venues-page .home-map-frame{
 position:relative;isolation:isolate;min-width:0;
 border-radius:13px 13px 0 0;overflow:visible
}
#main .fira-venues-page #venue-map{
 display:block;width:100%;height:clamp(460px,64vh,760px);
 min-height:460px;max-height:none;margin:0;border:0;
 border-radius:13px 13px 0 0;overflow:hidden;background:#e8eced;
 z-index:0
}
#main .fira-venues-page .home-map-zoom{
 position:absolute;top:16px;left:16px;right:auto;bottom:auto;z-index:620;
 display:flex;flex-direction:column;overflow:hidden;
 background:white;border:1px solid #dce3eb;border-radius:10px;
 box-shadow:0 2px 12px #0f293525
}
#main .fira-venues-page .home-map-zoom button{
 display:grid;place-items:center;width:39px;height:39px;
 padding:0;background:#fff;border:0;color:#273e51;font-size:23px;line-height:1;
 cursor:pointer
}
#main .fira-venues-page .home-map-zoom button+button{border-top:1px solid #e5e9ee}
#main .fira-venues-page .home-map-zoom button:hover{background:#f0f4f7}
#main .fira-venues-page .home-map-count-contract{
 position:absolute;z-index:610;left:15px;bottom:15px;
 display:inline-flex;align-items:center;gap:6px;padding:8px 11px;
 background:#fff;border-radius:8px;color:#29435c;
 font-size:11px;font-weight:730;box-shadow:0 2px 12px #0f293529;
 pointer-events:none
}
#main .fira-venues-page .home-map-layer-on-map{
 position:absolute;z-index:1000;right:15px;top:15px;left:auto;bottom:auto;
 margin:0;width:40px
}
#main .fira-venues-page .home-map-layer-on-map>summary{
 display:grid;place-items:center;list-style:none;width:40px;height:40px;
 padding:0;cursor:pointer;background:#fff;border:1px solid #dbe4ed;
 border-radius:10px;color:#284966;box-shadow:0 3px 12px #13263e2b
}
#main .fira-venues-page .home-map-layer-on-map>summary::-webkit-details-marker{display:none}
#main .fira-venues-page .home-map-layer-on-map>summary::marker{content:""}
#main .fira-venues-page .home-map-layer-on-map[open]>summary,
#main .fira-venues-page .home-map-layer-on-map>summary:hover{background:#eef3f9}
#main .fira-venues-page .home-map-layer-on-map .fira-map-layers{
 position:absolute;right:0;top:calc(100% + 7px);left:auto;bottom:auto;z-index:1100;
 display:flex;flex-direction:column;align-items:stretch;gap:2px;
 width:176px;min-width:0;max-width:calc(100vw - 36px);padding:6px;
 background:#fff;border:1px solid #dce4ed;border-radius:11px;
 box-shadow:0 14px 36px #10263f2e
}
#main .fira-venues-page .home-map-layer-on-map .fira-map-layer{
 width:100%;min-height:39px;padding:9px 11px;border:0;border-radius:7px;
 text-align:left;color:#2b4055;background:#fff;font-size:12px;font-weight:680
}
#main .fira-venues-page .home-map-layer-on-map .fira-map-layer:hover{background:#f4f7fa}
#main .fira-venues-page .home-map-layer-on-map .fira-map-layer[aria-pressed="true"]{
 background:#eaf1f9;color:#1c5189
}
#main .fira-venues-page .home-map-filter-footer{
 position:relative;inset:auto;z-index:510;
 display:flex;align-items:center;justify-content:space-between;
 width:100%;min-width:0;padding:11px 12px;gap:8px;
 background:#fff;border:0;border-top:1px solid #e6ebf1;
 border-radius:0 0 13px 13px;overflow:visible
}
#main .fira-venues-page .home-map-controls{
 position:static;inset:auto;z-index:auto;display:flex;
 align-items:center;flex-wrap:wrap;gap:6px;flex:1;min-width:0;
 width:auto;max-width:100%;padding:0;background:transparent;
 pointer-events:auto;overflow:visible
}
#main .fira-venues-page .home-map-filter{
 display:inline-flex;align-items:center;justify-content:center;gap:6px;
 min-height:34px;padding:6px 10px;margin:0;white-space:nowrap;
 background:#fff;border:1px solid #e3e7ef;border-radius:99px;
 box-shadow:none;color:#33485c;font-size:11px;font-weight:700;cursor:pointer
}
#main .fira-venues-page .home-map-filter:hover{background:#f6f8fa;border-color:#ccd6e2}
#main .fira-venues-page .home-map-filter svg{
 width:15px;height:15px;flex:0 0 15px;color:var(--category-accent,#526c88)
}
#main .fira-venues-page .home-map-filter-dot{
 display:inline-block;width:7px;height:7px;flex:0 0 7px;
 border-radius:50%;background:var(--category-accent,#526c88)
}
#main .fira-venues-page .home-map-filter[aria-pressed="true"]{
 background:color-mix(in srgb,var(--category-accent,#526c88) 11%,white);
 color:var(--category-accent,#29435c);
 border-color:var(--category-accent,#526c88)
}
#main .fira-venues-page .home-map-filter-trigger{display:none}
#main .fira-venues-page .place-list{
 display:flex;flex-direction:column;min-width:0;min-height:0;
 max-height:none;padding:0;overflow:hidden;
 border:1px solid #e1e7ef;border-radius:14px;background:#fff;
 box-shadow:0 6px 24px #20344b0b
}
#main .fira-venues-page .venue-list-heading{
 display:flex;align-items:center;justify-content:space-between;gap:8px;
 flex:none;padding:18px 18px 13px;border-bottom:1px solid #edf0f4
}
#main .fira-venues-page .venue-list-heading h2{
 font-size:17px;font-weight:770;letter-spacing:-.025em;
 line-height:1.25;color:#26384e;margin:0
}
#main .fira-venues-page #venue-list-count{
 padding:4px 8px;border-radius:99px;
 color:#5b6f84;background:#f3f6f9;font-size:11px;
 font-weight:710;white-space:nowrap
}
#main .fira-venues-page .venue-list-items{
 flex:1;min-height:0;max-height:calc(64vh + 88px);
 overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
 padding:2px 13px 10px;scrollbar-gutter:stable
}
#main .fira-venues-page .venue-card{
 position:relative;display:flex;flex-direction:column;gap:2px;
 min-width:0;padding:12px 5px 13px;
 background:#fff;border:0;border-bottom:1px solid #edf0f4;
 border-radius:0;transition:background-color .14s ease
}
#main .fira-venues-page .venue-card:last-child{border-bottom:0}
#main .fira-venues-page .venue-card:hover,
#main .fira-venues-page .venue-card.is-selected{background:#f8fafc}
#main .fira-venues-page .venue-card-main{
 display:flex;align-items:center;gap:11px;
 width:100%;min-width:0;padding:0;border:0;background:transparent;
 text-align:left;color:inherit;cursor:pointer
}
#main .fira-venues-page .venue-card-pictogram{
 flex:0 0 41px;width:41px;height:41px;display:grid;place-items:center;
 border-radius:11px;background:color-mix(in srgb,var(--venue-category) 12%,white);
 color:var(--venue-category)
}
#main .fira-venues-page .venue-card-pictogram svg{width:23px;height:23px;stroke-width:1.85}
#main .fira-venues-page .venue-card-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
#main .fira-venues-page .venue-card-copy strong{
 display:block;color:#27394f;font-size:13.5px;line-height:1.3;
 font-weight:750;overflow-wrap:break-word
}
#main .fira-venues-page .venue-card-copy small{
 display:flex;align-items:center;gap:4px;min-width:0;
 margin:0;color:#728093;font-size:11px;font-weight:530;line-height:1.15
}
#main .fira-venues-page .venue-card-copy small svg{width:13px;height:13px}
#main .fira-venues-page .venue-card-index{
 display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;
 border-radius:50%;background:#f2f6f9;color:#677b8f;
 font-size:10px;font-weight:750
}
#main .fira-venues-page .venue-card-actions{
 display:flex;align-items:center;justify-content:space-between;gap:9px;
 padding:5px 0 0 52px
}
#main .fira-venues-page .venue-card-directions{
 display:inline-flex;align-items:center;gap:4px;
 min-width:0;padding:5px 0;
 font-size:11px;font-weight:590;color:#435d75;text-decoration:none
}
#main .fira-venues-page .venue-card-directions svg{flex:none;width:13px;height:13px}
#main .fira-venues-page .venue-card-directions:hover{text-decoration:underline}
#main .fira-venues-page .venue-card-events{
 display:inline-flex;align-items:center;gap:4px;flex:none;
 padding:6px 9px;border-radius:99px;
 background:#f0f5f7;color:#26546e;
 text-decoration:none;font-weight:750;font-size:10.5px;white-space:nowrap
}
#main .fira-venues-page .venue-card-events:hover{background:#e4edf3}
#main .fira-venues-page .venue-card-events svg{width:14px;height:14px}
#main .fira-venues-page .venue-empty{margin:25px 10px;color:#65778a;font-size:13px}
#main .fira-venues-page :is(button,a,summary):focus-visible{
 outline:3px solid #567fa9;outline-offset:2px
}
@media(max-width:1020px){
 #main .fira-venues-page .map-layout{grid-template-columns:minmax(0,1fr)}
 #main .fira-venues-page #venue-map{height:460px;min-height:460px}
 #main .fira-venues-page .place-list{max-height:none}
 #main .fira-venues-page .venue-list-items{max-height:none;overflow:visible}
 #main .fira-venues-page .venue-card{padding:13px 8px}
}
@media(max-width:760px){
 #main .fira-venues-page .venue-page-heading{padding:0 2px;margin-bottom:12px;align-items:center}
 #main .fira-venues-page .venue-page-heading h1{font-size:23px}
 #main .fira-venues-page .venue-page-heading p{font-size:12px}
 #main .fira-venues-page .map-layout{gap:13px}
 #main .fira-venues-page #venue-map{height:365px;min-height:365px}
 #main .fira-venues-page .home-map-filter-footer{
  padding:9px 12px;min-height:54px;justify-content:space-between
 }
 #main .fira-venues-page .home-map-filter-trigger{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 13px;min-height:38px;
  border:1px solid #d8e1eb;border-radius:99px;
  background:#fff;color:#304d68;font-size:12px;font-weight:720
 }
 #main .fira-venues-page .home-map-filter-footer .home-map-controls{
  display:none;position:absolute;top:auto;bottom:calc(100% + 6px);
  left:9px;right:9px;width:auto;max-width:none;
  max-height:min(45vh,320px);overflow:auto;
  padding:12px;background:#fff;border:1px solid #e0e6ed;
  border-radius:13px;box-shadow:0 12px 35px #182e4230;
  z-index:900
 }
 #main .fira-venues-page .home-map-filter-footer.filters-open .home-map-controls{display:flex}
 #main .fira-venues-page .home-map-filter{min-height:37px;padding:9px 12px;font-size:12px}
 #main .fira-venues-page .home-map-zoom{top:11px;left:11px}
 #main .fira-venues-page .home-map-count-contract{left:11px;bottom:11px;font-size:10px}
 #main .fira-venues-page .home-map-layer-on-map{top:11px;right:11px}
 #main .fira-venues-page .venue-list-heading{padding:15px 15px 12px}
 #main .fira-venues-page .venue-list-items{padding:0 10px 10px}
}
@media(max-width:410px){
 #main .fira-venues-page .venue-heading-count{display:none}
 #main .fira-venues-page #venue-map{height:320px;min-height:320px}
 #main .fira-venues-page .venue-card-copy strong{font-size:12.5px}
 #main .fira-venues-page .venue-card-pictogram{width:37px;height:37px;flex-basis:37px}
 #main .fira-venues-page .venue-card-actions{padding-left:48px;gap:4px}
 #main .fira-venues-page .venue-card-events{font-size:10px;padding:6px 7px}
}
@media(prefers-reduced-motion:reduce){#main .fira-venues-page .venue-card{transition:none}}

/* Informació 2026: correcció final, després de tots els estils heretats. */
@media(min-width:1000px){
 body main .fira-info-page{display:grid!important;grid-template-columns:minmax(320px,40%) minmax(0,1fr)!important;column-gap:clamp(24px,3vw,52px)!important;align-items:start!important;overflow:visible!important;max-width:1440px!important;margin:0 auto!important;padding:24px!important}
 body main .fira-info-page>.fira-info-poster{grid-column:1!important;grid-row:1!important;position:relative!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;margin:0!important;overflow:visible!important}
 body main .fira-info-page .fira-info-poster-zoom-trigger{display:block!important;position:relative!important;box-sizing:border-box!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;margin:0!important}
 body main .fira-info-page .fira-info-poster-image{display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;max-height:none!important;max-width:100%!important;opacity:1!important;object-fit:contain!important;aspect-ratio:724/1024!important}
 body main .fira-info-page>.fira-info-credits{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;padding:0!important;margin:0!important}
 body main .fira-info-page>.fira-info-zoom-dialog:not([open]){display:none!important}
 body main .fira-info-page .fira-info-scroll-arrow{display:none!important}
}

/* Mapa i espais: mateixa capçalera editorial i geometria que les altres seccions.
   El visor Leaflet, els filtres i els enllaços mantenen els seus nodes originals. */
#main > .interior-page.interior-map > .interior-hero {
 background-image:url('/home-assets/mapa-espais-panorama-4x1.webp')!important;
 background-position:right center!important;background-repeat:no-repeat!important;
 background-size:cover!important;filter:none!important;background-blend-mode:normal!important;
}
#main > .interior-page.interior-map > .interior-hero::before {display:none!important;content:none!important}
#main > .interior-page.interior-map > .interior-surface {
 min-width:0;max-width:none!important;
}
#main > .interior-page.interior-map .fira-venues-page {
 width:100%;max-width:none;margin:0 auto;padding:0;
}
#main > .interior-page.interior-map .map-layout {
 grid-template-columns:minmax(0,1.8fr) minmax(290px,.8fr);
 gap:clamp(14px,1.8vw,24px);align-items:start;
}
#main > .interior-page.interior-map .fira-map-frame,
#main > .interior-page.interior-map .place-list {
 border-radius:16px;border:1px solid #e2e7eb;
 box-shadow:0 3px 16px rgba(26,45,62,.055);overflow:hidden;
}
#main > .interior-page.interior-map .place-list {
 background:#fff;min-width:0;
}
#main > .interior-page.interior-map .venue-list-heading {
 border-bottom:1px solid #e8ecef;
}
#main > .interior-page.interior-map .home-map-filter-footer {
 background:#fff;min-height:0;
}
@media(max-width:1020px){
 #main > .interior-page.interior-map .map-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:700px){
 #main > .interior-page.interior-map .fira-map-frame,
 #main > .interior-page.interior-map .place-list {border-radius:12px}
}
