@import url('./mls-listing.css');
/* Scoped to the search: the shared header, menu and footer keep their own design. */
html:has(.mls-page){scroll-behavior:auto}
.mls-page{font-size:16px;font-weight:400;--line:rgba(201,163,78,.28)}
.mls-page [hidden]{display:none!important}
.mls-page .site-header{transform:none!important;position:relative}
.mls-page .site-header-inner{max-width:1600px;margin:auto}
.mls-page .site-header{box-shadow:none;border-bottom:1px solid var(--line)}
.mls-page .wa-float{position:static;margin:0 44px 24px auto;background:var(--gold);box-shadow:none;width:50px;height:50px}
.mls-page .wa-float path{fill:var(--ink)}
.mls-page button,.mls-page input,.mls-page select{font:inherit}
.mls-page button,.mls-page a,.mls-page input,.mls-page select{touch-action:manipulation}
.mls-page :focus-visible{outline:2px solid var(--gold-2);outline-offset:5px}
.search-skip{position:fixed;top:-100px;left:20px;z-index:200;background:var(--gold);padding:12px;color:var(--ink)}
.search-skip:focus{top:12px}
.search-intro{position:relative;isolation:isolate;background:linear-gradient(100deg,rgba(10,10,10,.97) 25%,rgba(10,10,10,.77)),url('assets/recorrido/poster.jpg') center 44%/cover;border-bottom:1px solid var(--line)}
.search-intro:after{content:'';position:absolute;inset:0;z-index:-1;opacity:.09;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'/%3E%3C/svg%3E")}
.search-intro-inner,.mls-results,.calmet-collection,.search-contact{max-width:1600px;margin:auto;padding-left:44px;padding-right:44px}
.search-intro-inner{position:relative;padding-top:28px;padding-bottom:20px;display:grid;grid-template-columns:1fr auto;gap:24px 30px}
.search-heading h1{font-family:var(--serif);font-weight:500;font-size:clamp(48px,4.4vw,64px);line-height:1.08;letter-spacing:-.025em}
.title-mask{display:block;overflow:hidden;padding-bottom:5px}
.title-mask>span{display:block}
.search-heading p{font-size:16px;color:#e0dcd4;margin-top:4px}
.search-origin{align-self:center;display:flex;flex-direction:column;text-align:right;line-height:1.6;font-size:16px}
.search-origin span:first-child{font-family:var(--serif);font-size:26px;color:var(--gold-2)}
.search-origin span:last-child{color:#bdb9b0}
.brokerage-phone{color:var(--gold-2);white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.filters-dialog{position:static;grid-column:1/-1;color:#fff;background:rgba(10,10,10,.85);border:1px solid var(--gold);border-top:2px solid var(--gold);width:100%;max-width:none;margin:0;overflow:visible}
.filters-dialog:not([open]){display:none}
.mls-filters{display:grid;grid-template-columns:2.2fr 1.05fr 1.05fr .85fr .85fr 1.4fr 1fr;align-items:stretch;gap:0}
.filter-field{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-right:1px solid var(--line);min-width:0}
.filter-field label,.sort-field label{font-family:var(--cond);font-size:17px;color:var(--gold-2);line-height:1.4}
.filter-field input,.filter-field select{width:100%;min-width:0;background:transparent;border:0;border-radius:0;color:#fff;padding:5px 0;min-height:32px;outline-offset:2px}
.filter-field input::placeholder{color:#b4b0a6;opacity:1}
.filter-field select option,.sort-field option{background:var(--ink-2);color:#fff}
.search-primary{display:flex;justify-content:center;align-items:center;gap:15px;background:var(--gold);border:0;padding:14px 22px;color:var(--ink);cursor:pointer;transition:background .2s;font-family:var(--cond)!important;font-size:21px!important;font-weight:500}
.search-primary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6}
.search-primary:hover{background:var(--gold-2)}
.search-footnote{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;color:#c4beb2;font-size:16px;line-height:1.5;margin-top:-12px}
.search-footnote a{color:var(--gold-2);text-underline-offset:5px;text-decoration:underline;text-decoration-color:var(--line)}
.filter-panel-head,.mobile-filters{display:none}
.filter-error{grid-column:1/-1;padding:12px;color:var(--gold-2);border-top:1px solid var(--line)}
.mls-results{padding-top:26px;padding-bottom:44px;scroll-margin-top:20px}
.results-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px}
.results-heading h2,.collection-heading h2{font:500 clamp(36px,3vw,44px)/1.1 var(--serif)}
.results-heading p{font-size:16px;color:#c9c5bc;margin-top:7px}
.sort-field{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);padding-bottom:6px}
.sort-field select{background:transparent;border:0;color:#fff;padding:8px 5px;max-width:230px;font-size:16px;cursor:pointer}
.results-end{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0;color:#c9c5bc;font-size:16px}
.search-secondary{border:1px solid var(--gold);color:var(--gold-2);background:transparent;padding:12px 22px;cursor:pointer;min-height:48px}
.search-secondary:hover{background:var(--gold);color:var(--ink)}
.mls-state:not(:empty){padding:32px 0}
.mls-state h3{font:500 36px/1.15 var(--serif);margin-bottom:12px}
.mls-state p{max-width:65ch;margin-bottom:22px}
.idx-support{margin-top:18px!important}
.calmet-collection{border-top:1px solid var(--line);background:var(--ink-2);padding-top:44px;padding-bottom:44px}
.collection-heading{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px;margin-bottom:24px}
.collection-heading p{font-size:16px;color:#c4beb2;max-width:60ch}
.calmet-filter-details{margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:16px}
.calmet-filter-details summary{color:var(--gold-2);cursor:pointer;min-height:44px;font-size:16px}
.calmet-filter-details .adv-filters{margin-top:16px;display:grid;grid-template-columns:repeat(6,1fr) auto;gap:12px;background:transparent;padding:0}
.calmet-filter-details .sf label{color:var(--gold-2);font:17px var(--cond);letter-spacing:0;text-transform:none}
.calmet-filter-details .sf select{background:var(--ink);color:#fff;border:1px solid var(--line);font:16px var(--sans);width:100%;padding:10px}
.calmet-filter-details .sbtn{font:18px var(--cond);letter-spacing:0;text-transform:none}
.calmet-collection .search-count{margin:0 0 20px;font-size:16px;color:#c4beb2}
.calmet-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.calmet-cards .mls-state{grid-column:1/-1}
.calmet-cards .card{background:transparent;box-shadow:none;border:0;border-radius:0}
.calmet-cards .card-body{padding:16px 0;color:#fff}
.calmet-cards .card-city,.calmet-cards .card-meta{color:#d0ccc4}
.calmet-cards .card-addr{color:#fff}
.calmet-cards .card-price{font-size:30px}
.calmet-source{font-size:16px;color:var(--gold-2);margin-bottom:8px}
.search-contact{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding-top:44px;padding-bottom:44px;border-top:1px solid var(--line)}
.search-contact h2{font:500 40px/1.1 var(--serif);max-width:550px}
.search-contact>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;justify-content:center;font-size:16px}
.search-contact a:first-child{color:var(--gold-2);border-bottom:1px solid var(--line)}
.mls-page .footer{padding-bottom:28px}
.search-brokerage{font-size:16px;line-height:1.7;margin:16px 0}
.listing-dialog{position:fixed;inset:0;width:min(1360px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:0;background:var(--ink);color:#fff;border:1px solid var(--line);overflow:auto;overscroll-behavior:contain}
.listing-dialog::backdrop,.filters-dialog::backdrop{background:rgba(0,0,0,.85);backdrop-filter:blur(8px)}
.listing-toolbar{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 28px;background:var(--ink);border-bottom:1px solid var(--line);font-size:16px}
.listing-brokerage{display:flex;align-items:center;flex-wrap:wrap;gap:4px 20px;line-height:1.5}
.listing-brokerage .brokerage-name{font-size:18px}
.toolbar-divider{color:var(--gold);margin:0 12px}
.listing-back{display:flex;align-items:center;gap:24px;background:none;color:var(--gold-2);border:0;cursor:pointer;min-height:44px}
.listing-back>span:last-child{font-size:30px}
.listing-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:30px;padding:28px}
.gallery-wrap{min-width:0}
.gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pan-y;border:1px solid var(--line);cursor:grab;user-select:none;overscroll-behavior-x:contain}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-slide{flex:0 0 100%;aspect-ratio:1.3;scroll-snap-align:center;position:relative}
.gallery-slide img{height:100%;width:100%;object-fit:cover;pointer-events:none}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-top:12px;font-size:16px;color:#c9c5bc;gap:12px}
.gallery-controls button{width:48px;height:44px;background:transparent;border:1px solid var(--line);color:var(--gold-2);cursor:pointer;font-size:24px}
.gallery-controls button:disabled{opacity:.35;cursor:default}
.listing-overview .listing-price{font-size:54px;margin-bottom:14px}
.listing-overview h2{font:500 40px/1.1 var(--serif);margin:8px 0}
.listing-overview .listing-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:18px 0}
.listing-overview .listing-source{margin-top:18px}
.listing-section{padding:0 28px 28px;font-size:16px}
.listing-section h3{font:500 30px/1.2 var(--serif);margin:0 0 12px}
.listing-description{white-space:pre-line;max-width:78ch;color:#e2ded7}
.listing-map{width:100%;height:300px;border:1px solid var(--line);margin-top:16px}
.map-credit{font-size:16px;color:#bbb}
.listing-help{margin:0 28px 28px;padding:24px;background:var(--ink-2);border-top:1px solid var(--gold);display:flex;justify-content:space-between;align-items:center;gap:24px}
.listing-help h3{font:500 28px/1.15 var(--serif);margin-bottom:6px}
.listing-help p{font-size:16px;max-width:65ch;color:#c9c5bc}
.listing-help .search-primary{flex-shrink:0}
.listing-dialog .idx-notice{margin:0 28px 28px}
.listing-loading{padding:40px 28px;min-height:200px;font-size:18px}
@media(max-width:1100px){
  .mls-filters{grid-template-columns:2fr 1fr 1fr 1fr}
  .filter-location{grid-column:span 2}.mls-filters .search-primary{grid-column:4;grid-row:1/span 2}
  .filter-field{border-bottom:1px solid var(--line)}
  .listing-layout{grid-template-columns:1.1fr 1fr}.listing-overview h2{font-size:34px}
}
@media(max-width:760px){
  .search-intro-inner,.mls-results,.calmet-collection,.search-contact{padding-left:20px;padding-right:20px}
  .search-intro-inner{padding-top:24px;padding-bottom:20px;display:block}
  .search-heading h1{font-size:42px;max-width:9em;line-height:1.02}
  .search-heading p{margin:12px 0 22px;max-width:32ch;line-height:1.6}
  .search-origin{flex-direction:row;flex-wrap:wrap;align-items:center;text-align:left;gap:0 14px;margin-bottom:18px}
  .search-origin .brokerage-name{font-size:22px}.search-origin span:last-child{flex-basis:100%}
  .mobile-filters{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--gold);color:var(--ink);padding:14px 18px;border:0;width:100%;min-height:54px;font:21px var(--cond)!important;cursor:pointer}
  .mobile-filters svg{fill:none;stroke:currentColor;stroke-width:1.5;width:22px;height:22px}
  .search-footnote{display:block;margin:14px 0 0;font-size:16px;line-height:1.6}
  .search-footnote a{display:block;margin-top:8px}
  .filters-dialog{position:fixed;inset:0;margin:0 0 0 auto;width:min(100%,480px);height:100dvh;max-height:100dvh;overflow:auto;border:0;border-left:1px solid var(--gold);padding:20px;overscroll-behavior:contain;background:var(--ink)}
  .filter-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
  .filter-panel-head h2{font:500 36px/1 var(--serif)}
  .close-button{background:none;border:1px solid var(--line);width:44px;height:44px;font-size:30px!important;color:var(--gold-2);cursor:pointer}
  .mls-filters{grid-template-columns:1fr 1fr;gap:16px}
  .filter-field{padding:10px 0;border-right:0;border-bottom:1px solid var(--line)}
  .filter-field input,.filter-field select{min-height:40px}
  .filter-location{grid-column:1/-1}.mls-filters .search-primary{grid-column:1/-1;grid-row:auto;min-height:54px;margin-top:10px}
  .results-heading{display:block;margin-bottom:20px}.results-heading h2{font-size:36px}
  .sort-field{margin-top:16px;justify-content:space-between}
  .results-end{display:block}.results-end button{margin-top:18px;width:100%}
  .calmet-collection{padding-top:32px;padding-bottom:32px}.collection-heading{display:block}.collection-heading p{margin-top:12px}
  .calmet-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:22px;padding-bottom:16px}
  .calmet-cards .card{flex:0 0 88%;scroll-snap-align:start;opacity:1;transform:none}
  .calmet-cards .card-img{height:210px}
  .calmet-filter-details .adv-filters{grid-template-columns:1fr 1fr}.calmet-filter-details .sbtn{min-height:46px}
  .search-contact{grid-template-columns:1fr;gap:24px}.search-contact h2{font-size:36px}.search-contact a{overflow-wrap:anywhere;max-width:100%}
  .mls-page .wa-float{margin-right:20px}
  .listing-dialog{width:100%;max-height:100dvh;height:100dvh;border:0}
  .listing-toolbar{padding:8px 16px;min-height:64px}.listing-toolbar>span{font-size:16px;max-width:40%;line-height:1.4}.listing-toolbar>span>span{display:none}
  .listing-brokerage{display:block;max-width:52%}.listing-brokerage .brokerage-name,.listing-brokerage .brokerage-phone{display:block}
  .listing-back{gap:12px;font-size:16px!important}
  .listing-layout{display:block;padding:20px}.listing-overview{padding-top:24px}
  .gallery-slide{aspect-ratio:1.15}.gallery-controls{font-size:16px}
  .listing-overview .listing-price{font-size:48px}.listing-overview h2{font-size:36px}
  .listing-section{padding:0 20px 24px}.listing-help{display:block;margin:0 20px 24px;padding:20px}
  .listing-help .search-primary{margin-top:20px}.listing-dialog .idx-notice{margin:0 20px 24px}
}
@media(prefers-reduced-motion:reduce){.mls-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.listing-photo{clip-path:none!important}}
.calmet-cards .card-meta b{color:#fff}
.calmet-cards .card-meta,.calmet-cards .card-city{font-size:16px;letter-spacing:0;text-transform:none}
.calmet-cards .card-price{font-family:var(--serif)}
.calmet-cards .card:hover{box-shadow:none;transform:none}
