/* ============================================================
   MONPENEDÈS / EDITORIAL FINISH
   Design refinement only. Content, templates, states, URLs,
   filtering, agent assignment and simulators remain untouched.
   ============================================================ */
:root{
  --mon-ink:#1c1c1a;
  --mon-muted:#6f6e68;
  --mon-line:#deddd6;
  --mon-paper:#fff;
  --mon-cream:#f6f5f1;
  --mon-deep:#222321;
  --mon-gutter:clamp(19px,4.1vw,62px);
}
body{background:var(--mon-paper)!important;color:var(--mon-ink)!important;-webkit-font-smoothing:antialiased}
body,.mp-main,.mp-header,.mp-footer,
body :is(input,select,textarea,button){font-family:Mulish,Arial,Helvetica,sans-serif!important}
.mp-main :is(h1,h2,h3,h4){color:inherit;letter-spacing:-.055em;line-height:1.08;text-wrap:balance}
.mp-main :is(h1,h2,h3,h4) em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}
.mp-main .mp-eyebrow{font-size:10px;letter-spacing:.125em;font-weight:750;line-height:1.4}
.mp-main a:focus-visible,.mp-nav a:focus-visible,.mp-footer a:focus-visible,
.mp-main button:focus-visible,.mp-main input:focus-visible,.mp-main select:focus-visible,
.mp-main summary:focus-visible{outline:2px solid #8d8575!important;outline-offset:4px}
.mp-main .mp-button,.mp-main .mp-ux-filter-submit{
  background:var(--mon-ink);color:#fff;border:1px solid var(--mon-ink);
  font-weight:700;letter-spacing:.015em;text-transform:none;font-size:12px;
  border-radius:0;box-shadow:none;transition:background-color .18s ease,color .18s ease
}
.mp-main .mp-button:hover,.mp-main .mp-ux-filter-submit:hover{
  background:#44443e;color:#fff;border-color:#44443e;transform:none;box-shadow:none
}
.mp-main .mp-button span{font-size:14px;font-weight:400}
.mp-main .mp-link{font-size:11px;letter-spacing:.055em;font-weight:800;border-bottom:1px solid #777670;text-transform:none}
.mp-main .mp-link:hover{opacity:1;border-color:#111}

/* Header: quiet brand and precise navigation */
.mp-header{border-bottom:1px solid var(--mon-line)}
.mp-header .mp-header-inner{padding-block:clamp(14px,1.6vw,19px)!important;gap:clamp(16px,2.2vw,35px)}
.mp-header .mp-brand{width:clamp(170px,16.2vw,228px);max-width:228px}
.mp-header .mp-brand-logo{max-height:48px;object-fit:contain}
.mp-header .mp-nav{gap:clamp(17px,2.2vw,32px)}
.mp-header .mp-nav a{font-size:11px;letter-spacing:.04em;text-transform:none;font-weight:700}
.mp-header .mp-nav a:hover{opacity:.65}
.mp-header .mp-nav .mp-nav-pill{border:1px solid var(--mon-ink);padding:10px 14px;font-size:10px}
.mp-header .mp-nav .mp-nav-pill:hover{background:var(--mon-ink);color:#fff;opacity:1}

/* Homepage: picture-led editorial, no floating cards or gimmicks */
.mp-ux-home .mp-ux-hero{
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;
  gap:clamp(21px,3.1vw,47px)!important;
  padding-block:clamp(20px,2.4vw,34px)!important
}
.mp-ux-home .mp-ux-hero-copy{padding-block:clamp(21px,3vw,39px)!important}
.mp-ux-home .mp-ux-hero-copy h1{
  font-size:clamp(61px,6.35vw,94px)!important;
  font-weight:650!important;line-height:.99!important;
  letter-spacing:-.078em!important;
  margin:clamp(18px,2vw,27px) 0 20px!important
}
.mp-ux-home .mp-ux-hero-copy>p{
  font-size:14px!important;line-height:1.76!important;
  max-width:415px;color:var(--mon-muted);margin-bottom:24px!important
}
.mp-ux-home .mp-ux-hero-note{font-size:9px;letter-spacing:.12em;color:#8a8983;margin-top:27px!important}
.mp-ux-home .mp-ux-hero-photo{
  min-height:clamp(360px,37vw,500px)!important;
  box-shadow:none;border:0;background-position:center 46%
}
.mp-ux-home .mp-ux-hero-photo:after{
  inset:auto 0 0;height:33%;
  background:linear-gradient(to top,rgba(0,0,0,.38),transparent)
}
.mp-ux-home .mp-ux-hero-photo-caption{font-size:9px;letter-spacing:.11em;bottom:18px}
.mp-ux-home .mp-ux-hero-textlink{
  font-size:11px;font-weight:750;text-transform:none;letter-spacing:.015em;
  padding-bottom:5px;border-bottom:1px solid #6c6b67
}

/* Categories: a pair of photographic editorial entries, no mockup cards */
.mp-ux-home .mp-ux-choose{padding-block:clamp(31px,3.7vw,53px)!important}
.mp-ux-home .mp-ux-section-row{margin-bottom:19px!important;align-items:end}
.mp-ux-home .mp-ux-section-row h2{
  font-size:clamp(34px,3.65vw,54px)!important;
  font-weight:650!important;margin-top:10px!important;
  line-height:1.04!important
}
.mp-ux-home .mp-ux-section-row>p{font-size:12px;line-height:1.65;color:var(--mon-muted)}
.mp-ux-home .mp-ux-choose-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(17px,2.25vw,30px)!important;align-items:stretch
}
.mp-ux-home .mp-ux-choose-grid>a.mp-ux-choice{
  display:flex!important;flex-direction:column;width:100%!important;
  min-width:0!important;height:100%;background:transparent;
  border:0!important;box-shadow:none!important;transform:none!important;
  transition:none;color:var(--mon-ink)
}
.mp-ux-home .mp-ux-choice-photo{
  height:clamp(235px,21vw,318px)!important;width:100%;
  background-position:center 48%;border:0
}
.mp-ux-home .mp-ux-choice:hover .mp-ux-choice-photo{
  transform:none!important;filter:brightness(.97)
}
.mp-ux-home .mp-ux-choice-info{
  min-height:0!important;padding:19px 0 5px!important;
  border-top:0;background:transparent;display:block!important;position:relative
}
.mp-ux-home .mp-ux-choice-info>span{color:#7c7a74;font-size:10px;letter-spacing:.075em;font-weight:700}
.mp-ux-home .mp-ux-choice-info h3{
  font-size:clamp(26px,2.6vw,38px)!important;
  font-weight:675!important;line-height:1.12!important;
  letter-spacing:-.055em!important;
  margin:8px 35px 6px 0!important
}
.mp-ux-home .mp-ux-choice-info>p{font-size:12px;line-height:1.65;color:var(--mon-muted)}
.mp-ux-home .mp-ux-choice-info b{
  right:3px!important;top:41px!important;font-size:22px;
  line-height:1;font-weight:400
}
.mp-ux-home .mp-ux-choice:hover h3{color:#55554f}
.mp-ux-home .mp-ux-cubo-stamp{right:14px;bottom:10px;background:transparent!important}

/* Featured collections & geographic navigation */
.mp-ux-home .mp-home-featured{
  padding-block:clamp(31px,3.6vw,55px) clamp(40px,4vw,62px)!important;
  border-top:1px solid var(--mon-line)
}
.mp-home-featured .mp-section-top{margin-bottom:24px!important}
.mp-home-featured .mp-section-top h2{
  font-size:clamp(35px,4vw,58px)!important;
  font-weight:650!important;margin-top:9px!important
}
.mp-ux-home .mp-zones-compact{
  padding-block:clamp(27px,3vw,46px)!important;
  background:transparent;border-color:var(--mon-line)
}
.mp-ux-home .mp-zones-heading{margin-bottom:16px!important}
.mp-ux-home .mp-zones-heading h2{font-size:clamp(25px,2.7vw,38px)!important;font-weight:650}
.mp-zones-links{gap:8px}
.mp-zone-link{
  background:transparent;border-color:var(--mon-line);
  min-height:39px;padding:8px 13px;
  font-size:11px;font-weight:650;letter-spacing:0;
  transition:background-color .15s ease,color .15s ease
}
.mp-zone-link span{font-size:13px;opacity:.6}
.mp-zone-link:hover,.mp-zone-link.is-active{
  background:var(--mon-ink);border-color:var(--mon-ink);color:#fff
}
.mp-ux-home .mp-ux-cubo-feature{
  padding-block:clamp(39px,4.8vw,70px)!important;
  background:var(--mon-cream)
}
.mp-ux-home .mp-ux-cubo-feature-top{margin-bottom:26px!important;align-items:end}
.mp-ux-home .mp-ux-cubo-feature h2{
  font-size:clamp(40px,4.7vw,70px)!important;
  font-weight:650!important;line-height:1.02!important;
  margin:8px 0 13px!important
}
.mp-ux-home .mp-ux-cubo-feature-top p{font-size:13px;line-height:1.7;color:var(--mon-muted)}
.mp-ux-home .mp-ux-end{
  padding-block:clamp(44px,4.5vw,71px)!important;
  border-top:1px solid var(--mon-line)
}
.mp-ux-home .mp-ux-end h2{font-size:clamp(33px,3.9vw,57px)!important;font-weight:650!important}

/* Cards: let the photography carry the visual weight */
.mp-grid{gap:clamp(21px,2.4vw,34px)!important}
.mp-card{background:transparent;border:0;box-shadow:none;min-width:0}
.mp-card-media{overflow:hidden;background:#e9e8e3;aspect-ratio:1.33}
.mp-card-image{transition:transform .55s cubic-bezier(.24,.74,.31,1)}
.mp-card-media:hover .mp-card-image{transform:scale(1.018)}
.mp-card:not(.mp-closed) .mp-card-state{display:none!important}
.mp-card.mp-closed .mp-status-tag{
  top:12px;left:12px;padding:9px 12px;
  font-size:10px;letter-spacing:.075em
}
.mp-card .mp-card-details{padding:15px 0 0!important}
.mp-card-loc{
  color:#75746e;font-size:10px!important;letter-spacing:.07em;
  text-transform:uppercase;margin-bottom:8px!important
}
.mp-card-title{
  font-size:clamp(18px,1.75vw,25px)!important;
  line-height:1.23!important;letter-spacing:-.045em!important;
  font-weight:700!important;min-height:0!important;
  transition:color .2s
}
.mp-card-title:hover{color:#6c6b62}
.mp-card-bottom{
  border-top:1px solid var(--mon-line);margin-top:15px!important;
  padding-top:12px!important;align-items:center;
  gap:8px;font-size:11px!important
}
.mp-card-bottom strong{font-size:14px!important;font-weight:750}
.mp-card-cubo-mark{box-shadow:none!important;border:0!important;background:transparent!important}
.mp-card-cubo-mark .mp-cubo-logo{filter:brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.6))!important}

/* Catalog: compact and informative, without artificial panel stacks */
.mp-ux-catalog .mp-ux-catalog-head{
  padding-block:clamp(19px,2.1vw,31px)!important;gap:clamp(17px,2.6vw,39px)!important
}
.mp-ux-catalog .mp-ux-catalog-head h1{
  font-size:clamp(40px,4.1vw,60px)!important;font-weight:665!important;
  line-height:1.02!important;margin:7px 0 9px!important
}
.mp-ux-catalog .mp-ux-catalog-headtext p{font-size:12px!important;line-height:1.65!important;color:var(--mon-muted)}
.mp-ux-catalog .mp-catalog-switch{
  border:1px solid var(--mon-line);background:#fff;max-width:470px!important;
  gap:0!important;padding:0!important
}
.mp-ux-catalog .mp-catalog-switch a{
  padding:13px 15px!important;font-size:11px!important;
  font-weight:700;letter-spacing:0;text-transform:none
}
.mp-ux-catalog .mp-catalog-switch a.is-active{
  background:var(--mon-ink);color:white
}
.mp-ux-catalog .mp-catalog-switch a:not(.is-active):hover{background:var(--mon-cream)}
.mp-ux-catalog .mp-zones-compact{
  padding-block:10px!important;border-color:var(--mon-line)
}
.mp-ux-catalog .mp-zone-link{
  border:0;border-bottom:1px solid var(--mon-line);
  border-radius:0;min-height:34px!important;padding:8px 11px!important;
  font-size:11px!important
}
.mp-ux-catalog .mp-zone-link.is-active{
  border-bottom-color:var(--mon-ink)
}
.mp-ux-catalog .mp-ux-catalog-filters{padding-block:13px 15px!important}
.mp-ux-catalog .mp-ux-filters{
  background:var(--mon-cream);border:0;
  padding:15px 16px!important;gap:11px!important
}
.mp-ux-catalog .mp-ux-filters label>span{
  font-size:10px;letter-spacing:.065em;font-weight:750;text-transform:none
}
.mp-ux-catalog .mp-ux-filters :is(input[type=search],input[type=number],select){
  background:#fff;border:1px solid var(--mon-line);
  border-radius:0;box-shadow:none;font-size:12px!important;
  color:var(--mon-ink);min-height:40px!important
}
.mp-ux-catalog .mp-ux-filter-submit{min-height:40px!important;letter-spacing:.01em}
.mp-ux-catalog .mp-ux-extra{border-top:1px solid #e5e3db;margin-top:4px}
.mp-ux-catalog .mp-ux-extra summary{font-size:11px;text-transform:none;letter-spacing:.015em}
.mp-ux-catalog .mp-results-bar{
  font-size:11px;letter-spacing:.075em;margin-bottom:19px!important;
  border-color:var(--mon-line)
}
.mp-ux-catalog .mp-results{padding-bottom:clamp(43px,5vw,75px)!important}
.mp-pager{margin-top:33px}

/* Standard property detail: quiet hierarchy; easy scanning */
.mp-detail{padding-block:24px 48px!important}
.mp-detail .mp-breadcrumb{font-size:11px;color:var(--mon-muted);margin-bottom:20px!important}
.mp-detail-head{margin-bottom:24px!important;gap:24px}
.mp-detail-head h1{
  font-size:clamp(39px,4.4vw,68px)!important;
  font-weight:670!important;line-height:1.07!important;
  letter-spacing:-.06em!important;margin:11px 0!important
}
.mp-detail-head p{font-size:10px;letter-spacing:.07em}
.mp-detail-price{font-size:clamp(19px,1.8vw,26px);font-weight:750}
.mp-gallery{gap:8px;max-height:600px}
.mp-gallery-main img{max-height:600px}
.mp-gallery-thumbs{gap:8px}
.mp-detail-facts{padding:22px 0 24px;gap:clamp(15px,3.3vw,45px)}
.mp-detail-facts strong{font-size:23px;font-weight:750;letter-spacing:-.04em}
.mp-detail-facts span{font-size:10px;letter-spacing:.055em}
.mp-detail-content{gap:clamp(27px,5vw,68px)!important;padding-top:clamp(24px,3vw,41px)!important}
.mp-detail-block{
  border-color:var(--mon-line);margin-bottom:clamp(22px,2.5vw,34px)!important;
  padding-bottom:clamp(22px,2.5vw,34px)!important
}
.mp-detail-block h2{
  font-size:clamp(28px,3vw,42px)!important;
  font-weight:675!important;margin:10px 0 17px!important
}
.mp-prose{font-size:14px!important;color:#55544e;line-height:1.78!important}
.mp-prose p{margin-bottom:13px}
.mp-feature-list li{font-size:14px!important;padding:12px 0 12px 22px!important}
.mp-contact-card{
  position:sticky;top:20px;background:var(--mon-cream);
  border:0;box-shadow:none;padding:clamp(19px,2.2vw,30px)!important
}
.mp-contact-card h3{font:italic clamp(34px,3.8vw,50px)/1.13 Georgia,serif;margin:12px 0 16px}
.mp-agent-avatar{width:66px;height:66px;flex-basis:66px}
.mp-agent-name{font-size:21px!important;font-weight:700;letter-spacing:-.04em}
.mp-agent-direct{gap:7px}
.mp-agent-tel{font-size:18px;font-weight:750}
.mp-visit-form{border-color:var(--mon-line);padding-top:clamp(30px,3vw,47px)!important}
.mp-visit h2{font-weight:675!important}

/* CUBO detail: same family, individual character */
.mp-cubo-page .mp-cubo-head{padding-bottom:clamp(19px,2.1vw,30px)!important}
.mp-cubo-page .mp-cubo-head h1{
  font-size:clamp(36px,4vw,61px)!important;
  font-weight:670!important;line-height:1.08!important
}
.mp-cubo-page .mp-cubo-head-copy>p{font-size:13px;color:var(--mon-muted)}
.mp-cubo-page .mp-cubo-hero-image{aspect-ratio:2.28;min-height:300px}
.mp-cubo-page .mp-cubo-overview{padding-block:clamp(30px,3.6vw,54px)!important}
.mp-cubo-page .mp-cubo-intro h2{
  font-size:clamp(32px,3.8vw,55px)!important;font-weight:650!important
}
.mp-cubo-page .mp-cubo-intro>p{font-size:14px!important;line-height:1.74}
.mp-cubo-page .mp-cubo-highlights{gap:13px}
.mp-cubo-page .mp-cubo-highlights>div{border-color:var(--mon-line)}
.mp-cubo-page .mp-cubo-highlights strong{font-size:23px;font-weight:750}
.mp-cubo-page .mp-cubo-parcela{padding-block:clamp(34px,4vw,58px)!important}
.mp-cubo-page .mp-cubo-section-title h2{
  font-size:clamp(34px,4.5vw,62px)!important;font-weight:675!important
}
.mp-cubo-page .mp-cubo-plot-card{
  background:var(--mon-cream);border:1px solid var(--mon-line);
  min-height:180px;box-shadow:none
}
.mp-cubo-page .mp-cubo-plot-card-secondary{background:#efeee9}
.mp-cubo-page .mp-cubo-plot-card strong{
  font-size:clamp(22px,2.45vw,34px);font-weight:675
}
.mp-cubo-page .mp-cubo-cta-sim{
  background:var(--mon-deep);padding:clamp(30px,3.8vw,55px)!important;
  margin-top:clamp(29px,3vw,44px)!important
}
.mp-cubo-page .mp-cubo-cta-sim h2{
  font-size:clamp(34px,4.5vw,61px)!important;font-weight:630!important
}
.mp-cubo-page .mp-cubo-cta-sim .mp-button{
  background:#fff;color:var(--mon-ink)!important;border-color:#fff
}
.mp-cubo-page .mp-cubo-cta-sim .mp-button:hover{
  background:#e7e5df;color:var(--mon-ink)!important
}
.mp-cubo-page .mp-cubo-simulator-section{padding-block:clamp(28px,3.3vw,51px)!important}
.mp-cubo-page .mp-cubo-contact{
  background:var(--mon-cream);border:0;box-shadow:none;
  padding:clamp(26px,3.1vw,47px)!important;margin-bottom:21px!important
}
.mp-cubo-page .mp-cubo-contact h2{font-size:clamp(33px,3.8vw,53px)!important;font-weight:655!important}
.mp-cubo-page .mp-cubo-contact-name{font-size:21px!important;font-weight:760}
.mp-cubo-page .mp-cubo-contact-actions a:not(.mp-button){
  text-decoration:none;border-bottom:1px solid #98968e;padding-bottom:6px
}

/* Footer: original mark, no added visual language */
.mp-footer-hb{background:#1d1e1b!important;color:#fff!important}
.mp-footer-hb .mp-footer-top{
  grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr) minmax(0,1fr);
  align-items:start;gap:clamp(30px,5vw,75px)!important
}
.mp-footer-hb .mp-footer-identity p{font-size:12px;line-height:1.55;color:#c4c4be;margin:10px 0}
.mp-footer-hb .mp-footer-navigation,.mp-footer-hb .mp-footer-contact{gap:12px}
.mp-footer-hb .mp-footer-top strong{letter-spacing:.1em;font-size:10px}
.mp-footer-hb .mp-footer-navigation a,.mp-footer-hb .mp-footer-contact a{
  font-size:12px;line-height:1.4;transition:opacity .15s
}
.mp-footer-hb .mp-footer-navigation a:hover,.mp-footer-hb .mp-footer-contact a:hover{opacity:.68}
.mp-footer-hb .mp-footer-identity img{
  width:min(100%,290px)!important;max-height:74px!important;
  filter:grayscale(1) invert(1)!important;mix-blend-mode:screen!important
}
.mp-footer-hb .mp-footer-bottom{font-size:10px;letter-spacing:.045em;border-color:#464640}

/* Moderate interaction & small-screen editorial hierarchy */
@media (max-width:1100px){
  .mp-header .mp-nav{gap:15px}
  .mp-ux-home .mp-ux-hero-copy h1{font-size:clamp(54px,7vw,76px)!important}
  .mp-ux-catalog .mp-catalog-switch a{padding-inline:10px!important}
}
@media (max-width:850px){
  .mp-ux-home .mp-ux-hero{grid-template-columns:1fr!important;gap:15px!important}
  .mp-ux-home .mp-ux-hero-copy{padding:16px 0 10px!important}
  .mp-ux-home .mp-ux-hero-photo{min-height:365px!important}
  .mp-ux-home .mp-ux-choose-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mp-ux-home .mp-ux-choice-photo{height:215px!important}
  .mp-ux-home .mp-ux-choice-info h3{font-size:clamp(23px,3vw,32px)!important}
  .mp-footer-hb .mp-footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px!important}
  .mp-footer-hb .mp-footer-identity{grid-column:1/-1}
}
@media (max-width:610px){
  .mp-header .mp-brand{width:182px;max-width:182px}
  .mp-ux-home .mp-ux-hero-copy h1{font-size:clamp(51px,12.6vw,71px)!important}
  .mp-ux-home .mp-ux-hero-photo{min-height:248px!important}
  .mp-ux-home .mp-ux-hero-note{display:none!important}
  .mp-ux-home .mp-ux-choose{padding-block:25px 37px!important}
  .mp-ux-home .mp-ux-choose-grid{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
  .mp-ux-home .mp-ux-choice-photo{height:215px!important}
  .mp-ux-home .mp-ux-choice-info{padding-top:13px!important}
  .mp-ux-home .mp-ux-choice-info h3{font-size:29px!important}
  .mp-home-featured .mp-section-top{gap:15px}
  .mp-ux-catalog .mp-ux-catalog-head{padding-block:15px!important}
  .mp-ux-catalog .mp-ux-catalog-head h1{font-size:clamp(37px,8.8vw,48px)!important}
  .mp-ux-catalog .mp-ux-filters{padding:12px!important}
  .mp-ux-catalog .mp-grid{grid-template-columns:minmax(0,1fr)!important}
  .mp-detail-head h1{font-size:clamp(36px,9vw,54px)!important}
  .mp-detail-facts{flex-wrap:wrap;gap:15px 25px}
  .mp-gallery{gap:5px}
  .mp-gallery-thumbs{gap:5px}
  .mp-cubo-page .mp-cubo-hero-image{aspect-ratio:1.45}
  .mp-cubo-page .mp-cubo-contact{grid-template-columns:1fr!important}
  .mp-footer-hb .mp-footer-top{grid-template-columns:1fr}
  .mp-footer-hb .mp-footer-identity{grid-column:auto}
}
@media (prefers-reduced-motion:reduce){
  .mp-card-image,.mp-zone-link,.mp-main .mp-button{transition:none!important}
  .mp-card-media:hover .mp-card-image{transform:none!important}
}

/* Una sola àrea de documentació per fitxa (PDF CAT/ES/EN, plànol i qualitats).
   Els botons tenen la mateixa amplada, sense tercers elements orfes. */
.mp-download-ficha{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:clamp(28px,5vw,76px);
  align-items:center;
  max-width:1390px;
  margin:clamp(30px,3.4vw,48px) auto!important;
  padding:clamp(25px,3vw,43px) clamp(20px,3.8vw,54px)!important;
  border-block:1px solid #deddd6;
  background:#f6f5f1;
}
.mp-download-ficha-intro{min-width:0}
.mp-download-ficha .mp-download-ficha-intro h2{
  margin:8px 0 12px!important;
  font:700 clamp(29px,3vw,42px)/1.12 Mulish,Arial,sans-serif!important;
  letter-spacing:-.055em;
}
.mp-download-ficha .mp-download-ficha-intro p{
  font:400 13px/1.65 Mulish,Arial,sans-serif;
  color:#66645f;
  margin:0;
  max-width:430px;
}
.mp-download-ficha-resources{min-width:0}
.mp-download-ficha-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
}
.mp-download-ficha-actions.is-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mp-download-ficha-actions.is-count-1{grid-template-columns:minmax(0,1fr)}
.mp-download-ficha-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
  min-height:70px;
  padding:17px 15px;
  background:#222321;
  color:#fff!important;
  border:1px solid #222321;
  text-decoration:none!important;
  font:750 12px/1.35 Mulish,Arial,sans-serif;
  transition:background-color .18s ease,border-color .18s ease;
}
.mp-download-ficha-link:hover{background:#44443f;color:#fff!important;border-color:#44443f}
.mp-download-ficha-link:focus-visible{outline:2px solid #8d8575;outline-offset:3px}
.mp-download-ficha-link-text{min-width:0;overflow-wrap:normal}
.mp-download-ficha-arrow{flex:0 0 auto;font:400 19px/1 Mulish,Arial,sans-serif}
.mp-download-ficha-additional{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:9px 20px;
  padding-top:15px;
  margin-top:15px;
  border-top:1px solid #dddbd5;
}
.mp-download-ficha-actions + .mp-download-ficha-additional{margin-top:16px}
.mp-download-ficha-additional-label{
  font:700 11px/1.4 Mulish,Arial,sans-serif;
  color:#77736d;
  letter-spacing:.015em;
}
.mp-download-ficha-additional-links{display:flex;flex-wrap:wrap;gap:10px 21px}
.mp-download-ficha-additional-links a{
  color:#242421!important;
  text-decoration:none!important;
  border-bottom:1px solid #79766f;
  padding-bottom:3px;
  font:700 12px/1.5 Mulish,Arial,sans-serif;
}
.mp-download-ficha-additional-links a:hover{border-bottom-color:#222321}
@media(max-width:1090px){
  .mp-download-ficha{grid-template-columns:1fr;gap:22px}
}
@media(max-width:580px){
  .mp-download-ficha{padding:25px 18px!important}
  .mp-download-ficha-actions,.mp-download-ficha-actions.is-count-2{grid-template-columns:1fr}
  .mp-download-ficha-link{min-height:54px;padding:14px 16px}
  .mp-download-ficha-additional{display:block}
  .mp-download-ficha-additional-links{margin-top:9px}
}

/* Monpenedès · navegació Habitatges / CUBO sense duplicacions visuals. */
.mp-ux-catalog .mp-catalog-switch{
  display:inline-flex!important;
  flex-flow:row nowrap!important;
  align-self:flex-end!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
  width:auto!important;
  max-width:100%!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.mp-ux-catalog .mp-catalog-switch a{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:42px!important;
  gap:0!important;
  margin:0!important;
  padding:10px 18px!important;
  border:0!important;
  border-bottom:2px solid #dedbd4!important;
  background:transparent!important;
  color:#797872!important;
  font-family:Mulish,Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:750!important;
  letter-spacing:.015em!important;
  line-height:1.3!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  transition:color .18s ease,border-color .18s ease!important;
}
.mp-ux-catalog .mp-catalog-switch a.is-active{
  border-bottom-color:#222321!important;
  background:transparent!important;
  color:#222321!important;
}
.mp-ux-catalog .mp-catalog-switch a:not(.is-active):hover{
  border-bottom-color:#88867e!important;
  background:transparent!important;
  color:#222321!important;
}
.mp-ux-catalog .mp-catalog-switch a:focus-visible{
  outline:2px solid #222321!important;
  outline-offset:3px!important;
}
.mp-header .mp-nav>a:not(.mp-nav-pill){
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.mp-ux-catalog .mp-ux-catalog-head{
  gap:clamp(14px,3vw,45px)!important;
  padding-block:clamp(17px,2.1vw,29px)!important;
}
@media(min-width:901px){
  .mp-ux-catalog .mp-ux-catalog-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) max-content!important;
    align-items:end!important;
  }
}
@media(max-width:900px){
  .mp-ux-catalog .mp-ux-catalog-head{gap:12px!important}
  .mp-ux-catalog .mp-catalog-switch{
    width:auto!important;
    max-width:100%!important;
    align-self:flex-start!important;
    margin-top:5px!important;
  }
  .mp-ux-catalog .mp-catalog-switch a{
    min-width:0!important;
    padding:10px 17px!important;
    font-size:12px!important;
  }
}


/* 2026-11-02 · Catàleg first: fotografies visibles des del primer viewport.
 * La navegació principal ja conté Habitatges i CUBO. Sense tabuladors duplicats,
 * sense introducció de dues línies ni panells de filtre grans. */
body:has(.mp-ux-catalog) .mp-header .mp-header-inner{
  padding-block:9px!important;
  min-height:77px!important;
}
body:has(.mp-ux-catalog) .mp-header .mp-brand-logo{max-height:44px!important}
.mp-ux-catalog .mp-ux-catalog-head{
  display:block!important;
  padding-block:clamp(12px,1.4vw,19px) clamp(8px,1.05vw,13px)!important;
  margin-bottom:0!important;
  min-height:0!important;
  border:0!important;
}
.mp-ux-catalog .mp-ux-catalog-headtext{
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  column-gap:clamp(15px,2vw,28px)!important;
  row-gap:4px!important;
  max-width:none!important;
  min-height:0!important;
  width:100%!important;
}
.mp-ux-catalog .mp-ux-catalog-head h1{
  flex:0 1 auto!important;
  font-family:Mulish,Arial,sans-serif!important;
  font-size:clamp(32px,3vw,46px)!important;
  font-weight:700!important;
  line-height:1.08!important;
  letter-spacing:-.065em!important;
  margin:0!important;
  padding:0!important;
  white-space:normal;
}
.mp-ux-catalog .mp-ux-catalog-head h1 em{
  font-size:1em!important;
  font-weight:400!important;
  letter-spacing:-.06em!important;
}
.mp-ux-catalog .mp-ux-catalog-headtext p{
  flex:1 1 270px!important;
  font-family:Mulish,Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.5!important;
  margin:0 0 2px!important;
  padding:0!important;
  color:#85827c!important;
  max-width:560px!important;
}
.mp-ux-catalog .mp-catalog-switch{display:none!important}
.mp-ux-catalog.mp-is-cubo .mp-ux-catalog-headtext{
  align-items:center!important;
  column-gap:17px!important;
}
.mp-ux-catalog.mp-is-cubo .mp-ux-catalog-headtext>.mp-cubo-logo{
  display:block!important;
  flex:0 0 86px!important;
  width:86px!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  background-position:left center!important;
}
.mp-ux-catalog.mp-is-cubo .mp-ux-catalog-head h1{
  font-size:clamp(30px,2.8vw,44px)!important;
}
.mp-ux-catalog .mp-zones-compact{
  padding-block:6px!important;
  border-top:1px solid #e8e6e0!important;
  border-bottom:1px solid #e8e6e0!important;
  margin-block:0!important;
  min-height:0!important;
}
.mp-ux-catalog .mp-zones-heading{display:none!important}
.mp-ux-catalog .mp-zones-links{
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:clamp(7px,1vw,16px)!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow-x:auto!important;
  overscroll-behavior-x:contain;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.mp-ux-catalog .mp-zone-link,
.mp-ux-catalog .mp-zone-link.is-active{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:33px!important;
  height:auto!important;
  margin:0!important;
  padding:7px 9px!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#67655f!important;
  font:700 11px/1.3 Mulish,Arial,sans-serif!important;
  letter-spacing:0!important;
  text-align:center!important;
  white-space:nowrap!important;
  transition:border-color .16s,color .16s!important;
}
.mp-ux-catalog .mp-zone-link.is-active{
  color:#1c1c1a!important;
  border-bottom-color:#1c1c1a!important;
}
.mp-ux-catalog .mp-zone-link:hover{
  color:#1c1c1a!important;
  border-bottom-color:#87857d!important;
  background:transparent!important;
}
.mp-ux-catalog .mp-zone-link span[aria-hidden]{display:none!important}
.mp-ux-catalog .mp-ux-catalog-filters{
  padding-block:8px 6px!important;
  border:0!important;
  margin-block:0!important;
}
.mp-ux-catalog .mp-ux-filters{
  display:grid!important;
  grid-template-columns:minmax(180px,1fr) minmax(165px,240px) 96px max-content!important;
  gap:9px!important;
  align-items:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin:0!important;
  min-height:0!important;
}
.mp-ux-catalog .mp-ux-filters>label{
  display:block!important;
  position:relative!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.mp-ux-catalog .mp-ux-filters>label>span{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.mp-ux-catalog .mp-ux-filters :is(input[type=search],select){
  display:block!important;
  width:100%!important;
  min-height:39px!important;
  height:39px!important;
  margin:0!important;
  padding:7px 12px!important;
  background:#f8f7f4!important;
  border:1px solid #e5e3dc!important;
  border-radius:0!important;
  font:500 12px/1.4 Mulish,Arial,sans-serif!important;
  color:#242420!important;
}
.mp-ux-catalog .mp-ux-filters input[type=search]::placeholder{color:#8d8a81}
.mp-ux-catalog .mp-ux-filter-submit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  grid-column:auto!important;
  min-height:39px!important;
  height:39px!important;
  width:96px!important;
  margin:0!important;
  padding:0 12px!important;
  background:#222321!important;
  border:1px solid #222321!important;
  color:#fff!important;
  font:750 12px Mulish,Arial,sans-serif!important;
}
.mp-ux-catalog .mp-ux-filter-submit span[aria-hidden]{display:none!important}
.mp-ux-catalog .mp-ux-extra{
  display:block!important;
  grid-column:auto!important;
  grid-row:auto;
  align-self:center!important;
  min-width:max-content!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.mp-ux-catalog .mp-ux-extra>summary{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:39px!important;
  height:39px!important;
  margin:0!important;
  padding:0 7px!important;
  font:750 11px/1.2 Mulish,Arial,sans-serif!important;
  text-transform:none!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  color:#55534c!important;
}
.mp-ux-catalog .mp-ux-extra[open]{
  grid-column:1/-1!important;
  width:100%!important;
  min-width:0!important;
  border-top:1px solid #e6e4df!important;
  padding-top:6px!important;
}
.mp-ux-catalog .mp-ux-extra[open]>.mp-ux-extra-fields{
  gap:10px!important;
  padding-block:4px 10px!important;
}
.mp-ux-catalog .mp-ux-extra[open]>.mp-ux-extra-fields label>span{
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  overflow:visible!important;
  clip:auto!important;
  white-space:normal!important;
}
.mp-ux-catalog .mp-results{
  padding-top:3px!important;
  margin-top:0!important;
}
.mp-ux-catalog .mp-results-bar{
  display:flex!important;
  align-items:center!important;
  min-height:27px!important;
  padding:2px 0 7px!important;
  margin:0 0 12px!important;
  font-size:10px!important;
  line-height:1.4!important;
  letter-spacing:.08em!important;
}
.mp-ux-catalog .mp-results-bar span:last-child{
  color:#a3a097!important;
  font-size:9px!important;
}
.mp-ux-catalog .mp-grid{
  margin-top:0!important;
  padding-top:0!important;
}
@media(max-width:1000px){
  .mp-ux-catalog .mp-ux-catalog-headtext p{
    flex:0 1 100%!important;
    max-width:none!important;
  }
}
@media(max-width:780px){
  .mp-ux-catalog .mp-ux-catalog-head{
    padding-block:12px 9px!important;
  }
  .mp-ux-catalog .mp-ux-catalog-head h1{
    font-size:clamp(27px,6vw,39px)!important;
  }
  .mp-ux-catalog .mp-ux-catalog-headtext p{
    font-size:11px!important;
    flex-basis:100%!important;
  }
  .mp-ux-catalog .mp-ux-filters{
    grid-template-columns:minmax(0,1fr) minmax(125px,.7fr) 83px!important;
    gap:7px!important;
  }
  .mp-ux-catalog .mp-ux-filter-submit{width:83px!important}
  .mp-ux-catalog .mp-ux-extra{
    grid-column:1/-1!important;
    justify-self:start!important;
  }
  .mp-ux-catalog .mp-ux-extra>summary{
    height:26px!important;
    min-height:26px!important;
  }
}
@media(max-width:510px){
  body:has(.mp-ux-catalog) .mp-header .mp-header-inner{min-height:65px!important}
  .mp-ux-catalog .mp-ux-catalog-head{
    padding-block:9px!important;
  }
  .mp-ux-catalog .mp-ux-catalog-head h1{
    font-size:clamp(25px,7.1vw,36px)!important;
  }
  .mp-ux-catalog .mp-ux-catalog-headtext p{display:none!important}
  .mp-ux-catalog.mp-is-cubo .mp-ux-catalog-headtext{
    column-gap:8px!important;
  }
  .mp-ux-catalog.mp-is-cubo .mp-ux-catalog-headtext>.mp-cubo-logo{
    flex-basis:58px!important;
    width:58px!important;
    height:29px!important;
    min-height:29px!important;
  }
  .mp-ux-catalog.mp-is-cubo .mp-ux-catalog-head h1{
    font-size:clamp(23px,5.8vw,30px)!important;
  }
  .mp-ux-catalog .mp-zone-link{font-size:10px!important;padding:6px 8px!important;min-height:30px!important}
  .mp-ux-catalog .mp-ux-filters{
    grid-template-columns:minmax(0,1fr) 89px!important;
    gap:6px!important;
  }
  .mp-ux-catalog .mp-ux-filters>.mp-ux-search{grid-column:1/-1!important}
  .mp-ux-catalog .mp-ux-filter-submit{width:89px!important}
  .mp-ux-catalog .mp-ux-extra{grid-column:1/-1!important}
  .mp-ux-catalog .mp-results-bar{margin-bottom:9px!important}
}

/* Galeria integral d'immobles, només les imatges necessàries a la primera pantalla. */
.mp-detail .mp-gallery{position:relative}
.mp-detail .mp-gallery-main img{cursor:zoom-in}
.mp-detail .mp-gallery-main img:focus-visible{outline:3px solid #20211e;outline-offset:4px}
.mp-detail .mp-gallery-all{position:absolute;z-index:2;bottom:17px;right:17px;display:inline-flex;gap:13px;align-items:center;justify-content:center;min-height:41px;padding:11px 17px;border:1px solid #22231f;background:#22231f;color:#fff;cursor:pointer;font:750 11px/1.3 Mulish,Arial,sans-serif;letter-spacing:.01em;box-shadow:0 5px 18px rgba(0,0,0,.1)}
.mp-detail .mp-gallery-all:hover{background:#494a44}
.mp-detail .mp-gallery-all:focus-visible,.mp-detail .mp-gallery-thumb:focus-visible{outline:3px solid #f5ce48;outline-offset:3px}
.mp-detail .mp-gallery-dialog{position:fixed;inset:0;margin:auto;max-width:none!important;width:min(98vw,1550px);height:min(96vh,1040px);padding:0;overflow:hidden;background:#181916;color:#fff;border:1px solid #444!important;border-radius:0;box-shadow:0 20px 80px rgba(0,0,0,.7)}
.mp-detail .mp-gallery-dialog::backdrop{background:rgba(0,0,0,.90);backdrop-filter:blur(3px)}
.mp-detail .mp-gallery-dialog[open]{display:flex;flex-direction:column}
body.mp-gallery-opened{overflow:hidden}
.mp-detail .mp-gallery-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:18px;flex:0 0 auto;min-height:58px;padding:12px clamp(13px,3vw,28px);border-bottom:1px solid #393933;font:700 10px Mulish,Arial,sans-serif;letter-spacing:.08em}
.mp-detail .mp-gallery-close{border:1px solid #7a7a70;padding:9px 14px;background:none;color:#fff;cursor:pointer;font:700 11px Mulish,Arial,sans-serif}
.mp-detail .mp-gallery-dialog-media{display:grid;grid-template-columns:clamp(45px,6vw,78px) minmax(0,1fr) clamp(45px,6vw,78px);align-items:center;min-height:0;flex:1;gap:0}
.mp-detail .mp-gallery-dialog-media img{display:block;max-height:100%;max-width:100%;width:auto;height:auto;margin:auto;object-fit:contain;min-width:0;min-height:0}
.mp-detail .mp-gallery-prev,.mp-detail .mp-gallery-next{display:grid;place-items:center;align-self:center;justify-self:center;width:clamp(36px,4.5vw,51px);height:clamp(36px,4.5vw,51px);border:1px solid #787970;color:#fff;background:#2d2e29;font-size:23px;cursor:pointer}
.mp-detail .mp-gallery-prev:disabled,.mp-detail .mp-gallery-next:disabled{opacity:.3;cursor:default}
.mp-detail .mp-gallery-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px clamp(13px,3vw,28px);border-top:1px solid #393933;color:#c4c4bf;font:500 11px/1.4 Mulish,Arial,sans-serif}
.mp-detail .mp-gallery-dialog-foot .mp-gallery-counter{font-weight:800;color:#fff;font-size:13px;white-space:nowrap}
@media(max-width:650px){.mp-detail .mp-gallery-all{bottom:9px;right:8px;min-height:35px;padding:8px 10px;font-size:10px}.mp-detail .mp-gallery-dialog{width:100vw;height:100dvh;max-height:100dvh}.mp-detail .mp-gallery-dialog-media{grid-template-columns:41px minmax(0,1fr) 41px}.mp-detail .mp-gallery-dialog-foot>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.mp-detail .mp-gallery-dialog::backdrop{backdrop-filter:none}}

/* Comarques i municipis: dues fitxes per fila, una en mòbil.
   Es limita a la vista de zona, sense alterar el catàleg general o CUBO global. */
@media(min-width:610px){
  html body .mp-ux-catalog:is(.mp-is-comarca,.mp-is-municipi) .mp-results .mp-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:609px){
  html body .mp-ux-catalog:is(.mp-is-comarca,.mp-is-municipi) .mp-results .mp-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
}
