/* =========================================================
   MotoDealers UK — Global theme v3 (header + footer + accents)
   Loaded site-wide after custom.css. Scope: mdt-* + gentle
   overrides of the existing navbar/footer skeleton.
   ========================================================= */
:root{
  --mdt-red:#AB1F02;
  --mdt-red-dark:#8f1a02;
  --mdt-red-tint:#fdf1ed;
  --mdt-ink:#1F1B2D;
  --mdt-body:#4b4660;
  --mdt-muted:#666276;
  --mdt-soft:#F5F4F8;
  --mdt-line:#e8e6ef;
  /* Badge fills. Deep enough to carry white text at 11.5px over a photo;
     .mdc-b-green / .mdc-b-amber referenced these before they existed, so the
     badges rendered with no background at all. */
  --mdt-green:#0a6b4d;
  --mdt-amber:#a15c00;
}

/* ---------------- HEADER ---------------- */
.mdt-topwrap header.navbar, header.navbar.fixed-top{
  background:rgba(255,255,255,.92)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--mdt-line);
  box-shadow:none;
  transition:box-shadow .2s ease;
}
.mdt-topwrap header.navbar.navbar-stuck, header.navbar.fixed-top.navbar-stuck{
  box-shadow:0 1px 2px rgba(31,27,45,.06),0 4px 12px rgba(31,27,45,.06);
}
header.navbar .nav-link{
  font-weight:600;
  color:var(--mdt-body)!important;
  border-radius:999px;
  padding-left:.85rem!important;
  padding-right:.85rem!important;
  transition:background .14s ease,color .14s ease;
}
header.navbar .nav-link:hover,
header.navbar .nav-link:focus{
  background:var(--mdt-soft);
  color:var(--mdt-ink)!important;
}
header.navbar .nav-link.active{
  color:var(--mdt-red)!important;
}
header.navbar .btn-primary{
  border-radius:999px;
  font-weight:700;
  padding:.5rem 1.1rem;
  box-shadow:none;
  transition:.16s;
}
header.navbar .btn-primary:hover{
  background-color:var(--mdt-red-dark);
  transform:translateY(-1px);
  box-shadow:0 6px 18px rgba(171,31,2,.3);
}
header.navbar .navbar-toggler{
  border:1.5px solid var(--mdt-line);
  border-radius:12px;
}
@media (max-width:991.98px){
  header.navbar .navbar-collapse{
    background:#fff;
    border-radius:16px;
    box-shadow:0 6px 16px rgba(31,27,45,.09),0 16px 40px rgba(31,27,45,.10);
    padding:.75rem 1rem;
    margin-top:.6rem;
  }
}

/* ---------------- FOOTER ---------------- */
.mdt-footer{
  background:var(--mdt-ink);
  color:#b9b4c7;
  margin-top:0;
  font-size:14.5px;
}
.mdt-footer a{color:#cfcbdc;text-decoration:none;transition:color .13s ease}
.mdt-footer a:hover{color:#fff}
.mdt-foot-main{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;
  gap:32px;
  padding:48px 0 36px;
}
.mdt-foot-about p{font-size:14px;max-width:280px;margin:14px 0 0;color:#b9b4c7}
.mdt-foot-logo{display:inline-flex;align-items:center}
.mdt-foot-logo img{filter:invert(1);opacity:1}
.mdt-socials{display:flex;gap:10px;margin-top:18px}
.mdt-socials a{
  width:38px;height:38px;border-radius:11px;
  background:rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;color:#fff;
  transition:background .14s ease;
}
.mdt-socials a:hover{background:var(--mdt-red)}
.mdt-fcol h4{
  color:#fff;font-size:13px;text-transform:uppercase;
  letter-spacing:.07em;margin:0 0 13px;font-weight:700;
}
.mdt-fcol a{display:block;font-size:14px;padding:4px 0;font-weight:500}
.mdt-foot-seo{
  border-top:1px solid rgba(255,255,255,.09);
  padding:22px 0;
  display:flex;flex-wrap:nowrap;align-items:center;gap:14px;
  overflow-x:auto;overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;-ms-overflow-style:none;
  font-size:13px;color:#9a95ab;
}
.mdt-foot-seo::-webkit-scrollbar{display:none}
.mdt-foot-seo a{color:#9a95ab;font-weight:500;white-space:nowrap;flex:0 0 auto}
.mdt-foot-seo a:hover{color:#fff}
.mdt-foot-bottom{
  border-top:1px solid rgba(255,255,255,.09);
  padding:20px 0;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:nowrap;gap:24px;
  font-size:12.5px;color:#9a95ab;
}
.mdt-foot-bottom>span{white-space:nowrap}
.mdt-foot-bottom a{color:#fff}
.mdt-foot-heyowner{margin-top:2px}
@media (max-width:1399.98px){
  .mdt-foot-seo{
    -webkit-mask-image:linear-gradient(to right,#000 90%,rgba(0,0,0,.15) 100%);
    mask-image:linear-gradient(to right,#000 90%,rgba(0,0,0,.15) 100%);
  }
}
@media (max-width:991.98px){
  .mdt-foot-main{grid-template-columns:1fr 1fr;gap:26px;padding:38px 0 26px}
  .mdt-foot-bottom{flex-wrap:wrap;justify-content:flex-start;gap:6px 18px}
  .mdt-foot-bottom>span{white-space:normal}
}
@media (max-width:575.98px){
  .mdt-foot-main{grid-template-columns:1fr}
}

/* scroll-top button match */
.btn-scroll-top{background-color:rgba(31,27,45,.55)}
.btn-scroll-top:hover{background-color:var(--mdt-red)}


/* Ponizej 400 px logo w naturalnej szerokosci wypycha przycisk "Sell bike"
   do drugiego rzedu i naglowek rosnie z 80 do 122 px. Kazda podstrona liczy
   swoj odstep od gory wzgledem tej wysokosci, wiec to nie jest kosmetyka. */
@media (max-width:991.98px){
  /* Kolejnosc w DOM to marka -> hamburger -> akcje -> menu, a hamburger ma
     ms-auto, wiec zabieral CALA wolna przestrzen jako margines i wypychal
     przycisk "Sell bike" do drugiego rzedu. Naglowek rosl wtedy z 80 do
     122 px, co rozjezdzalo odstepy liczone przez podstrony. Ustawiamy
     kolejnosc wizualna: marka | akcje | hamburger | menu. */
  .mdt-header .navbar-brand{order:1;margin-right:.5rem!important}
  .mdt-header .mdt-actions{order:2;margin-left:auto}
  .mdt-header .navbar-toggler{order:3;margin-left:.5rem!important}
  .mdt-header .navbar-collapse{order:4}
}

@media (max-width:399.98px){
  .mdt-header .navbar-brand img{width:118px;height:auto}
}
/* Galaxy Fold i starsze male Androidy. Ponizej tej szerokosci nawet 118 px
   logo nie miesci sie razem z przyciskiem i hamburgerem. */
@media (max-width:359.98px){
  .mdt-header .navbar-brand img{width:98px}
  .mdt-header .mdt-actions .btn-primary{padding-left:.7rem;padding-right:.7rem}
}

/* ---------------- NAWIGACJA: JEDEN RZAD ----------------
   Naglowek ma dwa rzedy i skonczona szerokosc. Przy osmiu pozycjach drugi
   rzad zawijal sie juz przy 1320 px kontenera, bo kazdy .nav-link ma
   .85rem paddingu z obu stron. Rozwiazanie jest strukturalne (grupowanie
   w menu, patrz layouts/app.blade.php), a te reguly sa zabezpieczeniem:
   nawigacja ma sie nie zawinac nigdy, nawet gdy dojdzie kolejna pozycja. */
@media (min-width:992px){
  .mdt-header>.container{flex-wrap:nowrap}
  .mdt-header .navbar-nav{flex-wrap:nowrap}
  .mdt-header .navbar-collapse{min-width:0}
  .mdt-header .nav-link{white-space:nowrap}
  .mdt-header .mdt-actions{flex:0 0 auto}
}

/* Rozwijane menu naglowka. Kazda pozycja ma podpis - "MOT pass rates" samo
   w sobie nikomu nic nie mowi, a to jest wlasnie ta czesc serwisu, ktorej
   nikt jeszcze nie zna. */
/* Strzalka wymuszona jawnie - motyw gasi wariant bootstrapowy, a bez zadnego
   znaku nikt nie wie, ze pozycja sie rozwija. */
/* Strzalka pochodzi z motywu (font ikonowy "finder-icons"), wiec nie
   podmieniamy jej na wlasna - tylko odsuwamy i przygaszamy. */
.mdt-header .nav-link.dropdown-toggle::after{margin-left:.42em;opacity:.5}
.mdt-header .nav-link.dropdown-toggle:hover::after,
.mdt-header .nav-link.dropdown-toggle.show::after{opacity:.9}
/* MARGINESU GORNEGO TU NIE MOZE BYC. Motyw otwiera te menu na hover
   (.navbar-expand-lg .dropdown:hover>.dropdown-menu{display:block}), wiec kazdy
   odstep miedzy pozycja a panelem jest martwa strefa: kursor traci hover nad
   <li> zanim wejdzie w panel, panel znika i nie da sie do niego dojechac.
   Odstep robimy paddingiem WEWNATRZ panelu, a dodatkowy niewidoczny mostek
   ponizej domyka ewentualne przesuniecie z Poppera po kliknieciu. */
.mdt-mega{min-width:290px;border:1px solid var(--mdt-line);border-radius:14px;padding:10px;margin-top:0;
  box-shadow:0 6px 16px rgba(31,27,45,.09),0 16px 40px rgba(31,27,45,.10)}
.mdt-mega::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.mdt-mega .dropdown-item{border-radius:10px;padding:9px 12px;white-space:normal}
.mdt-mega .dropdown-item b{display:block;font-size:14.5px;font-weight:700;color:var(--mdt-ink);line-height:1.3}
.mdt-mega .dropdown-item span{display:block;font-size:12.5px;color:var(--mdt-muted);margin-top:2px;line-height:1.4}
.mdt-mega .dropdown-item:hover,.mdt-mega .dropdown-item:focus{background:var(--mdt-soft)}
.mdt-mega .dropdown-item:hover b{color:var(--mdt-red)}
.mdt-mega .dropdown-item:active{background:var(--mdt-soft)}

/* Menu na telefonie jest plaskie - rozwijanie w rozwinietym menu to klik
   za duzo. Zamiast tego naglowki sekcji. */
.mdt-mgroup{margin-top:8px;padding-top:6px;border-top:1px solid var(--mdt-line)}
.mdt-mhead{list-style:none}
.mdt-mgroup-h{display:block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;
  color:var(--mdt-muted);padding:10px 1rem 4px}

/* ---------------- CHANNEL BAR + TOPWRAP ---------------- */
.mdt-topwrap{z-index:1030}
.mdt-chanbar{
  background:var(--mdt-soft);
  border-bottom:1px solid var(--mdt-line);
  font-size:13px;
}
.mdt-chan-nav{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.mdt-chan-nav::-webkit-scrollbar{display:none}
.mdt-chan-nav a{
  padding:7px 11px 6px;
  font-weight:600;color:var(--mdt-muted);
  white-space:nowrap;border-bottom:2px solid transparent;
  text-decoration:none;transition:color .13s ease;
}
.mdt-chan-nav a:hover{color:var(--mdt-ink)}
.mdt-chan-nav a.on{color:var(--mdt-ink);border-color:var(--mdt-red)}
.mdt-saved{
  display:inline-flex;align-items:center;gap:7px;
  font-size:13.5px;font-weight:600;color:var(--mdt-body);
  padding:8px 12px;border-radius:999px;margin-right:2px;
  text-decoration:none;transition:background .14s ease,color .14s ease;
}
.mdt-saved:hover{background:var(--mdt-soft);color:var(--mdt-red)}
.mdt-saved .fa{font-size:15px}
/* offset content for taller fixed header (chanbar visible >=992px) */
@media (min-width:992px){
  main.page-wrapper{padding-top:34px}
}


/* ================= WIDGETY v3 (globalne, uzywane na wielu stronach) ================= */
.mdw-sec{padding-top:44px;padding-bottom:44px}
.mdw-hd{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:20px}
.mdw-hd h2{font-size:clamp(21px,2.3vw,27px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink);margin:0;position:relative;padding-left:15px}
.mdw-hd h2::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:5px;border-radius:3px;background:var(--mdt-red)}
.mdw-sub{color:var(--mdt-muted);font-size:15px;margin:4px 0 0;max-width:640px}
.mdw-more{font-weight:700;font-size:14.5px;color:var(--mdt-red)!important;white-space:nowrap;text-decoration:none}
.mdw-more:hover{text-decoration:underline}

/* karty typow nadwozia */
.mdw-bt-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.mdw-bt{display:block;background:#fff;border:1px solid var(--mdt-line);border-radius:16px;overflow:hidden;text-align:center;transition:.18s;text-decoration:none}
.mdw-bt:hover{box-shadow:0 6px 16px rgba(31,27,45,.09),0 16px 40px rgba(31,27,45,.10);transform:translateY(-3px);border-color:transparent}
.mdw-bt img{width:100%;aspect-ratio:4/3;object-fit:contain;padding:10px;background:#fff}
.mdw-bt b{display:block;font-size:14.5px;color:var(--mdt-ink);padding:0 8px 14px}

/* grid marek */
.mdw-brand-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.mdw-brand{display:flex;flex-direction:column;align-items:center;gap:8px;background:#fff;border:1px solid var(--mdt-line);border-radius:16px;padding:22px 12px 16px;transition:.18s;text-decoration:none}
.mdw-brand:hover{border-color:var(--mdt-red);box-shadow:0 1px 2px rgba(31,27,45,.06),0 4px 12px rgba(31,27,45,.06)}
.mdw-brand img{height:96px;width:auto;max-width:94%;object-fit:contain}
.mdw-brand b{font-size:14px;color:var(--mdt-ink)}
.mdw-brand span{font-size:12px;color:var(--mdt-muted)}

/* wideo */
.mdw-vid-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.mdw-vid{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--mdt-line);cursor:pointer;background:#000;transition:.18s}
.mdw-vid:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(31,27,45,.12)}
.mdw-vid img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;opacity:.92}
.mdw-vid .mdw-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-56%);width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:center;color:var(--mdt-red);font-size:19px;padding-left:4px;transition:.15s}
.mdw-vid:hover .mdw-play{transform:translate(-50%,-56%) scale(1.1)}
.mdw-vid figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px 14px 12px;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent);color:#fff;font-size:14px;font-weight:700}

/* blog */
.mdw-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mdw-post{display:flex;flex-direction:column;background:#fff;border:1px solid var(--mdt-line);border-radius:16px;overflow:hidden;transition:.18s;text-decoration:none}
.mdw-post:hover{box-shadow:0 6px 16px rgba(31,27,45,.09),0 16px 40px rgba(31,27,45,.10);transform:translateY(-3px);border-color:transparent}
.mdw-post img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--mdt-soft)}
.mdw-post-b{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.mdw-post-b h3{font-size:16.5px;font-weight:800;color:var(--mdt-ink);line-height:1.3;margin:0 0 6px}
.mdw-post-b p{font-size:14px;color:var(--mdt-muted);margin:0 0 10px}
.mdw-post-b .mdw-read{margin-top:auto;font-size:13.5px;font-weight:700;color:var(--mdt-red)}

/* dealer spotlight */
.mdw-spot{display:grid;grid-template-columns:1fr 1fr;border-radius:20px;overflow:hidden;background:var(--mdt-ink);color:#fff}
.mdw-spot-img{min-height:280px;background:var(--mdt-soft)}
.mdw-spot-img img{width:100%;height:100%;object-fit:cover;display:block}
.mdw-spot-b{padding:clamp(24px,3.4vw,40px);display:flex;flex-direction:column;justify-content:center}
.mdw-spot-tag{display:inline-flex;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.13);color:#fff;width:max-content;margin-bottom:12px}
.mdw-spot-b h2{color:#fff;font-size:clamp(20px,2.2vw,26px);font-weight:800;margin:0 0 4px}
.mdw-spot-b h2 a{color:#fff;text-decoration:none}
.mdw-spot-b h2 a:hover{text-decoration:underline}
.mdw-spot-town{color:#b9b4c7;font-size:14px;margin-bottom:12px}
.mdw-spot-b p{color:#c6c2d4;font-size:14.5px;margin:0 0 18px}
.mdw-spot-cta{display:flex;gap:10px;flex-wrap:wrap}
.mdw-btn-red{display:inline-flex;align-items:center;font-weight:700;font-size:14.5px;padding:11px 20px;border-radius:999px;background:var(--mdt-red);color:#fff!important;text-decoration:none;transition:.15s}
.mdw-btn-red:hover{background:var(--mdt-red-dark)}
.mdw-btn-ghost{display:inline-flex;align-items:center;font-weight:700;font-size:14.5px;padding:11px 20px;border-radius:999px;color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);text-decoration:none;transition:.15s}
.mdw-btn-ghost:hover{box-shadow:inset 0 0 0 1.5px #fff;background:rgba(255,255,255,.06)}

@media (max-width:991.98px){
  .mdw-bt-grid,.mdw-brand-grid{grid-template-columns:repeat(3,1fr)}
  .mdw-vid-grid{grid-template-columns:repeat(2,1fr)}
  .mdw-blog-grid{grid-template-columns:1fr 1fr}
  .mdw-spot{grid-template-columns:1fr}
  .mdw-spot-img{min-height:220px}
}
@media (max-width:575.98px){
  .mdw-sec{padding-top:34px;padding-bottom:34px}
  .mdw-bt-grid,.mdw-brand-grid{grid-template-columns:repeat(2,1fr)}
  .mdw-vid-grid{grid-template-columns:1fr}
  .mdw-blog-grid{grid-template-columns:1fr}
}


/* ================= KARTA WYNIKU v3 (global: SRP, landingi, near-me) ================= */
.mdc-card{background:#fff;border:1px solid var(--mdt-line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;height:100%;transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}
.mdc-card:hover{box-shadow:0 6px 16px rgba(31,27,45,.09),0 16px 40px rgba(31,27,45,.10);transform:translateY(-3px);border-color:transparent}
.mdc-card-premium{border-color:rgba(171,31,2,.3)}
.mdc-img{position:relative;aspect-ratio:4/3;background:#edeaf2;overflow:hidden}
.mdc-img a{display:block;width:100%;height:100%}
.mdc-img img{width:100%;height:100%;object-fit:cover;display:block}
.mdc-badges{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-wrap:wrap;gap:5px;max-width:80%}
/* Badges sit on top of a photo of unknown brightness, so every variant is a
   solid fill with white text and a shadow that lifts it off the image. */
.mdc-badge{font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px;line-height:1.3;letter-spacing:.01em;color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.22),0 2px 8px rgba(0,0,0,.18)}
.mdc-b-ink{background:var(--mdt-ink);color:#fff}
.mdc-b-green{background:var(--mdt-green);color:#fff}
.mdc-b-amber{background:var(--mdt-amber);color:#fff}
.mdc-b-red{background:var(--mdt-red);color:#fff}
.mdc-b-featured{background:#fff;color:var(--mdt-red)}
.mdc-save{position:absolute;top:8px;right:8px;z-index:3}
.mdc-shots{position:absolute;bottom:10px;right:10px;z-index:2;background:rgba(31,27,45,.78);color:#fff;font-size:12px;font-weight:600;padding:4px 9px;border-radius:999px;backdrop-filter:blur(4px)}
.mdc-body{padding:14px 16px 15px;display:flex;flex-direction:column;flex:1}
.mdc-title{font-size:16px;font-weight:800;line-height:1.25;margin:0 0 8px;letter-spacing:-.01em}
.mdc-title a{color:var(--mdt-ink);text-decoration:none}
.mdc-title a:hover{color:var(--mdt-red)}
.mdc-specs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none}
.mdc-specs li{font-size:12px;font-weight:600;color:var(--mdt-body);background:var(--mdt-soft);padding:3.5px 9px;border-radius:999px}
.mdc-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}
.mdc-price{font-size:19px;font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink)}
.mdc-was{font-size:13px;color:var(--mdt-muted);text-decoration:line-through;margin-left:6px}
.mdc-mo{font-size:14.5px;font-weight:800;color:var(--mdt-ink);white-space:nowrap}
.mdc-mo small{font-size:11.5px;font-weight:600;color:var(--mdt-muted)}
/* Dealer name sits on its own full-width line above the location: on one
   shared row the name (the part buyers actually recognise) was the half
   getting ellipsised. */
.mdc-foot{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px;border-top:1px solid var(--mdt-line);padding-top:11px;font-size:12.5px}
.mdc-seller{font-weight:700;color:var(--mdt-ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
a.mdc-seller:hover{color:var(--mdt-red);text-decoration:underline}
.mdc-loc{color:var(--mdt-muted);font-weight:600;white-space:nowrap;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis}
/* zapis-serce: nadpisujemy stary btn-icon na czysty krazek */
.mdc-save .btn{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.95)!important;border:none;box-shadow:0 1px 2px rgba(31,27,45,.06),0 4px 12px rgba(31,27,45,.06);color:#8b8699!important;display:flex;align-items:center;justify-content:center;padding:0;transition:.15s}
.mdc-save .btn:hover{transform:scale(1.08);color:var(--mdt-red)!important}
.mdc-save .btn .fa{font-size:15px}


/* ================= FILTR RAIL + LAYOUT WYNIKOW v3 ================= */
.mds-wrap{max-width:1320px;margin:0 auto;padding:76px 20px 0}
@media(max-width:991.98px){.mds-wrap{padding-top:60px}}
.mds-head{padding:20px 0 6px}
.mds-crumb{font-size:13px;color:var(--mdt-muted);margin-bottom:8px}
.mds-crumb a{color:var(--mdt-muted);text-decoration:none}
.mds-crumb a:hover{color:var(--mdt-red)}
.mds-h1{font-size:clamp(22px,2.6vw,30px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink);margin:0}
.mds-grid{display:grid;grid-template-columns:288px 1fr;gap:24px;align-items:start;padding:14px 0 40px}
.mds-rail-col{position:sticky;top:150px}
.mds-results-col{min-width:0}

.mdf-rail{background:#fff;border:1px solid var(--mdt-line);border-radius:16px;padding:16px 16px 4px}
.mdf-group{margin-bottom:14px}
.mdf-label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mdt-muted);margin-bottom:5px}
.mdf-select,.mdf-input{width:100%;font-family:inherit;font-size:14.5px;font-weight:600;color:var(--mdt-ink);background:var(--mdt-soft);border:1.5px solid transparent;border-radius:11px;padding:10px 12px;outline:none;transition:.14s;appearance:none}
.mdf-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666276' d='M6 8 0 2l1.4-1.4L6 5.2 10.6.6 12 2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.mdf-input{font-weight:500}
.mdf-input::placeholder{color:#a7a2b5}
.mdf-select:focus,.mdf-input:focus{border-color:var(--mdt-red);background-color:#fff;box-shadow:0 0 0 3px rgba(171,31,2,.1)}
.mdf-row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mdf-err{display:block;color:#c0392b;font-size:12px;margin-top:4px;font-weight:600}
.mdf-actions{position:sticky;bottom:0;background:#fff;padding:12px 0 14px;margin-top:4px;border-top:1px solid var(--mdt-line)}
.mdf-btn-search{width:100%;font-weight:700;font-size:15px;border:none;border-radius:999px;background:var(--mdt-red);color:#fff;padding:12px;cursor:pointer;transition:.15s}
.mdf-btn-search:hover{background:var(--mdt-red-dark)}
.mdf-clear{display:block;text-align:center;font-size:13px;font-weight:600;color:var(--mdt-muted);margin-top:10px;text-decoration:none}
.mdf-clear:hover{color:var(--mdt-red)}

/* pasek nad wynikami: sort + count */
.mds-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.mds-count{font-size:15px;font-weight:700;color:var(--mdt-ink)}
.mds-count span{color:var(--mdt-muted);font-weight:600}
.mds-sort{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--mdt-muted)}
.mds-sort select{font-family:inherit;font-size:14px;font-weight:600;color:var(--mdt-ink);background:var(--mdt-soft);border:1.5px solid transparent;border-radius:10px;padding:8px 30px 8px 12px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666276' d='M6 8 0 2l1.4-1.4L6 5.2 10.6.6 12 2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer;outline:none}
.mds-mobile-filter{display:none}

/* chipy aktywnych filtrow */
.mds-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.mds-chip{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--mdt-ink);background:var(--mdt-red-tint);border:1px solid rgba(171,31,2,.2);padding:6px 8px 6px 12px;border-radius:999px;text-decoration:none;transition:.14s}
.mds-chip:hover{border-color:var(--mdt-red);color:var(--mdt-ink)}
.mds-chip .x{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:var(--mdt-red);color:#fff;font-size:10px;line-height:1}
.mds-chip-clear{display:inline-flex;align-items:center;font-size:13px;font-weight:700;color:var(--mdt-red);padding:6px 4px;text-decoration:none}
.mds-chip-clear:hover{text-decoration:underline}

/* siatka kart wynikow */
.mds-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}

@media (max-width:1199.98px){
  .mds-grid{grid-template-columns:260px 1fr;gap:18px}
  .mds-cards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:991.98px){
  .mds-grid{grid-template-columns:1fr}
  .mds-rail-col{display:none}
  .mds-mobile-filter{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:#fff;background:var(--mdt-ink);border:none;border-radius:999px;padding:9px 18px;cursor:pointer}
  .mds-cards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:575.98px){
  .mds-cards{grid-template-columns:1fr}
  .mds-bar{gap:10px}
}

/* --- SRP: mobile filter button (hide on desktop), empty state, offcanvas --- */
@media (min-width:992px){
  .mds-mobile-filter{display:none}
}
.mds-empty{
  text-align:center;
  padding:56px 20px;
  background:var(--mdt-soft);
  border:1px solid var(--mdt-line);
  border-radius:18px;
  margin-top:6px;
}
.mds-empty-ic{
  width:64px;height:64px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid var(--mdt-line);
  color:var(--mdt-red);font-size:24px;margin-bottom:16px;
}
.mds-empty h2{font-size:20px;font-weight:800;color:var(--mdt-ink);margin:0 0 8px}
.mds-empty p{font-size:15px;color:var(--mdt-muted);max-width:420px;margin:0 auto 20px}

.mds-offcanvas{width:90%!important;max-width:360px}
.mds-offcanvas .offcanvas-header{border-bottom:1px solid var(--mdt-line)}
.mds-offcanvas .offcanvas-body{padding:16px}
.mds-offcanvas .mdf-rail{position:static}

/* SRP desktop rail: scroll internally when taller than viewport so submit stays reachable */
@media (min-width:992px){
  .mds-rail-col{max-height:calc(100vh - 172px);overflow-y:auto;overflow-x:hidden;padding-right:6px;scrollbar-width:thin}
  .mds-rail-col::-webkit-scrollbar{width:8px}
  .mds-rail-col::-webkit-scrollbar-thumb{background:var(--mdt-line);border-radius:8px}
}

/* SRP: sticky compact summary bar (count + sort + Filters) — stays under fixed header */
.mds-bar{
  position:sticky;
  top:117px;
  z-index:6;
  background:#fff;
  padding:10px 0;
  border-bottom:1px solid var(--mdt-line);
}
@media (max-width:991.98px){
  .mds-bar{top:112px}
}

/* SRP intro copy under H1 */
.mds-intro{margin:6px 0 0;font-size:14.5px;color:var(--mdt-muted);max-width:760px;line-height:1.5}

/* SRP related searches (internal linking hub) */
.mds-related{margin:8px 0 40px;padding:24px;background:var(--mdt-soft);border:1px solid var(--mdt-line);border-radius:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.mds-related-grp h2{font-size:13px;font-weight:800;color:var(--mdt-ink);text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}
.mds-related-grp ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mds-related-grp li{margin:0}
.mds-related-grp a{display:inline-block;font-size:13.5px;font-weight:600;color:var(--mdt-body);background:#fff;border:1px solid var(--mdt-line);border-radius:999px;padding:7px 14px;text-decoration:none;transition:border-color .13s,color .13s}
.mds-related-grp a:hover{border-color:var(--mdt-red);color:var(--mdt-red)}

/* SRP perf: skip below-fold related-block layout/paint until near viewport */
.mds-related{content-visibility:auto;contain-intrinsic-size:0 260px}

/* SRP: save-search button */
.mds-toolright{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.mds-save-btn{display:inline-flex;align-items:center;font-weight:700;font-size:14px;color:var(--mdt-red);background:var(--mdt-red-tint);border:1.5px solid transparent;border-radius:999px;padding:8px 16px;cursor:pointer;transition:.14s}
.mds-save-btn:hover{background:#fff;border-color:var(--mdt-red)}
.mds-saved{display:inline-flex;align-items:center;font-weight:700;font-size:14px;color:var(--mdt-ink)}
.mds-saved a{color:var(--mdt-red);margin-left:4px}

/* Saved searches page */
.mds-ss-emailbar{background:var(--mdt-soft);border:1px solid var(--mdt-line);border-radius:12px;padding:14px 16px;margin-bottom:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mds-ss-emailbar label{font-weight:700;font-size:14px;color:var(--mdt-ink);margin:0}
.mds-ss-list{display:flex;flex-direction:column;gap:12px}
.mds-ss-item{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid var(--mdt-line);border-radius:14px;padding:16px 18px}
.mds-ss-name{font-size:16px;font-weight:800;color:var(--mdt-ink);text-decoration:none}
.mds-ss-name:hover{color:var(--mdt-red)}
.mds-ss-date{display:block;font-size:12.5px;color:var(--mdt-muted);margin-top:2px}
.mds-ss-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mds-ss-toggle{font-weight:700;font-size:13.5px;color:var(--mdt-body);background:var(--mdt-soft);border:1.5px solid transparent;border-radius:999px;padding:8px 14px;cursor:pointer}
.mds-ss-toggle.on{color:#fff;background:var(--mdt-red)}
.mds-ss-view{font-weight:700;font-size:13.5px;color:var(--mdt-red);text-decoration:none}
.mds-ss-del{background:none;border:none;color:var(--mdt-muted);cursor:pointer;font-size:15px;padding:6px}
.mds-ss-del:hover{color:var(--mdt-red)}

/* =========================================================
   Landing sections (mdl-*) — homepage-grade blocks for category landings
   (mirrors mdh-* look but uses site-wide theme vars, so it works off-homepage)
   ========================================================= */
.mdl-sec{padding-top:44px;padding-bottom:44px}
.mdl-sec-soft{background:var(--mdt-soft)}
.mdl-sec-hd{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}
.mdl-sec-hd h2{font-size:clamp(21px,2.4vw,27px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink);margin:0}
.mdl-sub{color:var(--mdt-muted);font-size:15px;margin:4px 0 0;max-width:680px}
.mdl-see-all{font-weight:700;font-size:14.5px;color:var(--mdt-red);white-space:nowrap;text-decoration:none}
.mdl-see-all:hover{text-decoration:underline}
.mdl-stats{display:flex;flex-wrap:wrap;gap:14px;margin:2px 0 4px}
.mdl-stat{flex:1 1 150px;background:#fff;border:1px solid var(--mdt-line);border-radius:14px;padding:15px 18px}
.mdl-stat b{display:block;font-size:clamp(20px,2.2vw,26px);font-weight:800;color:var(--mdt-ink);line-height:1.1}
.mdl-stat span{font-size:12.5px;color:var(--mdt-muted)}
.mdl-pills{display:flex;flex-wrap:wrap;gap:9px}
.mdl-pill{display:inline-flex;align-items:center;font-size:13.5px;font-weight:600;color:var(--mdt-body);background:#fff;border:1px solid var(--mdt-line);border-radius:999px;padding:8px 15px;text-decoration:none;transition:border-color .13s,color .13s}
.mdl-pill:hover{border-color:var(--mdt-red);color:var(--mdt-red)}
.mdl-faq{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.mdl-faq details{border-bottom:1px solid var(--mdt-line)}
.mdl-faq summary{list-style:none;cursor:pointer;padding:16px 2px;font-weight:700;font-size:15px;color:var(--mdt-ink);display:flex;justify-content:space-between;align-items:center;gap:12px}
.mdl-faq summary::-webkit-details-marker{display:none}
.mdl-pm{width:26px;height:26px;border-radius:50%;background:var(--mdt-soft);color:var(--mdt-red);display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0;transition:.18s}
.mdl-faq details[open] .mdl-pm{background:var(--mdt-red);color:#fff;transform:rotate(45deg)}
.mdl-ans{padding:0 40px 16px 2px;color:var(--mdt-muted);font-size:14.5px;line-height:1.6}
.mdl-ans a{color:var(--mdt-red);font-weight:600}
.mdl-about{max-width:none}
.mdl-about-h{font-size:clamp(20px,2.2vw,26px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink);margin:0 0 12px;position:relative;padding-left:15px}
.mdl-about-h::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:5px;border-radius:3px;background:var(--mdt-red)}
.mdl-about p{color:var(--mdt-body);font-size:15px;line-height:1.65;margin:0 0 12px}
.mdl-about p:last-child{margin-bottom:0}
.mdl-about a{color:var(--mdt-red);font-weight:600}
.mdl-hub{background:var(--mdt-soft);border-radius:18px;padding:clamp(22px,3vw,34px)}
.mdl-hub h2{font-size:20px;font-weight:800;color:var(--mdt-ink);margin:0 0 4px}
.mdl-hub-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:24px;margin-top:18px}
.mdl-hub-col h3{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--mdt-muted);margin:0 0 10px}
.mdl-hub-col a{display:block;font-size:14px;color:var(--mdt-body);padding:3.5px 0;font-weight:500;text-decoration:none}
.mdl-hub-col a:hover{color:var(--mdt-red)}
@media(max-width:767.98px){.mdl-faq{grid-template-columns:1fr}.mdl-hub-cols{grid-template-columns:1fr 1fr}}
@media(max-width:479.98px){.mdl-hub-cols{grid-template-columns:1fr}}

/* ===== Landing WOW polish ===== */
.mdl-sub{font-size:16.5px;color:var(--mdt-body);line-height:1.55;max-width:760px}
.mdl-stats{gap:16px;margin-top:8px}
.mdl-stat{position:relative;overflow:hidden;border:1px solid var(--mdt-line);border-radius:16px;padding:18px 20px 16px;box-shadow:0 1px 2px rgba(31,27,45,.04);transition:transform .16s ease,box-shadow .16s ease}
.mdl-stat::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--mdt-red),#e0562f)}
.mdl-stat:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(31,27,45,.09)}
.mdl-stat b{font-size:clamp(24px,2.6vw,32px);letter-spacing:-.02em}
.mdl-stat span{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--mdt-muted);font-weight:700}
.mdl-pill{box-shadow:0 1px 2px rgba(31,27,45,.04);transition:transform .13s ease,border-color .13s,color .13s,box-shadow .13s}
.mdl-pill:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(171,31,2,.13)}
.mdl-sec-hd h2{position:relative;padding-left:15px}
.mdl-sec-hd h2::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:5px;border-radius:3px;background:var(--mdt-red)}

/* Landing hero band — soft premium top so white stat/search cards pop */
/* hero band: gray fills up under the fixed header; breadcrumb inside; no trailing strip */
.mdl-top{background:linear-gradient(#faf4f1,#f7ede8);border-bottom:1px solid var(--mdt-line);padding:90px 0 22px;margin-bottom:4px}
.mdl-top .searchbar-sticky{position:static!important;margin:2px 0 0!important;padding-bottom:0!important}
.mdl-top .searchbar-sticky::before{display:none!important}
.mdl-crumb{padding-top:0;padding-bottom:0}
.mdl-crumb nav{margin:0 0 10px 0!important;padding-top:0!important}
@media(max-width:991.98px){.mdl-top{padding-top:76px}}

/* ==================== DEALER PROFILE (mdp) ==================== */
.profile-details-wrap{background:var(--mdt-soft);padding-bottom:40px}
.profile-details-hero{padding-top:96px!important;margin-top:0!important}
@media(max-width:991.98px){.profile-details-hero{padding-top:82px!important}}
.profile-breadcrumb{font-size:13px;color:var(--mdt-muted);margin:0 0 14px}
.profile-breadcrumb a{color:var(--mdt-muted);text-decoration:none}
.profile-breadcrumb a:hover{color:var(--mdt-red)}
.profile-breadcrumb span{margin:0 8px;opacity:.6}
.profile-breadcrumb .current{color:var(--mdt-ink);font-weight:600}
.profile-hero-card{background:#fff;border:1px solid var(--mdt-line);border-radius:20px;padding:clamp(22px,3vw,34px);box-shadow:0 1px 3px rgba(31,27,45,.05)}
.profile-hero-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.profile-hero-logo{object-fit:contain;flex-shrink:0;background:#fff;border:1px solid var(--mdt-line);border-radius:14px;padding:10px 14px}
.profile-hero-header .profile-hero-logo{width:180px;height:68px}
.profile-hero-logo-mobile{width:150px;height:57px;margin:2px 0 -2px}
.profile-hero-title{min-width:0}
.profile-hero-title h1{font-size:clamp(26px,3.2vw,40px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink)}
.profile-hero-location{color:var(--mdt-muted);font-size:15px;font-weight:600;display:flex;align-items:center}
.profile-hero-h1-sub{margin-top:6px;letter-spacing:0;line-height:1.35}
.profile-hero-rating{display:inline-flex;align-items:center;gap:6px;margin-top:10px;text-decoration:none;font-size:14px;color:var(--mdt-ink)}
.profile-hero-rating .fa-star,.profile-hero-rating .fa-star-half-o,.profile-hero-rating .fa-star-o,.fill-yellow{color:#f5a623}
.profile-hero-rating span{color:var(--mdt-muted)}
.profile-hero-rating-count{font-weight:600}
.profile-hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 6px}
.profile-hero-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}
.profile-hero-meta-item{background:var(--mdt-soft);border:1px solid var(--mdt-line);border-radius:14px;padding:14px 16px}
.profile-hero-meta-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mdt-muted);margin-bottom:4px}
.profile-hero-meta-value{font-size:14.5px;color:var(--mdt-ink);line-height:1.5;word-break:break-word}
.profile-hero-meta-value a{color:var(--mdt-red);font-weight:600;text-decoration:none}
.profile-hero-description{color:var(--mdt-body);font-size:15px;line-height:1.65;margin-top:14px}
.profile-hero-description p{margin:0 0 10px}
@media(max-width:767.98px){.profile-hero-meta{grid-template-columns:1fr}}

.profile-section-header{margin-bottom:18px}
.profile-section-header h2,.profile-top-bikes h2,.profile-reviews h2,.profile-related-searches h2,.profile-gallery .main-title h2,.profile-faq h2,.profile-contact-section .main-title h2{position:relative;padding-left:15px;font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink)}
.profile-section-header h2::before,.profile-top-bikes h2::before,.profile-reviews h2::before,.profile-related-searches h2::before,.profile-gallery .main-title h2::before,.profile-faq h2::before,.profile-contact-section .main-title h2::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:5px;border-radius:3px;background:var(--mdt-red)}

/* trust stat tiles */
.profile-trust-stats{display:flex;flex-wrap:wrap;gap:14px}
.profile-trust-stat{flex:1 1 160px;background:#fff;border:1px solid var(--mdt-line);border-radius:16px;padding:18px 20px;position:relative;overflow:hidden;text-decoration:none;box-shadow:0 1px 2px rgba(31,27,45,.04)}
.profile-trust-stat::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--mdt-red),#e0562f)}
.profile-trust-stat b{display:block;font-size:clamp(22px,2.4vw,30px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink);line-height:1.1}
.profile-trust-stat span{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--mdt-muted);font-weight:700}
a.profile-trust-stat:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(31,27,45,.09);transition:.16s}

/* top bike cards */
.profile-top-bike-card{border-radius:14px!important;overflow:hidden;text-decoration:none;color:inherit;transition:transform .16s,box-shadow .16s}
.profile-top-bike-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(31,27,45,.12)!important}
.profile-top-bike-media{aspect-ratio:4/3;overflow:hidden;background:var(--mdt-soft)}
.profile-top-bike-media img{width:100%;height:100%;object-fit:cover}
.profile-top-bike-title{font-weight:700;font-size:14px;color:var(--mdt-ink);line-height:1.3}
.profile-top-bike-price{color:var(--mdt-red);font-weight:800;margin-top:4px}

/* services */
.profile-services-grid{display:flex;flex-wrap:wrap;gap:10px}
.profile-service-card{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--mdt-line);border-radius:999px;padding:8px 16px;font-size:14px;color:var(--mdt-ink);font-weight:500}
.profile-service-icon{color:#1f9d55}

/* map */
.profile-map-wrap{margin-bottom:26px}
.profile-map-frame{width:100%;height:320px;border:0;border-radius:16px;display:block;background:var(--mdt-soft)}
.profile-map-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:14px;color:var(--mdt-body)}

/* contact section */
.profile-contact-section{background:var(--mdt-soft)!important;border-top:1px solid var(--mdt-line);padding-bottom:40px}
.profile-contact-card{background:#fff;border:1px solid var(--mdt-line);border-radius:16px;padding:20px;height:100%}
.profile-contact-card h3{font-weight:800;color:var(--mdt-ink)}
.profile-contact-card a{color:var(--mdt-red);text-decoration:none;font-weight:600;word-break:break-word}
.profile-contact-text{color:var(--mdt-body);font-size:14.5px;line-height:1.6}
.profile-opening-hours{list-style:none;padding:0;margin:0}
.profile-opening-hours li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--mdt-line);font-size:14px;color:var(--mdt-body)}
.profile-opening-hours li span{font-weight:600;color:var(--mdt-ink)}
.profile-opening-hours li.text-success{color:var(--mdt-red)!important}
.profile-opening-hours li.text-success span{color:var(--mdt-red)!important}

/* reviews */
.profile-reviews-summary{display:flex;align-items:center;font-size:14px}
.profile-reviews-summary .fill-yellow,.profile-reviews-summary .fa-star,.profile-reviews-summary .fa-star-o,.profile-reviews-summary .fa-star-half-o{color:#f5a623}
.profile-reviews-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.profile-review-card{background:#fff;border:1px solid var(--mdt-line);border-radius:16px;padding:18px 20px}
.profile-review-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.profile-review-author{font-weight:700;color:var(--mdt-ink)}
.profile-review-stars .fa-star{color:#f5a623}
.profile-review-stars .fa-star-o{color:#d9d6e0}
.profile-review-title{font-weight:700;color:var(--mdt-ink);margin-bottom:4px}
.profile-review-body{color:var(--mdt-body);font-size:14.5px;line-height:1.6}
.profile-review-answer{margin-top:10px;padding:10px 12px;background:var(--mdt-soft);border-radius:10px;font-size:13.5px;color:var(--mdt-body)}
@media(max-width:767.98px){.profile-reviews-list{grid-template-columns:1fr}}

/* related searches */
.profile-related-links{display:flex;flex-wrap:wrap;gap:10px}
.profile-related-link{background:#fff;border:1px solid var(--mdt-line);border-radius:999px;padding:8px 16px;font-size:14px;color:var(--mdt-ink);text-decoration:none;font-weight:500}
.profile-related-link:hover{border-color:var(--mdt-red);color:var(--mdt-red)}

/* gallery */
.dealer-profile-image-border{border-radius:14px;border:1px solid var(--mdt-line);width:100%;aspect-ratio:4/3;object-fit:cover;cursor:zoom-in}

/* faq */
.profile-faq-list{display:grid;gap:12px}
.profile-faq-item{background:#fff;border:1px solid var(--mdt-line);border-radius:14px;padding:16px 20px}
.profile-faq-question{font-weight:700;color:var(--mdt-ink);margin-bottom:6px}
.profile-faq-answer{color:var(--mdt-body);font-size:14.5px;line-height:1.6}

/* desktop sticky cta */
.profile-sticky-cta-wrapper{position:sticky;top:125px;z-index:1010;margin:10px 0 16px}
.profile-sticky-cta{background:#fff;border:1px solid var(--mdt-line);border-radius:14px;box-shadow:0 8px 24px rgba(31,27,45,.12);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:100%}
.profile-sticky-cta-title{font-weight:700;font-size:13px;color:var(--mdt-ink)}
.profile-sticky-cta-actions{display:flex;gap:8px}

/* mobile sticky cta bar */
.profile-mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:1030;display:flex;gap:1px;background:var(--mdt-line);border-top:1px solid var(--mdt-line);box-shadow:0 -4px 16px rgba(31,27,45,.1)}
.profile-mcta-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:9px 4px;background:#fff;color:var(--mdt-ink);text-decoration:none;font-size:11.5px;font-weight:700}
.profile-mcta-btn i{font-size:16px}
.profile-mcta-call{background:var(--mdt-red);color:#fff}
.profile-mcta-enquire{background:var(--mdt-ink);color:#fff}
@media(max-width:991.98px){body{padding-bottom:60px}}

/* profile: open-now status + lightbox */
.profile-hero-status{display:inline-flex;align-items:center;gap:7px;margin-top:10px;font-size:13.5px;font-weight:700;padding:5px 12px;border-radius:999px;width:max-content}
.profile-hero-status.is-open{background:rgba(31,157,85,.1);color:#1f9d55}
.profile-hero-status.is-closed{background:var(--mdt-soft);color:var(--mdt-muted)}
.profile-status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px rgba(31,157,85,.18)}
.profile-hero-status.is-closed .profile-status-dot{box-shadow:none}
.profile-lightbox{position:fixed;inset:0;z-index:2000;background:rgba(15,12,20,.9);display:flex;align-items:center;justify-content:center;padding:24px}
.profile-lightbox[hidden]{display:none}
.profile-lightbox img{max-width:92vw;max-height:88vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.profile-lightbox-close{position:absolute;top:18px;right:24px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.profile-lightbox-close:hover{background:rgba(255,255,255,.28)}

/* dealer stock: scope indicator */
.mds-scope{display:inline-flex;align-items:center;margin-top:10px;font-size:13.5px;font-weight:600;color:var(--mdt-body);background:var(--mdt-soft);border:1px solid var(--mdt-line);border-radius:999px;padding:6px 14px}
.mds-scope i{color:var(--mdt-red)}
.mds-scope a{color:var(--mdt-red);text-decoration:none;font-weight:700;margin-left:4px}
.mds-scope a:hover{text-decoration:underline}

/* dealer finder: dealer cards + faq */
.mds-dealers{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.mds-dealer{display:flex;flex-direction:column;background:#fff;border:1px solid var(--mdt-line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 1px 2px rgba(31,27,45,.04);transition:transform .16s,box-shadow .16s}
.mds-dealer:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(31,27,45,.12)}
.mds-dealer-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--mdt-soft)}
.mds-dealer-img img{width:100%;height:100%;object-fit:cover}
.mds-dealer-badge{position:absolute;top:10px;left:10px;background:var(--mdt-red);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:999px}
.mds-dealer-body{padding:15px 16px 16px;display:flex;flex-direction:column;flex:1}
.mds-dealer-name{font-size:16px;font-weight:800;letter-spacing:-.01em;color:var(--mdt-ink);margin:0 0 6px}
.mds-dealer-loc{font-size:13px;color:var(--mdt-muted);font-weight:600;margin-bottom:8px}
.mds-dealer-loc i{color:var(--mdt-red)}
.mds-dealer-stock{font-size:13.5px;color:var(--mdt-body);margin-bottom:12px}
.mds-dealer-stock b{color:var(--mdt-ink)}
.mds-dealer-make{color:var(--mdt-red);font-weight:700}
.mds-dealer-cta{margin-top:auto;font-size:13.5px;font-weight:700;color:var(--mdt-red)}
.mds-dealer-cta i{transition:transform .15s}
.mds-dealer:hover .mds-dealer-cta i{transform:translateX(3px)}
@media(max-width:575.98px){.mds-dealers{grid-template-columns:1fr}}

.mds-faq-sec{margin-top:44px}
.mds-faq-h{position:relative;padding-left:15px;font-size:clamp(20px,2.2vw,26px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink);margin:0 0 18px}
.mds-faq-h::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:5px;border-radius:3px;background:var(--mdt-red)}
.mds-faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:767.98px){.mds-faq-grid{grid-template-columns:1fr}}

/* dealer finder map */
.mds-map-wrap{margin-bottom:22px}
.mds-map{width:100%;height:360px;border-radius:16px;overflow:hidden;border:1px solid var(--mdt-line);background:var(--mdt-soft)}
@media(max-width:767.98px){.mds-map{height:280px}}

/* dealer finder: card rating */
.mds-dealer-rating{display:flex;align-items:center;gap:5px;margin:-2px 0 8px;font-size:12.5px;color:var(--mdt-muted);font-weight:600}
.mds-dealer-rating .fa-star{color:#f5a623}
.mds-dealer-rating .fa-star-o{color:#d9d6e0}

/* --- Saved bikes: heart state, header counter, guest notice --- */
/* The heart used to look identical before and after a click, so the save
   silently succeeded and read as broken. Filled + red is the confirmation. */
.mdc-save-btn.is-saved{color:var(--mdt-red)!important}
.mdc-save-btn.is-saved:hover{color:var(--mdt-red-dark)!important}
.mdc-save-btn[disabled]{opacity:.55}
.mdc-save-inline{display:inline-block;vertical-align:middle}
.mdc-save-inline .mdc-save-btn{
  width:32px;height:32px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid var(--mdt-line);color:#8b8699;
  box-shadow:0 .125rem .25rem rgba(31,27,45,.075);margin-left:.5rem;
}
.mdt-saved.has-saved{color:var(--mdt-red)}
.mdt-saved-n{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:18px;height:18px;padding:0 5px;
  border-radius:999px;background:var(--mdt-red);color:#fff;
  font-size:11px;font-weight:700;line-height:1;
}
.mdsb-note{
  display:flex;align-items:flex-start;gap:10px;
  background:var(--mdt-red-tint);border:1px solid var(--mdt-line);
  border-radius:14px;padding:12px 16px;margin-bottom:22px;
  font-size:14px;color:var(--mdt-ink);
}
.mdsb-note .fa{color:var(--mdt-red);font-size:16px;margin-top:1px}
.mdsb-note a{color:var(--mdt-red);font-weight:600}

/* --- Lazy widget skeletons --- */
/* The old placeholders were blank boxes with a guessed min-height, so the
   page looked broken and still jumped when the batch landed. These reuse the
   real grid classes, so the shape on screen is the shape that replaces it. */
.mdw-skel-line{background:var(--mdt-soft);border-radius:8px}
.mdw-skel-h2{width:260px;max-width:60%;height:26px;margin-left:15px}
.mdw-skel-sub{width:420px;max-width:80%;height:15px;margin:10px 0 0 15px}
.mdw-skel-card{background:var(--mdt-soft);border:1px solid var(--mdt-line);border-radius:16px}
.mdw-skel-bt .mdw-skel-card{aspect-ratio:4/3.55}
.mdw-skel-brand .mdw-skel-card{aspect-ratio:1/1.05}
.mdw-skel-vid .mdw-skel-card{aspect-ratio:16/10}
.mdw-skel-blog .mdw-skel-card{aspect-ratio:16/15}
.mdw-skel-spot{height:300px;border-radius:20px;background:var(--mdt-soft);border:1px solid var(--mdt-line)}
.mdw-skel-line,.mdw-skel-card,.mdw-skel-spot{
  background-image:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);
  background-size:220px 100%;background-repeat:no-repeat;
  animation:mdw-shimmer 1.25s linear infinite;
}
@keyframes mdw-shimmer{0%{background-position:-220px 0}100%{background-position:calc(100% + 220px) 0}}
@media (prefers-reduced-motion:reduce){.mdw-skel-line,.mdw-skel-card,.mdw-skel-spot{animation:none}}

/* --- Hero obrazka artykulu ---
   Zrodlo ma natywnie 750x500, a kolumna tresci w .mds-wrap ma ~1280px,
   wiec obraz byl skalowany w gore ~1.7x i wygladal na rozmyty. Ograniczamy
   go do szerokosci kolumny tekstu (~860px), co daje juz tylko ~1.15x.
   aspect-ratio jest dobrane tak, zeby przy 860px dac dokladnie 460px wysokosci
   - czyli tyle, ile wymusza istniejacy max-height w custom.css:1607. Dzieki
   temu przegladarka rezerwuje z gory realna wysokosc i nie ma przeskoku (CLS),
   a na wezszych ekranach wysokosc schodzi ponizej limitu i max-height milczy. */
.rz-hero{max-width:860px;margin-inline:auto}
.rz-hero img{width:100%;height:auto;aspect-ratio:43/23;object-fit:cover}

/* --- Kafle ofert w karuzelach na profilu dealera ---
   Kontener dostaje staly kadr 4/3, taki sam jak .mdc-img na listingu.
   Dzis nic to nie zmienia wizualnie (wariant -m i tak jest 4/3), ale jest
   warunkiem koniecznym dla srcset 1x/2x: wariant 2x to plik oryginalny 3/2,
   wiec bez sztywnego kadru karta na ekranie retina mialaby inna wysokosc
   niz zarezerwowana z width/height - czyli przeskok ukladu po doladowaniu. */
.mdw-cimg{aspect-ratio:4/3;overflow:hidden;background:var(--mdt-soft)}
.mdw-cimg img{width:100%;height:100%;object-fit:cover;display:block}

/* =========================================================
   Licence guides (/guides, /guides/{slug})
   ========================================================= */
.gd-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.gd-card{display:block;background:#fff;border:1px solid var(--mdt-line);border-radius:16px;padding:20px;text-decoration:none;transition:border-color .13s,box-shadow .13s}
.gd-card:hover{border-color:var(--mdt-red);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.gd-badge{display:inline-block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--mdt-red);background:var(--mdt-soft);border-radius:999px;padding:4px 10px;margin-bottom:10px}
.gd-card h3{font-size:17px;font-weight:800;color:var(--mdt-ink);margin:0 0 8px;line-height:1.3}
.gd-card p{font-size:14px;color:var(--mdt-muted);line-height:1.55;margin:0}
.gd-tbl-wrap{overflow-x:auto}
.gd-tbl{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--mdt-line);border-radius:14px;overflow:hidden;font-size:14px}
.gd-tbl th,.gd-tbl td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--mdt-line);vertical-align:top}
.gd-tbl thead th{background:var(--mdt-soft);font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--mdt-muted);font-weight:800;white-space:nowrap}
.gd-tbl tbody tr:last-child td{border-bottom:0}
.gd-tbl td a{color:var(--mdt-red);font-weight:600;text-decoration:none}
.gd-tbl td a:hover{text-decoration:underline}
.gd-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0 26px;background:#fff;border:1px solid var(--mdt-line);border-radius:14px;padding:4px 20px}
.gd-fact{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--mdt-line);font-size:14px}
.gd-fact b{color:var(--mdt-muted);font-weight:600;flex-shrink:0}
.gd-fact span{color:var(--mdt-ink);font-weight:700;text-align:right}
.gd-intro p{font-size:17px;line-height:1.65;color:var(--mdt-body);margin:0 0 14px;max-width:820px}
.gd-body{max-width:820px}
.gd-body h2{font-size:clamp(19px,2.2vw,24px);font-weight:800;letter-spacing:-.02em;color:var(--mdt-ink);margin:36px 0 12px}
.gd-body section:first-child h2{margin-top:0}
.gd-body p{color:var(--mdt-body);font-size:16px;line-height:1.7;margin:0 0 14px}
.gd-body a{color:var(--mdt-red);font-weight:600}
.gd-body ul{margin:0 0 14px;padding-left:20px;color:var(--mdt-body);font-size:16px;line-height:1.7}
.gd-body li{margin-bottom:6px}
.gd-toc{background:var(--mdt-soft);border-radius:14px;padding:18px 22px}
.gd-toc b{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mdt-muted);margin-bottom:8px}
.gd-toc a{display:block;font-size:14.5px;color:var(--mdt-body);padding:3px 0;text-decoration:none;font-weight:500}
.gd-toc a:hover{color:var(--mdt-red)}
.gd-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:34px;align-items:start}
@media(max-width:991.98px){.gd-grid{grid-template-columns:1fr;gap:22px}}
@media(max-width:575.98px){.gd-fact{flex-direction:column;gap:2px}.gd-fact span{text-align:left}}

/* =========================================================
   Landing "models A-Z" pill lists (new/used/electric/classic)
   - count badge gets its own pill so it never reads as glued
     onto the model name (models ending in digits, eg "LFC700 64")
   - list clamps to ~2 rows by default with a Show all/less toggle,
     all links stay in the DOM (crawlable) even while collapsed
   ========================================================= */
.mdl-pill-count{margin-left:7px;padding:2px 7px;border-radius:999px;background:var(--mdt-soft);color:var(--mdt-muted);font-size:11px;font-weight:700;line-height:1.5}
.mdl-pill:hover .mdl-pill-count{background:#fff}
.mdl-az-toggle{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.mdl-pills-az{max-height:92px;overflow:hidden;position:relative}
.mdl-pills-az::after{content:"";position:absolute;left:0;right:0;bottom:0;height:36px;background:linear-gradient(rgba(255,255,255,0),#fff 85%);pointer-events:none}
.mdl-az-toggle:checked~.mdl-pills-az{max-height:none}
.mdl-az-toggle:checked~.mdl-pills-az::after{display:none}
.mdl-az-more,.mdl-az-less{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-weight:700;font-size:14px;color:var(--mdt-red);cursor:pointer;text-decoration:none}
.mdl-az-more:hover,.mdl-az-less:hover{text-decoration:underline}
.mdl-az-less{display:none}
.mdl-az-toggle:checked~.mdl-az-more{display:none}
.mdl-az-toggle:checked~.mdl-az-less{display:inline-flex}
.mdl-az-toggle:focus-visible~.mdl-az-more,.mdl-az-toggle:focus-visible~.mdl-az-less{outline:2px solid var(--mdt-red);outline-offset:3px;border-radius:8px}

/* ============================================================
   Real demand signals on an advert (App\Services\DemandSignals).
   Every one of these is a count of something that happened -
   invented urgency is both a misleading practice and a bad trade
   against the trust that brings the traffic here.
   ============================================================ */
.md-demand { display: flex; flex-wrap: wrap; gap: 8px; }

.md-demand-item {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 11px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.2;
    background: #f4f3f7;
    color: #565165;
    border: 1px solid rgba(31, 45, 61, .07);
}

.md-demand-item i { font-size: 12px; opacity: .85; }

.md-demand-item.is-hot { background: #fdf0ee; color: #97361f; border-color: rgba(171, 31, 2, .16); }
.md-demand-item.is-fresh { background: #eef8f2; color: #1c6b43; border-color: rgba(7, 146, 79, .16); }

/* "or ... tell us what you're after" under an empty search */
.mds-empty-or {
    margin: 14px 0 10px;
    font-size: 13px;
    color: var(--mdt-muted, #6b6777);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.mds-empty-wanted {
    display: inline-flex; align-items: center; gap: 9px;
    max-width: 100%;
    padding: 12px 22px;
    border-radius: 999px;
    border: 1px solid var(--mdt-line, #e7e5ee);
    background: #fff;
    color: var(--mdt-ink, #1F1B2D);
    font-weight: 700;
    font-size: 14.5px;
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s, transform .15s;
}

.mds-empty-wanted i { color: var(--mdt-red, #AB1F02); font-size: 16px; flex: 0 0 auto; }

.mds-empty-wanted:hover {
    border-color: rgba(171, 31, 2, .4);
    box-shadow: 0 8px 20px rgba(31, 27, 45, .08);
    transform: translateY(-1px);
}

@media (max-width: 575.98px) {
    .mds-empty-wanted { text-align: left; padding: 12px 16px; font-size: 13.5px; }
}
