/* =========================================================================
   POWERSPORTS.PL — DESIGN TOKENS
   ========================================================================= */
:root{
  /* Kolory marki */
  --bg:            #0a0b08;
  --bg-soft:       #12140d;
  --bg-elevated:   #1a1d13;
  --panel:         #171912;
  --border:        rgba(255,255,255,.09);
  --border-soft:   rgba(255,255,255,.06);

  --green:         #4c9a3e;
  --green-light:   #7fce6a;
  --green-dim:     #2c4a22;

  --orange:        #e2622e;
  --orange-light:  #ff7f4a;
  --orange-dark:   #b8471d;

  --white:         #f6f7f2;
  --muted:         #a7ad9c;
  --muted-dim:     #6f7566;

  /* Typografia */
  --f-display: 'Oswald', 'Arial Narrow', sans-serif;
  --f-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* Layout */
  --wrap: 1280px;
  --radius-sm: 8px;
  --radius: 14px;
  --radius-lg: 22px;
  --shadow: 0 12px 32px rgba(0,0,0,.35);
  --shadow-lg: 0 24px 60px rgba(0,0,0,.5);

  --header-h: 84px;
  --topbar-h: 38px;
}

/* =========================================================================
   RESET & BASE
   ========================================================================= */
*, *::before, *::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + var(--topbar-h) + 16px); }
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior: auto; }
  *, *::before, *::after{ animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
}
body{
  margin:0;
  background: var(--bg);
  color: var(--white);
  font-family: var(--f-body);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
img{ max-width:100%; display:block; }
a{ color: inherit; text-decoration: none; }
button{ font-family: inherit; cursor:pointer; color: inherit; background: none; border: none; }
input, select{ font-family: inherit; }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3,h4{ margin:0; font-family: var(--f-display); font-weight:600; letter-spacing:.01em; line-height:1.08; text-transform: uppercase; }
p{ margin:0; }
.wrap{ max-width: var(--wrap); margin-inline:auto; padding-inline: 24px; }
.icon{ width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }

:focus-visible{ outline: 2px solid var(--orange-light); outline-offset: 3px; border-radius: 4px; }

.eyebrow{
  font-family: var(--f-display);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 13px;
  color: var(--green-light);
  font-weight: 500;
  margin: 0 0 10px;
  display:flex; align-items:center; gap:8px;
}
.eyebrow::before{ content:''; width:20px; height:2px; background: var(--orange); display:inline-block; }
.eyebrow--light{ color: rgba(246,247,242,.85); }

.text-accent{ color: var(--green-light); }

/* =========================================================================
   BUTTONS
   ========================================================================= */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-family: var(--f-display);
  text-transform: uppercase;
  letter-spacing: .04em;
  font-weight: 600;
  font-size: 15px;
  padding: 13px 22px;
  border-radius: var(--radius-sm);
  border: 1px solid transparent;
  transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease, color .15s ease, border-color .15s ease;
  white-space: nowrap;
}
.btn svg{ width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; transition: transform .15s ease; }
.btn:hover svg{ transform: translateX(3px); }
.btn:active{ transform: translateY(1px); }

.btn--orange{ background: var(--orange); color: #fff; box-shadow: 0 8px 20px rgba(226,98,46,.35); }
.btn--orange:hover{ background: var(--orange-light); box-shadow: 0 10px 26px rgba(226,98,46,.5); }

.btn--lime{ background: var(--green); color: #fff; box-shadow: 0 8px 20px rgba(76,154,62,.35); }
.btn--lime:hover{ background: var(--green-light); color:#10230b; }

.btn--outline{ background: transparent; color: var(--white); border-color: var(--border); }
.btn--outline:hover{ border-color: var(--orange); color: var(--orange-light); }

.btn--sm{ padding: 9px 14px; font-size: 13px; }
.btn--lg{ padding: 16px 28px; font-size: 16px; }
.btn--block{ width:100%; }

/* =========================================================================
   TOPBAR
   ========================================================================= */
.topbar{
  background: #000;
  height: var(--topbar-h);
  border-bottom: 1px solid var(--border-soft);
  font-size: 13px;
  color: var(--muted);
}
.topbar__inner{ height:100%; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.topbar__badge{ font-family: var(--f-display); letter-spacing:.05em; text-transform:uppercase; font-size:12px; color: var(--green-light); }
.topbar__right{ display:flex; align-items:center; gap:20px; }
.topbar__link{ display:flex; align-items:center; gap:6px; transition: color .15s; }
.topbar__link .icon{ width:15px; height:15px; }
.topbar__link:hover{ color: var(--orange-light); }
.topbar__social{ display:flex; align-items:center; gap:10px; }
.social-ico{
  width:26px; height:26px; display:flex; align-items:center; justify-content:center;
  border-radius:50%; color:#fff; transition: transform .15s, box-shadow .15s, filter .15s;
}
.social-ico svg{ width:14px; height:14px; fill:currentColor; }
.social-ico:hover{ transform: translateY(-2px); box-shadow: 0 6px 14px rgba(0,0,0,.35); }
.social-ico--facebook{ background:#1877F2; }
.social-ico--instagram{ background: radial-gradient(circle at 30% 110%, #FDF497 0%, #FD5949 45%, #D6249F 60%, #285AEB 90%); }
.social-ico--google{ background:#fff; }
.social-ico--google svg{ width:15px; height:15px; }

@media (max-width: 780px){ .topbar__badge{ display:none; } }

/* =========================================================================
   HEADER
   ========================================================================= */
.header{
  position: sticky; top:0; z-index: 60;
  height: var(--header-h);
  background: rgba(10,11,8,.88);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--border-soft);
  transition: height .2s ease, background-color .2s ease;
}
.header.is-scrolled{ height: 66px; background: rgba(8,9,6,.97); box-shadow: 0 8px 24px rgba(0,0,0,.35); }
.header__inner{
  height:100%; display:flex; align-items:center; gap:20px;
}
.logo{ flex-shrink:0; display:flex; align-items:center; }
.logo img{ height: 38px; width:auto; transition: height .2s ease; }
.header.is-scrolled .logo img{ height: 32px; }

.mainnav{ display:flex; align-items:center; gap:26px; margin-right:auto; }
.mainnav a{
  font-family: var(--f-display); text-transform:uppercase; font-size:14px; letter-spacing:.04em;
  color: var(--white); opacity:.85; display:flex; align-items:center; gap:5px;
  padding: 8px 0; position:relative; transition: opacity .15s, color .15s;
}
.mainnav a:hover{ opacity:1; color: var(--green-light); }
.mainnav a::after{
  content:''; position:absolute; left:0; right:0; bottom:0; height:2px; background: var(--orange);
  transform: scaleX(0); transform-origin:left; transition: transform .2s ease;
}
.mainnav a:hover::after{ transform: scaleX(1); }
.mainnav .chev{ width:12px; height:12px; stroke:currentColor; fill:none; stroke-width:2.4; }
.mainnav__drop{ position:relative; }
.mainnav__panel{
  position:absolute; top: 100%; left:50%; transform: translateX(-50%) translateY(6px);
  background: var(--panel); border:1px solid var(--border); border-radius: var(--radius-sm);
  padding:8px; min-width:220px; box-shadow: var(--shadow-lg);
  opacity:0; visibility:hidden; transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.mainnav__drop:hover .mainnav__panel, .mainnav__drop:focus-within .mainnav__panel{
  opacity:1; visibility:visible; transform: translateX(-50%) translateY(2px);
}
.mainnav__panel a{ display:block; padding:9px 12px; font-family: var(--f-body); text-transform:none; font-size:14px; letter-spacing:0; border-radius:6px; opacity:.9; }
.mainnav__panel a:hover{ background: var(--bg-elevated); opacity:1; }
.mainnav__panel a::after{ display:none; }

.header__search{ flex: 1 1 380px; max-width: 460px; position:relative; }
.header__search form{
  display:flex; align-items:center; gap:8px;
  background: var(--bg-elevated); border:1px solid var(--border); border-radius: 999px;
  padding: 6px 6px 6px 16px; transition: border-color .15s;
}
.header__search form:focus-within{ border-color: var(--green); }
.header__search .icon{ width:17px; height:17px; color: var(--muted); flex-shrink:0; }
.header__search input{
  flex:1; background:none; border:none; color:#fff; font-size:14px; padding: 8px 0; min-width:0;
}
.header__search input::placeholder{ color: var(--muted-dim); }
.header__search input:focus{ outline:none; }

.search-suggest{
  position:absolute; top: calc(100% + 8px); left:0; right:0;
  background: var(--panel); border:1px solid var(--border); border-radius: var(--radius-sm);
  box-shadow: var(--shadow-lg); overflow:hidden; z-index:70;
}
.search-suggest .ss-item{
  display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; text-align:left;
  padding: 11px 16px; font-size:14px; border-bottom:1px solid var(--border-soft); color: var(--white);
}
.search-suggest .ss-item:last-child{ border-bottom:none; }
.search-suggest .ss-item:hover{ background: var(--bg-elevated); color: var(--orange-light); }
.search-suggest small{ color: var(--muted-dim); font-weight:400; flex-shrink:0; }
.search-suggest .ss-empty{ padding: 14px 16px; color: var(--muted); font-size:14px; }

.header__actions{ display:flex; align-items:center; gap:6px; flex-shrink:0; }
.icon-btn{
  position:relative; width:42px; height:42px; display:flex; align-items:center; justify-content:center;
  background:none; border:none; color: var(--white); border-radius:50%; transition: background-color .15s, color .15s;
}
.icon-btn:hover{ background: var(--bg-elevated); color: var(--green-light); }
.icon-btn .badge{
  position:absolute; top:2px; right:2px; min-width:17px; height:17px; padding:0 4px;
  background: var(--orange); color:#fff; font-size:10px; font-weight:700; border-radius:999px;
  display:flex; align-items:center; justify-content:center; border: 2px solid var(--bg);
}
.search-toggle{ display:none; }

.hamburger{
  display:none; flex-direction:column; justify-content:center; gap:5px;
  width:42px; height:42px; background:none; border:none; padding:0;
}
.hamburger span{ width:22px; height:2px; background:#fff; margin-inline:auto; transition: transform .25s ease, opacity .2s ease; }
.hamburger[aria-expanded="true"] span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.hamburger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.hamburger[aria-expanded="true"] span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }

.mobile-menu{
  position: fixed; top:0; right:0; height:100dvh; width: min(340px, 86vw);
  background: var(--bg-soft); border-left:1px solid var(--border);
  transform: translateX(100%); transition: transform .3s cubic-bezier(.4,0,.2,1);
  z-index: 90; padding: 90px 24px 24px; display:flex; flex-direction:column; gap:22px; overflow-y:auto;
}
.mobile-menu.is-open{ transform: translateX(0); }
.mobile-menu nav{ display:flex; flex-direction:column; gap:2px; }
.mobile-menu nav a{
  font-family: var(--f-display); text-transform:uppercase; font-size:17px; letter-spacing:.03em;
  padding:13px 4px; border-bottom:1px solid var(--border-soft);
}
.mobile-menu__social{ display:flex; gap:12px; }
.mobile-menu__social a{
  width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center;
}
.mobile-menu__social a.social-ico--google{ border:1px solid var(--border); }
.mobile-menu__social svg{ width:17px; height:17px; fill:currentColor; }

.overlay{
  position:fixed; inset:0; background: rgba(0,0,0,.6); z-index:80;
  opacity:0; visibility:hidden; transition: opacity .25s ease, visibility .25s ease;
}
.overlay.is-visible{ opacity:1; visibility:visible; }

@media (max-width: 1080px){
  .mainnav{ display:none; }
  .header__search{ display:none; }
  .header__search.is-open{
    display:flex; position:absolute; left:16px; right:16px; top:100%;
    max-width:none; margin-top:8px; z-index:65;
  }
  .search-toggle{ display:flex; }
  .hamburger{ display:flex; }
}
@media (max-width: 480px){
  .icon-btn:not(.icon-btn--cart):not(#wishlistBtn){ }
}

/* =========================================================================
   HERO
   ========================================================================= */
.hero{ position:relative; min-height: 92vh; display:flex; align-items:center; overflow:hidden; padding-top: 40px; padding-bottom: 60px; }
.hero__media{ position:absolute; inset:0; z-index:0; }
.hero__img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  opacity:0; transition: opacity .6s ease;
}
.hero__img.is-active{ opacity:1; }
.hero__scrim{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(8,9,6,.96) 0%, rgba(8,9,6,.82) 32%, rgba(8,9,6,.45) 60%, rgba(8,9,6,.25) 100%),
    linear-gradient(0deg, rgba(8,9,6,.9) 0%, rgba(8,9,6,.15) 30%, rgba(8,9,6,.05) 60%, rgba(8,9,6,.55) 100%);
}
.hero__flag{
  position:absolute; top:0; right:0; width:120px; height:120px; opacity:.5;
  background-image: repeating-conic-gradient(var(--white) 0% 25%, transparent 0% 50%);
  background-size: 20px 20px;
  -webkit-mask-image: linear-gradient(225deg, #000 0%, transparent 60%);
  mask-image: linear-gradient(225deg, #000 0%, transparent 60%);
}

.hero__content{ position:relative; z-index:1; max-width: 680px; }
.hero__title{
  font-size: clamp(38px, 5.4vw, 66px);
  color:#fff;
  margin-bottom: 16px;
  text-shadow: 0 4px 24px rgba(0,0,0,.4);
}
.hero__sub{ font-size:16px; color: rgba(246,247,242,.75); margin-bottom: 34px; max-width: 480px; }

.hero__brandbar{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom: 30px; }
.brand-plate{
  height:52px; display:flex; align-items:center; justify-content:center; padding:0 18px;
  background:#fff; border-radius: 8px; border: 1.5px solid transparent;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
  box-shadow: 0 4px 14px rgba(0,0,0,.18);
}
.brand-plate:hover{ transform: translateY(-3px); box-shadow: 0 10px 22px rgba(0,0,0,.3); border-color: var(--orange); }
.brand-plate img{ height:26px; width:auto; display:block; }
.brand-plate__word{ font-family: var(--f-display); font-weight:700; font-size:16px; letter-spacing:.03em; }
.brand-plate--own{ border-color: var(--green); box-shadow: 0 4px 14px rgba(76,154,62,.35); }
.brand-plate--own:hover{ border-color: var(--green-light); }
.brand-plate__word--power{ color:#171912; }
.brand-plate__word--sports{ color: var(--green); }
.brand-plate__word--yamaha{ color:#c8102e; }
.brand-plate__word--honda{ color:#e4002b; font-style:italic; }
.brand-plate__word--kawasaki{ color:#0a7a2e; font-style:italic; }
.brand-plate__word--canam{ color:#c8102e; }
.brand-plate__word--ktm{ color:#ff6600; -webkit-text-stroke: .6px #1a1a1a; }
.brand-plate__word--suzuki{ color:#003399; }
.brand-plate__word--polaris{ color:#c8102e; font-style:italic; }
.brand-plate--more{
  height:52px; display:flex; align-items:center; justify-content:center; padding:0 16px;
  background: rgba(255,255,255,.08); border:1.5px dashed rgba(255,255,255,.3); border-radius:8px;
  color:#fff; font-family: var(--f-display); font-weight:600; font-size:14px; opacity:.85;
  transition: opacity .16s ease, border-color .16s ease, color .16s ease;
}
.brand-plate--more:hover{ opacity:1; border-color: var(--orange); color: var(--orange-light); }

.finder{
  background: rgba(18,20,13,.72);
  border: 1px solid var(--border);
  backdrop-filter: blur(14px);
  border-radius: var(--radius-lg);
  padding: 22px;
  box-shadow: var(--shadow-lg);
}
.finder__type{ display:flex; gap:6px; margin-bottom:18px; background: rgba(0,0,0,.3); padding:5px; border-radius: 999px; width:fit-content; }
.finder__type-btn{
  display:flex; align-items:center; gap:8px; background:none; border:none; color: var(--muted);
  font-family: var(--f-display); text-transform:uppercase; font-size:13px; letter-spacing:.03em;
  padding: 9px 18px; border-radius:999px; transition: background-color .2s ease, color .2s ease;
}
.finder__type-btn svg{ width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:1.6; }
.finder__type-btn.is-active{ background: var(--orange); color:#fff; }

.finder__form{ display:grid; grid-template-columns: 1fr 1fr auto; gap:12px; align-items:end; }
.finder__field{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.finder__field label{ font-size:12px; text-transform:uppercase; letter-spacing:.06em; color: var(--muted); font-family: var(--f-display); }
.finder__field select{
  appearance:none; background: #fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23555" stroke-width="2"><path d="M6 9l6 6 6-6"/></svg>') no-repeat right 12px center / 16px;
  color:#171912; border:1px solid transparent; border-radius: var(--radius-sm);
  padding: 13px 36px 13px 14px; font-size:14px; font-weight:600; width:100%;
}
.finder__field select:disabled{ background-color: #d8dbd0; color:#7a7f70; cursor:not-allowed; }
.finder__submit{ height:48px; }

.finder__tags{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:18px; }
.finder__tags span{ font-size:12px; color: var(--muted); text-transform:uppercase; letter-spacing:.05em; font-family: var(--f-display); }
.tag{
  background: rgba(255,255,255,.06); border:1px solid var(--border); color: var(--white);
  padding: 7px 13px; border-radius:999px; font-size:12.5px; transition: background-color .15s, border-color .15s, color .15s;
}
.tag:hover{ background: var(--green-dim); border-color: var(--green); color: var(--green-light); }

@media (max-width: 700px){
  .finder__form{ grid-template-columns: 1fr; }
  .finder__submit{ width:100%; }
  .hero{ min-height: unset; padding-top: 24px; }
}

/* =========================================================================
   TRUSTBAR (dostawa / kurierzy)
   ========================================================================= */
.trustbar{ background: var(--bg-soft); border-bottom:1px solid var(--border-soft); padding: 18px 0; }
.trustbar__inner{ display:flex; align-items:center; gap:28px; flex-wrap:wrap; justify-content:space-between; }
.trustbar__ship, .trustbar__free{ display:flex; align-items:center; gap:12px; font-size:14px; }
.trustbar__ship-icon, .trustbar__free svg{ color: var(--green-light); flex-shrink:0; }
.trustbar__ship-icon svg{ width:26px; height:26px; stroke:currentColor; fill:none; stroke-width:1.6; }
.trustbar__ship strong{ display:block; font-family: var(--f-display); text-transform:uppercase; font-size:14px; letter-spacing:.02em; }
.trustbar__ship span{ color: var(--muted); font-size:13px; }
.trustbar__ship b{ color: var(--orange-light); font-variant-numeric: tabular-nums; }
.trustbar__free svg{ width:24px; height:24px; }
.trustbar__free strong{ color:#fff; }

.trustbar__couriers{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.trustbar__couriers-label{ font-size:12px; color: var(--muted); text-transform:uppercase; letter-spacing:.05em; font-family: var(--f-display); margin-right:2px; }
.courier-plate{
  display:flex; align-items:center; justify-content:center; height:44px; padding:0 16px;
  background:#fff; border-radius: 8px; box-shadow: 0 3px 10px rgba(0,0,0,.18);
  transition: transform .15s ease, box-shadow .15s ease;
}
.courier-plate:hover{ transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0,0,0,.28); }
.courier-plate img{ height:20px; width:auto; display:block; }

@media (max-width: 900px){
  .trustbar__inner{ flex-direction:column; align-items:flex-start; gap:16px; }
}

/* =========================================================================
   SEKCJE OGÓLNE
   ========================================================================= */
section{ padding: 80px 0; }
.section-head{ margin-bottom: 40px; max-width: 640px; }
.section-head h2{ font-size: clamp(28px, 3.4vw, 42px); color:#fff; }
.section-head--split{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px; max-width:none; flex-wrap:wrap; }

/* =========================================================================
   ASYSTENT DIAGNOZY
   ========================================================================= */
.assistant{ background: var(--bg-soft); border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border-soft); }
.assistant__inner{ display:grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items:start; }

.assistant__card{
  background: linear-gradient(155deg, var(--bg-elevated), #0f130a);
  border:1px solid var(--border); border-radius: var(--radius-lg); padding: 30px;
  display:flex; gap:20px; box-shadow: var(--shadow);
  position:relative; overflow:hidden;
}
.assistant__card::before{
  content:''; position:absolute; top:-40%; right:-20%; width:280px; height:280px; border-radius:50%;
  background: radial-gradient(circle, rgba(76,154,62,.25), transparent 70%); pointer-events:none;
}
.assistant__avatar{
  width:56px; height:56px; flex-shrink:0; border-radius:50%;
  background: linear-gradient(140deg, var(--green), var(--green-dim));
  display:flex; align-items:center; justify-content:center; font-family: var(--f-display);
  font-size:24px; font-weight:700; color:#fff; box-shadow: 0 6px 16px rgba(76,154,62,.4);
}
.assistant__body{ flex:1; min-width:0; position:relative; z-index:1; }
.chip{
  display:inline-block; font-family: var(--f-display); text-transform:uppercase; letter-spacing:.05em;
  font-size:11px; padding: 5px 11px; border-radius:999px; margin-bottom:12px;
}
.chip--free{ background: var(--green-dim); color: var(--green-light); }
.assistant__body h2{ font-size: clamp(22px, 2.4vw, 27px); margin-bottom:10px; }
.assistant__body p{ color: var(--muted); font-size:14.5px; margin-bottom: 20px; }
.assistant__form{ display:flex; gap:10px; margin-bottom: 14px; }
.assistant__form input{
  flex:1; min-width:0; background: rgba(255,255,255,.06); border:1px solid var(--border); color:#fff;
  border-radius: var(--radius-sm); padding: 13px 16px; font-size:14px;
}
.assistant__form input::placeholder{ color: var(--muted-dim); }
.assistant__form input:focus{ outline:none; border-color: var(--green); }
.assistant__alt{ font-size:13px; color: var(--muted); }
.assistant__alt a{ color: var(--orange-light); font-weight:600; }

.assistant__answer{
  background: var(--bg); border:1px solid var(--green-dim); border-left:3px solid var(--green);
  border-radius: var(--radius-sm); padding: 16px 18px; margin-bottom:16px; font-size:14px;
  animation: fadein .3s ease;
}
.assistant__answer strong{ color: var(--green-light); display:block; margin-bottom:4px; font-family: var(--f-display); text-transform:uppercase; letter-spacing:.02em; font-size:14px; }
.assistant__answer a{ color: var(--orange-light); font-weight:600; }
@keyframes fadein{ from{ opacity:0; transform:translateY(-6px);} to{ opacity:1; transform:translateY(0);} }

.symptoms__title{ font-size:16px; color: var(--muted); text-transform:uppercase; letter-spacing:.05em; margin-bottom: 18px; font-weight:500; }
.symptoms__grid{ display:grid; grid-template-columns: repeat(2, 1fr); gap:12px; }
.symptom-card{
  display:flex; align-items:center; gap:12px; text-align:left;
  background: var(--panel); border:1px solid var(--border); border-radius: var(--radius-sm);
  padding: 14px 16px; transition: transform .15s ease, border-color .15s ease, background-color .15s ease;
}
.symptom-card:hover{ transform: translateY(-3px); border-color: var(--orange); background: var(--bg-elevated); }
.symptom-card__icon{
  width:38px; height:38px; flex-shrink:0; border-radius:10px; background: var(--green-dim); color: var(--green-light);
  display:flex; align-items:center; justify-content:center;
}
.symptom-card__icon svg{ width:19px; height:19px; stroke:currentColor; fill:none; stroke-width:1.7; }
.symptom-card__text{ min-width:0; }
.symptom-card__text strong{ display:block; font-size:14px; font-family: var(--f-body); font-weight:600; color: var(--white); }
.symptom-card__text span{ font-size:12px; color: var(--muted); }
.symptom-card__arrow{ margin-left:auto; color: var(--muted-dim); flex-shrink:0; transition: transform .15s, color .15s; }
.symptom-card:hover .symptom-card__arrow{ transform: translateX(3px); color: var(--orange-light); }

@media (max-width: 900px){
  .assistant__inner{ grid-template-columns: 1fr; }
  .assistant__card{ flex-direction:column; }
}
@media (max-width: 520px){
  .symptoms__grid{ grid-template-columns: 1fr; }
  .assistant__form{ flex-direction:column; }
}

/* =========================================================================
   POPULARNE MARKI
   ========================================================================= */
.brands__grid{ display:grid; grid-template-columns: repeat(7, 1fr); gap:12px; }
.brand-card{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px;
  padding: 22px 10px; background: var(--panel); border:1px solid var(--border); border-radius: var(--radius);
  transition: transform .18s ease, border-color .18s ease, background-color .18s ease;
}
.brand-card:hover{ transform: translateY(-4px); border-color: var(--green); background: var(--bg-elevated); }
.brand-card__logo{ height:30px; width:auto; max-width:100%; object-fit:contain; }
.brand-card__word{ font-family: var(--f-display); text-transform:uppercase; font-size:16px; letter-spacing:.02em; color:#fff; }
.brand-card__count{ font-size:11.5px; color: var(--muted); }
.brand-card.is-active{ border-color: var(--orange); background: var(--bg-elevated); }
.brand-card--own{ border-color: var(--green); position:relative; }
.brand-card--own:hover{ border-color: var(--green-light); }
.brand-card__own-tag{
  position:absolute; top:-9px; left:50%; transform:translateX(-50%);
  background: var(--green); color:#fff; font-family: var(--f-display); text-transform:uppercase;
  font-size:9.5px; letter-spacing:.04em; padding:3px 9px; border-radius:999px; white-space:nowrap;
}
.brand-card__word--power{ color: var(--white); }

@media (max-width: 1080px){ .brands__grid{ grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 560px){ .brands__grid{ grid-template-columns: repeat(2, 1fr); } }

/* =========================================================================
   KATALOG PRODUKTÓW — sidebar (aktualny etap nawigacji) + siatka produktów
   ========================================================================= */
.catalog__subtitle{ color: var(--muted); font-size:14px; margin-top:-8px; }

.catalog__mode{ display:flex; flex-wrap:wrap; gap:8px; margin: 18px 0 20px; }
.catalog__mode-btn{
  display:flex; align-items:center; gap:9px; padding:12px 18px; border-radius: var(--radius-sm);
  background: var(--panel); border:1.5px solid var(--border); color: var(--muted);
  font-family: var(--f-display); font-size:14px; font-weight:600; letter-spacing:.01em;
  transition: border-color .18s ease, color .18s ease, background-color .18s ease;
}
.catalog__mode-btn svg{ width:19px; height:19px; stroke:currentColor; fill:none; stroke-width:1.6; }
.catalog__mode-btn:hover{ color:#fff; border-color: var(--green); }
.catalog__mode-btn.is-active{ background: var(--green); border-color: var(--green); color:#fff; }

.catalog__crumb{
  display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-bottom:20px;
  font-family: var(--f-display); font-size:13px; text-transform:uppercase; letter-spacing:.03em;
}
.catalog__crumb button{ color: var(--muted); padding:4px 2px; transition: color .15s; display:flex; align-items:center; gap:6px; }
.catalog__crumb button:hover{ color: var(--orange-light); }
.catalog__crumb button.is-current{ color:#fff; pointer-events:none; }
.catalog__crumb .crumb-sep{ color: var(--muted-dim); }
.catalog__crumb .crumb-back{ color: var(--white); }
.catalog__crumb .crumb-back svg{ width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:2.2; }
.catalog__crumb .crumb-back:hover{ color: var(--orange-light); }

.catalog__filterbar{
  display:grid; grid-template-columns: repeat(5, 1fr); gap:10px; margin-bottom: 26px;
  background: var(--panel); border:1px solid var(--border); border-radius: var(--radius); padding:16px;
}
.catalog__field{ display:flex; flex-direction:column; gap:5px; min-width:0; }
.catalog__field label{ font-size:11px; text-transform:uppercase; letter-spacing:.05em; color: var(--muted); font-family: var(--f-display); }
.catalog__field select{
  appearance:none; background: var(--bg-elevated) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23a7ad9c" stroke-width="2"><path d="M6 9l6 6 6-6"/></svg>') no-repeat right 10px center / 14px;
  color:#fff; border:1px solid var(--border); border-radius: var(--radius-sm);
  padding: 10px 30px 10px 12px; font-size:13.5px; cursor:pointer; width:100%;
}
.catalog__field select:disabled{ opacity:.45; cursor:not-allowed; }

.catalog__layout{ display:grid; grid-template-columns: 260px 1fr; gap:26px; align-items:start; }

.catalog__sidebar{
  position:sticky; top: calc(var(--header-h) + var(--topbar-h) + 20px);
  background: var(--panel); border:1px solid var(--border); border-radius: var(--radius);
  padding:20px; max-height: calc(100vh - 140px); overflow-y:auto;
}
.catalog__sidebar-eyebrow{
  font-family: var(--f-display); text-transform:uppercase; letter-spacing:.05em; font-size:11px;
  color: var(--green-light); margin-bottom:6px;
}
.catalog__sidebar-title{ font-size:16px; color:#fff; margin-bottom:16px; text-transform:none; letter-spacing:0; }
.catalog__sidebar-list{ display:flex; flex-direction:column; gap:6px; }
.catalog__sidebar-note{ color: var(--muted); font-size:13px; line-height:1.6; }

.sidebar-item{
  display:flex; align-items:center; gap:10px; width:100%; text-align:left; padding:11px 12px;
  border-radius: var(--radius-sm); border:1.5px solid transparent; background:transparent; color: var(--white);
  transition: background-color .15s ease, border-color .15s ease;
}
.sidebar-item:hover{ background: var(--bg-elevated); }
.sidebar-item.is-active{ border-color: var(--green); background: var(--green-dim); color: var(--green-light); }
.sidebar-item__icon{
  width:30px; height:30px; flex-shrink:0; border-radius:8px; background: var(--bg-elevated); color: var(--green-light);
  display:flex; align-items:center; justify-content:center;
}
.sidebar-item__icon svg{ width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:1.7; }
.sidebar-item__name{ flex:1; font-size:13.5px; font-weight:600; line-height:1.3; }
.sidebar-item__name em{ font-style:normal; font-weight:400; opacity:.7; font-size:11.5px; }
.sidebar-item__count{ font-size:11.5px; color: var(--muted); flex-shrink:0; }
.sidebar-item.is-active .sidebar-item__count{ color: var(--green-light); }

.catalog__main{ min-width:0; }
.catalog__toolbar{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-bottom:18px; }
.catalog__results-count{ font-size:13.5px; color: var(--muted); margin:0; }
.catalog__results-count strong{ color:#fff; }
.catalog__toolbar-controls{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.catalog__stock-toggle{ display:flex; align-items:center; gap:8px; font-size:13.5px; color: var(--muted); cursor:pointer; user-select:none; }
.catalog__stock-toggle input{ width:16px; height:16px; accent-color: var(--green); cursor:pointer; }
.catalog__stock-toggle:hover{ color:#fff; }
#catalogSort{
  appearance:none; background: var(--panel) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23a7ad9c" stroke-width="2"><path d="M6 9l6 6 6-6"/></svg>') no-repeat right 12px center / 14px;
  color:#fff; border:1px solid var(--border); border-radius: var(--radius-sm);
  padding: 9px 34px 9px 14px; font-size:13.5px; cursor:pointer;
}
.catalog__load-more{ display:flex; margin: 28px auto 0; }

.catalog__empty{
  display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center;
  padding: 50px 20px; background: var(--panel); border:1px dashed var(--border); border-radius: var(--radius);
}
.catalog__empty svg{ width:40px; height:40px; stroke: var(--green-light); fill:none; stroke-width:1.6; }
.catalog__empty p{ color:#fff; font-size:19px; font-weight:600; margin:0; }
.catalog__empty span{ color: var(--muted); font-size:14px; max-width:420px; }

.catalog__trust{
  margin-top: 44px; padding-top: 32px; border-top:1px solid var(--border-soft);
  display:grid; grid-template-columns: repeat(4, 1fr); gap:20px;
}
.catalog__trust-item{ display:flex; align-items:flex-start; gap:12px; }
.catalog__trust-item svg{ width:26px; height:26px; stroke: var(--green-light); fill:none; stroke-width:1.6; flex-shrink:0; margin-top:2px; }
.catalog__trust-item strong{ display:block; font-size:14px; color:#fff; margin-bottom:2px; }
.catalog__trust-item span{ font-size:12.5px; color: var(--muted); }

@media (max-width: 900px){
  .catalog__layout{ grid-template-columns: 1fr; }
  .catalog__sidebar{ position:static; max-height:none; }
  .catalog__filterbar{ grid-template-columns: 1fr 1fr; }
  .catalog__trust{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .catalog__filterbar{ grid-template-columns: 1fr; }
  .catalog__trust{ grid-template-columns: 1fr; }
}

@media (max-width: 1080px){ .catalog__level{ grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 640px){ .catalog__level{ grid-template-columns: repeat(2, 1fr); } }

/* =========================================================================
   PRODUKTY / BESTSELLERY
   ========================================================================= */
.tabs{ display:flex; gap:6px; flex-wrap:wrap; background: var(--panel); border:1px solid var(--border); padding:5px; border-radius:999px; }
.tabs button{
  background:none; border:none; color: var(--muted); font-family: var(--f-display); text-transform:uppercase;
  letter-spacing:.03em; font-size:13px; padding: 9px 16px; border-radius:999px; transition: background-color .18s, color .18s;
}
.tabs button.is-active{ background: var(--green); color:#fff; }
.tabs button:hover:not(.is-active){ color:#fff; }

.products__grid{ display:grid; grid-template-columns: repeat(4, 1fr); gap:20px; }
.product-card{
  background: var(--panel); border:1px solid var(--border); border-radius: var(--radius);
  padding: 16px; display:flex; flex-direction:column; position:relative; overflow:hidden;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.product-card:hover{ transform: translateY(-5px); border-color: var(--border); box-shadow: var(--shadow); }
.product-card__media{
  aspect-ratio: 1.18/1; border-radius: var(--radius-sm); background: linear-gradient(155deg, var(--bg-elevated), var(--bg));
  display:flex; align-items:center; justify-content:center; margin-bottom:14px; position:relative;
}
.product-card__media svg{ width:46%; height:46%; stroke: var(--green-light); fill:none; stroke-width:1.3; opacity:.85; }
.product-card__badge{
  position:absolute; top:10px; left:10px; background: var(--orange); color:#fff; font-family: var(--f-display);
  text-transform:uppercase; font-size:10.5px; letter-spacing:.04em; padding:4px 9px; border-radius:5px;
}
.product-card__wish{
  position:absolute; top:8px; right:8px; width:34px; height:34px; border-radius:50%; background: rgba(10,11,8,.55);
  display:flex; align-items:center; justify-content:center; color:#fff; border:none; backdrop-filter: blur(4px);
  transition: color .15s, background-color .15s;
}
.product-card__wish svg{ width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:1.8; }
.product-card__wish.is-active{ color: var(--orange-light); }
.product-card__wish.is-active svg{ fill: currentColor; }
.product-card__wish:hover{ background: rgba(10,11,8,.85); }

.product-card__brand{ font-size:11px; text-transform:uppercase; letter-spacing:.05em; color: var(--green-light); font-family: var(--f-display); margin-bottom:4px; }
.product-card__name{ font-family: var(--f-body); font-size:15px; font-weight:600; text-transform:none; letter-spacing:0; margin-bottom:10px; line-height:1.3; min-height: 2.6em; }
.product-card__meta{ display:flex; flex-direction:column; gap:3px; min-height:38px; margin:-3px 0 10px; color:var(--muted); font-size:11.5px; line-height:1.35; }
.product-card__meta strong{ color:#d8dccf; font-weight:600; }
.product-card__price{ display:flex; align-items:baseline; gap:8px; margin-bottom:8px; }
.product-card__price strong{ font-family: var(--f-display); font-size:21px; color:#fff; }
.product-card__price del{ font-size:13px; color: var(--muted-dim); }
.product-card__price-tbd{ font-family: var(--f-display); font-size:15px; color: var(--muted); text-transform:uppercase; letter-spacing:.02em; }
.product-card__stock{ font-size:12px; margin-bottom:14px; display:flex; align-items:center; gap:5px; }
.product-card__stock.in{ color: var(--green-light); }
.product-card__stock.out{ color: var(--muted-dim); }
.product-card__stock::before{ content:''; width:7px; height:7px; border-radius:50%; background:currentColor; display:inline-block; }
.product-card__cta{
  margin-top:auto; display:flex; align-items:center; justify-content:center; gap:8px; width:100%;
  background: var(--bg-elevated); border:1px solid var(--border); color:#fff;
  font-family: var(--f-display); text-transform:uppercase; letter-spacing:.03em; font-size:13.5px;
  padding: 11px; border-radius: var(--radius-sm); transition: background-color .18s, border-color .18s, color .18s;
}
.product-card__cta svg{ width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:2; }
.product-card__cta:hover:not(:disabled){ background: var(--orange); border-color: var(--orange); }
.product-card__cta:disabled{ opacity:.55; cursor:not-allowed; }
.product-card__cta.is-added{ background: var(--green); border-color: var(--green); }

.products__more{ text-align:center; margin-top: 38px; }

@media (max-width: 1080px){ .products__grid{ grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px){ .products__grid{ grid-template-columns: repeat(2, 1fr); } .products__grid{ gap:12px; } }
@media (max-width: 460px){ .products__grid{ grid-template-columns: 1fr 1fr; } .product-card{ padding:12px; } }

/* =========================================================================
   PROMO BANNER
   ========================================================================= */
.promo{
  background:
    linear-gradient(100deg, rgba(8,9,6,.95) 10%, rgba(8,9,6,.55) 55%, rgba(8,9,6,.25) 100%),
    url('../assets/hero_moto.jpg') center/cover;
  border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border-soft);
}
.promo__inner{ display:grid; grid-template-columns: 1.2fr .8fr; gap:48px; align-items:center; }
.promo__text h2{ font-size: clamp(30px, 4vw, 50px); color:#fff; margin-bottom:20px; }
.promo__list{ display:flex; flex-direction:column; gap:12px; margin-bottom:28px; }
.promo__list li{ display:flex; align-items:center; gap:10px; font-size:15px; color: rgba(246,247,242,.9); }
.promo__list svg{ width:20px; height:20px; stroke: var(--green-light); fill:none; stroke-width:2.4; flex-shrink:0; background: var(--green-dim); border-radius:50%; padding:3px; box-sizing: content-box; }

.promo__stats{ display:grid; grid-template-columns: 1fr 1fr; gap:14px; }
.stat{
  background: rgba(18,20,13,.7); border:1px solid var(--border); border-radius: var(--radius);
  padding: 20px; backdrop-filter: blur(8px); display:flex; flex-direction:column; gap:4px;
}
.stat__num{ font-family: var(--f-display); font-size:34px; color: var(--green-light); display:flex; align-items:baseline; gap:2px; }
.stat__num small{ font-size:16px; color: var(--orange-light); }
.stat__num--sm{ font-size:18px; letter-spacing:.02em; }
.stat__label{ font-size:12.5px; color: var(--muted); text-transform:uppercase; letter-spacing:.03em; }
.stat--phone{ background: var(--orange); border-color: var(--orange); transition: background-color .15s; }
.stat--phone:hover{ background: var(--orange-light); }
.stat--phone .stat__num, .stat--phone .stat__label{ color:#fff; }

@media (max-width: 900px){
  .promo__inner{ grid-template-columns: 1fr; }
  .promo__stats{ grid-template-columns: 1fr 1fr; }
}

/* =========================================================================
   O FIRMIE
   ========================================================================= */
.about__inner{ display:grid; grid-template-columns: 1fr 1fr; gap:48px; align-items:center; }
.about__text p{ color: var(--muted); font-size:15.5px; margin: 16px 0 26px; max-width: 480px; }
.about__text h2{ font-size: clamp(26px, 3.2vw, 38px); }
.about__contact{ display:flex; flex-direction:column; gap:14px; }
.about__contact-item{ display:flex; align-items:center; gap:10px; font-size:15px; }
.about__contact a.about__contact-item:hover{ color: var(--orange-light); }
.about__map{ border-radius: var(--radius-lg); overflow:hidden; border:1px solid var(--border); aspect-ratio: 4/3; }
.about__map iframe{ width:100%; height:100%; border:0; filter: grayscale(.3) contrast(1.05); }

@media (max-width: 860px){ .about__inner{ grid-template-columns:1fr; } }

/* =========================================================================
   FOOTER
   ========================================================================= */
.footer{ background:#000; border-top:1px solid var(--border-soft); padding-top: 60px; }
.footer__top{ display:grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 40px; padding-bottom: 44px; }
.footer__brand img{ height:40px; width:auto; margin-bottom:2px; }
.footer__brand p{ color: var(--muted); font-size:14px; margin: 14px 0 18px; max-width:260px; }
.footer__social{ display:flex; gap:10px; }
.footer__social .social-ico{ width:34px; height:34px; }
.footer__social .social-ico svg{ width:15px; height:15px; }
.footer__social .social-ico--google{ border:1px solid var(--border); }

.footer__col h4{ font-size:14px; color: var(--white); margin-bottom:16px; letter-spacing:.05em; }
.footer__col a{ display:block; color: var(--muted); font-size:14px; padding: 6px 0; transition: color .15s; }
.footer__col a:hover{ color: var(--orange-light); }

.footer__newsletter p{ color: var(--muted); font-size:14px; margin-bottom:14px; }
.footer__newsletter form{ display:flex; gap:8px; }
.footer__newsletter input{
  flex:1; min-width:0; background: var(--bg-elevated); border:1px solid var(--border); color:#fff;
  border-radius: var(--radius-sm); padding: 11px 13px; font-size:13.5px;
}
.footer__newsletter input:focus{ outline:none; border-color: var(--green); }
.footer__newsletter-msg{ margin-top:10px; font-size:13px; color: var(--green-light); }

.footer__bottom{
  border-top:1px solid var(--border-soft); padding: 20px 0 26px; display:flex; align-items:center;
  justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:12.5px; color: var(--muted-dim);
}
.footer__pay{ display:flex; align-items:center; gap:8px; }
.pay-badge{
  border:1px solid var(--border); border-radius:5px; padding:4px 9px; font-family: var(--f-display);
  text-transform:uppercase; font-size:11px; letter-spacing:.03em; color: var(--muted); transition: border-color .15s, color .15s;
}
.pay-badge--logo{ background:#fff; padding:5px 10px; display:flex; align-items:center; transition: transform .15s ease; }
.pay-badge--logo img{ height:13px; width:auto; display:block; }
.pay-badge--logo:hover{ transform: translateY(-1px); }

@media (max-width: 900px){ .footer__top{ grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px){ .footer__top{ grid-template-columns: 1fr; } }

/* =========================================================================
   BACK TO TOP
   ========================================================================= */
.backtotop{
  position: fixed; bottom: 26px; right: 26px; width:48px; height:48px; border-radius:50%;
  background: var(--orange); color:#fff; border:none; display:flex; align-items:center; justify-content:center;
  box-shadow: var(--shadow); z-index: 50; opacity:0; visibility:hidden; transform: translateY(10px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease, background-color .15s;
}
.backtotop.is-visible{ opacity:1; visibility:visible; transform:translateY(0); }
.backtotop:hover{ background: var(--orange-light); }
.backtotop svg{ width:20px; height:20px; stroke:currentColor; fill:none; stroke-width:2.2; }

/* =========================================================================
   CART DRAWER
   ========================================================================= */
.cart-drawer{ position:fixed; inset:0; z-index: 110; }
.cart-drawer[hidden]{ display:none; }
.cart-drawer::before{ content:''; position:absolute; inset:0; background: rgba(0,0,0,.6); }
.cart-drawer__panel{
  position:absolute; top:0; right:0; height:100dvh; width: min(420px, 92vw);
  background: var(--bg-soft); border-left:1px solid var(--border);
  display:flex; flex-direction:column; animation: slidein .28s cubic-bezier(.4,0,.2,1);
}
@keyframes slidein{ from{ transform: translateX(100%);} to{ transform: translateX(0);} }
.cart-drawer__head{ display:flex; align-items:center; justify-content:space-between; padding: 22px 22px 16px; border-bottom:1px solid var(--border-soft); }
.cart-drawer__head h3{ font-size:19px; }
.cart-drawer__items{ flex:1; overflow-y:auto; padding: 10px 22px; display:flex; flex-direction:column; gap:14px; }
.cart-item{ display:flex; gap:12px; align-items:center; padding: 10px 0; border-bottom:1px solid var(--border-soft); }
.cart-item__media{ width:56px; height:56px; border-radius:8px; background: var(--bg-elevated); flex-shrink:0; display:flex; align-items:center; justify-content:center; }
.cart-item__media svg{ width:60%; height:60%; stroke: var(--green-light); fill:none; stroke-width:1.4; }
.cart-item__info{ flex:1; min-width:0; }
.cart-item__info strong{ display:block; font-size:13.5px; font-weight:600; text-transform:none; margin-bottom:2px; }
.cart-item__info span{ font-size:12px; color: var(--muted); }
.cart-item__qty{ display:flex; align-items:center; gap:8px; margin-top:6px; }
.cart-item__qty button{ width:22px; height:22px; border-radius:5px; background: var(--bg-elevated); border:1px solid var(--border); color:#fff; font-size:14px; line-height:1; }
.cart-item__qty span{ font-size:13px; color:#fff; min-width:16px; text-align:center; }
.cart-item__right{ text-align:right; flex-shrink:0; }
.cart-item__right strong{ display:block; font-family: var(--f-display); font-size:14.5px; }
.cart-item__remove{ background:none; border:none; color: var(--muted-dim); font-size:12px; margin-top:6px; text-decoration:underline; }
.cart-item__remove:hover{ color: var(--orange-light); }

.cart-drawer__empty{ flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color: var(--muted); padding: 40px; text-align:center; }
.cart-drawer__empty svg{ width:48px; height:48px; stroke: var(--muted-dim); fill:none; stroke-width:1.4; margin-bottom:6px; }
.cart-drawer__empty p{ color:#fff; font-weight:600; }
.cart-drawer__empty span{ font-size:13px; }

.cart-drawer__crosssell{ padding: 4px 22px 18px; border-top:1px solid var(--border-soft); }
.cart-drawer__crosssell-title{ font-family: var(--f-display); text-transform:uppercase; letter-spacing:.03em; font-size:12.5px; color: var(--muted); margin: 14px 0 12px; }
.cart-drawer__crosssell-row{ display:flex; gap:10px; overflow-x:auto; padding-bottom:4px; }
.crosssell-card{
  flex:0 0 110px; background: var(--panel); border:1px solid var(--border); border-radius: var(--radius-sm);
  padding:10px; position:relative;
}
.crosssell-card__media{
  width:100%; aspect-ratio:1/1; border-radius:6px; background: var(--bg-elevated); margin-bottom:8px;
  display:flex; align-items:center; justify-content:center;
}
.crosssell-card__media svg{ width:50%; height:50%; stroke: var(--green-light); fill:none; stroke-width:1.4; }
.crosssell-card__name{ font-size:11px; line-height:1.3; margin-bottom:6px; height:2.6em; overflow:hidden; }
.crosssell-card__price{ font-family: var(--f-display); font-size:13px; color:#fff; }
.crosssell-card__add{
  position:absolute; top:8px; right:8px; width:24px; height:24px; border-radius:50%; background: var(--orange);
  color:#fff; font-size:16px; line-height:1; display:flex; align-items:center; justify-content:center;
  transition: background-color .15s, transform .15s;
}
.crosssell-card__add:hover{ background: var(--orange-light); transform: scale(1.08); }

.cart-drawer__foot{ padding: 18px 22px 24px; border-top:1px solid var(--border-soft); }
.cart-drawer__sub{ display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; font-size:15px; }
.cart-drawer__sub strong{ font-family: var(--f-display); font-size:20px; color: var(--green-light); }
.cart-drawer__note{ font-size:12px; color: var(--muted-dim); margin-bottom:16px; }

/* =========================================================================
   MODAL (wyniki diagnozy objawu)
   ========================================================================= */
.modal{ position:fixed; inset:0; z-index: 110; display:flex; align-items:center; justify-content:center; padding:20px; }
.modal[hidden]{ display:none; }
.modal::before{ content:''; position:absolute; inset:0; background: rgba(0,0,0,.7); }
.modal__panel{
  position:relative; background: var(--bg-soft); border:1px solid var(--border); border-radius: var(--radius-lg);
  padding: 32px; max-width: 640px; width:100%; max-height: 84vh; overflow-y:auto;
  animation: modalin .25s cubic-bezier(.4,0,.2,1);
}
@keyframes modalin{ from{ opacity:0; transform: scale(.96) translateY(8px);} to{ opacity:1; transform: scale(1) translateY(0);} }
.modal__close{ position:absolute; top:16px; right:16px; }
.modal__panel h3{ font-size: clamp(20px, 2.6vw, 26px); padding-right: 40px; margin-bottom:8px; }
.modal__panel > p{ color: var(--muted); font-size:14.5px; margin-bottom: 22px; }
.modal__products{ display:grid; grid-template-columns: repeat(2, 1fr); gap:14px; }
@media (max-width: 560px){ .modal__products{ grid-template-columns: 1fr; } }

/* =========================================================================
   TOAST
   ========================================================================= */
.toast{
  position: fixed; left:50%; bottom: 26px; transform: translateX(-50%) translateY(20px);
  background: var(--green); color:#fff; padding: 13px 22px; border-radius: 999px; font-size:14px; font-weight:600;
  box-shadow: var(--shadow-lg); z-index: 130; opacity:0; visibility:hidden; transition: opacity .25s ease, transform .25s ease, visibility .25s;
  display:flex; align-items:center; gap:8px;
}
.toast.is-visible{ opacity:1; visibility:visible; transform: translateX(-50%) translateY(0); }
.toast svg{ width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:2.4; }

/* =========================================================================
   SCROLL REVEAL
   ========================================================================= */
.reveal{ opacity:0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.reveal.is-visible{ opacity:1; transform: translateY(0); }

/* =========================================================================
   STRONY PRAWNE (regulamin / polityka prywatności)
   ========================================================================= */
.legal-hero{ background: var(--bg-soft); border-bottom:1px solid var(--border-soft); padding: 48px 0 36px; }
.legal-hero .eyebrow{ margin-bottom:14px; }
.legal-hero h1{ font-size: clamp(28px,4vw,44px); color:#fff; margin-bottom:10px; }
.legal-hero p{ color: var(--muted); max-width:640px; }

.legal-notice{
  background: rgba(226,98,46,.1); border:1px solid rgba(226,98,46,.35); border-radius: var(--radius);
  padding: 16px 20px; margin: 28px 0 0; display:flex; gap:12px; align-items:flex-start;
}
.legal-notice svg{ width:22px; height:22px; stroke: var(--orange-light); fill:none; stroke-width:1.8; flex-shrink:0; margin-top:2px; }
.legal-notice p{ font-size:13.5px; color: rgba(246,247,242,.85); line-height:1.6; margin:0; }
.legal-notice strong{ color: var(--orange-light); }

.legal{ padding: 52px 0 90px; }
.legal__layout{ display:grid; grid-template-columns: 260px 1fr; gap:52px; align-items:start; }
.legal__toc{
  position:sticky; top: calc(var(--header-h) + var(--topbar-h) + 24px);
  background: var(--panel); border:1px solid var(--border); border-radius: var(--radius);
  padding: 20px; max-height: calc(100vh - 160px); overflow-y:auto;
}
.legal__toc h4{ font-size:12px; text-transform:uppercase; letter-spacing:.06em; color: var(--muted); margin-bottom:12px; }
.legal__toc a{ display:block; font-size:13.5px; color: var(--muted); padding:7px 0; border-bottom:1px solid var(--border-soft); }
.legal__toc a:last-child{ border-bottom:none; }
.legal__toc a:hover{ color: var(--orange-light); }

.legal__content{ max-width: 760px; }
.legal__content section{ padding: 0 0 40px; }
.legal__content h2{
  font-size: 20px; color:#fff; margin-bottom:14px; padding-top:10px; scroll-margin-top: calc(var(--header-h) + var(--topbar-h) + 20px);
  display:flex; align-items:baseline; gap:10px;
}
.legal__content h2 small{ font-family: var(--f-body); font-weight:400; font-size:13px; color: var(--green-light); text-transform:none; letter-spacing:0; }
.legal__content h3{ font-size:15.5px; color: var(--white); text-transform:none; letter-spacing:0; margin: 18px 0 8px; font-weight:600; }
.legal__content p{ color: var(--muted); font-size:14.5px; line-height:1.75; margin-bottom:12px; }
.legal__content ul, .legal__content ol{ margin: 0 0 14px; padding-left: 20px; }
.legal__content li{ color: var(--muted); font-size:14.5px; line-height:1.75; margin-bottom:6px; }
.legal__content li::marker{ color: var(--green-light); }
.legal__content strong{ color: var(--white); font-weight:600; }
.legal__content a{ color: var(--orange-light); text-decoration:underline; text-underline-offset:2px; }
.legal__content table{ width:100%; border-collapse:collapse; margin: 14px 0 20px; font-size:13.5px; }
.legal__content th, .legal__content td{ border:1px solid var(--border); padding:10px 12px; text-align:left; color: var(--muted); }
.legal__content th{ color:#fff; background: var(--panel); font-family: var(--f-display); text-transform:uppercase; font-size:12px; letter-spacing:.03em; }
.legal__content .box{ background: var(--panel); border:1px solid var(--border); border-radius: var(--radius-sm); padding:16px 18px; margin: 16px 0; }

@media (max-width: 900px){
  .legal__layout{ grid-template-columns: 1fr; }
  .legal__toc{ position:static; max-height:none; }
}

/* =========================================================================
   RESPONSIVE — sekcje ogólne na mobile
   ========================================================================= */
@media (max-width: 640px){
  section{ padding: 56px 0; }
  .header__inner{ gap:10px; }
}


/* =========================================================================
   KARTA SZCZEGÓŁOWA PRODUKTU
   ========================================================================= */
.product-card__link{color:inherit;text-decoration:none}.product-card__name--link{display:block;color:var(--white);text-decoration:none}.product-card__name--link:hover{color:var(--orange-light)}
.product-header .header__inner{min-height:var(--header-h)}
.product-page{padding:30px 0 90px;background:var(--bg)}
.product-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:13px;margin:8px 0 26px}.product-breadcrumb a{color:var(--muted)}.product-breadcrumb a:hover,.product-breadcrumb strong{color:#fff}
.product-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:44px;align-items:start}
.product-gallery__main{min-height:510px;background:#f6f6f2;border-radius:18px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.product-gallery__main>svg{width:46%;max-width:300px;stroke:#343934;fill:none;stroke-width:1.25}.product-gallery__hint{position:absolute;bottom:18px;color:#767c76;font-size:12px}.product-detail__promo{position:absolute;top:18px;left:18px;background:var(--orange);color:#fff;font-weight:800;text-transform:uppercase;font-size:11px;padding:7px 10px;border-radius:999px}.product-gallery__thumbs{display:flex;gap:10px;margin-top:12px}.product-gallery__thumbs button{width:78px;height:70px;border:1px solid var(--border);background:var(--panel);border-radius:10px;color:var(--muted)}.product-gallery__thumbs button.is-active{border-color:var(--green-light)}.product-gallery__thumbs svg{width:34px;stroke:currentColor;fill:none}.product-gallery__placeholder{font-size:11px}
.product-summary{padding-top:8px}.product-summary__brand{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--green-light);font-weight:800;margin-bottom:9px}.product-summary h1{font-size:clamp(30px,4vw,48px);line-height:1.07;color:#fff;text-transform:none;letter-spacing:-.02em;margin:0 0 16px}.product-summary__codes{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px}.product-summary__codes span{background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:8px 10px;color:var(--muted);font-size:12px}.product-summary__codes strong{color:#fff}
.fitment-box{display:flex;gap:13px;background:rgba(91,142,42,.11);border:1px solid rgba(125,181,67,.36);padding:16px;border-radius:12px;margin-bottom:22px}.fitment-box__icon{width:28px;height:28px;display:grid;place-items:center;background:var(--green);border-radius:50%;font-weight:900;color:#fff;flex:0 0 auto}.fitment-box strong{color:#fff}.fitment-box p{color:var(--muted);font-size:13px;line-height:1.55;margin:4px 0 0}
.product-summary__buy{padding:22px;background:var(--panel);border:1px solid var(--border);border-radius:15px}.product-summary__price{display:flex;align-items:baseline;gap:12px}.product-summary__price strong{font-family:var(--f-display);font-size:36px;color:#fff}.product-summary__price strong.tbd{font-size:27px}.product-summary__price del{color:var(--muted)}.product-summary__stock{display:flex;align-items:center;gap:8px;font-size:13px;margin:9px 0 18px}.product-summary__stock span{width:8px;height:8px;border-radius:50%;background:#838383}.product-summary__stock.in{color:#9bd75d}.product-summary__stock.in span{background:#7db543}.product-summary__actions{display:flex;gap:10px}.product-summary__actions .product-add{flex:1}.qty{display:flex;border:1px solid var(--border);border-radius:9px;overflow:hidden;background:var(--bg)}.qty button,.qty input{width:42px;border:0;background:transparent;color:#fff;text-align:center;font-weight:700}.qty button{cursor:pointer;font-size:20px}.qty input{outline:0}.product-trust{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.product-trust>div{padding:13px;border:1px solid var(--border-soft);border-radius:10px}.product-trust strong{display:block;color:#fff;font-size:12px}.product-trust span{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.product-info-tabs{margin-top:56px;border-top:1px solid var(--border)}.product-info-tabs__nav{display:flex;gap:4px;overflow:auto;border-bottom:1px solid var(--border);padding-top:6px}.product-info-tabs__nav button{border:0;background:transparent;color:var(--muted);padding:18px 20px;font-weight:700;white-space:nowrap;cursor:pointer;border-bottom:2px solid transparent}.product-info-tabs__nav button.is-active{color:#fff;border-color:var(--green-light)}.product-info-tabs__body{max-width:1000px;padding:34px 0}.product-tab{display:none}.product-tab.is-active{display:block}.product-tab h2{font-size:28px;color:#fff;margin:0 0 16px}.product-tab p{color:var(--muted);line-height:1.75}.product-description-highlight{margin-top:22px;padding:18px;border-left:3px solid var(--green-light);background:var(--panel)}.product-description-highlight strong{color:#fff}.compat-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.compat-list span{padding:8px 10px;border-radius:7px;border:1px solid var(--border);background:var(--panel);color:#dfe3dc;font-size:12px}.product-specs{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--border);border-radius:12px;overflow:hidden}.product-specs div{display:grid;grid-template-columns:1fr 1.25fr;padding:13px 15px;border-bottom:1px solid var(--border-soft)}.product-specs div:nth-last-child(-n+2){border-bottom:0}.product-specs dt{color:var(--muted)}.product-specs dd{color:#fff;margin:0;font-weight:600}.product-benefits{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.product-benefits span{background:var(--panel);border:1px solid var(--border);padding:10px 12px;border-radius:8px;color:#fff;font-size:12px}
.related-products{margin-top:54px}.related-products .section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.related-products h2{color:#fff;font-size:30px}.text-link{color:var(--orange-light)}.related-products__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.related-card{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px;color:#fff;text-decoration:none}.related-card:hover{border-color:rgba(125,181,67,.5);transform:translateY(-2px)}.related-card__media{height:145px;background:#f2f2ed;border-radius:8px;display:grid;place-items:center;margin-bottom:13px}.related-card__media svg{width:64px;stroke:#3d433d;fill:none}.related-card span{color:var(--green-light);font-size:10px;text-transform:uppercase;font-weight:800}.related-card strong{font-size:13px;line-height:1.35;margin:6px 0 12px}.related-card b{margin-top:auto;color:#fff}.product-footer{padding:25px 0;border-top:1px solid var(--border);background:#080a08}.product-footer .wrap{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.product-footer strong{color:#fff}.product-not-found{padding:90px 0;text-align:center}.product-not-found h1{color:#fff;font-size:44px}.product-not-found p{color:var(--muted);margin:10px 0 24px}.muted{color:var(--muted)}
@media(max-width:1000px){.product-detail{grid-template-columns:1fr;gap:28px}.product-gallery__main{min-height:420px}.related-products__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.product-page{padding-top:18px}.product-header .mainnav,.product-header .header__search{display:none}.product-detail{display:block}.product-gallery__main{min-height:330px}.product-summary{padding-top:25px}.product-summary h1{font-size:32px}.product-summary__actions{flex-direction:column}.qty{width:132px;height:46px}.product-trust{grid-template-columns:1fr}.product-info-tabs{margin-top:38px}.product-info-tabs__nav button{padding:15px 12px;font-size:12px}.product-specs{grid-template-columns:1fr}.product-specs div:nth-last-child(-n+2){border-bottom:1px solid var(--border-soft)}.product-specs div:last-child{border-bottom:0}.related-products__grid{grid-template-columns:1fr 1fr}.related-products .section-head{align-items:start;gap:12px}.product-footer .wrap{flex-direction:column;gap:5px}}
/* V3 — spokojniejsza karta produktu: dopasowanie przeniesione do treści */
.product-description-highlight--neutral{border-left-color:var(--border);background:rgba(255,255,255,.025)}
.catalog-verification{margin-top:28px;padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}
.catalog-verification h3{color:#fff;margin:0 0 8px;font-size:18px}
.catalog-verification p{margin:0;color:var(--muted);line-height:1.65}
.catalog-verification__links{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.catalog-verification__links a{display:inline-flex;padding:10px 13px;border:1px solid rgba(125,181,67,.35);border-radius:8px;color:var(--green-light);text-decoration:none;font-weight:700;font-size:13px}
.catalog-verification__links a:hover{background:rgba(91,142,42,.1)}

.about__map-link{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  margin-top:.75rem;
  font-weight:700;
  text-decoration:none;
  color:var(--accent, #ff7a00);
}
.about__map-link:hover{ text-decoration:underline; }

/* V4: elementy stanu integracji i asystenta */
.assistant-answer__link{background:none;border:0;padding:0;margin-left:.35rem;color:var(--accent,#ff7a00);font:inherit;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px;}
.btn[disabled]{opacity:.55;cursor:not-allowed;filter:saturate(.6);}


/* =========================================================================
   V5 — KONTO KLIENTA / MÓJ GARAŻ / ULUBIONE
   ========================================================================= */
.account-head-actions,.product-account-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.account-head-link,.product-account-actions a{color:var(--muted);text-decoration:none;font-size:13px;font-weight:700}.account-head-link:hover,.product-account-actions a:hover{color:#fff}
.head-cart-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;margin-left:4px;background:var(--orange);color:#fff;font-size:10px;font-weight:700;border-radius:999px;}
.account-page{background:var(--bg);min-height:70vh}.account-auth{padding:70px 0 90px}.account-auth>.wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.account-auth__intro h1{font-size:clamp(44px,6vw,76px);line-height:.98;color:#fff;margin:12px 0 22px}.account-auth__intro h1 span{color:var(--green-light)}.account-auth__intro>p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:16px;line-height:1.7}.account-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:34px}.account-benefits>div{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.account-benefits b{display:block;color:var(--green-light);font-family:var(--f-display);font-size:13px}.account-benefits strong{display:block;color:#fff;margin:10px 0 6px}.account-benefits span{color:var(--muted);font-size:12px;line-height:1.5}.account-auth__panel{background:#10130f;border:1px solid var(--border);border-radius:20px;padding:28px;box-shadow:0 28px 80px rgba(0,0,0,.28)}.prototype-note{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid rgba(255,153,0,.25);background:rgba(255,153,0,.06);border-radius:10px;margin-bottom:20px}.prototype-note strong{color:#ffb451;font-size:11px;text-transform:uppercase}.prototype-note span{color:var(--muted);font-size:11px;line-height:1.45}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--border);margin-bottom:24px}.auth-tabs button{border:0;background:transparent;color:var(--muted);padding:14px;font-weight:800;cursor:pointer;border-bottom:2px solid transparent}.auth-tabs button.is-active{color:#fff;border-color:var(--green-light)}.auth-form{display:none}.auth-form.is-active{display:block}.auth-form label,.profile-form label,.garage-form label{display:grid;gap:7px;color:#dbe0d8;font-size:12px;font-weight:700;margin-bottom:14px}.auth-form input,.profile-form input,.garage-form input,.garage-form select{width:100%;background:#080a08;border:1px solid var(--border);border-radius:9px;padding:13px 14px;color:#fff;outline:0}.auth-form input:focus,.profile-form input:focus,.garage-form input:focus,.garage-form select:focus{border-color:var(--green-light)}.auth-form small{font-weight:400;color:var(--muted)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkline{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:9px!important;font-weight:500!important}.checkline input{width:auto!important;margin-top:2px}.checkline em{color:var(--muted);font-style:normal}.auth-form__row{display:flex;justify-content:space-between;align-items:center;margin:3px 0 16px}.link-btn{border:0;background:none;color:var(--green-light);font:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:0}.link-btn--danger{color:#d78272}.auth-form__hint{color:var(--muted);font-size:11px;line-height:1.5;margin-top:13px}.auth-message{margin-top:15px;padding:11px;border-radius:8px;background:rgba(200,80,60,.1);color:#edaa9d;font-size:12px}.auth-message.is-ok{background:rgba(91,142,42,.1);color:#a9dd76}
.account-dashboard{padding:48px 0 90px}.account-welcome{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.account-welcome h1{font-size:48px;color:#fff;margin:5px 0}.account-welcome h1 span{color:var(--green-light)}.account-welcome p:last-child{color:var(--muted)}.account-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px}.account-nav{position:sticky;top:95px;align-self:start;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:8px}.account-nav button{display:flex;width:100%;align-items:center;gap:10px;border:0;background:transparent;color:var(--muted);padding:12px;border-radius:9px;font-weight:700;text-align:left;cursor:pointer}.account-nav button span{width:20px}.account-nav button b{margin-left:auto;background:#272c25;border-radius:999px;min-width:22px;padding:3px 6px;font-size:10px;text-align:center}.account-nav button.is-active,.account-nav button:hover{color:#fff;background:rgba(125,181,67,.1)}.account-nav button.is-active{box-shadow:inset 3px 0 0 var(--green-light)}.account-content{min-width:0}.account-section{display:none}.account-section.is-active{display:block}.account-hero-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px;background:linear-gradient(120deg,#172116,#10140f);border:1px solid rgba(125,181,67,.3);border-radius:18px}.account-kicker{display:block;color:var(--green-light);font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.account-hero-card h2{font-size:31px;color:#fff;margin:6px 0}.account-hero-card h2 em{color:var(--green-light);font-style:normal}.account-hero-card p{color:var(--muted);margin:0;max-width:660px;line-height:1.6}.account-hero-card__actions{display:flex;gap:8px;flex-wrap:wrap}.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0}.account-stats button{border:1px solid var(--border);background:var(--panel);border-radius:13px;text-align:left;padding:20px;cursor:pointer}.account-stats strong{display:block;color:#fff;font-family:var(--f-display);font-size:30px}.account-stats span{color:var(--muted);font-size:12px}.account-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-shortcuts a{padding:20px;border:1px solid var(--border);border-radius:13px;color:#fff;text-decoration:none;background:#0d100d}.account-shortcuts strong{display:block}.account-shortcuts span{display:block;color:var(--muted);font-size:12px;margin-top:5px}.account-shortcuts a:hover{border-color:rgba(125,181,67,.4)}
.account-section__head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.account-section__head h2{color:#fff;font-size:34px;margin:5px 0}.account-section__head p:last-child{color:var(--muted);max-width:670px;line-height:1.6}.garage-form{background:var(--panel);border:1px solid rgba(125,181,67,.35);border-radius:14px;padding:20px;margin-bottom:16px}.garage-form__head{display:flex;justify-content:space-between;color:#fff;margin-bottom:15px}.garage-fields{display:grid;grid-template-columns:1fr 1fr 1.35fr .7fr;gap:10px}.garage-list{display:grid;gap:11px}.garage-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:18px;align-items:center;padding:18px;border:1px solid var(--border);background:var(--panel);border-radius:14px}.garage-card.is-default{border-color:rgba(125,181,67,.45);background:linear-gradient(100deg,rgba(125,181,67,.08),var(--panel))}.garage-card__visual{height:72px;border-radius:10px;background:#080a08;display:grid;place-items:center;color:var(--green-light);font-family:var(--f-display);font-weight:800}.garage-card__status{font-size:10px;color:var(--green-light);font-weight:800}.garage-card h3{color:#fff;margin:4px 0;font-size:20px}.garage-card p{color:var(--muted);font-size:12px}.garage-card p strong{color:#fff}.garage-card__actions{display:flex;align-items:center;gap:12px;margin-top:10px;flex-wrap:wrap}
.account-products{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.account-product{background:var(--panel);border:1px solid var(--border);border-radius:14px;overflow:hidden}.account-product__media{display:grid;place-items:center;height:135px;background:#f1f2ed;text-decoration:none}.account-product__media span{color:#2d352c;font-family:var(--f-display);font-weight:800}.account-product__body{padding:16px;display:grid;gap:7px}.account-product__body small{color:var(--green-light);font-weight:800;text-transform:uppercase}.account-product__body>a{color:#fff;text-decoration:none;font-weight:700;line-height:1.35}.account-product__body>span{color:var(--muted);font-size:11px}.account-product__body>strong{color:#fff;font-size:18px}.account-product__body>div{display:flex;gap:9px;align-items:center;margin-top:5px}.account-empty{min-height:290px;border:1px dashed var(--border);border-radius:14px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;color:var(--muted);text-align:center}.account-empty strong{color:#fff;font-size:20px}.account-empty--inline{min-height:170px}.integration-placeholder{padding:32px;border:1px dashed var(--border);border-radius:14px;display:grid;gap:10px;color:var(--muted)}.integration-placeholder b{font-size:10px;color:var(--orange-light)}.integration-placeholder strong{color:#fff;font-size:20px}.profile-form{max-width:680px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:22px}
.saved-vehicle-shortcut{display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(125,181,67,.09);border:1px solid rgba(125,181,67,.35);border-radius:12px;padding:13px 14px;margin-bottom:12px}.saved-vehicle-shortcut>div:first-child{display:grid;gap:2px}.saved-vehicle-shortcut span{color:var(--green-light);font-size:10px;text-transform:uppercase;font-weight:800}.saved-vehicle-shortcut strong{color:#fff}.saved-vehicle-shortcut strong b{color:var(--green-light)}.saved-vehicle-shortcut small{color:var(--muted)}.saved-vehicle-shortcut>div:last-child{display:flex;align-items:center;gap:10px}.saved-vehicle-change{color:var(--muted);font-size:11px;text-decoration:none}.saved-vehicle-change:hover{color:#fff}.product-detail-wish{margin-top:10px;width:100%;padding:12px;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.product-detail-wish:hover,.product-detail-wish.is-active{border-color:rgba(125,181,67,.45);color:var(--green-light);background:rgba(125,181,67,.08)}
#accountToast{position:fixed;right:22px;bottom:22px;z-index:2000;opacity:0;pointer-events:none;transform:translateY(10px);transition:.2s;background:#161b15;color:#fff;border:1px solid var(--border);border-radius:10px;padding:12px 16px;box-shadow:0 10px 30px rgba(0,0,0,.35)}#accountToast.is-show{opacity:1;transform:none}
@media(max-width:1000px){.account-auth>.wrap{grid-template-columns:1fr;gap:36px}.account-layout{grid-template-columns:1fr}.account-nav{position:static;display:flex;overflow:auto}.account-nav button{min-width:max-content}.account-products{grid-template-columns:repeat(2,1fr)}.garage-fields{grid-template-columns:1fr 1fr}.account-head-actions{display:none}}
@media(max-width:650px){.account-auth{padding:42px 0 65px}.account-benefits{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.account-welcome{align-items:start}.account-welcome h1{font-size:38px}.account-hero-card{align-items:flex-start;flex-direction:column}.account-stats{grid-template-columns:1fr}.account-shortcuts{grid-template-columns:1fr}.account-section__head{align-items:flex-start;flex-direction:column}.garage-fields{grid-template-columns:1fr}.garage-card{grid-template-columns:1fr}.garage-card__visual{height:54px}.account-products{grid-template-columns:1fr}.saved-vehicle-shortcut{align-items:flex-start;flex-direction:column}.product-account-actions{margin-left:auto;font-size:11px}.product-account-actions a:first-child{display:none}}


/* V6 — realne zdjęcia produktów i czytelniejsza ekspozycja */
.product-card__media{
  background:#f5f6f2;
  overflow:hidden;
}
.product-card__img{
  width:100%;
  height:100%;
  min-height:190px;
  object-fit:contain;
  display:block;
  padding:14px;
}
.product-gallery__main{
  background:#f7f7f4;
}
.product-gallery__photo{
  display:block;
  width:100%;
  height:min(520px,58vw);
  max-height:520px;
  object-fit:contain;
  padding:24px;
}
.product-gallery__thumbs button img,
.related-card__media img,
.crosssell-card__media img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.related-card__media,
.crosssell-card__media{
  background:#f5f6f2;
  overflow:hidden;
}
.search-suggest .ss-item span{
  line-height:1.3;
}
.search-suggest .ss-item small{
  white-space:nowrap;
}
@media(max-width:760px){
  .product-card__img{min-height:150px;padding:10px}
  .product-gallery__photo{height:360px;padding:16px}
}

.product-gallery__photo--diagram{
  background:#fff;
  object-fit:contain;
}
.product-gallery__thumbs button{
  overflow:hidden;
}
.product-gallery__thumbs button img{
  background:#fff;
}

/* V6.2 media gallery */
.product-gallery__thumbs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.product-gallery__thumbs button{
  width:76px;
  height:76px;
  flex:0 0 76px;
  background:#f6f6f3;
}
.product-gallery__thumbs button.is-active{
  outline:2px solid var(--orange);
  outline-offset:2px;
}
.product-gallery__thumbs img{
  padding:5px;
  object-fit:contain;
}


/* =========================================================================
   V7 FINAL — PORZĄDKOWANIE WIZUALNE
   ========================================================================= */

/* Bardziej regularny rytm kart produktowych */
.product-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.product-card__media{
  aspect-ratio: 1 / 1;
  min-height:0;
  background:#f7f7f4;
  border-bottom:1px solid rgba(0,0,0,.06);
}
.product-card__img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:contain;
  padding:16px;
}
.product-card__body{
  display:flex;
  flex-direction:column;
  flex:1;
}
.product-card__name{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:3.05em;
}
.product-card__meta{
  min-height:1.5em;
}
.product-card__actions{
  margin-top:auto;
}

/* Fokus klawiatury — wyraźny, ale zgodny z marką */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:2px solid var(--orange-light);
  outline-offset:3px;
}

/* Zdjęcie główne produktu */
.product-gallery__main{
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.product-gallery__photo{
  background:#f7f7f4;
}

/* Miniatury — spokojniejsza hierarchia */
.product-gallery__thumbs button{
  border:1px solid rgba(255,255,255,.12);
  transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.product-gallery__thumbs button:hover{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.28);
}
.product-gallery__thumbs button.is-active{
  border-color:var(--orange);
  box-shadow:0 0 0 1px var(--orange);
}

/* Wyniki wyszukiwania — lepsze skanowanie */
.ss-item{
  min-height:58px;
}
.ss-item span{
  font-weight:650;
}
.ss-item small{
  color:var(--green-light);
}

/* Drobne uspokojenie interfejsu na mobile */
@media(max-width:760px){
  .product-card__img{padding:12px}
  .product-card__name{min-height:auto}
}
