/* SSW 1691 · Portada aprobada del marketplace.
  Cualquier dato de negocios / promociones / distancias viene de la app real.
  La imagen de referencia se utiliza solo como ARTE del banner. */
:root{--ssw1691-yellow:#ffce00;--ssw1691-ink:#0a0e12;--ssw1691-border:#e3e7eb}
html body#ssRacingPage #mainContainer.ss-client-modern{background:#fff!important;color:#101720!important}
html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-topnav{
  background:#070b0f!important;border-radius:16px!important;
  box-shadow:0 6px 24px rgba(13,19,28,.14)!important;
}
@media(min-width:1001px){
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-topnav{
   min-height:71px!important;padding:9px clamp(17px,2vw,31px)!important;
   margin:0 0 5px!important;gap:clamp(12px,1.5vw,23px)!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-logo{
   display:inline-flex!important;align-items:center!important;gap:7px!important;
   font-size:clamp(25px,2.15vw,34px)!important;line-height:1!important;letter-spacing:-1.5px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-logo::before{
   content:"";display:block;flex:0 0 57px;width:57px;height:42px;
   background:url('/assets/ssw1691-s-brand.png') center/contain no-repeat!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-toplinks{
   gap:clamp(5px,.65vw,13px)!important;justify-content:space-between!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-toplinks>button{
   font-size:clamp(10px,.8vw,13px)!important;font-weight:800!important;
   min-height:42px!important;border-radius:999px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-nav-primary{
   background:linear-gradient(180deg,#ffe42b,#ffc700)!important;
   color:#0b0d0f!important;padding-inline:21px!important;
   box-shadow:0 3px 0 rgba(0,0,0,.15)!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-row{
   grid-template-columns:minmax(0,2.03fr) minmax(335px,1fr)!important;
   gap:13px!important;margin:9px 0 14px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-row .ssw146-banner{
   background-image:url('/assets/ssw1691-hero-aprobado.webp')!important;
   background-position:center!important;background-size:100% 100%!important;
   height:clamp(149px,12.45vw,215px)!important;
   min-height:clamp(149px,12.45vw,215px)!important;
   max-height:215px!important;
   border-radius:20px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature,
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-empty{
   height:clamp(149px,12.45vw,215px)!important;
   min-height:clamp(149px,12.45vw,215px)!important;
   max-height:215px!important;
   background:linear-gradient(124deg,#ffce00,#ffdd38 67%,#ffc000)!important;
   padding:19px!important;border-radius:20px!important;border:0!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature-copy{gap:7px!important;max-width:67%!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature em{
   align-self:flex-start!important;background:#171512!important;color:#fff9ca!important;
   border-radius:999px!important;padding:7px 12px!important;letter-spacing:.1px!important;
   font-size:10px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature em::before{content:"★ ";color:#ffd100}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature strong{
   font-size:clamp(20px,1.68vw,29px)!important;line-height:1.07!important;
   -webkit-line-clamp:3!important;letter-spacing:-.55px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature small{font-size:13px!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature b{
   background:#121211!important;color:#ffdf2d!important;border-radius:999px!important;
   display:inline-block!important;align-self:flex-start!important;padding:9px 17px!important;
   font-size:19px!important;box-shadow:0 3px 9px rgba(0,0,0,.15)!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-feature img{
   mix-blend-mode:normal!important;object-fit:cover!important;
   position:absolute!important;width:34%!important;height:76%!important;
   top:12%!important;bottom:auto!important;right:10px!important;
   border-radius:14px!important;
 }
 /* Location + live search form sit in one common row on desktop. */
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-home-top{
   position:relative!important;z-index:3!important;width:23.5%!important;
   min-height:55px!important;height:55px!important;margin:0!important;
   background:#fff!important;border:1px solid #dfe4e9!important;
   box-shadow:0 5px 13px rgba(13,22,32,.08)!important;border-radius:999px!important;
   padding:5px 15px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-home-top .ss-client-location{
   width:100%!important;max-width:100%!important;min-height:43px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card{
   width:calc(76.5% - 14px)!important;align-self:flex-end!important;
   margin:-55px 0 12px!important;padding:5px 5px!important;
   height:55px!important;min-height:55px!important;
   border-radius:999px!important;background:#fff!important;
   border:1px solid #dfe4e9!important;box-shadow:0 5px 13px rgba(13,22,32,.08)!important;
   position:relative!important;display:flex!important;align-items:center!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card .ssw146-search-copy,
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card>.card-title,
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card>.ss-client-search-tools,
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card>svg{display:none!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card #clientSearchInput{
   background:transparent!important;border:0!important;outline:0!important;
   border-radius:999px!important;box-shadow:none!important;margin:0!important;
   padding:9px 139px 9px 55px!important;flex:1 1 auto!important;
   min-height:42px!important;height:42px!important;width:100%!important;
   font-size:15px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card::before{
   content:"";position:absolute;pointer-events:none;left:20px;top:17px;
   width:18px;height:18px;border:3px solid #151b20;border-radius:50%;box-sizing:border-box;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card::after{
   content:"";position:absolute;pointer-events:none;left:38px;top:34px;width:9px;height:3px;
   background:#151b20;transform:rotate(47deg);border-radius:5px;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-search-submit{
   display:flex!important;align-items:center!important;justify-content:center!important;
   border:0!important;position:absolute!important;right:5px;top:5px;
   width:124px!important;height:43px!important;border-radius:999px!important;
   font-weight:900!important;font-size:14px!important;cursor:pointer!important;
   background:#ffce00!important;color:#080b0f!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern nav.ssw146-types{
   gap:10px!important;margin:1px 0 19px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-types .ssw146-category{
   min-height:78px!important;height:78px!important;display:flex!important;flex-direction:column!important;
   border-radius:18px!important;padding:11px 7px!important;gap:6px!important;
   background:#fff!important;border:1px solid #e6e8ec!important;
   box-shadow:0 5px 13px rgba(14,22,32,.08)!important;
   font-size:14px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-types .ssw146-category svg{height:25px!important;width:25px!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-types .ssw146-category.active,
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-types .ssw146-category[aria-pressed="true"]{
   background:linear-gradient(#ffdc05,#ffc800)!important;border-color:#ffcf00!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ss-client-list-head{margin:0 0 15px!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ss-client-list-head h2{
   font-size:clamp(28px,2.3vw,35px)!important;letter-spacing:-.95px!important;position:relative!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ss-client-list-head h2::after{
   content:"";position:absolute;bottom:-7px;left:0;background:#ffcb00;height:5px;width:125px;border-radius:99px;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants{
   grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants>.restaurant-card{
   border-radius:21px!important;border:1px solid #e4e8eb!important;
   min-height:265px!important;overflow:hidden!important;background:#fff!important;
   box-shadow:0 7px 16px rgba(14,22,32,.10)!important;
   position:relative!important;display:flex!important;flex-direction:column!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants>.restaurant-card>img.restaurant-image{
   height:150px!important;min-height:150px!important;max-height:150px!important;
   width:100%!important;border-radius:18px 18px 10px 10px!important;
   object-fit:cover!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants>.restaurant-card>.ssw1677-merchant-logo{
   top:121px!important;left:15px!important;width:55px!important;height:55px!important;
   border-radius:14px!important;border:3px solid #fff!important;box-shadow:0 6px 14px #0003!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .ss-client-restaurant-body{
   padding:13px 13px 15px!important;display:flex!important;flex-direction:column!important;gap:5px!important;flex:1 1 auto!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .restaurant-name{
   font-size:17px!important;font-weight:950!important;line-height:1.17!important;
   min-height:24px!important;padding-left:66px!important;letter-spacing:-.3px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .restaurant-badge{
   position:absolute!important;top:12px!important;left:12px!important;z-index:6!important;
   border-radius:999px!important;padding:5px 12px!important;font-size:11px!important;
   box-shadow:0 2px 7px #0003!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .restaurant-categories{
   font-size:12px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
   color:#52606f!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .ssw1691-card-metadata{
   display:flex!important;align-items:center!important;flex-wrap:wrap!important;
   margin-top:auto!important;gap:7px 14px!important;padding-top:9px!important;
   border-top:1px solid #eef0f2!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .ssw1691-card-metadata .restaurant-info{
   font-size:12px!important;color:#1e2733!important;margin:0!important;line-height:1.25!important;
   white-space:nowrap!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .ss-client-heart{
   width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
   border-radius:50%!important;top:11px!important;right:11px!important;
   background:#fff!important;box-shadow:0 3px 10px #0002!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-benefits{
   order:-169!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;
   border-radius:20px!important;background:#090d12!important;color:#fff!important;
   margin:18px 0 15px!important;padding:15px 12px!important;
   box-shadow:0 6px 18px #0002!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-benefits span{
   display:flex!important;align-items:center!important;justify-content:center!important;
   gap:9px!important;padding:3px 10px!important;white-space:nowrap!important;
   font-weight:850!important;font-size:clamp(12px,1vw,16px)!important;
   border-right:1px solid #ffffff40!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-benefits span:last-child{border-right:0!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-benefits b{
   color:#ffd100!important;font-size:22px!important;line-height:1!important;
 }
}
/* Tablet: keep same identity without crushing navigation/buttons. */
@media(min-width:781px) and (max-width:1220px){
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants{
   grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-types .ssw146-category{min-height:67px!important;height:67px!important;font-size:12px!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card #clientSearchInput{font-size:13px!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-benefits span{font-size:12px!important}
}
/* Mobile: keep actual scrolling, hamburger, compact photo-left cards and full search field. */
@media(max-width:1000px){
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-search-submit{display:none!important}
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-benefits{display:none!important}
}
@media(max-width:780px){
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw1678-hero-row .ssw146-banner{
   background-image:url('/assets/ssw155-hero-mobile.webp')!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card #clientSearchInput{
   font-size:14px!important;min-height:43px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .restaurant-name{
   font-size:15px!important;padding-left:0!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants>.restaurant-card>.ssw1677-merchant-logo{
   top:auto!important;left:90px!important;bottom:9px!important;max-width:32px!important;max-height:32px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-card{transition:none!important;transform:none!important}
}

/* Keep hidden client sections hidden when navigating to orders, account, etc. */
html body#ssRacingPage #mainContainer.ss-client-modern .ssw1691-benefits[hidden]{display:none!important}
@media(min-width:1001px){
 html body#ssRacingPage #mainContainer.ss-client-modern .ssw146-search-card .client-search-results:not(.hidden){
  position:absolute!important;top:52px!important;left:0!important;right:0!important;z-index:2400!important;
  background:#fff!important;padding:12px!important;border:1px solid #e0e5eb!important;
  border-radius:16px!important;box-shadow:0 15px 30px #1114!important;
  max-height:min(55vh,420px)!important;overflow:auto!important;
 }
}
