/* RAFimport v129 — corrective mobile pass for v128. Desktop untouched. */

@media (max-width: 860px){
  /* ================================================================
     CATALOG TABS — four equal buttons, no inherited min-width fights.
     ================================================================ */
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs,
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .vdc-tabs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-auto-flow:initial!important;
    grid-auto-columns:initial!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 1 100%!important;
    gap:2px!important;
    height:44px!important;
    padding:3px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .vdc-tabs > button[data-catalog-tab],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="instock"],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="japan"],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="korea"],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="china"],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="new"],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="used"]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:38px!important;
    padding:0 3px!important;
    margin:0!important;
    box-sizing:border-box!important;
    font-size:11.5px!important;
    line-height:1!important;
    letter-spacing:-.02em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }

  /* ================================================================
     HOME CATALOG CARD — deterministic compact mobile grid.
     ================================================================ */
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    padding:0 0 12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    box-sizing:border-box!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card{
    flex:0 0 calc(100vw - 28px)!important;
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    padding:6px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    scroll-snap-align:start!important;
    box-sizing:border-box!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__photo.vdc-card__photo{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16 / 9.6!important;
    border-radius:17px!important;
    overflow:hidden!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__photo.vdc-card__photo img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__body.vdc-card__body{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:
      "name name"
      "year price"
      "actions actions"
      "info info"!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:8px!important;
    row-gap:9px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    padding:13px 11px 11px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__name.vdc-card__name{
    grid-area:name!important;
    grid-column:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__name.vdc-card__name h3,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__name.vdc-card__name h3 a{
    margin:0!important;
    font-size:20px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__name.vdc-card__name p{
    margin:6px 0 0!important;
    font-size:13px!important;
    line-height:1.28!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .vdc-card__generation{
    margin-top:4px!important;
    font-size:11px!important;
    line-height:1.25!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__year.vdc-card__passport{
    grid-area:year!important;
    grid-column:auto!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price{
    grid-area:price!important;
    grid-column:auto!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__year.vdc-card__passport,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    width:auto!important;
    min-width:0!important;
    min-height:78px!important;
    height:auto!important;
    margin:0!important;
    padding:10px 11px!important;
    border-radius:14px!important;
    box-sizing:border-box!important;
    border:1px solid rgba(130,207,247,.14)!important;
    background:rgba(255,255,255,.055)!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price{
    background:linear-gradient(135deg,rgba(39,153,214,.17),rgba(255,255,255,.05))!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__year.vdc-card__passport strong,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price strong{
    display:block!important;
    width:100%!important;
    margin:0!important;
    font-size:18px!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__year.vdc-card__passport p,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price p{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:5px 0 0!important;
    font-size:10.5px!important;
    line-height:1.25!important;
    text-align:left!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price em,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price mark{
    display:block!important;
    grid-column:auto!important;
    grid-row:auto!important;
    align-self:flex-start!important;
    justify-self:auto!important;
    max-width:100%!important;
    margin:5px 0 0!important;
    font-size:9.5px!important;
    line-height:1.2!important;
    white-space:normal!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__actions.vdc-card__actions{
    grid-area:actions!important;
    grid-column:auto!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__actions.vdc-card__actions a,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__actions.vdc-card__actions button{
    width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    height:40px!important;
    padding:0 8px!important;
    border-radius:12px!important;
    box-sizing:border-box!important;
    font-size:12px!important;
    line-height:1!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info{
    grid-area:info!important;
    grid-column:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    margin:0!important;
    padding:0!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info > span{
    flex:1 1 auto!important;
    max-width:none!important;
    min-width:0!important;
    font-size:9.5px!important;
    line-height:1.25!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info > div{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    gap:7px!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button{
    display:grid!important;
    place-items:center!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    padding:0!important;
    border-radius:11px!important;
    color:#fff!important;
    line-height:1!important;
    overflow:visible!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-link{
    display:block!important;
    width:20px!important;
    height:20px!important;
    position:relative!important;
    color:#fff!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-link::before,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-link::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    width:10px!important;
    height:6px!important;
    border:2px solid #fff!important;
    border-radius:999px!important;
    background:transparent!important;
    transform:rotate(-45deg)!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-link::before{
    left:1px!important;
    top:9px!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-link::after{
    right:1px!important;
    top:3px!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-star{
    display:block!important;
    width:20px!important;
    height:20px!important;
    position:relative!important;
    color:#fff!important;
    overflow:visible!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-star::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:19px!important;
    height:19px!important;
    background:#fff!important;
    clip-path:polygon(50% 2%,61% 37%,98% 50%,61% 63%,50% 98%,39% 63%,2% 50%,39% 37%)!important;
    transform:translate(-50%,-50%)!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__info.vdc-card__info button .opn-icon-star::after{
    content:none!important;
    display:none!important;
  }

  /* ================================================================
     FAVORITES DOCK — compact icon only; no panel covering the card.
     ================================================================ */
  .vdc-favorites-dock{
    right:68px!important;
    bottom:12px!important;
    gap:0!important;
  }
  .vdc-favorites-dock__panel{
    display:none!important;
  }
  .vdc-favorites-dock__button{
    width:46px!important;
    height:46px!important;
    border-radius:14px!important;
  }
  .vdc-favorites-dock__button>.opn-icon-star{
    width:20px!important;
    height:20px!important;
  }
  .vdc-favorites-dock__button>b{
    right:-4px!important;
    top:-5px!important;
    min-width:18px!important;
    width:auto!important;
    height:18px!important;
    padding:0 5px!important;
    font-size:9px!important;
  }

  /* ================================================================
     PROCESS — one real card at a time, compact vertical composition.
     ================================================================ */
  .raf-home .raf-process-v84{
    padding:26px 0 30px!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .raf-home .raf-process-v84__container{
    width:calc(100% - 22px)!important;
    max-width:760px!important;
  }
  .raf-home .raf-process-v84__head{
    max-width:100%!important;
    margin:0 0 8px!important;
  }
  .raf-home .raf-process-v84__head>span{
    margin-bottom:6px!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.17em!important;
  }
  .raf-home .raf-process-v84__head h2{
    max-width:520px!important;
    font-size:28px!important;
    line-height:.96!important;
    letter-spacing:-.052em!important;
  }
  .raf-home .raf-process-v84__stage{
    display:block!important;
    min-height:0!important;
  }
  .raf-home .raf-process-v84__car-wrap{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:172px!important;
    min-height:0!important;
    margin:0 auto -8px!important;
    overflow:visible!important;
  }
  .raf-home .raf-process-v84__car{
    display:block!important;
    width:min(305px,82vw)!important;
    max-width:100%!important;
    height:auto!important;
    margin:0 auto!important;
    filter:drop-shadow(0 13px 18px rgba(20,63,92,.10))!important;
  }
  .raf-home .raf-process-v84__slider{
    position:relative!important;
    z-index:3!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  .raf-home .raf-process-v84__viewport{
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    scroll-behavior:auto!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }
  .raf-home .raf-process-v84__track{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
  }
  .raf-home .raf-process-v84__track > .raf-process-v84-card{
    display:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:148px!important;
    height:auto!important;
    flex:none!important;
    margin:0!important;
    padding:14px 15px 15px!important;
    border-radius:19px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    transform:none!important;
  }
  .raf-home .raf-process-v84:not(.is-mobile-process-ready) .raf-process-v84__track > .raf-process-v84-card:first-child,
  .raf-home .raf-process-v84.is-mobile-process-ready .raf-process-v84__track > .raf-process-v84-card.is-mobile-active{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }
  .raf-home .raf-process-v84__track > .raf-process-v84-card::after{
    content:none!important;
    display:none!important;
  }
  .raf-home .raf-process-v84-card__top,
  .raf-home .raf-process-v84-card h3,
  .raf-home .raf-process-v84-card p{
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
    position:relative!important;
    z-index:2!important;
  }
  .raf-home .raf-process-v84-card__top{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:34px!important;
    height:auto!important;
    margin:0 0 5px!important;
  }
  .raf-home .raf-process-v84-card__icon,
  .raf-home .raf-process-v84-card__icon img,
  .raf-home .raf-process-v84-card__icon svg{
    width:36px!important;
    height:36px!important;
  }
  .raf-home .raf-process-v84-card__icon{
    flex:0 0 36px!important;
  }
  .raf-home .raf-process-v84-card__number{
    font-size:11px!important;
    line-height:1!important;
  }
  .raf-home .raf-process-v84-card h3{
    max-width:100%!important;
    margin:0 0 5px!important;
    padding:0!important;
    color:#26313c!important;
    font-size:17px!important;
    line-height:1.04!important;
    letter-spacing:-.015em!important;
  }
  .raf-home .raf-process-v84-card p{
    margin:0!important;
    padding:0!important;
    color:#5a6d7b!important;
    font-size:12px!important;
    line-height:1.34!important;
  }
  .raf-home .raf-process-v84__nav{
    display:flex!important;
    justify-content:center!important;
    gap:9px!important;
    margin:8px 0 0!important;
    padding:0!important;
  }
  .raf-home .raf-process-v84__arrow{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }
}

@media (max-width: 430px){
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab],
  body .raf-home #catalog.vdc-catalog--home .vdc-filter .vdc-tabs > button[data-catalog-tab]{
    font-size:10px!important;
    padding:0 1px!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card{
    flex-basis:calc(100vw - 22px)!important;
    width:calc(100vw - 22px)!important;
    max-width:calc(100vw - 22px)!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__body.vdc-card__body{
    padding:11px 9px 9px!important;
    gap:7px!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__name.vdc-card__name h3,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__name.vdc-card__name h3 a{
    font-size:18px!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__year.vdc-card__passport,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price{
    min-height:72px!important;
    padding:9px!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__year.vdc-card__passport strong,
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card .opn-card__price.vdc-card__price strong{
    font-size:16px!important;
  }
  .raf-home .raf-process-v84__head h2{
    font-size:26px!important;
  }
  .raf-home .raf-process-v84__car-wrap{
    height:156px!important;
  }
  .raf-home .raf-process-v84__car{
    width:min(285px,82vw)!important;
  }
  .raf-home .raf-process-v84__track > .raf-process-v84-card{
    min-height:142px!important;
    padding:13px 14px 14px!important;
  }
}

@media (max-width: 860px){
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .opn-tabs.vdc-tabs,
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .vdc-tabs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-auto-flow:initial!important;
    grid-auto-columns:initial!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 1 100%!important;
    gap:2px!important;
    height:44px!important;
    padding:3px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab],
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .vdc-tabs > button[data-catalog-tab],
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="instock"],
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="japan"],
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="korea"],
  body .raf-catalog-page:not(.vdc-api-catalog-page) #catalog .vdc-filter .opn-tabs.vdc-tabs > button[data-catalog-tab="china"]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:38px!important;
    padding:0 3px!important;
    margin:0!important;
    font-size:11.5px!important;
    line-height:1!important;
    letter-spacing:-.02em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
}

/* ======================================================================
   RAFimport v131 — hard mobile card reset based on the working Genomus
   mobile geometry. This block intentionally lives inside the already
   loaded v129 stylesheet so it cannot be skipped by a missing new include.
   Desktop remains untouched.
   ====================================================================== */
@media (max-width:680px){
  /* HOME: one card per phone viewport. */
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip{
    display:flex!important;
    flex-flow:row nowrap!important;
    grid-auto-flow:initial!important;
    grid-auto-columns:initial!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    padding:0 0 12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    align-items:flex-start!important;
    scroll-snap-type:x mandatory!important;
    box-sizing:border-box!important;
  }
  body .raf-home #catalog.vdc-catalog--home .opn-strip.vdc-strip > .opn-card.vdc-card{
    flex:0 0 calc(100vw - 30px)!important;
    width:calc(100vw - 30px)!important;
    max-width:calc(100vw - 30px)!important;
  }

  /* FULL CATALOG: vertical full-width list, same internal geometry. */
  body .catalog-page #catalog.vdc-catalog--page .opn-strip.vdc-strip,
  body .vdc-api-catalog-page #catalog.vdc-catalog--page .opn-strip.vdc-strip{
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    padding:0!important;
  }
  body .catalog-page #catalog.vdc-catalog--page .opn-strip.vdc-strip > .opn-card.vdc-card,
  body .vdc-api-catalog-page #catalog.vdc-catalog--page .opn-strip.vdc-strip > .opn-card.vdc-card{
    width:100%!important;
    max-width:100%!important;
    flex:none!important;
  }

  /* CARD SHELL */
  body #catalog .opn-card.vdc-card,
  body #catalog .opn-card.vdc-card.opn-card--list,
  body #catalog .opn-card.vdc-card.vdc-card--list{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    align-content:start!important;
    justify-content:stretch!important;
    gap:0!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    padding:7px!important;
    border-radius:24px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    scroll-snap-align:start!important;
  }

  /* PHOTO */
  body #catalog .opn-card.vdc-card .opn-card__photo.vdc-card__photo{
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16 / 10!important;
    border-radius:18px!important;
    overflow:hidden!important;
    align-self:start!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__photo.vdc-card__photo img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:none!important;
  }

  /* BODY: no inherited desktop 1fr row = no giant blank vertical gap. */
  body #catalog .opn-card.vdc-card .opn-card__body.vdc-card__body{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:repeat(5,min-content)!important;
    grid-template-areas:
      "name"
      "year"
      "price"
      "actions"
      "info"!important;
    grid-auto-rows:min-content!important;
    align-content:start!important;
    justify-content:stretch!important;
    row-gap:12px!important;
    column-gap:0!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    padding:16px 14px 14px!important;
    margin:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body #catalog .opn-card.vdc-card .opn-card__name.vdc-card__name{
    grid-area:name!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    align-self:start!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__name.vdc-card__name h3{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    margin:0!important;
    min-height:0!important;
    font-size:23px!important;
    line-height:1.06!important;
    letter-spacing:-.04em!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__name.vdc-card__name h3 a{
    font-size:inherit!important;
    line-height:inherit!important;
    white-space:normal!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__name.vdc-card__name h3 small{
    flex:0 0 auto!important;
    font-size:10px!important;
    line-height:1!important;
    padding:2px 5px!important;
    border-radius:7px!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__name.vdc-card__name p{
    margin:7px 0 0!important;
    font-size:14px!important;
    line-height:1.3!important;
  }
  body #catalog .opn-card.vdc-card .vdc-card__generation{
    display:block!important;
    margin:5px 0 0!important;
    font-size:11.5px!important;
    line-height:1.28!important;
  }

  /* YEAR: one simple line, like Genomus. */
  body #catalog .opn-card.vdc-card .opn-card__year.vdc-card__passport{
    grid-area:year!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:end!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:2px 0 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__year.vdc-card__passport strong{
    margin:0!important;
    font-size:25px!important;
    line-height:1.02!important;
    white-space:normal!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__year.vdc-card__passport p{
    justify-self:end!important;
    max-width:150px!important;
    margin:0!important;
    font-size:12.5px!important;
    line-height:1.28!important;
    text-align:right!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  /* PRICE: normal row, no oversized tile. */
  body #catalog .opn-card.vdc-card .opn-card__price.vdc-card__price{
    grid-area:price!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:3px 0 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__price.vdc-card__price strong{
    display:block!important;
    margin:0!important;
    font-size:27px!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__price.vdc-card__price p{
    margin:8px 0 0!important;
    font-size:12px!important;
    line-height:1.3!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__price.vdc-card__price em,
  body #catalog .opn-card.vdc-card .opn-card__price.vdc-card__price mark{
    display:inline-flex!important;
    align-items:center!important;
    width:max-content!important;
    max-width:100%!important;
    min-height:30px!important;
    margin:8px 0 0!important;
    padding:6px 10px!important;
    border-radius:999px!important;
    font-size:10.5px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }

  /* ACTIONS */
  body #catalog .opn-card.vdc-card .opn-card__actions.vdc-card__actions{
    grid-area:actions!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    align-items:stretch!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:1px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__actions.vdc-card__actions > a,
  body #catalog .opn-card.vdc-card .opn-card__actions.vdc-card__actions > button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0 10px!important;
    border-radius:13px!important;
    box-sizing:border-box!important;
    font-size:14px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  /* INFO + visible direct SVG controls. */
  body #catalog .opn-card.vdc-card .opn-card__info.vdc-card__info{
    grid-area:info!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:end!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__info.vdc-card__info > span{
    min-width:0!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.32!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__info.vdc-card__info > div{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__info.vdc-card__info button{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:12px!important;
    overflow:visible!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__info.vdc-card__info button svg{
    display:block!important;
    width:21px!important;
    height:21px!important;
    color:#fff!important;
    stroke:currentColor!important;
    fill:none!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    pointer-events:none!important;
  }

  /* Hide old pseudo-icons when the guaranteed SVG is present. */
  body #catalog .opn-card.vdc-card .opn-card__info.vdc-card__info .opn-icon-link,
  body #catalog .opn-card.vdc-card .opn-card__info.vdc-card__info .opn-icon-star{
    display:none!important;
  }
}

@media (max-width:420px){
  body #catalog .opn-card.vdc-card .opn-card__body.vdc-card__body{
    padding:14px 12px 12px!important;
    row-gap:10px!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__name.vdc-card__name h3{
    font-size:21px!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__year.vdc-card__passport strong{
    font-size:23px!important;
  }
  body #catalog .opn-card.vdc-card .opn-card__price.vdc-card__price strong{
    font-size:25px!important;
  }
}
