/* KORVA · korvamtngear.com */
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #121819; }
body.light { background: #F2EFE8; }
img { display: block; max-width: 100%; }
a { color: #E0582D; }
a:hover { color: #F2EFE8; }
body.light main a { color: #4E5659; }
body.light main a:hover { color: #121819; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid #E0582D; outline-offset: 2px;
}
[hidden] { display: none !important; }
section[id] { scroll-margin-top: 84px; }
button:disabled { opacity: 0.6; cursor: wait; }

/* Product page controls */
.pd-thumbs, .pd-swatches, .pd-sizes { display: flex; flex-wrap: wrap; }
.pd-thumbs { gap: 12px; }
.pd-swatches, .pd-sizes { gap: 8px; }
.pd-thumb {
  width: 88px; height: 104px; padding: 6px; border-radius: 10px;
  background: #E8E3D9; border: 2px solid transparent; cursor: pointer;
}
.pd-thumb[aria-pressed="true"] { border-color: #121819; }
.pd-thumb img { width: 100%; height: 100%; object-fit: contain; }
.pd-swatch {
  width: 48px; height: 48px; padding: 0; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%; background: transparent; border: 2px solid transparent; cursor: pointer;
}
.pd-swatch[aria-pressed="true"] { border-color: #121819; }
.pd-swatch span { width: 34px; height: 34px; border-radius: 50%; box-shadow: inset 0 0 0 1px #8C969A; }
.pd-size {
  min-width: 60px; min-height: 48px; padding: 0 12px; border-radius: 8px;
  font-family: 'IBM Plex Mono', ui-monospace, monospace; font-size: 15px; cursor: pointer;
  border: 1.5px solid #B9B2A5; background: #F2EFE8; color: #121819;
}
.pd-size[aria-pressed="true"] { background: #121819; color: #F2EFE8; border-color: #121819; }
.pd-fit {
  min-height: 44px; padding: 0 24px; border: 0; border-radius: 999px;
  font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; background: transparent; color: #121819;
}
.pd-fit[aria-pressed="true"] { background: #121819; color: #F2EFE8; }
.pd-main-img { width: 100%; height: 560px; object-fit: contain; }
.kit-card {
  flex: 1 1 280px; max-width: 416px; min-width: 0; display: flex; flex-direction: column; gap: 10px;
  padding: 20px; border-radius: 12px; background: #F2EFE8; color: #121819; text-decoration: none;
}
body.light .kit-card, body.light .kit-card:hover { color: #121819; }
.kit-card img { width: 100%; height: 240px; object-fit: contain; }

/* Phones and small tablets */
@media (max-width: 760px) {
  .site-header { position: static !important; }
  .nav-links { gap: 0 18px !important; font-size: 14px !important; }
  .pd-main-img { height: 340px; }
  .pd-stage { padding: 16px !important; }
  .pd-thumb { width: 60px; height: 72px; padding: 4px; }
  section[id] { scroll-margin-top: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
