/* NiTiCu homepage product grid — compact desktop, two-column mobile */
body.home h2.wp-block-heading:has(> a[href*="/metal-product/"]) {
  margin: clamp(54px, 6vw, 82px) auto 26px;
  padding: 0 20px;
  color: #111827;
  font-size: clamp(28px, 3vw, 38px);
  line-height: 1.12;
  letter-spacing: -0.025em;
}

body.home h2.wp-block-heading:has(> a[href*="/metal-product/"]) a {
  color: inherit;
  text-decoration: none;
}

body.home .niticu-home-products {
  box-sizing: border-box;
  width: 100%;
  max-width: 1040px;
  margin-right: auto;
  margin-left: auto;
  padding: 0 24px 88px;
}

body.home .niticu-home-products .woocommerce ul.products.columns-3 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 24px;
  row-gap: 40px;
  width: 100%;
  margin: 0 !important;
}

body.home .niticu-home-products .woocommerce ul.products.columns-3::before,
body.home .niticu-home-products .woocommerce ul.products.columns-3::after {
  display: none !important;
}

body.home .niticu-home-products .woocommerce ul.products.columns-3 li.product,
body.home .niticu-home-products .woocommerce ul.products.columns-3 li.product:nth-child(2n) {
  box-sizing: border-box;
  clear: none !important;
  float: none !important;
  width: auto !important;
  min-width: 0;
  height: 100%;
  margin: 0 !important;
  padding: 12px 12px 18px;
  display: flex;
  flex-direction: column;
  border: 1px solid #e6eaf0;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.055);
  overflow: hidden;
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

body.home .niticu-home-products .woocommerce ul.products.columns-3 li.product:hover {
  border-color: #cfd8e5;
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.09);
  transform: translateY(-3px);
}

body.home .niticu-home-products .woocommerce-loop-product__link {
  display: block;
  width: 100%;
  color: inherit;
  text-decoration: none;
}

body.home .niticu-home-products ul.products.columns-3 li.product img.attachment-woocommerce_thumbnail {
  display: block;
  width: 100% !important;
  max-width: 288px !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  margin: 0 auto 14px !important;
  border-radius: 11px;
  object-fit: cover;
}

body.home .niticu-home-products ul.products.columns-3 li.product .woocommerce-loop-product__title {
  box-sizing: border-box !important;
  min-height: 66px;
  margin: 0 !important;
  padding: 0 4px !important;
  display: -webkit-box !important;
  overflow: hidden !important;
  color: #172033;
  font-size: 15.5px !important;
  font-weight: 650;
  line-height: 1.4 !important;
  text-align: left;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
}

body.home .niticu-home-products ul.products.columns-3 li.product > p {
  width: 100%;
  margin: auto 0 0 !important;
  padding: 0 4px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

body.home .niticu-home-products ul.products.columns-3 li.product .price {
  min-height: 24px;
  margin: 10px 0 12px !important;
  display: block;
  color: #334155;
  font-size: 15px !important;
  font-weight: 650;
  line-height: 1.4;
  text-align: left;
}

body.home .niticu-home-products ul.products.columns-3 li.product .button {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 44px;
  margin: 0 !important;
  padding: 10px 14px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

body.home .niticu-home-products ul.products.columns-3 li.product .onsale {
  top: 20px;
  right: 20px;
  left: auto;
  min-width: 48px;
  min-height: 28px;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 20px;
}

@media (min-width: 768px) and (max-width: 899px) {
  body.home .niticu-home-products {
    max-width: 720px;
  }

  body.home .niticu-home-products .woocommerce ul.products.columns-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.home .niticu-home-products ul.products.columns-3 li.product img.attachment-woocommerce_thumbnail {
    max-width: 280px !important;
  }
}

@media (max-width: 767px) {
  body.home h2.wp-block-heading:has(> a[href*="/metal-product/"]) {
    margin-top: 44px;
    margin-bottom: 20px;
    padding-right: 16px;
    padding-left: 16px;
    font-size: clamp(26px, 8vw, 32px);
  }

  body.home .niticu-home-products {
    max-width: 390px;
    padding: 0 12px 58px;
  }

  body.home .niticu-home-products .woocommerce ul.products.columns-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 10px;
    row-gap: 18px;
  }

  body.home .niticu-home-products .woocommerce ul.products.columns-3 li.product,
  body.home .niticu-home-products .woocommerce ul.products.columns-3 li.product:nth-child(2n) {
    padding: 7px 7px 11px;
    border-radius: 12px;
  }

  body.home .niticu-home-products ul.products.columns-3 li.product img.attachment-woocommerce_thumbnail {
    max-width: 100% !important;
    margin-bottom: 9px !important;
    border-radius: 8px;
  }

  body.home .niticu-home-products ul.products.columns-3 li.product .woocommerce-loop-product__title {
    min-height: 50px;
    padding: 0 2px !important;
    font-size: 12.75px !important;
    line-height: 1.3 !important;
  }

  body.home .niticu-home-products ul.products.columns-3 li.product > p {
    padding: 0 2px;
  }

  body.home .niticu-home-products ul.products.columns-3 li.product .price {
    min-height: 20px;
    margin: 7px 0 8px !important;
    font-size: 12px !important;
  }

  body.home .niticu-home-products ul.products.columns-3 li.product .button {
    min-height: 40px;
    padding: 8px 6px !important;
    border-radius: 7px;
    font-size: 12px !important;
  }

  body.home .niticu-home-products ul.products.columns-3 li.product .onsale {
    top: 12px;
    right: 12px;
    min-width: 40px;
    min-height: 24px;
    padding: 2px 6px;
    font-size: 10px;
    line-height: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.home .niticu-home-products .woocommerce ul.products.columns-3 li.product {
    transition: none;
  }

  body.home .niticu-home-products .woocommerce ul.products.columns-3 li.product:hover {
    transform: none;
  }
}

/* V12: full-screen desktop hero and product width aligned with news */
@media (min-width: 768px) {
  body.home #niticu-space-v10 .nsv10-stage {
    width: 100%;
    height: 100vh;
    height: 100svh;
    min-height: 650px;
    max-height: none;
    margin: 0;
  }
}

body.home .niticu-home-products {
  width: calc(100% - 8vw);
  max-width: 1400px;
  padding-right: 0;
  padding-left: 0;
}

body.home .niticu-home-products ul.products.columns-3 li.product img.attachment-woocommerce_thumbnail {
  max-width: 100% !important;
}

@media (min-width: 768px) and (max-width: 899px) {
  body.home .niticu-home-products {
    max-width: 1400px;
  }

  body.home .niticu-home-products ul.products.columns-3 li.product img.attachment-woocommerce_thumbnail {
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  body.home .niticu-home-products {
    width: 100%;
    max-width: 390px;
  }
}

/* V13 emergency rollback: restore the original desktop widescreen hero */
@media (min-width: 1101px) {
  body.home #niticu-space-v10 .nsv10-stage {
    width: min(92vw, 1500px);
    height: clamp(650px, 68vh, 720px);
    min-height: 650px;
    max-height: 720px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  body.home #niticu-space-v10 .nsv10-stage {
    width: calc(100% - 24px);
    height: 610px;
    min-height: 610px;
    max-height: none;
    margin-right: auto;
    margin-left: auto;
  }
}

/* V14: full-width widescreen hero with the homepage header overlaid inside */
body.home .wp-site-blocks {
  position: relative;
}

body.home header.wp-block-template-part {
  position: absolute;
  z-index: 1000;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  color: #f7fbff;
}

body.home.admin-bar header.wp-block-template-part {
  top: 32px;
}

body.home header.wp-block-template-part > .wc-blocks-pattern-header-essential {
  box-sizing: border-box;
  width: 100%;
  min-height: 104px;
  padding: 16px clamp(24px, 4vw, 60px) !important;
  align-items: center;
  gap: 22px;
  color: #f7fbff;
  background: linear-gradient(
    180deg,
    rgba(0, 3, 9, 0.94) 0%,
    rgba(0, 3, 9, 0.64) 62%,
    rgba(0, 3, 9, 0) 100%
  );
}

body.home header.wp-block-template-part .wp-block-site-logo,
body.home header.wp-block-template-part .custom-logo-link {
  width: 78px !important;
  height: 74px !important;
  flex: 0 0 auto;
  line-height: 0;
}

body.home header.wp-block-template-part .wc-blocks-pattern-header-essential > .wp-block-group:first-child {
  width: 78px !important;
  height: 74px !important;
  flex: 0 0 78px !important;
}

body.home header.wp-block-template-part .custom-logo {
  width: 78px !important;
  height: 74px !important;
  max-height: 74px !important;
  object-fit: contain;
  filter:
    drop-shadow(1px 0 0 rgba(255, 255, 255, 0.95))
    drop-shadow(-1px 0 0 rgba(255, 255, 255, 0.95))
    drop-shadow(0 1px 0 rgba(255, 255, 255, 0.95))
    drop-shadow(0 -1px 0 rgba(255, 255, 255, 0.95))
    drop-shadow(0 3px 10px rgba(0, 0, 0, 0.55));
}

body.home header.wp-block-template-part .wc-blocks-pattern-header-essential > .wp-block-group:last-child {
  min-width: 0;
  flex: 1 1 auto;
  justify-content: flex-end;
  gap: 12px;
}

body.home header.wp-block-template-part .wp-block-navigation,
body.home header.wp-block-template-part .wp-block-navigation__responsive-container,
body.home header.wp-block-template-part .wp-block-navigation__responsive-close,
body.home header.wp-block-template-part .wp-block-navigation__responsive-dialog {
  width: auto;
  height: auto;
  color: #f7fbff;
  background: transparent;
}

body.home header.wp-block-template-part .wp-block-navigation__responsive-container-content,
body.home header.wp-block-template-part .wp-block-navigation__container {
  flex-wrap: nowrap !important;
  align-items: center;
  gap: clamp(11px, 1.4vw, 22px) !important;
}

body.home header.wp-block-template-part .wp-block-navigation-item {
  font-size: clamp(13px, 1.12vw, 16px) !important;
  line-height: 1.25;
}

body.home header.wp-block-template-part .wp-block-navigation-item__content,
body.home header.wp-block-template-part .wp-block-navigation-item__label,
body.home header.wp-block-template-part .wp-block-navigation__responsive-container-open,
body.home header.wp-block-template-part .wp-block-navigation__responsive-container-close,
body.home header.wp-block-template-part .wc-block-mini-cart__button,
body.home header.wp-block-template-part .wc-block-customer-account__link {
  color: #f7fbff !important;
}

body.home header.wp-block-template-part .wp-block-navigation-item__content {
  white-space: nowrap;
  text-decoration: none;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
  transition: color 160ms ease, opacity 160ms ease;
}

body.home header.wp-block-template-part .wp-block-navigation-item__content:hover,
body.home header.wp-block-template-part .wp-block-navigation-item__content:focus-visible {
  color: #6bc8ff !important;
}

body.home header.wp-block-template-part .wc-block-mini-cart__button,
body.home header.wp-block-template-part .wc-block-customer-account__link {
  border-radius: 999px;
}

body.home header.wp-block-template-part .wc-block-mini-cart__button:hover,
body.home header.wp-block-template-part .wc-block-customer-account__link:hover {
  background: rgba(255, 255, 255, 0.1);
}

body.home header.wp-block-template-part .wc-block-mini-cart__badge {
  color: #ffffff !important;
  background: #168ef4 !important;
}

body.home header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open {
  color: #f7fbff;
  background: rgba(2, 7, 17, 0.98) !important;
}

@media (min-width: 768px) {
  body.home #niticu-space-v10 .nsv10-stage {
    width: 100%;
  }

  body.home #niticu-space-v10 .nsv10-pause {
    top: 116px;
  }
}

@media (max-width: 899px) {
  body.home header.wp-block-template-part > .wc-blocks-pattern-header-essential {
    min-height: 78px;
    padding: 10px 18px !important;
    gap: 14px;
  }

  body.home header.wp-block-template-part .custom-logo {
    width: 58px !important;
    height: 56px !important;
    max-height: 56px !important;
  }

  body.home header.wp-block-template-part .wp-block-site-logo,
  body.home header.wp-block-template-part .custom-logo-link {
    width: 58px !important;
    height: 56px !important;
  }

  body.home header.wp-block-template-part .wc-blocks-pattern-header-essential > .wp-block-group:first-child {
    width: 58px !important;
    height: 56px !important;
    flex-basis: 58px !important;
  }

  body.home header.wp-block-template-part .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none !important;
  }

  body.home header.wp-block-template-part .wp-block-navigation__responsive-container-open {
    display: flex !important;
  }

  body.home #niticu-space-v10 .nsv10-pause {
    top: 88px;
  }
}

@media (max-width: 782px) {
  body.home.admin-bar header.wp-block-template-part {
    top: 46px;
  }
}

@media (max-width: 479px) {
  body.home header.wp-block-template-part > .wc-blocks-pattern-header-essential {
    min-height: 72px;
    padding-right: 12px !important;
    padding-left: 12px !important;
    gap: 10px;
  }

  body.home header.wp-block-template-part .custom-logo {
    width: 52px !important;
    height: 50px !important;
    max-height: 50px !important;
  }

  body.home header.wp-block-template-part .wp-block-site-logo,
  body.home header.wp-block-template-part .custom-logo-link {
    width: 52px !important;
    height: 50px !important;
  }

  body.home header.wp-block-template-part .wc-blocks-pattern-header-essential > .wp-block-group:first-child {
    width: 52px !important;
    height: 50px !important;
    flex-basis: 52px !important;
  }

  body.home header.wp-block-template-part .wc-block-mini-cart__button,
  body.home header.wp-block-template-part .wc-block-customer-account__link {
    min-width: 40px;
    min-height: 40px;
    padding: 8px;
  }
}


/* V15: simplify hero copy and strengthen the active-material panel */
body.home header.wp-block-template-part .custom-logo {
  filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.55));
}

body.home #niticu-space-v10 .nsv10-eyebrow,
body.home #niticu-space-v10 .nsv10-intro {
  display: none !important;
}

@media (min-width: 900px) {
  body.home #niticu-space-v10 .nsv10-card {
    min-height: 238px;
    margin-top: 26px;
    padding: 22px;
    grid-template-columns: 122px minmax(0, 1fr);
    gap: 24px;
  }

  body.home #niticu-space-v10 .nsv10-element {
    width: 122px;
    height: 144px;
    border-radius: 14px;
  }

  body.home #niticu-space-v10 .nsv10-number {
    left: 11px;
    top: 10px;
    font-size: 10px;
  }

  body.home #niticu-space-v10 .nsv10-element strong {
    font-size: 52px;
  }

  body.home #niticu-space-v10 .nsv10-element small {
    margin-top: 9px;
    font-size: 12px;
  }

  body.home #niticu-space-v10 .nsv10-card-label {
    margin-bottom: 6px;
    font-size: 9px;
  }

  body.home #niticu-space-v10 .nsv10-card-copy h2 {
    margin-bottom: 8px;
    font-size: 24px;
  }

  body.home #niticu-space-v10 .nsv10-description {
    font-size: 12.5px;
    line-height: 1.5;
  }

  body.home #niticu-space-v10 .nsv10-material-data {
    gap: 9px;
    margin-top: 14px;
  }

  body.home #niticu-space-v10 .nsv10-material-data div {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 10px;
  }

  body.home #niticu-space-v10 .nsv10-material-data span {
    font-size: 9px;
  }

  body.home #niticu-space-v10 .nsv10-material-data strong {
    font-size: 10.5px;
  }

  body.home #niticu-space-v10 .nsv10-material-link {
    margin-top: 13px;
    font-size: 12px;
  }

  body.home #niticu-space-v10 .nsv10-actions {
    gap: 12px;
    margin-top: 28px;
  }

  body.home #niticu-space-v10 .nsv10-btn {
    min-height: 54px;
    padding: 0 18px;
    border-radius: 9px;
    font-size: 13px;
  }
}

@media (max-width: 899px) {
  body.home #niticu-space-v10 .nsv10-card {
    min-height: 210px;
    margin-top: 24px;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 15px;
  }

  body.home #niticu-space-v10 .nsv10-element {
    width: 88px;
    height: 104px;
  }

  body.home #niticu-space-v10 .nsv10-element strong {
    font-size: 38px;
  }

  body.home #niticu-space-v10 .nsv10-element small {
    font-size: 11px;
  }

  body.home #niticu-space-v10 .nsv10-card-copy h2 {
    font-size: 22px;
  }

  body.home #niticu-space-v10 .nsv10-description {
    font-size: 12px;
  }

  body.home #niticu-space-v10 .nsv10-material-data strong {
    font-size: 10px;
  }

  body.home #niticu-space-v10 .nsv10-material-link {
    font-size: 11px;
  }

  body.home #niticu-space-v10 .nsv10-actions {
    margin-top: 22px;
  }

  body.home #niticu-space-v10 .nsv10-btn {
    min-height: 50px;
    padding: 0 12px;
    font-size: 12px;
  }
}
好的

/* V16: reveal only the lower foreground section of the desktop orbit */
@media (min-width: 900px) {
  body.home #niticu-space-v10 #nsv10-earth-mask > ellipse {
    transform-box: fill-box;
    transform-origin: center;
    transform: translateY(-78px);
  }
}
