/* Styles specific to parts.html. */

.parts-hero {
  background:var(--bg2);
  position:relative;
  overflow:hidden;
}

.parts-hero-outline {
  position:absolute;
  right:-80px;
  top:-60px;
  width:340px;
  height:520px;
  border:1.5px solid rgba(0,94,210,.22);
  transform:skewX(-9deg);
  border-radius:0 60px 60px 0;
}

.parts-hero-accent {
  position:absolute;
  left:-60px;
  bottom:-40px;
  width:200px;
  height:260px;
  background:var(--blue);
  opacity:.08;
  transform:skewX(-9deg);
  border-radius:0 40px 0 0;
}

.parts-hero-inner {
  max-width:1040px;
  margin:0 auto;
  padding:32px 24px 80px;
  position:relative;
}

.parts-hero-heading {
  text-align:center;
  margin-top:28px;
}

.parts-logo {
  height:64px;
  width:auto;
  display:block;
  margin:0 auto;
}

.parts-description {
  margin:20px auto 0;
  font-size:18px;
  line-height:1.6;
  max-width:640px;
  color:var(--mute);
}

.parts-search-query {
  flex:3 1 260px;
}

.visually-hidden {
  position:absolute;
  left:-9999px;
}

.parts-search-select {
  flex:1 1 160px;
}

.flex-auto {
  flex:0 1 auto;
}

.parts-chips {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;
  margin-top:24px;
}

.parts-search-note {
  text-align:center;
  margin:18px 0 0;
  font-size:13px;
  color:var(--mute);
}

.parts-product-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:20px;
}

.parts-product-photo {
  height:220px;
  border-radius:0 32px 0 0;
  border:1px solid var(--line);
}

.parts-category-photo {
  border-radius:0 32px 0 0;
  height:150px;
}

.parts-category-panel {
  height:150px;
}

.parts-category-icon {
  width:64px;
  height:64px;
  position:relative;
  z-index:1;
}
