/* Unified final public activity design — 18 October 2026. No legacy green. */
body #main .category-banner,
body #main .category-banner.cat-excursion,
body #main .category-banner img,
body #main .category-banner .category-banner-image,
body #main .category-detail-wrap.reference-detail .event-detail-banner,
body #main .category-detail-wrap.reference-detail .event-detail-banner img,
body #main .category-detail-wrap.reference-detail .event-detail-banner:before,
body #main .category-detail-wrap.reference-detail .event-detail-banner:after{border-radius:0!important}
body #main .category-detail-wrap.reference-detail .fira-booking-spotlight{background:#fff!important;border:1px solid #dee4eb!important;color:#22364c!important}
body #main .category-detail-wrap.reference-detail .fira-booking-spotlight h2,
body #main .category-detail-wrap.reference-detail .fira-booking-spotlight strong{color:#22364c!important}
body #main .category-detail-wrap.reference-detail .fira-booking-main-action,
body #main .category-detail-wrap.reference-detail .booking-overview-button{background:#245a96!important;border:1px solid #245a96!important;color:white!important;border-radius:12px!important}
body #main .category-detail-wrap.reference-detail .fira-places-progress span{background:#245a96!important}
body #main .category-detail-wrap.reference-detail .fira-reservation-confirmed{background:#eaf1fb!important;color:#174779!important;border-radius:8px!important;padding:10px 12px!important}
body #main .category-detail-wrap.reference-detail .fira-booking-edit-link{display:block;text-align:center;margin:11px auto 0;color:#245a96!important;font-weight:650;font-size:13px;text-decoration:underline}
body #main .category-detail-wrap.reference-detail :is(.talk-editorial-highlights,.activity-facts,.activity-fact,.workshop-fact,.fira-specific-details,.fira-specific-field,.talk-editorial-highlights>div){background:#f3f5f7!important;border-color:#e2e7ed!important;color:#263747!important}
body #main .category-detail-wrap.reference-detail :is(.talk-editorial-highlights,.activity-facts,.activity-fact,.workshop-fact,.fira-specific-details,.fira-specific-field) :is(strong,svg){color:#283f59!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion :is(.fira-trail-kpis>div,.sample-pois,.sample-pois-list button,.sample-poi-icon){background:#f5f7fa!important;border-color:#e4e8ee!important;color:#263747!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list button{display:grid!important;grid-template-columns:30px minmax(0,1fr) 12px!important;gap:11px!important;min-height:53px!important;padding:9px 10px!important;align-items:center!important;text-align:left!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list button span{min-width:0!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-poi-icon{display:flex!important;align-items:center!important;justify-content:center!important;width:30px!important;height:30px!important;border-radius:8px!important;background:#e8eef6!important;color:#355f90!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-poi-icon svg{width:19px!important;height:19px!important;color:#355f90!important;display:block!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-view-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,32%)!important;grid-template-rows:min-content min-content!important;gap:0 12px!important;align-items:start!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-wrap{grid-column:1!important;grid-row:1!important;min-width:0!important;border:0!important;border-radius:0!important;overflow:hidden!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-profile{grid-column:1!important;grid-row:2!important;align-self:start!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;overflow:hidden!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-elevation{height:auto!important;min-height:0!important;padding:0!important;overflow:hidden!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-elevation svg{display:block!important;width:100%!important;height:auto!important;max-height:170px!important;aspect-ratio:1000/230!important;touch-action:pan-y!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois{grid-column:2!important;grid-row:1/span 2!important;align-self:start!important;min-width:0!important;margin:0!important;border-radius:10px!important;overflow:hidden!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list{display:flex!important;flex-direction:column!important;max-height:370px!important;overflow-y:auto!important;gap:0!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-route-map{border-radius:0!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-map-tools{position:relative!important;z-index:800!important;height:0!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-map-layer-trigger{position:absolute!important;top:9px!important;right:9px!important;z-index:810!important;display:flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;min-height:36px!important;background:#fff!important;color:#274a70!important;border:1px solid #d8e0e8!important;border-radius:9px!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-map-layer-trigger svg{width:20px!important;height:20px!important;color:#274a70!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-tabs{position:absolute!important;top:48px!important;right:9px!important;z-index:810!important;width:138px!important;display:flex!important;flex-direction:column!important;padding:5px!important;background:#fff!important;border:1px solid #dce3eb!important;border-radius:9px!important;box-shadow:0 7px 20px #11253c22!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-tabs[hidden]{display:none!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-tabs button{background:#fff!important;color:#27405c!important;border:0!important;font-size:13px!important;min-height:36px!important;text-align:left!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-tabs button[aria-pressed=true]{background:#eaf1fa!important;color:#20558a!important}
@media(max-width:760px){
body #main .category-detail-wrap.reference-detail{max-width:100%!important;width:100%!important;min-width:0!important;overflow-x:clip!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-view-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:min-content min-content min-content!important;gap:0!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-wrap{grid-column:1!important;grid-row:1!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-profile{grid-column:1!important;grid-row:2!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois{grid-column:1!important;grid-row:3!important;margin-top:10px!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list{max-height:none!important;overflow:visible!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-elevation svg{max-height:none!important}
}

/* The layer control is a map overlay, not an extra row. */
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-wrap{position:relative!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-map-tools{
 position:absolute!important;top:0!important;right:0!important;left:auto!important;
 width:0!important;height:0!important;z-index:950!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-map-layer-trigger{top:10px!important;right:10px!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-map-tabs{top:52px!important;right:10px!important}
body #main .category-detail-wrap.reference-detail :is(.talk-editorial-highlights,.talk-editorial-highlights strong,.activity-facts,.activity-fact,.activity-fact strong,.workshop-fact,.workshop-fact strong,.event-detail-practical h2,.fira-specific-details h2,.fira-trail-section-title){color:#26394e!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list button strong{font-size:13px!important;color:#29394c!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list button small{font-size:12px!important;color:#627083!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-elevation svg path{stroke:#305b91}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-profile,
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-elevation{max-height:unset!important;align-self:start!important}

/* Real SVG map markers and POI chevrons: never the old green badges. */
body #main .sample-poi-marker span{display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;border:2px solid #385c88!important;color:#385c88!important;width:34px!important;height:34px!important;border-radius:10px!important}
body #main .sample-poi-marker span svg{display:block!important;width:20px!important;height:20px!important;color:#385c88!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-poi-chevron{color:#667c94!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-head,
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-head strong{color:#26394e!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-head span{background:#eaf0f8!important;color:#315784!important}

/* Compact route facts: icon and two short text lines instead of large square tiles. */
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-trail-kpis{
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;
 margin:0 0 12px!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-trail-kpis>.fira-route-kpi{
 display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;
 min-height:66px!important;padding:10px 11px!important;border-radius:10px!important;
 background:#f4f6f9!important;border:1px solid #e6eaf0!important;box-shadow:none!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-icon{
 display:flex!important;align-items:center!important;justify-content:center!important;
 flex:0 0 25px!important;width:25px!important;color:#416080!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-icon svg{display:block!important;width:19px!important;height:19px!important;color:#416080!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-copy{
 display:flex!important;flex-direction:column!important;min-width:0!important;gap:2px!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-copy small{
 font-size:11px!important;line-height:1.2!important;color:#637385!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-copy strong{
 font-size:clamp(14px,1.6vw,17px)!important;line-height:1.2!important;color:#21364b!important;
}
@media(max-width:760px){
 body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-trail-kpis{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;
 }
 body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-trail-kpis>.fira-route-kpi{
  padding:9px!important;min-height:58px!important;gap:8px!important;
 }
 body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-copy strong{font-size:15px!important}
}

/* Punts d'interés: llista completa, sense targeta, vora, fons ni retall. */
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois{
 background:transparent!important;border:0!important;border-radius:0!important;
 box-shadow:none!important;padding:0!important;overflow:visible!important;
 height:auto!important;max-height:none!important;min-height:0!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list{
 display:flex!important;flex-direction:column!important;gap:0!important;
 height:auto!important;max-height:none!important;min-height:0!important;
 overflow:visible!important;overscroll-behavior:auto!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list button{
 background:transparent!important;border:0!important;border-bottom:1px solid #e9edf1!important;
 border-radius:0!important;box-shadow:none!important;
 height:auto!important;min-height:58px!important;overflow:visible!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list button:last-child{border-bottom:0!important}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-list button small{
 display:block!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important;
 overflow:visible!important;white-space:normal!important;max-height:none!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .sample-pois-head{
 background:transparent!important;border:0!important;padding:6px 0 10px!important;
}
/* Reserva: sense requadre exterior; el botó blau continua sent l'acció principal. */
body #main .category-detail-wrap.reference-detail .booking-overview.fira-booking-spotlight,
body #main .category-detail-wrap.reference-detail .fira-booking-spotlight{
 border:0!important;border-radius:0!important;box-shadow:none!important;
 outline:0!important;background:transparent!important;padding:12px 0!important;
}

/* El visor només repeteix distància i desnivell: dos indicadors compactes. */
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-trail-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* Capçalera mòbil més baixa, sense arrodoniment. */
@media(max-width:760px){
 body #main .category-detail-wrap.reference-detail .event-detail-banner{
  min-height:0!important;max-height:none!important;height:auto!important;
  border-radius:0!important;
 }
 body #main .category-detail-wrap.reference-detail .event-detail-banner>img{
  height:clamp(180px,48vw,240px)!important;min-height:0!important;
  max-height:240px!important;object-fit:cover!important;border-radius:0!important;
 }
 body #main .category-banner{min-height:200px!important;max-height:240px!important;height:clamp(200px,48vw,240px)!important}
}
/* Indicadors damunt del mapa: SVG a l'esquerra i contingut compacte. */
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-trail-kpis{
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:6px!important;margin:0 0 9px!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-trail-kpis>.fira-route-kpi{
 display:flex!important;flex-direction:row!important;align-items:center!important;
 justify-content:flex-start!important;gap:7px!important;
 min-height:44px!important;padding:6px 9px!important;
 border-radius:8px!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-icon{
 order:0!important;flex:0 0 19px!important;width:19px!important;
 margin:0!important;align-self:center!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-icon svg{
 width:17px!important;height:17px!important;display:block!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-copy{
 order:1!important;gap:1px!important;min-width:0!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-copy small{
 font-size:10px!important;line-height:1.15!important;
}
body #main .category-detail-wrap.reference-detail.fair-type-excursion .fira-route-kpi-copy strong{
 font-size:13px!important;line-height:1.2!important;
}

/* Menú desplegat compacte. No modificar el botó hamburguesa. */
@media(max-width:920px){
 body #fira-mobile-menu{padding:7px 8px!important;max-height:calc(100dvh - 62px)!important;overflow-y:auto!important}
 body #fira-mobile-menu a{
  display:flex!important;align-items:center!important;
  min-height:32px!important;padding:6px 10px!important;
  font-size:13px!important;line-height:1.25!important;
  border-radius:6px!important;margin:0!important;
 }
 body #fira-mobile-menu .fira-mobile-menu-label{
  font-size:10px!important;letter-spacing:.05em!important;text-transform:uppercase!important;
  font-weight:700!important;color:#657489!important;padding:9px 10px 3px!important;
  margin:0!important;background:transparent!important;
 }
}

/* Toolbar i menú: eliminar verd heretat; jerarquia discreta per seccions. */
body .topbar,body.is-fira-home .topbar{
 background:#fff!important;border-bottom-color:#e2e7ee!important;color:#26374c!important;
}
body .topbar .top-actions .user-menu-trigger,
body .topbar .top-actions .mobile-menu-trigger,
body .topbar .top-actions .global-search-trigger,
body .topbar .top-actions button{
 background-color:#f2f5f8!important;border-color:#e2e7ed!important;color:#263e58!important;
}
body .topbar .top-actions svg{color:#263e58!important;stroke:currentColor!important}
body .topbar .top-actions form:focus-within{
 background:#f7f9fc!important;border-color:#d7dfea!important;
}
body .topbar .desktop-nav a,
body .topbar .desktop-nav summary{color:#283b50!important}
body .topbar .desktop-nav :is(a,summary):hover{background:#f1f4f8!important;color:#205287!important}
@media(max-width:1000px){
 body #fira-mobile-menu{
  background:#fff!important;border-color:#e0e5eb!important;color:#26374c!important;
  box-shadow:0 12px 28px #17283b1d!important;
 }
 body #fira-mobile-menu a{
  background:transparent!important;color:#293b50!important;border:0!important;
  font-weight:570!important;
 }
 body #fira-mobile-menu a:hover,
 body #fira-mobile-menu a:focus-visible,
 body #fira-mobile-menu a[aria-current="page"]{
  background:#edf2f9!important;color:#20538a!important;
 }
 body #fira-mobile-menu .fira-mobile-menu-label{
  color:#465d78!important;background:transparent!important;
  border-top:1px solid #edf0f4!important;
  margin-top:5px!important;padding:10px 10px 4px!important;
  font-weight:800!important;font-size:11px!important;
  text-transform:none!important;letter-spacing:0!important;
 }
 body #fira-mobile-menu .fira-mobile-menu-label ~ a{
  padding-left:23px!important;font-size:12px!important;min-height:30px!important;
 }
 body #fira-mobile-menu > a:first-child,
 body #fira-mobile-menu > a:nth-child(2){padding-left:10px!important;font-size:13px!important}
}

/* Toolbar uniforme: icones sense requadres, ombres ni fons permanents. */
body .topbar .top-actions :is(.user-menu-trigger,.mobile-menu-trigger,.global-search-trigger,#reservation-bell),
body.is-fira-home .topbar .top-actions :is(.user-menu-trigger,.mobile-menu-trigger,.global-search-trigger,#reservation-bell){
 background:transparent!important;border:0!important;box-shadow:none!important;
 outline-offset:2px;color:#263e58!important;
}
body .topbar .top-actions :is(.user-menu-trigger,.mobile-menu-trigger,.global-search-trigger,#reservation-bell):hover{
 background:#f2f5f8!important;border:0!important;box-shadow:none!important;
}
body .topbar .top-actions :is(.user-menu-trigger,.mobile-menu-trigger,.global-search-trigger,#reservation-bell) svg{
 color:#263e58!important;stroke:currentColor!important;
}

/* iPhone: la cerca oberta no pot augmentar el viewport ni el toolbar. */
@media(max-width:1000px){
 html,body{max-width:100%!important;overflow-x:clip!important}
 body .topbar{position:fixed!important;top:0!important;left:0!important;right:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
 body .topbar .top-actions{min-width:0!important;max-width:100%!important}
 body .topbar .top-actions #global-search:focus-within,
 body.is-fira-home .topbar .top-actions #global-search:focus-within{
  position:absolute!important;left:10px!important;right:10px!important;top:7px!important;
  width:calc(100% - 20px)!important;max-width:calc(100% - 20px)!important;
  min-width:0!important;flex:none!important;
  display:flex!important;align-items:center!important;gap:0!important;
  box-sizing:border-box!important;z-index:1100!important;
  padding:0 10px!important;margin:0!important;
  background:#fff!important;border:1px solid #dae2eb!important;border-radius:9px!important;
  box-shadow:0 4px 14px #172b4415!important;
 }
 body .topbar .top-actions #global-search:focus-within #search-top,
 body.is-fira-home .topbar .top-actions #global-search:focus-within #search-top{
  position:static!important;display:block!important;opacity:1!important;
  flex:1 1 auto!important;width:100%!important;min-width:0!important;
  max-width:100%!important;height:43px!important;padding:8px 3px!important;
  font-size:16px!important;line-height:1.3!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
 }
 body .topbar .top-actions #global-search:focus-within .global-search-trigger{display:none!important}
}

/* Fitxa del titular: camps compactes, SVG coherents i color neutre. */
body #main .account-person-details{padding:18px 0!important;border:0!important;background:transparent!important}
body #main .account-person-details h2{font-size:19px!important;margin:0 0 15px!important;color:#24374b!important}
body #main .account-person-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
body #main .account-person-field{display:flex!important;flex-direction:column!important;gap:7px!important;min-width:0!important;color:#33465b!important}
body #main .account-person-label{display:flex!important;align-items:center!important;gap:7px!important;font-size:13px!important;font-weight:650!important;color:#33465b!important}
body #main .account-person-label svg{width:19px!important;height:19px!important;color:#426384!important;flex:0 0 19px!important}
body #main .account-person-field input{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;min-height:44px!important;padding:10px 12px!important;border:1px solid #dce3ea!important;border-radius:9px!important;background:#fff!important;color:#24374b!important;font-size:16px!important}
body #main .account-person-save{margin-top:15px!important;min-height:43px!important;background:#245a96!important;border:0!important;border-radius:9px!important;color:#fff!important}
@media(max-width:600px){body #main .account-person-grid{grid-template-columns:minmax(0,1fr)!important;gap:13px!important}}

/* Perfil: icones SVG a l'interior dels camps, etiquetes netes. */
body #main .account-person-input-wrap{position:relative!important;display:block!important;width:100%!important;min-width:0!important}
body #main .account-person-input-icon{position:absolute!important;left:12px!important;top:50%!important;transform:translateY(-50%)!important;display:flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important;pointer-events:none!important;color:#426384!important}
body #main .account-person-input-icon svg{width:19px!important;height:19px!important;display:block!important;color:#426384!important}
body #main .account-person-input-wrap input{padding-left:41px!important}
body #main .account-person-label{display:block!important;font-size:13px!important;font-weight:650!important;color:#33465b!important}
/* Un sol contracte de botons al perfil: primaris blaus, sense verd. */
body #main .user-screen-profile :is(.account-person-save,.account-security button[type=submit]){
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:100%!important;min-height:44px!important;padding:10px 16px!important;
 background:#245a96!important;border:1px solid #245a96!important;border-radius:9px!important;
 color:#fff!important;font-size:15px!important;font-weight:700!important;box-shadow:none!important;
}
body #main .user-screen-profile :is(.account-person-save,.account-security button[type=submit]):hover{background:#1b477a!important;border-color:#1b477a!important}

/* Desktop: restaurar un únic contenidor editorial de categories i Rutes.
   La capçalera fotogràfica no ha d'ocupar mitja pantalla. */
@media (min-width: 1001px) {
 body #main:has(.shared-program) {
  box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;
  margin:0 auto!important;
 }
 body #main:has(.shared-program) > .category-banner {
  box-sizing:border-box!important;
  position:relative!important;
  display:flex!important;
  align-items:flex-end!important;
  width:100%!important;max-width:100%!important;
  height:clamp(260px,23vw,360px)!important;
  min-height:260px!important;max-height:360px!important;
  aspect-ratio:auto!important;
  margin:0!important;
  isolation:isolate!important;
  overflow:hidden!important;
 }
 body #main:has(.shared-program) > .category-banner > .category-banner-image {
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;max-width:none!important;
  height:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center 45%!important;
  z-index:-2!important;
 }
 body #main:has(.shared-program) > .category-banner::after {
  content:""!important;
  position:absolute!important;inset:0!important;
  background:linear-gradient(90deg,#071c25b3 0%,#071c2540 56%,transparent 100%)!important;
  z-index:-1!important;
 }
 body #main:has(.shared-program) > .category-banner > .category-banner-text {
  box-sizing:border-box!important;
  width:min(1440px,100%)!important;
  max-width:1440px!important;
  padding:28px clamp(24px,4vw,65px)!important;
  margin:0 auto!important;
 }
 body #main:has(.shared-program) > .shared-program {
  box-sizing:border-box!important;
  width:min(1440px,calc(100% - 64px))!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding:22px 0 44px!important;
 }
 body #main:has(.shared-program) .shared-program-controls {
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:16px!important;
 }
 body #main:has(.shared-program) .shared-program-controls input {
  flex:1 1 280px!important;
  max-width:420px!important;
 }
 body #main:has(.shared-program) .shared-program-modes {
  margin-left:auto!important;
 }
 body #main:has(.shared-program) .shared-program-flat,
 body #main:has(.shared-program) .shared-day-items {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
 }
 body #main:has(.shared-program) .shared-program-card{
  min-height:190px!important;
 }
 body #main:has(.shared-program) .shared-card-photo{
  min-height:190px!important;
 }
}

/* Programa és l'única plantilla dels llistats; les categories només canvien la foto. */
body:has(.shared-program) #main .interior-page.interior-category .interior-hero,
body:has(.shared-program) #main .interior-page.interior-monem .interior-hero,
body:has(.shared-program) #main .interior-page:has([data-shared-program]) .interior-hero {
 background-image:linear-gradient(90deg,rgba(8,24,23,.80),rgba(8,24,23,.35) 67%,rgba(8,24,23,.12)),var(--listing-hero-image,url('/home-assets/portada-safor-2026.webp'))!important;
 background-size:cover!important;
 background-position:center 42%!important;
}

/* Les meues reserves comparteix exactament les fitxes del Programa. */
#main .shared-program-card .shared-card-reservation-footer {
 display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;
 gap:8px;width:100%;margin-top:10px;padding-top:10px;
 border-top:1px solid #e6ebee;font-size:12px;color:#43546a;font-weight:650;
}
#main .shared-program-card .shared-card-reservation-footer a {
 display:inline-flex;align-items:center;min-height:32px;
 padding:6px 10px;border-radius:8px;background:#edf2f7;
 color:#183752;font-weight:750;text-decoration:none;
}
#main .shared-program-card .shared-card-reservation-footer a:hover,
#main .shared-program-card .shared-card-reservation-footer a:focus-visible {
 background:#dae8f3;
}

/* Només una representació activa: els display:grid !important de desktop no poden
   anul·lar l'atribut hidden del selector Llista / Per dies. */
body #main .shared-program .shared-program-flat[hidden],
body #main .shared-program .shared-program-days[hidden],
body #main .shared-program .shared-day[hidden],
body #main .shared-program .shared-program-card[hidden],
body #main .shared-program [data-shared-flat][hidden],
body #main .shared-program [data-shared-days][hidden]{
 display:none!important;
}

/* Una foto panoràmica de capçalera: centrar el punt d'interés a la dreta,
   amb espai lliure a l'esquerra per al títol. */
body:has(.shared-program) #main .interior-page:has([data-shared-program]) .interior-hero{
 background-position:center 45%!important;
}
body:has(.shared-program) #main .interior-page:has([data-shared-program]) .interior-hero::before{
 background:linear-gradient(90deg,rgba(8,24,23,.82),rgba(8,24,23,.30) 58%,rgba(8,24,23,.04))!important;
}

/* Les meues reserves: mateixa composició de Programa, sense un segon layout. */
body:has(#main [data-shared-program]) #main > .interior-page{
 width:100%!important;max-width:100%!important;margin:0!important;
}
body:has(#main [data-shared-program]) #main > .interior-page > .interior-hero{
 width:100%!important;min-height:clamp(260px,27vw,390px)!important;
 background-color:#172b34!important;
 background-image:linear-gradient(90deg,rgba(8,24,23,.75),rgba(8,24,23,.3)),var(--listing-hero-image,url('/home-assets/portada-safor-2026.webp'))!important;
 background-size:cover!important;background-position:center 42%!important;
}
body:has(#main [data-shared-program]) #main > .interior-page > .interior-surface{
 box-sizing:border-box!important;width:calc(100% - clamp(32px,7vw,112px))!important;
 max-width:none!important;margin:-22px auto 0!important;
}

/* Guardats i les meues reserves: capçalera única, panoràmica i sense retalls extrems. */
body #main > .interior-page:is(.interior-saved,.interior-bookings) > .interior-hero {
  box-sizing:border-box!important;
  width:100%!important;
  height:clamp(220px,22vw,340px)!important;
  min-height:0!important;
  background-image:linear-gradient(90deg,rgba(8,24,23,.72),rgba(8,24,23,.28) 67%,rgba(8,24,23,.08)),var(--listing-hero-image)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center 43%!important;
}
body #main > .interior-page:is(.interior-saved,.interior-bookings) > .interior-hero::before {display:none!important}
body #main > .interior-page:is(.interior-saved,.interior-bookings) > .interior-hero .page-head {padding:34px clamp(20px,4vw,56px) 38px!important}
@media(max-width:700px){
  body #main > .interior-page:is(.interior-saved,.interior-bookings) > .interior-hero {
    height:clamp(174px,39vw,222px)!important;
    background-position:center 42%!important;
  }
  body #main > .interior-page:is(.interior-saved,.interior-bookings) > .interior-hero .page-head {padding:18px 20px 24px!important}
  body #main > .interior-page:is(.interior-saved,.interior-bookings) > .interior-hero .page-head h1 {font-size:clamp(29px,7vw,39px)!important}
}

/* Guardats: panorama local, cares visibles en desktop i mobil. */
body #main > .interior-page.interior-saved > .interior-hero {
 background-image:linear-gradient(90deg,rgba(8,24,23,.72),rgba(8,24,23,.28) 67%,rgba(8,24,23,.08)),url('/home-assets/organitzador_de_rutes_al_capvespre.webp')!important;
 background-position:center 22%!important;
}
@media(max-width:700px){body #main > .interior-page.interior-saved > .interior-hero {background-position:center 18%!important}}

/* Les meues reserves: portada local de la Home i enquadrament panoràmic. */
body #main > .interior-page.interior-bookings > .interior-hero {
 background-image:linear-gradient(90deg,rgba(8,24,23,.72),rgba(8,24,23,.28) 67%,rgba(8,24,23,.08)),url('/home-assets/meues-reserves-panorama.webp')!important;
 background-position:center 35%!important;
}
@media(max-width:700px){body #main > .interior-page.interior-bookings > .interior-hero {background-position:center 28%!important}}

/* Categories: la imatge especifica ha de prevaldre sobre els estils antics del Programa. */
body #main > .interior-page.interior-category:has([data-focus-group="talk"]) > .interior-hero {
 background-image:linear-gradient(90deg,rgba(8,24,23,.75),rgba(8,24,23,.3)),url('/home-assets/xarrades-panorama-4x1.webp')!important;
}
body #main > .interior-page.interior-category:has([data-focus-group="excursion"]) > .interior-hero {
 background-image:linear-gradient(90deg,rgba(8,24,23,.75),rgba(8,24,23,.3)),url('/home-assets/senderisme-panorama-4x1.webp')!important;
}

/* Fotografies reals, sense cap filtre fosc superposat. */
body #main > .interior-page > .interior-hero,
body:has(.shared-program) #main > .interior-page > .interior-hero,
body:has(#main [data-shared-program]) #main > .interior-page > .interior-hero {
 background-image:var(--listing-hero-image,url('/home-assets/portada-safor-2026.webp'))!important;
 background-blend-mode:normal!important;
 filter:none!important;
}
body #main > .interior-page > .interior-hero::before,
body:has(.shared-program) #main > .interior-page > .interior-hero::before {display:none!important;content:none!important;}
body #main > .interior-page.interior-saved > .interior-hero {background-image:url('/home-assets/organitzador_de_rutes_al_capvespre.webp')!important;}
body #main > .interior-page.interior-bookings > .interior-hero {background-image:url('/home-assets/meues-reserves-panorama.webp')!important;}
body #main > .interior-page.interior-category:has([data-focus-group="talk"]) > .interior-hero {background-image:url('/home-assets/xarrades-panorama-4x1.webp')!important;}
body #main > .interior-page.interior-category:has([data-focus-group="excursion"]) > .interior-hero {background-image:url('/home-assets/senderisme-panorama-4x1.webp')!important;}

body #main > .interior-page.interior-category:has([data-focus-group="sport"]) > .interior-hero {background-image:url("/home-assets/escalada-panorama-4x1.webp")!important;}

/* Panoràmiques: composició de dreta a esquerra, amb el focus fotogràfic a la dreta.
   La capçalera conserva el text a l'esquerra i no aplica filtres ni degradats. */
body #main > .interior-page > .interior-hero,
body:has(.shared-program) #main > .interior-page > .interior-hero,
body:has(#main [data-shared-program]) #main > .interior-page > .interior-hero {
 background-position:right center!important;
 background-repeat:no-repeat!important;
 background-size:cover!important;
}
@media (max-width:700px){
 body #main > .interior-page > .interior-hero,
 body:has(.shared-program) #main > .interior-page > .interior-hero,
 body:has(#main [data-shared-program]) #main > .interior-page > .interior-hero {
  background-position:right center!important;
 }
}

/* Panoràmiques de secció: totes locals, sense degradats, sense foscor. */
body #main > .interior-page.interior-category:has([data-focus-group="workshop"]) > .interior-hero {background-image:url('/home-assets/tallers-panorama-4x1.webp')!important}
body #main > .interior-page.interior-category:has([data-focus-group="culture"]) > .interior-hero {background-image:url('/home-assets/cultura-ermita-panorama-4x1.webp')!important}
body[data-fira-header-route="/taules-redones"] #main > .interior-page > .interior-hero {background-image:url('/home-assets/taules-redones-panorama-4x1.webp')!important}
body[data-fira-header-route="/contacte"] #main > .interior-page > .interior-hero {background-image:url('/home-assets/contacte-panorama-4x1.webp')!important}
body[data-fira-header-route="/historia"] #main > .interior-page.interior-history > .interior-hero {background-image:url('/home-assets/historia-fira-panorama-4x1.webp')!important}
body[data-fira-header-route^="/historia/"] #main > .interior-page.interior-history > .interior-hero {background-image:url('/home-assets/historia-fira-panorama-4x1.webp')!important}
body[data-fira-header-route="/gestio-reserves"] #main > .interior-page > .interior-hero {background-image:url('/home-assets/reserves-fira-panorama-4x1.webp')!important}
body[data-fira-header-route="/admin"] #main > .interior-page > .interior-hero {background-image:url('/home-assets/administracio-panorama-4x1.webp')!important}
body[data-fira-header-route="/admin"] #main .fira-admin-profile-head.admin-activity-hero,
body[data-fira-header-route="/admin"] #main .fira-admin-section-header {
 background-image:url('/home-assets/administracio-panorama-4x1.webp')!important;
 background-repeat:no-repeat!important;background-size:cover!important;background-position:right center!important;
}
body[data-fira-header-route="/gestio-reserves"] #main .staff-events > header,
body[data-fira-header-route="/gestio-reserves"] #main .fira-staff-reservations > header {
 background-image:url('/home-assets/reserves-fira-panorama-4x1.webp')!important;
 background-position:right center!important;background-size:cover!important;
}
body[data-fira-header-route="/compte"] #main .account-heading,
body[data-fira-header-route="/perfil"] #main .account-heading,
body[data-fira-header-route="/perfil-usuari"] #main .account-heading {
 background-image:url('/home-assets/perfil-usuari-panorama-4x1.webp')!important;
 background-position:right center!important;background-size:cover!important;
}
body #main .fira-image-header {
 min-height:clamp(180px,22vw,300px);display:flex;align-items:center;
 padding:clamp(22px,4vw,55px);background-position:right center;background-size:cover;
 background-repeat:no-repeat;border-radius:18px;margin-bottom:24px;
}
body #main .fira-info-image-header {background-image:url('/home-assets/informacio-fira-panorama-4x1.webp')!important}
body #main .fira-image-header h1 {margin:0;max-width:65%;font-size:clamp(26px,4vw,48px)}
body #main > .interior-page > .interior-hero,
body #main .fira-admin-profile-head.admin-activity-hero,
body #main .account-heading,
body #main .fira-image-header {background-blend-mode:normal!important;filter:none!important}

/* Perfil efectiu: usa profile-activity-hero, no account-heading. */
body[data-fira-header-route="/compte"] #main .profile-activity-hero,
body[data-fira-header-route="/compte"] #main .user-clean-page > .user-clean-head,
body[data-fira-header-route="/dades"] #main .user-clean-page > .user-clean-head {
 background-image:url('/home-assets/perfil-usuari-panorama-4x1.webp')!important;
 background-position:right center!important;background-repeat:no-repeat!important;background-size:cover!important;
 background-blend-mode:normal!important;filter:none!important;
}

/* Home · selectors de dia i accions en una mateixa barra, sense peu buit. */
body.is-fira-home #main .home-agenda-toolbar {
 display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
 margin-bottom:14px;
}
body.is-fira-home #main .home-agenda-toolbar .home-agenda-tabs {
 display:flex;flex-wrap:wrap;gap:8px;flex:0 1 auto;margin:0!important;
}
body.is-fira-home #main #home-agenda-toolbar-actions {margin-left:auto;display:flex;align-items:center}
body.is-fira-home #main #home-agenda-toolbar-actions .home-agenda-expand {
 display:flex;gap:8px;align-items:center;justify-content:flex-end;
 margin:0!important;padding:0!important;width:auto!important;border:0!important;
 background:none!important;box-shadow:none!important;
}
body.is-fira-home #main #home-agenda-toolbar-actions .home-agenda-expand button {
 display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
 margin:0!important;
}
body.is-fira-home #main .home-agenda-list {margin-bottom:0}
@media(max-width:900px){
 body.is-fira-home #main .home-agenda-toolbar {align-items:flex-start}
 body.is-fira-home #main .home-agenda-toolbar .home-agenda-tabs {flex:1 1 100%;width:100%}
 body.is-fira-home #main #home-agenda-toolbar-actions {margin-left:auto;width:100%;justify-content:flex-end}
}
@media(max-width:480px){
 body.is-fira-home #main #home-agenda-toolbar-actions .home-agenda-expand {width:100%!important;flex-wrap:wrap}
}

/* Monem: panorama interior de cinema, sense filtre fosc. */
body #main > .interior-page.interior-monem > .interior-hero {background-image:url('/home-assets/cinema-interior-panorama-4x1.webp')!important;}

/* Desktop: dies i controls en una sola línia, sense salt ni espai vertical. */
@media(min-width:901px){
 body.is-fira-home #main .home-agenda-toolbar {
  display:flex!important;flex-wrap:nowrap!important;align-items:center!important;
  justify-content:space-between!important;gap:12px!important;
 }
 body.is-fira-home #main .home-agenda-toolbar .home-agenda-tabs {
  display:flex!important;flex:0 1 auto!important;width:auto!important;
  max-width:calc(100% - 405px)!important;min-width:0!important;
  flex-wrap:nowrap!important;gap:7px!important;
 }
 body.is-fira-home #main .home-agenda-toolbar .home-agenda-tabs button {
  width:auto!important;min-width:0!important;flex:0 1 auto!important;
  padding-inline:clamp(12px,1.3vw,24px)!important;
 }
 body.is-fira-home #main #home-agenda-toolbar-actions {
  flex:0 0 auto!important;width:auto!important;margin-left:auto!important;
  align-self:center!important;
 }
 body.is-fira-home #main #home-agenda-toolbar-actions .home-agenda-expand {
  flex-wrap:nowrap!important;
 }
}
