.header .logo {
  width: 210px;
  height: 82px;
}

.subHeader img {
  width: 195px;
  height: 76px;
}

.catalogImage {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.quick:disabled {
  opacity: .55;
  cursor: not-allowed;
  bottom: 12px;
}

.themeToggle {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
  place-items: center;
  font: 20px/1 Arial, sans-serif;
  transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}

.themeToggle:hover {
  border-color: var(--aqua);
  background: var(--soft);
  transform: rotate(10deg);
}

.form label,
.checkoutPage label,
.checkoutPage legend {
  line-height: 1.55;
  overflow: visible;
}

.form input,
.checkoutPage input,
.checkoutPage select,
.itemInfo select,
.newsletter input {
  min-height: 52px;
  padding: 0 16px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: normal;
  text-transform: none;
}

.form input::placeholder,
.checkoutPage input::placeholder,
.newsletter input::placeholder {
  line-height: normal;
}

.checkoutBtn,
.authTabs button,
.payOption {
  line-height: 1.45;
}

html.theme-dark {
  --ink: #eef5f5;
  --muted: #a7b8ba;
  --soft: #183238;
  --cream: #121c1f;
  --line: #304348;
  color-scheme: dark;
}

.theme-dark body,
.theme-dark footer,
.theme-dark .products,
.theme-dark .authPanel,
.theme-dark .cartPage {
  color: var(--ink);
  background: #0d1518;
}

.theme-dark .announcement {
  color: #dff8fb;
  background: #19383e;
}

.theme-dark .header,
.theme-dark .subHeader,
.theme-dark .productHeader {
  color: var(--ink);
  background: rgba(13, 21, 24, .96);
  border-color: var(--line);
}

.theme-dark .header .logo,
.theme-dark .subHeader img,
.theme-dark footer img {
  filter: brightness(0) invert(1);
}

.theme-dark .hero {
  background: linear-gradient(110deg, #101b1e 0 53%, #153037 53%);
}

.theme-dark .features,
.theme-dark .collection,
.theme-dark .newsletter,
.theme-dark .productDetailPage {
  color: var(--ink);
  background: #121f22;
  border-color: var(--line);
}

.theme-dark .collection > div,
.theme-dark .newsletter {
  background: #132529;
}

.theme-dark .floatingCard,
.theme-dark .authArt > div {
  color: var(--ink);
  background: rgba(16, 29, 32, .94);
}

.theme-dark .productImage:not(:has(.catalogImage)),
.theme-dark .miniProduct,
.theme-dark .tinyProduct,
.theme-dark .productGallery {
  background: linear-gradient(145deg, #1a3035, #203f45);
}

.theme-dark .productInfo h1,
.theme-dark .productPrice,
.theme-dark .productPromise b,
.theme-dark .productBreadcrumb,
.theme-dark .optionHead span,
.theme-dark .productDescription,
.theme-dark .productMeta details p {
  color: var(--ink);
}

.theme-dark .optionGroup,
.theme-dark .productMeta,
.theme-dark .productMeta details,
.theme-dark .productPromise {
  border-color: var(--line);
  background: var(--line);
}

.theme-dark .productPromise div,
.theme-dark .optionButton,
.theme-dark .quantityControl button,
.theme-dark .form input,
.theme-dark .checkoutPage input,
.theme-dark .checkoutPage select,
.theme-dark .itemInfo select {
  color: var(--ink);
  background: #152327;
  border-color: var(--line);
}

.theme-dark .optionButton:hover,
.theme-dark .optionButton.selected,
.theme-dark .productAddButton,
.theme-dark .checkoutBtn,
.theme-dark .primary {
  color: #102025;
  background: var(--aqua);
}

.theme-dark .summary,
.theme-dark .checkoutSummary,
.theme-dark .checkoutPage {
  color: var(--ink);
  background: #111d20;
}

.theme-dark .checkoutPage {
  background: linear-gradient(90deg, #0d1518 0 65%, #111f22 65%);
}

.theme-dark .payOption,
.theme-dark .cartItem,
.theme-dark .checkoutLine,
.theme-dark .checkoutPage fieldset,
.theme-dark footer small {
  border-color: var(--line);
}

.theme-dark .eyebrow,
.theme-dark .intro,
.theme-dark .authPanel > p:not(.eyebrow),
.theme-dark .authPanel small,
.theme-dark .summary small,
.theme-dark .checkoutLine p span,
.theme-dark .empty p {
  color: var(--muted);
}

@media (max-width: 900px) {
  .header {
    grid-template-columns: 48px minmax(0, 1fr) 94px;
  }

  .header .logo {
    width: 175px;
    height: 70px;
  }

  .header .nav {
    display: flex;
    visibility: hidden;
    z-index: 50;
    top: calc(100% + 8px);
    right: auto;
    left: 12px;
    width: min(280px, calc(100vw - 24px));
    padding: 17px;
    gap: 4px;
    border: 1px solid #e2ecec;
    border-radius: 3px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 22px 50px rgba(24, 37, 41, .16);
    opacity: 0;
    transform: translateX(-18px) scale(.97);
    transform-origin: top left;
    pointer-events: none;
    transition:
      opacity .2s ease,
      transform .24s cubic-bezier(.2, .8, .2, 1),
      visibility 0s linear .24s;
  }

  .theme-dark .header .nav {
    background: rgba(13, 21, 24, .98);
    border-color: var(--line);
  }

  .headerActions .themeToggle {
    display: grid !important;
  }

  .header .nav.open {
    visibility: visible;
    opacity: 1;
    transform: translateX(0) scale(1);
    pointer-events: auto;
    transition-delay: 0s;
  }

  .header .nav button {
    width: 100%;
    padding: 14px 13px;
    text-align: left;
  }

  .header .nav button::after {
    bottom: 7px;
    left: 13px;
  }

  .subHeader img {
    width: 175px;
    height: 72px;
  }
}

@media (max-width: 420px) {
  .header .logo {
    width: 165px;
  }

  .subHeader img {
    width: 165px;
  }

  .subHeader > div > a[aria-label="Account"] {
    display: none;
  }

  .subHeader > div {
    gap: 9px;
  }

  .themeToggle {
    width: 34px;
    height: 34px;
  }
}
