:root{--navy:#0b2a57;--blue:#1462ae;--blue2:#0c4e8c;--red:#dd2f35;--green:#168063;--bg:#f3f5f8;--card:#fff;--line:#d8dee6;--text:#293d50;--muted:#75818d;--shadow:0 8px 28px rgba(25,49,73,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.sales-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 10px rgba(20,45,70,.06)}.sales-header-inner{max-width:1180px;height:82px;margin:auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:14px}.sales-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--navy)}.sales-brand img{width:54px;height:54px;border-radius:12px}.sales-brand strong{display:block;font-size:22px}.sales-brand span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.back-vrd{text-decoration:none;background:#eef4fb;color:var(--blue2);font-weight:800;padding:11px 14px;border-radius:8px}.sales-page{max-width:1180px;margin:auto;padding:20px 14px 60px}.search-card{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);overflow:hidden}.search-title{background:linear-gradient(100deg,#0a3b75,#176bc2);padding:17px 19px;color:#fff}.search-title h1{font-size:24px;margin:0}.search-title p{font-size:12px;margin:4px 0 0;opacity:.86}.search-grid{padding:14px 16px 8px;display:grid;grid-template-columns:1.4fr 1fr 1fr .75fr .75fr .9fr .9fr;gap:10px}.field label{display:block;font-size:10px;font-weight:900;color:#667483;text-transform:uppercase;margin:0 0 6px}.field input,.field select{width:100%;height:42px;border:1px solid #cfd6df;border-radius:7px;background:#fff;padding:0 11px;color:var(--text);outline:none}.field input:focus,.field select:focus{border-color:#6a9fd1;box-shadow:0 0 0 2px #e7f1fb}.field select:disabled{background:#f2f4f6;color:#a4abb3}.wide{grid-column:1/-1}.search-button{grid-column:1/-1;height:44px;border:0;border-radius:7px;background:var(--red);color:#fff;font-weight:900;font-size:16px}.search-actions{padding:8px 16px 13px;display:flex;align-items:center;gap:10px}.search-actions button{border:0;background:none;color:var(--blue2);font-weight:900;padding:0}.search-actions i{font-style:normal;color:#8b96a0}.search-actions span{display:inline-grid;place-items:center;background:var(--blue);color:#fff;width:27px;height:27px;border-radius:99px;margin-left:5px;font-size:11px}.advanced-panel{border-top:1px solid #edf0f4;padding:13px 16px 16px;background:#fafbfd}.advanced-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.results-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:23px 0 10px}.results-head h2{margin:0;font-size:22px}.results-head span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.results-head label{font-size:12px;color:var(--muted)}.results-head select{height:38px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 10px;color:var(--text)}.catalog{display:grid;gap:12px}.loading,.empty{background:#fff;border:1px dashed #cbd3dc;border-radius:9px;padding:45px;text-align:center;color:var(--muted)}.listing{background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 4px 14px rgba(25,49,73,.07);display:grid;grid-template-columns:390px 1fr 215px;min-height:285px;overflow:hidden}.listing-media{position:relative;min-height:285px;background:#dfe5eb;overflow:hidden}.listing-scroller{position:absolute;inset:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.listing-scroller::-webkit-scrollbar,.gallery-scroller::-webkit-scrollbar{display:none}.listing-slide{position:relative;flex:0 0 100%;width:100%;height:100%;display:grid;place-items:center;scroll-snap-align:start;overflow:hidden;cursor:pointer}.media-blur{position:absolute;inset:-22px;background-size:cover;background-position:center;filter:blur(20px);opacity:.32;transform:scale(1.12)}.listing-slide img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain}.listing-slide.video-slide{background:#111}.listing-video-poster{position:absolute;inset:0;background-position:center;background-size:contain;background-repeat:no-repeat;filter:brightness(.62)}.video-play{position:relative;z-index:2;border:2px solid #fff;background:rgba(0,0,0,.55);color:#fff;border-radius:999px;width:64px;height:64px;font-size:26px}.video-label{position:absolute;z-index:2;bottom:18px;color:#fff;font-size:11px;font-weight:900;background:rgba(0,0,0,.55);padding:6px 9px;border-radius:99px}.status-pill{position:absolute;z-index:4;left:10px;top:10px;padding:7px 9px;border-radius:6px;font-size:10px;font-weight:900}.status-available{background:#e3f7ef;color:#107354}.status-reserved{background:#fff3d4;color:#826000}.status-sold{background:#e9edf1;color:#5f6d79}.media-count{position:absolute;z-index:4;right:8px;bottom:8px;background:rgba(0,0,0,.7);color:#fff;border-radius:5px;padding:6px 8px;font-size:10px;font-weight:900}.listing-nav,.gallery-nav{position:absolute;z-index:5;top:50%;transform:translateY(-50%);border:0;background:rgba(0,0,0,.48);color:#fff;font-size:29px;width:39px;height:58px}.listing-prev,.gallery-prev{left:0}.listing-next,.gallery-next{right:0}.listing-main{padding:17px 18px;border-right:1px solid #edf0f4}.listing-main h3{margin:0;color:#235780;font-size:22px}.listing-code{font-size:10px;color:#89939d;margin:5px 0 10px}.video-badge{display:inline-flex;margin-left:7px;padding:3px 7px;border-radius:99px;background:#eef4fb;color:#245b91;font-weight:900}.quick{display:flex;flex-wrap:wrap;gap:0}.quick span{font-size:12px;color:#536373;padding-right:10px;margin-right:10px;border-right:1px solid #dfe4e8}.quick span:last-child{border:0}.listing-desc{font-size:12px;line-height:1.5;color:#76828e;margin:12px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.listing-side{padding:16px;display:flex;flex-direction:column;text-align:right;align-items:flex-end}.listing-price{font-size:25px;font-weight:900;color:var(--red)}.listing-side small{font-size:10px;color:#89939d;margin-top:3px}.listing-actions{margin-top:auto;width:100%;display:grid;gap:7px}.listing-actions button{height:38px;border:0;border-radius:6px;font-weight:900}.view-btn{background:var(--blue);color:#fff}.wa-btn{background:#e5f6f0;color:#11755b}.fav-btn{background:#fff;border:1px solid #d7dde4!important;color:#5e6f7f}.detail-modal{position:fixed;inset:0;z-index:60;background:rgba(10,24,39,.68);display:none;place-items:center;padding:14px}.detail-modal.show{display:grid}.detail-shell{width:min(1080px,98vw);max-height:95vh;overflow:auto;background:#fff;border-radius:10px;box-shadow:0 28px 90px rgba(0,0,0,.3)}.detail-head{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 15px}.detail-head strong{font-size:18px;color:var(--navy)}.detail-head button{border:0;background:#eef3f7;border-radius:7px;padding:10px 14px;font-weight:900}.detail-body{padding:15px}.detail-top{display:grid;grid-template-columns:1.4fr .8fr;gap:14px}.gallery-box{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#e7ebef}.gallery-stage{height:480px;position:relative;overflow:hidden}.gallery-scroller{position:absolute;inset:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth}.gallery-slide{position:relative;flex:0 0 100%;width:100%;height:100%;display:grid;place-items:center;scroll-snap-align:start;overflow:hidden}.gallery-slide img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain}.gallery-slide video{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;background:#000}.gallery-count{position:absolute;z-index:5;right:10px;top:10px;background:rgba(0,0,0,.7);color:#fff;border-radius:5px;padding:6px 9px;font-size:11px;font-weight:900}.gallery-hint{position:absolute;z-index:4;left:50%;bottom:9px;transform:translateX(-50%);background:rgba(0,0,0,.52);color:#fff;border-radius:99px;padding:5px 9px;font-size:10px;font-weight:900}.thumbs{display:flex;gap:6px;overflow:auto;padding:8px;background:#fff}.thumb{position:relative;width:78px;height:58px;flex:0 0 auto;border:2px solid transparent;border-radius:5px;overflow:hidden;padding:0;background:#eee}.thumb.active{border-color:var(--blue)}.thumb img,.thumb video{width:100%;height:100%;object-fit:cover}.thumb.video:after{content:'▶';position:absolute;right:5px;bottom:4px;background:rgba(0,0,0,.72);color:#fff;width:19px;height:19px;border-radius:99px;display:grid;place-items:center;font-size:10px}.detail-summary{border:1px solid var(--line);border-radius:8px;overflow:hidden}.detail-summary h1{font-size:27px;margin:0;padding:16px 15px 5px;color:#243d53}.detail-price{padding:0 15px 15px;color:var(--red);font-size:31px;font-weight:900}.favorite-wide{margin:0 15px 14px;width:calc(100% - 30px);height:44px;border:0;border-radius:7px;background:#e8f0f8;color:#1b5f9e;font-weight:900}.finance{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f8f9fa;padding:14px 15px}.finance b{display:block;color:#1e5c94;font-size:17px}.finance span{display:block;color:#7a8691;font-size:12px;margin-top:7px}.detail-ctas{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 15px}.detail-ctas button{height:45px;border:0;border-radius:7px;font-weight:900}.general{margin-top:14px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.general h3{margin:0;padding:12px 14px;background:#edf3f7;color:#294760;font-size:17px}.general-grid{display:grid;grid-template-columns:repeat(3,1fr)}.general-row{padding:13px 14px;border-right:1px solid #edf0f3;border-bottom:1px solid #edf0f3}.general-row span{display:block;color:#89949e;text-transform:uppercase;font-size:9px;font-weight:900}.general-row b{display:block;color:#344d62;font-size:14px;margin-top:4px}.description{padding:15px;color:#647485;font-size:13px;line-height:1.6}.description strong{display:block;color:#263f55;text-transform:uppercase;font-size:13px;margin-bottom:9px}.views{padding:0 15px 17px;color:#52677a;font-size:13px}.views b{color:#263f55}.toast{position:fixed;left:50%;bottom:22px;z-index:100;transform:translate(-50%,120px);opacity:0;transition:.2s;background:#172d42;color:#fff;padding:10px 14px;border-radius:8px;font-size:12px}.toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:920px){.advanced-grid{grid-template-columns:repeat(3,1fr)}.listing{grid-template-columns:235px 1fr 175px;min-height:205px}.listing-media{min-height:205px}.detail-top{grid-template-columns:1fr}.gallery-stage{height:430px}}
@media(max-width:680px){.sales-header-inner{height:104px;padding:0 15px}.sales-brand img{width:52px;height:52px}.sales-brand strong{font-size:20px}.sales-brand span{font-size:11px}.back-vrd{font-size:11px;padding:10px}.sales-page{padding:10px 8px 45px}.search-title{padding:14px 15px}.search-title h1{font-size:20px}.search-grid{grid-template-columns:1fr 1fr;padding:12px 12px 6px;gap:9px}.wide,.search-button{grid-column:1/-1}.advanced-grid{grid-template-columns:1fr 1fr}.results-head{align-items:flex-end}.results-head h2{font-size:20px}.results-head label{max-width:52%;text-align:right}.results-head select{max-width:100%}.listing{grid-template-columns:1fr}.listing-media{height:390px;min-height:390px}.listing-main{border-right:0;border-bottom:1px solid #edf0f4;padding:14px 15px}.listing-main h3{font-size:22px}.listing-side{display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;padding:13px 15px}.listing-price{font-size:26px}.listing-side small{display:none}.listing-actions{grid-column:1/-1;grid-template-columns:1fr 1fr 47px;margin-top:8px}.fav-btn{font-size:0}.fav-btn:after{content:'♡';font-size:21px}.detail-modal{padding:0}.detail-shell{width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.detail-body{padding:8px}.gallery-stage{height:500px}.detail-summary h1{font-size:24px}.detail-price{font-size:28px}.general-grid{grid-template-columns:1fr 1fr}}

/* Desktop-only support elements. Mobile remains on the approved layout. */
.desktop-nav,.desktop-back-label,.desktop-close,.desktop-specs,
.desktop-badges,.desktop-description,.desktop-views{display:none}
.mobile-access-label,.mobile-detail-label,.mobile-close{display:inline}
.listing-fit,.gallery-fit{display:none}

/* v2.8.6: media renderer compatible with strict CSP.
   Image URLs live in <img src>, never in blocked inline style attributes. */
.listing-slide>.media-blur,.gallery-slide>.media-blur{
  position:absolute;inset:-22px;z-index:0;
  width:calc(100% + 44px);height:calc(100% + 44px);
  object-fit:cover;filter:blur(20px);opacity:.28;
  transform:scale(1.08);pointer-events:none
}
.listing-slide>.listing-source,.gallery-slide>.gallery-source{
  position:absolute;inset:0;z-index:1;display:block;
  width:100%;height:100%;max-width:100%;max-height:100%;
  object-fit:contain;object-position:center center
}
.listing-slide>.listing-video-poster{
  position:absolute;inset:0;z-index:1;width:100%;height:100%;
  object-fit:contain;filter:brightness(.62);pointer-events:none
}
.empty-media{background:#e8edf2}

/* ============================================================
   VRD PRO v2.8.6 — DESKTOP CSP-SAFE IMAGE RENDERER
   One desktop breakpoint architecture; no duplicated media blocks.
   ============================================================ */
@media (min-width:921px){
  body{background:#f4f6f9}

  /* Header */
  .sales-header{
    position:sticky;top:0;z-index:30;background:#fff;
    border-bottom:1px solid #e3e8ee;
    box-shadow:0 2px 14px rgba(22,44,68,.05)
  }
  .sales-header-inner{
    max-width:1280px;height:74px;padding:0 22px;
    display:grid;
    grid-template-columns:minmax(330px,380px) minmax(260px,1fr) 150px;
    align-items:center;gap:18px
  }
  .sales-brand{min-width:0;overflow:visible}
  .sales-brand img{width:46px;height:46px;border-radius:11px}
  .sales-brand>div{min-width:0}
  .sales-brand strong{
    display:block;white-space:nowrap;overflow:visible;
    text-overflow:clip;font-size:20px;letter-spacing:-.2px
  }
  .sales-brand span{white-space:nowrap;font-size:10px}
  .desktop-nav{
    display:flex;align-items:center;justify-content:center;gap:8px
  }
  .desktop-nav a{
    text-decoration:none;color:#526475;font-size:12px;font-weight:800;
    padding:10px 12px;border-radius:8px
  }
  .desktop-nav a:hover{background:#f1f5f9;color:var(--blue)}
  .desktop-nav a.active{
    color:var(--blue);background:#edf5fd;
    box-shadow:inset 0 -2px 0 var(--blue)
  }
  .back-vrd{
    padding:10px 14px;border-radius:8px;background:#10243c;
    color:#fff;font-size:12px;white-space:nowrap;text-align:center
  }
  .mobile-access-label{display:none}
  .desktop-back-label{display:inline}

  /* Page/search */
  .sales-page{max-width:1280px;padding:18px 22px 70px}
  .search-card,.results-head,.catalog{
    width:min(1180px,100%);max-width:1180px;
    margin-left:auto;margin-right:auto
  }
  .search-card{
    background:#fff;border:1px solid #e0e6ec;border-radius:12px;
    box-shadow:0 7px 24px rgba(25,49,73,.06);overflow:visible
  }
  .search-title{display:none}
  .search-grid{
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;align-items:end;padding:13px
  }
  .search-grid .wide{grid-column:span 2}
  .field label{font-size:9px;margin-bottom:5px;color:#7b8793}
  .field input,.field select{
    height:38px;border-radius:7px;border-color:#dce2e8;
    font-size:12px;background:#fff
  }
  .search-button{
    grid-column:4;height:38px;border-radius:7px;
    background:#d92f35;font-size:12px;letter-spacing:.2px
  }
  .search-actions{
    padding:0 14px 11px;justify-content:flex-start;font-size:11px
  }
  .search-actions span{width:23px;height:23px}
  .advanced-panel{border-top:1px solid #eef1f4;padding:12px 14px 14px}
  .advanced-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}

  .results-head{margin-top:21px;margin-bottom:11px}
  .results-head h2{font-size:18px;color:#30465a}
  .results-head span,.results-head label{font-size:11px}
  .results-head select{height:35px;font-size:11px}

  /* Catalog */
  .catalog{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(285px,300px));
    justify-content:center;align-items:start;gap:18px
  }
  .catalog.single-result{grid-template-columns:minmax(0,440px)}
  .catalog.few-results{
    grid-template-columns:repeat(auto-fit,minmax(320px,360px))
  }
  .loading,.empty{grid-column:1/-1}

  .listing{
    width:100%;min-width:0;min-height:0;overflow:hidden;
    display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto;
    border:1px solid #dfe5eb;border-radius:12px;background:#fff;
    box-shadow:0 5px 18px rgba(25,49,73,.07);
    transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease
  }
  .listing:hover{
    transform:translateY(-2px);border-color:#c5d0db;
    box-shadow:0 12px 28px rgba(25,49,73,.12)
  }

  /* Critical fix:
     Desktop image is rendered by a background-size:contain layer.
     The source <img> is NOT used visually on PC. */
  .listing-media{
    width:100%;min-height:0;aspect-ratio:4/3;
    position:relative;background:#e5eaef;overflow:hidden
  }
  .listing-scroller{position:absolute;inset:0;height:100%}
  .listing-slide{
    position:relative;flex:0 0 100%;width:100%;height:100%;
    overflow:hidden;cursor:pointer
  }
  .listing-slide>.media-blur{
    position:absolute;inset:-24px;z-index:0;
    width:calc(100% + 48px);height:calc(100% + 48px);
    object-fit:cover;filter:blur(20px);opacity:.25;transform:scale(1.08)
  }
  .listing-fit{display:none}
  .listing-slide>.listing-source{
    position:absolute!important;inset:0!important;z-index:1;display:block!important;
    width:100%!important;height:100%!important;
    max-width:100%!important;max-height:100%!important;
    object-fit:contain!important;opacity:1!important;pointer-events:none!important
  }
  .listing-nav{width:34px;height:48px;font-size:24px;opacity:.78}
  .status-pill{left:10px;top:10px;padding:6px 8px;font-size:9px}
  .media-count{right:9px;bottom:9px;padding:5px 7px;font-size:9px}

  .listing-main{padding:13px 13px 9px;border:0;min-width:0}
  .listing-main h3{
    margin:0;color:#263e54;font-size:18px;line-height:1.15;min-height:0
  }
  .listing-code{font-size:9px;margin:5px 0 9px}
  .video-badge{font-size:8px;margin-left:5px;padding:2px 5px}
  .quick{display:flex;flex-wrap:wrap;gap:4px 0}
  .quick span{
    font-size:10px;color:#6b7885;padding-right:7px;margin-right:7px
  }
  .listing-desc{display:none}

  .listing-side{
    min-width:0;padding:0 13px 13px;border:0;
    align-items:stretch;text-align:left;background:#fff
  }
  .listing-price{
    margin:0 0 10px;color:#1162be;font-size:23px;
    white-space:nowrap;letter-spacing:-.2px
  }
  .listing-side small{display:none}
  .listing-actions{
    margin:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(74px,.72fr);gap:6px
  }
  .listing-actions button{width:100%;min-width:0;height:36px;padding:0 8px;border-radius:7px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .fav-btn{font-size:10px}
  .fav-btn:after{content:none}

  /* Detail */
  .detail-modal{
    position:fixed;inset:0;z-index:60;display:none;place-items:center;
    padding:20px;background:rgba(14,29,45,.72);overflow:hidden
  }
  .detail-modal.show{display:grid}
  .detail-shell{
    width:min(1140px,calc(100vw - 56px));
    max-height:min(820px,calc(100vh - 36px));
    margin:0;overflow:auto;background:#fff;border-radius:14px;
    box-shadow:0 30px 90px rgba(0,0,0,.32)
  }
  .detail-head{
    position:sticky;top:0;z-index:20;min-height:52px;padding:10px 16px;
    background:rgba(255,255,255,.98);border-bottom:1px solid #e4e9ee
  }
  .mobile-detail-label,.mobile-close{display:none}
  .desktop-back-label,.desktop-close{display:inline}
  .detail-head strong{font-size:13px;color:#34485b}
  .detail-head button{
    width:36px;height:36px;padding:0;border-radius:999px;
    font-size:22px;background:#f1f4f7;color:#293b4d
  }
  .detail-body{padding:14px 16px 17px}
  .detail-top{
    display:grid;grid-template-columns:minmax(0,760px) 330px;
    gap:18px;align-items:start;justify-content:center
  }

  .gallery-box{
    min-width:0;border:1px solid #dfe5eb;border-radius:12px;
    background:#fff;overflow:hidden
  }
  .gallery-stage{
    position:relative;width:100%;
    height:min(620px,calc(100vh - 190px));
    min-height:440px;max-height:620px;
    background:#e8edf2;overflow:hidden
  }
  .gallery-scroller{position:absolute;inset:0;width:100%;height:100%}
  .gallery-slide{
    position:relative;flex:0 0 100%;width:100%;height:100%;
    overflow:hidden;background:#e8edf2
  }
  .gallery-slide>.media-blur{display:none}
  .gallery-fit{display:none}
  .gallery-slide>.gallery-source{
    position:absolute!important;inset:0!important;z-index:1;display:block!important;
    width:100%!important;height:100%!important;
    max-width:100%!important;max-height:100%!important;
    object-fit:contain!important;object-position:center center!important;
    opacity:1!important;pointer-events:none!important
  }
  .gallery-slide video{width:100%;height:100%;object-fit:contain}
  .gallery-count{top:10px;right:10px;font-size:10px;padding:5px 8px}
  .gallery-nav{width:40px;height:54px;font-size:28px}
  .gallery-hint{display:none}
  .thumbs{
    min-height:72px;padding:8px;gap:6px;
    overflow-x:auto;overflow-y:hidden;align-items:center
  }
  .thumb{width:82px;height:60px;border-radius:6px}

  .detail-summary{
    position:sticky;top:64px;align-self:start;
    border:1px solid #dfe5eb;border-radius:12px;background:#fff;
    overflow:visible
  }
  .detail-summary h1{
    display:block;visibility:visible;opacity:1;
    margin:0;padding:15px 15px 7px;
    font-size:24px;line-height:1.15;color:#21394f
  }
  .desktop-badges{
    display:flex;gap:6px;flex-wrap:wrap;padding:0 15px 8px
  }
  .desktop-badges span{
    padding:4px 8px;border-radius:999px;font-size:8px;font-weight:900;
    text-transform:uppercase
  }
  .desktop-badges .vehicle-condition{background:#edf4ff;color:#1764b3}
  .desktop-badges .vehicle-status{background:#e5f6ef;color:#117354}
  .detail-price{
    padding:0 15px 13px;color:#1162be;font-size:30px;white-space:nowrap
  }
  .desktop-specs{
    display:grid;grid-template-columns:1fr 1fr;
    margin:0 15px 10px;border-top:1px solid #edf0f3;
    border-bottom:1px solid #edf0f3
  }
  .desktop-spec{min-width:0;padding:9px 8px 9px 0}
  .desktop-spec:nth-child(even){
    padding-left:10px;border-left:1px solid #edf0f3
  }
  .desktop-spec span{
    display:block;font-size:8px;color:#8b96a1;
    text-transform:uppercase;font-weight:800
  }
  .desktop-spec b{
    display:block;margin-top:3px;font-size:11px;color:#34495d;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis
  }
  .favorite-wide{
    margin:0 15px 9px;width:calc(100% - 30px);height:38px;
    border:1px solid #d5dce3;background:#fff;color:#41576c
  }
  .finance{
    margin:0 15px 10px;padding:9px 10px;
    border:1px solid #e5eaf0;border-radius:8px;background:#f7f9fb
  }
  .finance b{font-size:11px;margin:0 0 2px}
  .finance span{font-size:9px}
  .detail-ctas{
    display:grid;grid-template-columns:1fr;gap:7px;padding:0 15px 12px
  }
  .detail-ctas button{height:40px}
  .detail-ctas .view-btn{background:#22a447}
  .detail-ctas .wa-btn{background:#eef3f7;color:#41576c}
  .desktop-description{
    display:block;margin:0 15px 10px;padding-top:2px;
    color:#6c7985;font-size:10px;line-height:1.45
  }
  .desktop-description b{
    display:block;color:#34495d;font-size:9px;
    text-transform:uppercase;margin-bottom:3px
  }
  .desktop-views{
    display:block;padding:0 15px 13px;color:#82909c;font-size:9px
  }
  .general{display:none}
}

@media (min-width:921px) and (max-width:1199px){
  .sales-header-inner{
    grid-template-columns:minmax(300px,340px) 1fr 138px
  }
  .sales-page{padding-left:14px;padding-right:14px}
  .catalog{
    grid-template-columns:repeat(auto-fit,minmax(280px,310px))
  }
  .catalog.single-result{grid-template-columns:minmax(0,410px)}
  .search-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));padding:12px
  }
  .search-grid .wide{grid-column:span 2}
  .search-button{grid-column:4}
  .detail-shell{width:calc(100vw - 26px)}
  .detail-top{grid-template-columns:minmax(0,1fr) 300px;gap:13px}
  .gallery-stage{
    height:min(540px,calc(100vh - 190px));
    min-height:390px;max-height:540px
  }
  .detail-summary h1{font-size:22px}
  .detail-price{font-size:26px}
}

@media (min-width:1200px){
  .search-grid{
    grid-template-columns:minmax(190px,1.45fr) minmax(120px,.8fr) minmax(130px,.85fr) 94px 94px 116px 116px 118px;
    gap:8px
  }
  .search-grid .wide{grid-column:auto}
  .search-button{grid-column:auto}
}


/* v2.8.8 — Ajuste de portada CSP-safe. No usa estilos inline. */
.cover-preview-img,.listing-source{transition:transform .12s ease,object-position .12s ease}
.cover-preview.has-image{cursor:grab;touch-action:none}.cover-preview.dragging{cursor:grabbing}.cover-preview-img[hidden]{display:none!important}
.cover-drag-hint{display:none;position:absolute;z-index:4;left:50%;bottom:7px;transform:translateX(-50%);background:rgba(11,42,87,.78);color:#fff;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:900;pointer-events:none;white-space:nowrap}.cover-preview.has-image .cover-drag-hint{display:block}
.cover-controls label{grid-template-columns:1fr!important;gap:5px!important}.cover-controls label>span{display:flex;align-items:center;justify-content:space-between;gap:8px}.cover-controls output{font-size:10px;color:#1c5d97;font-weight:900}.cover-help{margin:2px 0 0;color:#73808c;font-size:10px;line-height:1.45}.cover-help b{color:#1c5d97}
.cover-pos-0-0{object-position:0% 0%;transform-origin:0% 0%}
.cover-pos-0-5{object-position:0% 5%;transform-origin:0% 5%}
.cover-pos-0-10{object-position:0% 10%;transform-origin:0% 10%}
.cover-pos-0-15{object-position:0% 15%;transform-origin:0% 15%}
.cover-pos-0-20{object-position:0% 20%;transform-origin:0% 20%}
.cover-pos-0-25{object-position:0% 25%;transform-origin:0% 25%}
.cover-pos-0-30{object-position:0% 30%;transform-origin:0% 30%}
.cover-pos-0-35{object-position:0% 35%;transform-origin:0% 35%}
.cover-pos-0-40{object-position:0% 40%;transform-origin:0% 40%}
.cover-pos-0-45{object-position:0% 45%;transform-origin:0% 45%}
.cover-pos-0-50{object-position:0% 50%;transform-origin:0% 50%}
.cover-pos-0-55{object-position:0% 55%;transform-origin:0% 55%}
.cover-pos-0-60{object-position:0% 60%;transform-origin:0% 60%}
.cover-pos-0-65{object-position:0% 65%;transform-origin:0% 65%}
.cover-pos-0-70{object-position:0% 70%;transform-origin:0% 70%}
.cover-pos-0-75{object-position:0% 75%;transform-origin:0% 75%}
.cover-pos-0-80{object-position:0% 80%;transform-origin:0% 80%}
.cover-pos-0-85{object-position:0% 85%;transform-origin:0% 85%}
.cover-pos-0-90{object-position:0% 90%;transform-origin:0% 90%}
.cover-pos-0-95{object-position:0% 95%;transform-origin:0% 95%}
.cover-pos-0-100{object-position:0% 100%;transform-origin:0% 100%}
.cover-pos-5-0{object-position:5% 0%;transform-origin:5% 0%}
.cover-pos-5-5{object-position:5% 5%;transform-origin:5% 5%}
.cover-pos-5-10{object-position:5% 10%;transform-origin:5% 10%}
.cover-pos-5-15{object-position:5% 15%;transform-origin:5% 15%}
.cover-pos-5-20{object-position:5% 20%;transform-origin:5% 20%}
.cover-pos-5-25{object-position:5% 25%;transform-origin:5% 25%}
.cover-pos-5-30{object-position:5% 30%;transform-origin:5% 30%}
.cover-pos-5-35{object-position:5% 35%;transform-origin:5% 35%}
.cover-pos-5-40{object-position:5% 40%;transform-origin:5% 40%}
.cover-pos-5-45{object-position:5% 45%;transform-origin:5% 45%}
.cover-pos-5-50{object-position:5% 50%;transform-origin:5% 50%}
.cover-pos-5-55{object-position:5% 55%;transform-origin:5% 55%}
.cover-pos-5-60{object-position:5% 60%;transform-origin:5% 60%}
.cover-pos-5-65{object-position:5% 65%;transform-origin:5% 65%}
.cover-pos-5-70{object-position:5% 70%;transform-origin:5% 70%}
.cover-pos-5-75{object-position:5% 75%;transform-origin:5% 75%}
.cover-pos-5-80{object-position:5% 80%;transform-origin:5% 80%}
.cover-pos-5-85{object-position:5% 85%;transform-origin:5% 85%}
.cover-pos-5-90{object-position:5% 90%;transform-origin:5% 90%}
.cover-pos-5-95{object-position:5% 95%;transform-origin:5% 95%}
.cover-pos-5-100{object-position:5% 100%;transform-origin:5% 100%}
.cover-pos-10-0{object-position:10% 0%;transform-origin:10% 0%}
.cover-pos-10-5{object-position:10% 5%;transform-origin:10% 5%}
.cover-pos-10-10{object-position:10% 10%;transform-origin:10% 10%}
.cover-pos-10-15{object-position:10% 15%;transform-origin:10% 15%}
.cover-pos-10-20{object-position:10% 20%;transform-origin:10% 20%}
.cover-pos-10-25{object-position:10% 25%;transform-origin:10% 25%}
.cover-pos-10-30{object-position:10% 30%;transform-origin:10% 30%}
.cover-pos-10-35{object-position:10% 35%;transform-origin:10% 35%}
.cover-pos-10-40{object-position:10% 40%;transform-origin:10% 40%}
.cover-pos-10-45{object-position:10% 45%;transform-origin:10% 45%}
.cover-pos-10-50{object-position:10% 50%;transform-origin:10% 50%}
.cover-pos-10-55{object-position:10% 55%;transform-origin:10% 55%}
.cover-pos-10-60{object-position:10% 60%;transform-origin:10% 60%}
.cover-pos-10-65{object-position:10% 65%;transform-origin:10% 65%}
.cover-pos-10-70{object-position:10% 70%;transform-origin:10% 70%}
.cover-pos-10-75{object-position:10% 75%;transform-origin:10% 75%}
.cover-pos-10-80{object-position:10% 80%;transform-origin:10% 80%}
.cover-pos-10-85{object-position:10% 85%;transform-origin:10% 85%}
.cover-pos-10-90{object-position:10% 90%;transform-origin:10% 90%}
.cover-pos-10-95{object-position:10% 95%;transform-origin:10% 95%}
.cover-pos-10-100{object-position:10% 100%;transform-origin:10% 100%}
.cover-pos-15-0{object-position:15% 0%;transform-origin:15% 0%}
.cover-pos-15-5{object-position:15% 5%;transform-origin:15% 5%}
.cover-pos-15-10{object-position:15% 10%;transform-origin:15% 10%}
.cover-pos-15-15{object-position:15% 15%;transform-origin:15% 15%}
.cover-pos-15-20{object-position:15% 20%;transform-origin:15% 20%}
.cover-pos-15-25{object-position:15% 25%;transform-origin:15% 25%}
.cover-pos-15-30{object-position:15% 30%;transform-origin:15% 30%}
.cover-pos-15-35{object-position:15% 35%;transform-origin:15% 35%}
.cover-pos-15-40{object-position:15% 40%;transform-origin:15% 40%}
.cover-pos-15-45{object-position:15% 45%;transform-origin:15% 45%}
.cover-pos-15-50{object-position:15% 50%;transform-origin:15% 50%}
.cover-pos-15-55{object-position:15% 55%;transform-origin:15% 55%}
.cover-pos-15-60{object-position:15% 60%;transform-origin:15% 60%}
.cover-pos-15-65{object-position:15% 65%;transform-origin:15% 65%}
.cover-pos-15-70{object-position:15% 70%;transform-origin:15% 70%}
.cover-pos-15-75{object-position:15% 75%;transform-origin:15% 75%}
.cover-pos-15-80{object-position:15% 80%;transform-origin:15% 80%}
.cover-pos-15-85{object-position:15% 85%;transform-origin:15% 85%}
.cover-pos-15-90{object-position:15% 90%;transform-origin:15% 90%}
.cover-pos-15-95{object-position:15% 95%;transform-origin:15% 95%}
.cover-pos-15-100{object-position:15% 100%;transform-origin:15% 100%}
.cover-pos-20-0{object-position:20% 0%;transform-origin:20% 0%}
.cover-pos-20-5{object-position:20% 5%;transform-origin:20% 5%}
.cover-pos-20-10{object-position:20% 10%;transform-origin:20% 10%}
.cover-pos-20-15{object-position:20% 15%;transform-origin:20% 15%}
.cover-pos-20-20{object-position:20% 20%;transform-origin:20% 20%}
.cover-pos-20-25{object-position:20% 25%;transform-origin:20% 25%}
.cover-pos-20-30{object-position:20% 30%;transform-origin:20% 30%}
.cover-pos-20-35{object-position:20% 35%;transform-origin:20% 35%}
.cover-pos-20-40{object-position:20% 40%;transform-origin:20% 40%}
.cover-pos-20-45{object-position:20% 45%;transform-origin:20% 45%}
.cover-pos-20-50{object-position:20% 50%;transform-origin:20% 50%}
.cover-pos-20-55{object-position:20% 55%;transform-origin:20% 55%}
.cover-pos-20-60{object-position:20% 60%;transform-origin:20% 60%}
.cover-pos-20-65{object-position:20% 65%;transform-origin:20% 65%}
.cover-pos-20-70{object-position:20% 70%;transform-origin:20% 70%}
.cover-pos-20-75{object-position:20% 75%;transform-origin:20% 75%}
.cover-pos-20-80{object-position:20% 80%;transform-origin:20% 80%}
.cover-pos-20-85{object-position:20% 85%;transform-origin:20% 85%}
.cover-pos-20-90{object-position:20% 90%;transform-origin:20% 90%}
.cover-pos-20-95{object-position:20% 95%;transform-origin:20% 95%}
.cover-pos-20-100{object-position:20% 100%;transform-origin:20% 100%}
.cover-pos-25-0{object-position:25% 0%;transform-origin:25% 0%}
.cover-pos-25-5{object-position:25% 5%;transform-origin:25% 5%}
.cover-pos-25-10{object-position:25% 10%;transform-origin:25% 10%}
.cover-pos-25-15{object-position:25% 15%;transform-origin:25% 15%}
.cover-pos-25-20{object-position:25% 20%;transform-origin:25% 20%}
.cover-pos-25-25{object-position:25% 25%;transform-origin:25% 25%}
.cover-pos-25-30{object-position:25% 30%;transform-origin:25% 30%}
.cover-pos-25-35{object-position:25% 35%;transform-origin:25% 35%}
.cover-pos-25-40{object-position:25% 40%;transform-origin:25% 40%}
.cover-pos-25-45{object-position:25% 45%;transform-origin:25% 45%}
.cover-pos-25-50{object-position:25% 50%;transform-origin:25% 50%}
.cover-pos-25-55{object-position:25% 55%;transform-origin:25% 55%}
.cover-pos-25-60{object-position:25% 60%;transform-origin:25% 60%}
.cover-pos-25-65{object-position:25% 65%;transform-origin:25% 65%}
.cover-pos-25-70{object-position:25% 70%;transform-origin:25% 70%}
.cover-pos-25-75{object-position:25% 75%;transform-origin:25% 75%}
.cover-pos-25-80{object-position:25% 80%;transform-origin:25% 80%}
.cover-pos-25-85{object-position:25% 85%;transform-origin:25% 85%}
.cover-pos-25-90{object-position:25% 90%;transform-origin:25% 90%}
.cover-pos-25-95{object-position:25% 95%;transform-origin:25% 95%}
.cover-pos-25-100{object-position:25% 100%;transform-origin:25% 100%}
.cover-pos-30-0{object-position:30% 0%;transform-origin:30% 0%}
.cover-pos-30-5{object-position:30% 5%;transform-origin:30% 5%}
.cover-pos-30-10{object-position:30% 10%;transform-origin:30% 10%}
.cover-pos-30-15{object-position:30% 15%;transform-origin:30% 15%}
.cover-pos-30-20{object-position:30% 20%;transform-origin:30% 20%}
.cover-pos-30-25{object-position:30% 25%;transform-origin:30% 25%}
.cover-pos-30-30{object-position:30% 30%;transform-origin:30% 30%}
.cover-pos-30-35{object-position:30% 35%;transform-origin:30% 35%}
.cover-pos-30-40{object-position:30% 40%;transform-origin:30% 40%}
.cover-pos-30-45{object-position:30% 45%;transform-origin:30% 45%}
.cover-pos-30-50{object-position:30% 50%;transform-origin:30% 50%}
.cover-pos-30-55{object-position:30% 55%;transform-origin:30% 55%}
.cover-pos-30-60{object-position:30% 60%;transform-origin:30% 60%}
.cover-pos-30-65{object-position:30% 65%;transform-origin:30% 65%}
.cover-pos-30-70{object-position:30% 70%;transform-origin:30% 70%}
.cover-pos-30-75{object-position:30% 75%;transform-origin:30% 75%}
.cover-pos-30-80{object-position:30% 80%;transform-origin:30% 80%}
.cover-pos-30-85{object-position:30% 85%;transform-origin:30% 85%}
.cover-pos-30-90{object-position:30% 90%;transform-origin:30% 90%}
.cover-pos-30-95{object-position:30% 95%;transform-origin:30% 95%}
.cover-pos-30-100{object-position:30% 100%;transform-origin:30% 100%}
.cover-pos-35-0{object-position:35% 0%;transform-origin:35% 0%}
.cover-pos-35-5{object-position:35% 5%;transform-origin:35% 5%}
.cover-pos-35-10{object-position:35% 10%;transform-origin:35% 10%}
.cover-pos-35-15{object-position:35% 15%;transform-origin:35% 15%}
.cover-pos-35-20{object-position:35% 20%;transform-origin:35% 20%}
.cover-pos-35-25{object-position:35% 25%;transform-origin:35% 25%}
.cover-pos-35-30{object-position:35% 30%;transform-origin:35% 30%}
.cover-pos-35-35{object-position:35% 35%;transform-origin:35% 35%}
.cover-pos-35-40{object-position:35% 40%;transform-origin:35% 40%}
.cover-pos-35-45{object-position:35% 45%;transform-origin:35% 45%}
.cover-pos-35-50{object-position:35% 50%;transform-origin:35% 50%}
.cover-pos-35-55{object-position:35% 55%;transform-origin:35% 55%}
.cover-pos-35-60{object-position:35% 60%;transform-origin:35% 60%}
.cover-pos-35-65{object-position:35% 65%;transform-origin:35% 65%}
.cover-pos-35-70{object-position:35% 70%;transform-origin:35% 70%}
.cover-pos-35-75{object-position:35% 75%;transform-origin:35% 75%}
.cover-pos-35-80{object-position:35% 80%;transform-origin:35% 80%}
.cover-pos-35-85{object-position:35% 85%;transform-origin:35% 85%}
.cover-pos-35-90{object-position:35% 90%;transform-origin:35% 90%}
.cover-pos-35-95{object-position:35% 95%;transform-origin:35% 95%}
.cover-pos-35-100{object-position:35% 100%;transform-origin:35% 100%}
.cover-pos-40-0{object-position:40% 0%;transform-origin:40% 0%}
.cover-pos-40-5{object-position:40% 5%;transform-origin:40% 5%}
.cover-pos-40-10{object-position:40% 10%;transform-origin:40% 10%}
.cover-pos-40-15{object-position:40% 15%;transform-origin:40% 15%}
.cover-pos-40-20{object-position:40% 20%;transform-origin:40% 20%}
.cover-pos-40-25{object-position:40% 25%;transform-origin:40% 25%}
.cover-pos-40-30{object-position:40% 30%;transform-origin:40% 30%}
.cover-pos-40-35{object-position:40% 35%;transform-origin:40% 35%}
.cover-pos-40-40{object-position:40% 40%;transform-origin:40% 40%}
.cover-pos-40-45{object-position:40% 45%;transform-origin:40% 45%}
.cover-pos-40-50{object-position:40% 50%;transform-origin:40% 50%}
.cover-pos-40-55{object-position:40% 55%;transform-origin:40% 55%}
.cover-pos-40-60{object-position:40% 60%;transform-origin:40% 60%}
.cover-pos-40-65{object-position:40% 65%;transform-origin:40% 65%}
.cover-pos-40-70{object-position:40% 70%;transform-origin:40% 70%}
.cover-pos-40-75{object-position:40% 75%;transform-origin:40% 75%}
.cover-pos-40-80{object-position:40% 80%;transform-origin:40% 80%}
.cover-pos-40-85{object-position:40% 85%;transform-origin:40% 85%}
.cover-pos-40-90{object-position:40% 90%;transform-origin:40% 90%}
.cover-pos-40-95{object-position:40% 95%;transform-origin:40% 95%}
.cover-pos-40-100{object-position:40% 100%;transform-origin:40% 100%}
.cover-pos-45-0{object-position:45% 0%;transform-origin:45% 0%}
.cover-pos-45-5{object-position:45% 5%;transform-origin:45% 5%}
.cover-pos-45-10{object-position:45% 10%;transform-origin:45% 10%}
.cover-pos-45-15{object-position:45% 15%;transform-origin:45% 15%}
.cover-pos-45-20{object-position:45% 20%;transform-origin:45% 20%}
.cover-pos-45-25{object-position:45% 25%;transform-origin:45% 25%}
.cover-pos-45-30{object-position:45% 30%;transform-origin:45% 30%}
.cover-pos-45-35{object-position:45% 35%;transform-origin:45% 35%}
.cover-pos-45-40{object-position:45% 40%;transform-origin:45% 40%}
.cover-pos-45-45{object-position:45% 45%;transform-origin:45% 45%}
.cover-pos-45-50{object-position:45% 50%;transform-origin:45% 50%}
.cover-pos-45-55{object-position:45% 55%;transform-origin:45% 55%}
.cover-pos-45-60{object-position:45% 60%;transform-origin:45% 60%}
.cover-pos-45-65{object-position:45% 65%;transform-origin:45% 65%}
.cover-pos-45-70{object-position:45% 70%;transform-origin:45% 70%}
.cover-pos-45-75{object-position:45% 75%;transform-origin:45% 75%}
.cover-pos-45-80{object-position:45% 80%;transform-origin:45% 80%}
.cover-pos-45-85{object-position:45% 85%;transform-origin:45% 85%}
.cover-pos-45-90{object-position:45% 90%;transform-origin:45% 90%}
.cover-pos-45-95{object-position:45% 95%;transform-origin:45% 95%}
.cover-pos-45-100{object-position:45% 100%;transform-origin:45% 100%}
.cover-pos-50-0{object-position:50% 0%;transform-origin:50% 0%}
.cover-pos-50-5{object-position:50% 5%;transform-origin:50% 5%}
.cover-pos-50-10{object-position:50% 10%;transform-origin:50% 10%}
.cover-pos-50-15{object-position:50% 15%;transform-origin:50% 15%}
.cover-pos-50-20{object-position:50% 20%;transform-origin:50% 20%}
.cover-pos-50-25{object-position:50% 25%;transform-origin:50% 25%}
.cover-pos-50-30{object-position:50% 30%;transform-origin:50% 30%}
.cover-pos-50-35{object-position:50% 35%;transform-origin:50% 35%}
.cover-pos-50-40{object-position:50% 40%;transform-origin:50% 40%}
.cover-pos-50-45{object-position:50% 45%;transform-origin:50% 45%}
.cover-pos-50-50{object-position:50% 50%;transform-origin:50% 50%}
.cover-pos-50-55{object-position:50% 55%;transform-origin:50% 55%}
.cover-pos-50-60{object-position:50% 60%;transform-origin:50% 60%}
.cover-pos-50-65{object-position:50% 65%;transform-origin:50% 65%}
.cover-pos-50-70{object-position:50% 70%;transform-origin:50% 70%}
.cover-pos-50-75{object-position:50% 75%;transform-origin:50% 75%}
.cover-pos-50-80{object-position:50% 80%;transform-origin:50% 80%}
.cover-pos-50-85{object-position:50% 85%;transform-origin:50% 85%}
.cover-pos-50-90{object-position:50% 90%;transform-origin:50% 90%}
.cover-pos-50-95{object-position:50% 95%;transform-origin:50% 95%}
.cover-pos-50-100{object-position:50% 100%;transform-origin:50% 100%}
.cover-pos-55-0{object-position:55% 0%;transform-origin:55% 0%}
.cover-pos-55-5{object-position:55% 5%;transform-origin:55% 5%}
.cover-pos-55-10{object-position:55% 10%;transform-origin:55% 10%}
.cover-pos-55-15{object-position:55% 15%;transform-origin:55% 15%}
.cover-pos-55-20{object-position:55% 20%;transform-origin:55% 20%}
.cover-pos-55-25{object-position:55% 25%;transform-origin:55% 25%}
.cover-pos-55-30{object-position:55% 30%;transform-origin:55% 30%}
.cover-pos-55-35{object-position:55% 35%;transform-origin:55% 35%}
.cover-pos-55-40{object-position:55% 40%;transform-origin:55% 40%}
.cover-pos-55-45{object-position:55% 45%;transform-origin:55% 45%}
.cover-pos-55-50{object-position:55% 50%;transform-origin:55% 50%}
.cover-pos-55-55{object-position:55% 55%;transform-origin:55% 55%}
.cover-pos-55-60{object-position:55% 60%;transform-origin:55% 60%}
.cover-pos-55-65{object-position:55% 65%;transform-origin:55% 65%}
.cover-pos-55-70{object-position:55% 70%;transform-origin:55% 70%}
.cover-pos-55-75{object-position:55% 75%;transform-origin:55% 75%}
.cover-pos-55-80{object-position:55% 80%;transform-origin:55% 80%}
.cover-pos-55-85{object-position:55% 85%;transform-origin:55% 85%}
.cover-pos-55-90{object-position:55% 90%;transform-origin:55% 90%}
.cover-pos-55-95{object-position:55% 95%;transform-origin:55% 95%}
.cover-pos-55-100{object-position:55% 100%;transform-origin:55% 100%}
.cover-pos-60-0{object-position:60% 0%;transform-origin:60% 0%}
.cover-pos-60-5{object-position:60% 5%;transform-origin:60% 5%}
.cover-pos-60-10{object-position:60% 10%;transform-origin:60% 10%}
.cover-pos-60-15{object-position:60% 15%;transform-origin:60% 15%}
.cover-pos-60-20{object-position:60% 20%;transform-origin:60% 20%}
.cover-pos-60-25{object-position:60% 25%;transform-origin:60% 25%}
.cover-pos-60-30{object-position:60% 30%;transform-origin:60% 30%}
.cover-pos-60-35{object-position:60% 35%;transform-origin:60% 35%}
.cover-pos-60-40{object-position:60% 40%;transform-origin:60% 40%}
.cover-pos-60-45{object-position:60% 45%;transform-origin:60% 45%}
.cover-pos-60-50{object-position:60% 50%;transform-origin:60% 50%}
.cover-pos-60-55{object-position:60% 55%;transform-origin:60% 55%}
.cover-pos-60-60{object-position:60% 60%;transform-origin:60% 60%}
.cover-pos-60-65{object-position:60% 65%;transform-origin:60% 65%}
.cover-pos-60-70{object-position:60% 70%;transform-origin:60% 70%}
.cover-pos-60-75{object-position:60% 75%;transform-origin:60% 75%}
.cover-pos-60-80{object-position:60% 80%;transform-origin:60% 80%}
.cover-pos-60-85{object-position:60% 85%;transform-origin:60% 85%}
.cover-pos-60-90{object-position:60% 90%;transform-origin:60% 90%}
.cover-pos-60-95{object-position:60% 95%;transform-origin:60% 95%}
.cover-pos-60-100{object-position:60% 100%;transform-origin:60% 100%}
.cover-pos-65-0{object-position:65% 0%;transform-origin:65% 0%}
.cover-pos-65-5{object-position:65% 5%;transform-origin:65% 5%}
.cover-pos-65-10{object-position:65% 10%;transform-origin:65% 10%}
.cover-pos-65-15{object-position:65% 15%;transform-origin:65% 15%}
.cover-pos-65-20{object-position:65% 20%;transform-origin:65% 20%}
.cover-pos-65-25{object-position:65% 25%;transform-origin:65% 25%}
.cover-pos-65-30{object-position:65% 30%;transform-origin:65% 30%}
.cover-pos-65-35{object-position:65% 35%;transform-origin:65% 35%}
.cover-pos-65-40{object-position:65% 40%;transform-origin:65% 40%}
.cover-pos-65-45{object-position:65% 45%;transform-origin:65% 45%}
.cover-pos-65-50{object-position:65% 50%;transform-origin:65% 50%}
.cover-pos-65-55{object-position:65% 55%;transform-origin:65% 55%}
.cover-pos-65-60{object-position:65% 60%;transform-origin:65% 60%}
.cover-pos-65-65{object-position:65% 65%;transform-origin:65% 65%}
.cover-pos-65-70{object-position:65% 70%;transform-origin:65% 70%}
.cover-pos-65-75{object-position:65% 75%;transform-origin:65% 75%}
.cover-pos-65-80{object-position:65% 80%;transform-origin:65% 80%}
.cover-pos-65-85{object-position:65% 85%;transform-origin:65% 85%}
.cover-pos-65-90{object-position:65% 90%;transform-origin:65% 90%}
.cover-pos-65-95{object-position:65% 95%;transform-origin:65% 95%}
.cover-pos-65-100{object-position:65% 100%;transform-origin:65% 100%}
.cover-pos-70-0{object-position:70% 0%;transform-origin:70% 0%}
.cover-pos-70-5{object-position:70% 5%;transform-origin:70% 5%}
.cover-pos-70-10{object-position:70% 10%;transform-origin:70% 10%}
.cover-pos-70-15{object-position:70% 15%;transform-origin:70% 15%}
.cover-pos-70-20{object-position:70% 20%;transform-origin:70% 20%}
.cover-pos-70-25{object-position:70% 25%;transform-origin:70% 25%}
.cover-pos-70-30{object-position:70% 30%;transform-origin:70% 30%}
.cover-pos-70-35{object-position:70% 35%;transform-origin:70% 35%}
.cover-pos-70-40{object-position:70% 40%;transform-origin:70% 40%}
.cover-pos-70-45{object-position:70% 45%;transform-origin:70% 45%}
.cover-pos-70-50{object-position:70% 50%;transform-origin:70% 50%}
.cover-pos-70-55{object-position:70% 55%;transform-origin:70% 55%}
.cover-pos-70-60{object-position:70% 60%;transform-origin:70% 60%}
.cover-pos-70-65{object-position:70% 65%;transform-origin:70% 65%}
.cover-pos-70-70{object-position:70% 70%;transform-origin:70% 70%}
.cover-pos-70-75{object-position:70% 75%;transform-origin:70% 75%}
.cover-pos-70-80{object-position:70% 80%;transform-origin:70% 80%}
.cover-pos-70-85{object-position:70% 85%;transform-origin:70% 85%}
.cover-pos-70-90{object-position:70% 90%;transform-origin:70% 90%}
.cover-pos-70-95{object-position:70% 95%;transform-origin:70% 95%}
.cover-pos-70-100{object-position:70% 100%;transform-origin:70% 100%}
.cover-pos-75-0{object-position:75% 0%;transform-origin:75% 0%}
.cover-pos-75-5{object-position:75% 5%;transform-origin:75% 5%}
.cover-pos-75-10{object-position:75% 10%;transform-origin:75% 10%}
.cover-pos-75-15{object-position:75% 15%;transform-origin:75% 15%}
.cover-pos-75-20{object-position:75% 20%;transform-origin:75% 20%}
.cover-pos-75-25{object-position:75% 25%;transform-origin:75% 25%}
.cover-pos-75-30{object-position:75% 30%;transform-origin:75% 30%}
.cover-pos-75-35{object-position:75% 35%;transform-origin:75% 35%}
.cover-pos-75-40{object-position:75% 40%;transform-origin:75% 40%}
.cover-pos-75-45{object-position:75% 45%;transform-origin:75% 45%}
.cover-pos-75-50{object-position:75% 50%;transform-origin:75% 50%}
.cover-pos-75-55{object-position:75% 55%;transform-origin:75% 55%}
.cover-pos-75-60{object-position:75% 60%;transform-origin:75% 60%}
.cover-pos-75-65{object-position:75% 65%;transform-origin:75% 65%}
.cover-pos-75-70{object-position:75% 70%;transform-origin:75% 70%}
.cover-pos-75-75{object-position:75% 75%;transform-origin:75% 75%}
.cover-pos-75-80{object-position:75% 80%;transform-origin:75% 80%}
.cover-pos-75-85{object-position:75% 85%;transform-origin:75% 85%}
.cover-pos-75-90{object-position:75% 90%;transform-origin:75% 90%}
.cover-pos-75-95{object-position:75% 95%;transform-origin:75% 95%}
.cover-pos-75-100{object-position:75% 100%;transform-origin:75% 100%}
.cover-pos-80-0{object-position:80% 0%;transform-origin:80% 0%}
.cover-pos-80-5{object-position:80% 5%;transform-origin:80% 5%}
.cover-pos-80-10{object-position:80% 10%;transform-origin:80% 10%}
.cover-pos-80-15{object-position:80% 15%;transform-origin:80% 15%}
.cover-pos-80-20{object-position:80% 20%;transform-origin:80% 20%}
.cover-pos-80-25{object-position:80% 25%;transform-origin:80% 25%}
.cover-pos-80-30{object-position:80% 30%;transform-origin:80% 30%}
.cover-pos-80-35{object-position:80% 35%;transform-origin:80% 35%}
.cover-pos-80-40{object-position:80% 40%;transform-origin:80% 40%}
.cover-pos-80-45{object-position:80% 45%;transform-origin:80% 45%}
.cover-pos-80-50{object-position:80% 50%;transform-origin:80% 50%}
.cover-pos-80-55{object-position:80% 55%;transform-origin:80% 55%}
.cover-pos-80-60{object-position:80% 60%;transform-origin:80% 60%}
.cover-pos-80-65{object-position:80% 65%;transform-origin:80% 65%}
.cover-pos-80-70{object-position:80% 70%;transform-origin:80% 70%}
.cover-pos-80-75{object-position:80% 75%;transform-origin:80% 75%}
.cover-pos-80-80{object-position:80% 80%;transform-origin:80% 80%}
.cover-pos-80-85{object-position:80% 85%;transform-origin:80% 85%}
.cover-pos-80-90{object-position:80% 90%;transform-origin:80% 90%}
.cover-pos-80-95{object-position:80% 95%;transform-origin:80% 95%}
.cover-pos-80-100{object-position:80% 100%;transform-origin:80% 100%}
.cover-pos-85-0{object-position:85% 0%;transform-origin:85% 0%}
.cover-pos-85-5{object-position:85% 5%;transform-origin:85% 5%}
.cover-pos-85-10{object-position:85% 10%;transform-origin:85% 10%}
.cover-pos-85-15{object-position:85% 15%;transform-origin:85% 15%}
.cover-pos-85-20{object-position:85% 20%;transform-origin:85% 20%}
.cover-pos-85-25{object-position:85% 25%;transform-origin:85% 25%}
.cover-pos-85-30{object-position:85% 30%;transform-origin:85% 30%}
.cover-pos-85-35{object-position:85% 35%;transform-origin:85% 35%}
.cover-pos-85-40{object-position:85% 40%;transform-origin:85% 40%}
.cover-pos-85-45{object-position:85% 45%;transform-origin:85% 45%}
.cover-pos-85-50{object-position:85% 50%;transform-origin:85% 50%}
.cover-pos-85-55{object-position:85% 55%;transform-origin:85% 55%}
.cover-pos-85-60{object-position:85% 60%;transform-origin:85% 60%}
.cover-pos-85-65{object-position:85% 65%;transform-origin:85% 65%}
.cover-pos-85-70{object-position:85% 70%;transform-origin:85% 70%}
.cover-pos-85-75{object-position:85% 75%;transform-origin:85% 75%}
.cover-pos-85-80{object-position:85% 80%;transform-origin:85% 80%}
.cover-pos-85-85{object-position:85% 85%;transform-origin:85% 85%}
.cover-pos-85-90{object-position:85% 90%;transform-origin:85% 90%}
.cover-pos-85-95{object-position:85% 95%;transform-origin:85% 95%}
.cover-pos-85-100{object-position:85% 100%;transform-origin:85% 100%}
.cover-pos-90-0{object-position:90% 0%;transform-origin:90% 0%}
.cover-pos-90-5{object-position:90% 5%;transform-origin:90% 5%}
.cover-pos-90-10{object-position:90% 10%;transform-origin:90% 10%}
.cover-pos-90-15{object-position:90% 15%;transform-origin:90% 15%}
.cover-pos-90-20{object-position:90% 20%;transform-origin:90% 20%}
.cover-pos-90-25{object-position:90% 25%;transform-origin:90% 25%}
.cover-pos-90-30{object-position:90% 30%;transform-origin:90% 30%}
.cover-pos-90-35{object-position:90% 35%;transform-origin:90% 35%}
.cover-pos-90-40{object-position:90% 40%;transform-origin:90% 40%}
.cover-pos-90-45{object-position:90% 45%;transform-origin:90% 45%}
.cover-pos-90-50{object-position:90% 50%;transform-origin:90% 50%}
.cover-pos-90-55{object-position:90% 55%;transform-origin:90% 55%}
.cover-pos-90-60{object-position:90% 60%;transform-origin:90% 60%}
.cover-pos-90-65{object-position:90% 65%;transform-origin:90% 65%}
.cover-pos-90-70{object-position:90% 70%;transform-origin:90% 70%}
.cover-pos-90-75{object-position:90% 75%;transform-origin:90% 75%}
.cover-pos-90-80{object-position:90% 80%;transform-origin:90% 80%}
.cover-pos-90-85{object-position:90% 85%;transform-origin:90% 85%}
.cover-pos-90-90{object-position:90% 90%;transform-origin:90% 90%}
.cover-pos-90-95{object-position:90% 95%;transform-origin:90% 95%}
.cover-pos-90-100{object-position:90% 100%;transform-origin:90% 100%}
.cover-pos-95-0{object-position:95% 0%;transform-origin:95% 0%}
.cover-pos-95-5{object-position:95% 5%;transform-origin:95% 5%}
.cover-pos-95-10{object-position:95% 10%;transform-origin:95% 10%}
.cover-pos-95-15{object-position:95% 15%;transform-origin:95% 15%}
.cover-pos-95-20{object-position:95% 20%;transform-origin:95% 20%}
.cover-pos-95-25{object-position:95% 25%;transform-origin:95% 25%}
.cover-pos-95-30{object-position:95% 30%;transform-origin:95% 30%}
.cover-pos-95-35{object-position:95% 35%;transform-origin:95% 35%}
.cover-pos-95-40{object-position:95% 40%;transform-origin:95% 40%}
.cover-pos-95-45{object-position:95% 45%;transform-origin:95% 45%}
.cover-pos-95-50{object-position:95% 50%;transform-origin:95% 50%}
.cover-pos-95-55{object-position:95% 55%;transform-origin:95% 55%}
.cover-pos-95-60{object-position:95% 60%;transform-origin:95% 60%}
.cover-pos-95-65{object-position:95% 65%;transform-origin:95% 65%}
.cover-pos-95-70{object-position:95% 70%;transform-origin:95% 70%}
.cover-pos-95-75{object-position:95% 75%;transform-origin:95% 75%}
.cover-pos-95-80{object-position:95% 80%;transform-origin:95% 80%}
.cover-pos-95-85{object-position:95% 85%;transform-origin:95% 85%}
.cover-pos-95-90{object-position:95% 90%;transform-origin:95% 90%}
.cover-pos-95-95{object-position:95% 95%;transform-origin:95% 95%}
.cover-pos-95-100{object-position:95% 100%;transform-origin:95% 100%}
.cover-pos-100-0{object-position:100% 0%;transform-origin:100% 0%}
.cover-pos-100-5{object-position:100% 5%;transform-origin:100% 5%}
.cover-pos-100-10{object-position:100% 10%;transform-origin:100% 10%}
.cover-pos-100-15{object-position:100% 15%;transform-origin:100% 15%}
.cover-pos-100-20{object-position:100% 20%;transform-origin:100% 20%}
.cover-pos-100-25{object-position:100% 25%;transform-origin:100% 25%}
.cover-pos-100-30{object-position:100% 30%;transform-origin:100% 30%}
.cover-pos-100-35{object-position:100% 35%;transform-origin:100% 35%}
.cover-pos-100-40{object-position:100% 40%;transform-origin:100% 40%}
.cover-pos-100-45{object-position:100% 45%;transform-origin:100% 45%}
.cover-pos-100-50{object-position:100% 50%;transform-origin:100% 50%}
.cover-pos-100-55{object-position:100% 55%;transform-origin:100% 55%}
.cover-pos-100-60{object-position:100% 60%;transform-origin:100% 60%}
.cover-pos-100-65{object-position:100% 65%;transform-origin:100% 65%}
.cover-pos-100-70{object-position:100% 70%;transform-origin:100% 70%}
.cover-pos-100-75{object-position:100% 75%;transform-origin:100% 75%}
.cover-pos-100-80{object-position:100% 80%;transform-origin:100% 80%}
.cover-pos-100-85{object-position:100% 85%;transform-origin:100% 85%}
.cover-pos-100-90{object-position:100% 90%;transform-origin:100% 90%}
.cover-pos-100-95{object-position:100% 95%;transform-origin:100% 95%}
.cover-pos-100-100{object-position:100% 100%;transform-origin:100% 100%}
.cover-zoom-100{transform:scale(1)}
.cover-zoom-105{transform:scale(1.05)}
.cover-zoom-110{transform:scale(1.1)}
.cover-zoom-115{transform:scale(1.15)}
.cover-zoom-120{transform:scale(1.2)}
.cover-zoom-125{transform:scale(1.25)}
.cover-zoom-130{transform:scale(1.3)}
.cover-zoom-135{transform:scale(1.35)}
.cover-zoom-140{transform:scale(1.4)}
.cover-zoom-145{transform:scale(1.45)}
.cover-zoom-150{transform:scale(1.5)}
.cover-zoom-155{transform:scale(1.55)}
.cover-zoom-160{transform:scale(1.6)}
.cover-zoom-165{transform:scale(1.65)}
.cover-zoom-170{transform:scale(1.7)}
.cover-zoom-175{transform:scale(1.75)}
.cover-zoom-180{transform:scale(1.8)}

/* v2.8.12 · descarga estilo Copart */
.gallery-download-control{position:absolute;z-index:8;left:12px;bottom:12px}
.gallery-download-trigger{width:38px;height:38px;border:1px solid rgba(255,255,255,.5);border-radius:7px;background:rgba(20,27,34,.82);color:#fff;font-size:19px;font-weight:900;line-height:1;display:grid;place-items:center;backdrop-filter:blur(5px);box-shadow:0 3px 12px rgba(0,0,0,.22)}
.gallery-download-trigger:hover,.gallery-download-trigger[aria-expanded="true"]{background:rgba(13,20,27,.96)}
.gallery-download-control.media-unavailable{display:none}
.gallery-download-menu{position:absolute;left:0;bottom:46px;width:230px;border:1px solid #d6dde4;border-radius:8px;background:#fff;box-shadow:0 12px 32px rgba(15,31,46,.26);overflow:hidden}
.gallery-download-menu button{display:flex;width:100%;min-height:52px;flex-direction:column;align-items:flex-start;justify-content:center;border:0;border-bottom:1px solid #e6ebef;background:#fff;padding:9px 13px;text-align:left;color:#263b4e}
.gallery-download-menu button:last-child{border-bottom:0}
.gallery-download-menu button:hover{background:#f4f7fa}
.gallery-download-menu button:disabled{opacity:.6;cursor:wait}
.gallery-download-menu span{font-size:12px;font-weight:900}
.gallery-download-menu small{margin-top:3px;color:#778592;font-size:9px;font-weight:700}
.gallery-download-menu button.loading span:after{content:'…'}
@media(max-width:680px){.gallery-download-control{left:10px;bottom:10px}.gallery-download-trigger{width:36px;height:36px;font-size:18px}.gallery-download-menu{bottom:43px;width:215px}.gallery-download-menu button{min-height:50px;padding:8px 12px}}

/* v2.8.13 · ficha de portada compacta en PC
   Mantiene móvil intacto y evita que un solo resultado se expanda demasiado. */
@media (min-width:921px){
  .catalog{
    grid-template-columns:repeat(auto-fit,minmax(270px,290px));
    gap:16px;
  }
  .catalog.single-result{
    grid-template-columns:minmax(0,350px);
  }
  .catalog.few-results{
    grid-template-columns:repeat(auto-fit,minmax(285px,315px));
  }
  .listing{
    border-radius:11px;
  }
  .listing-main{
    padding:11px 12px 8px;
  }
  .listing-main h3{
    font-size:16.5px;
    line-height:1.15;
  }
  .listing-code{
    font-size:8.5px;
    margin:4px 0 7px;
  }
  .quick span{
    font-size:9.5px;
    padding-right:6px;
    margin-right:6px;
  }
  .listing-side{
    padding:0 12px 11px;
  }
  .listing-price{
    margin-bottom:8px;
    font-size:21px;
  }
  .listing-actions{
    gap:5px;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(70px,.72fr);
  }
  .listing-actions button{
    height:34px;
    padding:0 7px;
    font-size:9.5px;
  }
}

/* v2.8.14 · equilibrio final de catálogo PC
   - Ficha individual ~380 px y alineada al inicio.
   - Hasta 3 fichas por fila en escritorio ancho.
   - Filtros más compactos para ganar área útil.
   - Sin cambios en móvil. */
@media (min-width:921px){
  .search-grid{
    padding:10px 12px 7px;
    gap:7px;
  }
  .field label{
    margin-bottom:4px;
    font-size:8.5px;
  }
  .field input,.field select{
    height:35px;
    padding-left:9px;
    padding-right:9px;
    font-size:11px;
  }
  .search-button{
    height:35px;
    font-size:11px;
  }
  .search-actions{
    padding:0 12px 8px;
    gap:8px;
    font-size:10px;
  }
  .search-actions span{
    width:21px;
    height:21px;
    font-size:9px;
  }
  .advanced-panel{
    padding:9px 12px 11px;
  }
  .advanced-grid{
    gap:7px;
  }
  .results-head{
    margin-top:16px;
    margin-bottom:9px;
  }
  .results-head h2{
    font-size:17px;
  }
  .results-head select{
    height:33px;
  }

  .catalog{
    justify-content:start;
    align-items:start;
    gap:16px;
  }
  .catalog.single-result{
    grid-template-columns:minmax(0,380px);
  }
  .catalog.few-results{
    justify-content:start;
  }
}

@media (min-width:921px) and (max-width:1199px){
  .catalog{
    grid-template-columns:repeat(auto-fit,minmax(300px,360px));
  }
  .catalog.single-result{
    grid-template-columns:minmax(0,380px);
  }
  .catalog.few-results{
    grid-template-columns:repeat(auto-fit,minmax(300px,360px));
  }
}

@media (min-width:1200px){
  .catalog{
    grid-template-columns:repeat(3,minmax(0,380px));
  }
  .catalog.single-result{
    grid-template-columns:minmax(0,380px);
  }
  .catalog.few-results{
    grid-template-columns:repeat(auto-fit,minmax(300px,380px));
  }
}


/* v2.8.15 · Favoritos completos, compartir y PWA */
.results-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.favorites-toggle{height:38px;border:1px solid #d4dce4;border-radius:8px;background:#fff;color:#4d6174;padding:0 11px;font-size:11px;font-weight:900;white-space:nowrap}
.favorites-toggle span{display:inline-grid!important;place-items:center;min-width:22px;height:22px;margin:0 0 0 5px;padding:0 6px;border-radius:99px;background:#eef3f7;color:#496075;font-size:10px!important}
.favorites-toggle.active{border-color:#e3b8bd;background:#fff2f3;color:#b62c36}
.favorites-toggle.active span{background:#d8343d;color:#fff}
.fav-btn.is-favorite,.favorite-wide.is-favorite{background:#fff1f2!important;border-color:#e7b7bc!important;color:#b72d37!important}
.detail-save-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:7px;padding:0 15px 14px}
.detail-save-row .favorite-wide{margin:0;width:100%;height:42px;border:1px solid transparent}
.share-wide{height:42px;border:1px solid #d5dde5;border-radius:7px;background:#fff;color:#36546e;font-weight:900;font-size:11px}
.detail-code{margin:-5px 15px 12px;color:#7a8792;font-size:10px}.detail-code b{color:#38536a;letter-spacing:.3px}
.install-button{color:#15805f!important}.clipboard-helper{position:fixed;left:-9999px;top:-9999px;width:1px;height:1px;opacity:0}
@media(max-width:680px){
  .results-head{align-items:flex-start;flex-wrap:wrap}
  .results-controls{width:100%;justify-content:space-between;gap:7px}
  .results-controls label{max-width:none;text-align:left;flex:1;min-width:170px}
  .favorites-toggle{height:36px;flex:0 0 auto}
  .detail-save-row{grid-template-columns:1fr 102px;padding:0 15px 12px}
  .detail-save-row .favorite-wide,.share-wide{height:40px;font-size:10px}
  .fav-btn.is-favorite:after{content:'♥'}
}
@media(min-width:921px){
  .results-controls{gap:8px}
  .favorites-toggle{height:33px;font-size:10px}
  .favorites-toggle span{height:19px;min-width:19px;font-size:9px!important}
}


/* v2.8.16 · cierre de producción y accesibilidad */
.wa-btn.is-disabled,.view-btn.is-disabled,.listing-actions button:disabled,.detail-ctas button:disabled{opacity:.52;cursor:not-allowed;filter:saturate(.35)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(29,107,184,.28);outline-offset:2px}
.detail-modal.show .detail-shell{overscroll-behavior:contain}
body.modal-open{overflow:hidden}
