/* Final commerce layer: compact product discovery and Razorpay-ready checkout. */

.shop-hero {
  min-height: 304px !important;
  background-position: center 54% !important;
}

.shop-hero::before {
  background: linear-gradient(
    90deg,
    rgba(7, 11, 13, 0.94) 0%,
    rgba(7, 11, 13, 0.78) 48%,
    rgba(7, 11, 13, 0.28) 100%
  ) !important;
}

.shop-hero-inner {
  padding: calc(var(--header-h) + 34px) 0 27px !important;
}

.shop-hero h1 {
  max-width: 660px !important;
  font-size: 2.48rem !important;
  line-height: 1.04 !important;
}

.shop-hero-inner > p:not(.eyebrow) {
  max-width: 530px !important;
  margin-top: 12px !important;
  font-size: 0.8rem !important;
}

.shop-assurance {
  max-width: 730px !important;
  margin-top: 19px !important;
  padding-top: 12px !important;
}

.shop-assurance span {
  font-size: 0.61rem !important;
}

.shop-assurance b {
  font-size: 0.68rem !important;
}

.shop-band {
  padding-top: 37px !important;
}

.shop-intro {
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 26px !important;
  margin-bottom: 17px !important;
}

.shop-intro h2 {
  font-size: 1.72rem !important;
}

.shop-intro > p {
  max-width: 280px !important;
  padding-bottom: 2px !important;
}

.shop-toolbar {
  margin-bottom: 16px !important;
  border-color: rgba(17, 23, 26, 0.11) !important;
  box-shadow: 0 12px 32px rgba(17, 23, 26, 0.075) !important;
}

.shop-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 15px !important;
}

.shop-grid.is-single-result {
  grid-template-columns: minmax(0, 585px) !important;
}

.shop-product {
  min-height: 294px !important;
  display: grid !important;
  grid-template-columns: 208px minmax(0, 1fr) !important;
  grid-template-rows: 1fr !important;
  border-color: rgba(17, 23, 26, 0.12) !important;
  box-shadow: 0 10px 30px rgba(17, 23, 26, 0.055) !important;
}

.shop-product:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 42px rgba(17, 23, 26, 0.1) !important;
}

.shop-product[data-group-id="ican-containers"] .shop-media-photo img {
  transform: scale(1.68) !important;
}

.shop-product-media {
  min-height: 100% !important;
  border-right: 1px solid rgba(17, 23, 26, 0.09) !important;
}

.shop-media-photo {
  width: 100% !important;
  height: 100% !important;
}

.shop-media-photo img,
.shop-product-media.is-exact-media .shop-media-photo img {
  padding: 19px !important;
}

.shop-product-copy {
  align-content: start !important;
  gap: 10px !important;
  padding: 17px !important;
}

.shop-product-meta {
  color: #6a7479 !important;
  font-size: 0.56rem !important;
}

.shop-product-heading {
  display: grid !important;
  gap: 4px !important;
}

.shop-product-heading h3 {
  font-size: 1.05rem !important;
}

.shop-product-heading p {
  display: -webkit-box !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  font-size: 0.66rem !important;
}

.shop-variant-field {
  margin-top: 1px !important;
}

.shop-variant-field select {
  height: 42px !important;
  border-left-width: 2px !important;
  font-size: 0.66rem !important;
}

.shop-buy-row {
  align-self: end !important;
  grid-template-columns: minmax(94px, 0.58fr) minmax(0, 1.42fr) !important;
  gap: 11px !important;
  margin-top: auto !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(17, 23, 26, 0.09) !important;
}

.shop-price small {
  color: #758086 !important;
  font-size: 0.54rem !important;
  font-weight: 760 !important;
  text-transform: uppercase !important;
}

.shop-price strong {
  font-size: 1.06rem !important;
}

.shop-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

.shop-add,
.shop-buy-now,
.shop-request-price {
  min-height: 42px !important;
  border-radius: 6px !important;
  font-size: 0.62rem !important;
  font-weight: 780 !important;
}

.shop-add {
  color: var(--ls-ink) !important;
  border: 1px solid rgba(17, 23, 26, 0.2) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.shop-add:hover {
  color: var(--ls-green) !important;
  border-color: rgba(23, 95, 82, 0.45) !important;
  background: #f2f8f5 !important;
}

.shop-buy-now {
  color: #11171a !important;
  border-color: var(--ls-orange) !important;
  background: var(--ls-orange) !important;
  box-shadow: 0 8px 18px rgba(189, 101, 24, 0.18) !important;
}

.shop-buy-now:hover {
  color: #ffffff !important;
  border-color: var(--ls-orange-strong) !important;
  background: var(--ls-orange-strong) !important;
}

.shop-commercial-note {
  color: #6d777c !important;
  font-size: 0.64rem !important;
  text-align: center !important;
}

/* Purchase drawer */
.cart-drawer {
  width: min(500px, 100vw) !important;
  display: flex !important;
  flex-direction: column !important;
}

.cart-drawer-head {
  min-height: 74px !important;
  flex: 0 0 auto !important;
  padding: 14px 20px !important;
}

.cart-drawer-head h2 {
  font-size: 1.2rem !important;
}

.cart-progress {
  min-height: 43px !important;
  flex: 0 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  padding: 0 20px !important;
  border-bottom: 1px solid var(--ls-line) !important;
  background: #f7f9f8 !important;
}

.cart-progress span {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  color: #7b858a !important;
  font-size: 0.57rem !important;
  font-weight: 760 !important;
}

.cart-progress span + span::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: -13px !important;
  width: 26px !important;
  height: 1px !important;
  background: rgba(17, 23, 26, 0.16) !important;
}

.cart-progress .is-active {
  color: var(--ls-green) !important;
}

.cart-progress .is-active::after {
  content: "" !important;
  position: absolute !important;
  right: 20% !important;
  bottom: -1px !important;
  left: 20% !important;
  height: 2px !important;
  background: var(--ls-orange) !important;
}

.cart-drawer-body {
  min-height: 0 !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  overflow-y: auto !important;
  padding: 8px 20px 20px !important;
}

.cart-line {
  grid-template-columns: 68px minmax(0, 1fr) auto !important;
  gap: 12px !important;
  padding: 14px 0 !important;
}

.cart-line > img {
  width: 68px !important;
  height: 68px !important;
}

.cart-line-copy {
  align-content: center !important;
}

.cart-line-copy strong {
  color: var(--ls-ink) !important;
  font-size: 0.72rem !important;
  line-height: 1.25 !important;
}

.cart-line-copy span {
  margin-top: 3px !important;
  color: #788287 !important;
  font-size: 0.56rem !important;
}

.cart-line-copy b {
  margin-top: 4px !important;
  color: var(--ls-ink) !important;
  font-size: 0.69rem !important;
}

.quantity-stepper {
  border-color: rgba(17, 23, 26, 0.16) !important;
  border-radius: 5px !important;
  overflow: hidden !important;
}

.cart-purchase-panel {
  margin-top: 18px !important;
  padding-top: 17px !important;
  border-top: 2px solid var(--ls-ink) !important;
  background: #ffffff !important;
}

.cart-totals {
  margin-top: 0 !important;
  padding: 0 0 12px !important;
  border-top: 0 !important;
}

.cart-totals span {
  color: #657076 !important;
  font-size: 0.66rem !important;
}

.cart-totals strong {
  font-size: 1.38rem !important;
}

.cart-assurance {
  display: grid !important;
  gap: 7px !important;
  padding: 11px 12px !important;
  border-color: rgba(23, 95, 82, 0.14) !important;
  background: #edf6f2 !important;
}

.cart-assurance span {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  gap: 8px !important;
  font-size: 0.6rem !important;
  line-height: 1.4 !important;
}

.cart-assurance b {
  color: var(--ls-green) !important;
}

.cart-note {
  margin: 9px 0 12px !important;
  color: #6c767b !important;
  font-size: 0.58rem !important;
}

.cart-checkout {
  min-height: 48px !important;
  color: #11171a !important;
  border-color: var(--ls-orange) !important;
  background: var(--ls-orange) !important;
  box-shadow: 0 10px 24px rgba(189, 101, 24, 0.18) !important;
}

.cart-checkout:hover {
  color: #ffffff !important;
  border-color: var(--ls-orange-strong) !important;
  background: var(--ls-orange-strong) !important;
}

.cart-continue {
  margin-top: 10px !important;
  font-size: 0.62rem !important;
}

/* Razorpay-ready checkout */
.checkout-hero {
  min-height: 178px !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.55fr) !important;
  gap: 36px !important;
  padding: calc(var(--header-h) + 24px) max(22px, calc((100vw - var(--max)) / 2)) 23px !important;
  background: #12191c !important;
}

.checkout-hero h1 {
  margin-top: 5px !important;
  font-size: 2.05rem !important;
}

.checkout-hero > div > p:not(.eyebrow) {
  margin-top: 9px !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 0.7rem !important;
}

.checkout-steps {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-self: end !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 6px !important;
  overflow: hidden !important;
}

.checkout-steps span {
  min-width: 0 !important;
  padding: 11px 8px !important;
  color: rgba(255, 255, 255, 0.52) !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 0.6rem !important;
  font-weight: 760 !important;
  text-align: center !important;
}

.checkout-steps span + span {
  border-left: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.checkout-steps .is-complete {
  color: rgba(255, 255, 255, 0.76) !important;
}

.checkout-steps .is-active {
  color: #11171a !important;
  background: var(--ls-orange) !important;
}

.checkout-band {
  width: min(var(--max), 100%) !important;
  grid-template-columns: minmax(0, 1fr) 365px !important;
  gap: 18px !important;
  margin: 0 auto !important;
  padding: 22px 0 58px !important;
}

.checkout-form-panel,
.checkout-summary {
  border-color: rgba(17, 23, 26, 0.12) !important;
  box-shadow: 0 12px 34px rgba(17, 23, 26, 0.065) !important;
}

.checkout-mobile-orderbar {
  display: none !important;
}

.checkout-form-section {
  padding: 23px 26px !important;
}

.checkout-form-section + .checkout-form-section {
  border-top: 1px solid rgba(17, 23, 26, 0.1) !important;
}

.checkout-form-head {
  grid-template-columns: 74px minmax(0, 1fr) !important;
  margin-bottom: 15px !important;
}

.checkout-section-label {
  min-width: 74px !important;
  min-height: 25px !important;
  border-radius: 4px !important;
  font-size: 0.55rem !important;
  text-transform: uppercase !important;
}

.checkout-form-head h2 {
  font-size: 1.24rem !important;
}

.checkout-form-panel input,
.checkout-form-panel select,
.checkout-form-panel textarea {
  border-color: rgba(17, 23, 26, 0.16) !important;
  background: #fbfcfb !important;
  transition:
    border-color 160ms ease,
    box-shadow 160ms ease,
    background-color 160ms ease !important;
}

.checkout-form-panel input:focus,
.checkout-form-panel select:focus,
.checkout-form-panel textarea:focus {
  border-color: rgba(23, 95, 82, 0.62) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(23, 95, 82, 0.09) !important;
}

.shipping-method {
  border-color: rgba(23, 95, 82, 0.15) !important;
  background: #eef6f3 !important;
}

.checkout-payment-section {
  background: #fbfcfb !important;
}

.checkout-payment-method {
  display: grid !important;
  grid-template-columns: 150px minmax(0, 1fr) !important;
  gap: 14px 18px !important;
  margin-bottom: 13px !important;
  padding: 17px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 7px !important;
  color: #ffffff !important;
  background: #151d21 !important;
  box-shadow: 0 13px 30px rgba(17, 23, 26, 0.13) !important;
}

.checkout-payment-brand {
  min-width: 0 !important;
  display: grid !important;
  align-content: start !important;
  gap: 9px !important;
}

.checkout-payment-brand img {
  width: 126px !important;
  height: auto !important;
  display: block !important;
}

.checkout-payment-brand span {
  width: max-content !important;
  max-width: 100% !important;
  padding: 4px 7px !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 4px !important;
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 0.53rem !important;
  font-weight: 760 !important;
}

.checkout-payment-method.is-ready .checkout-payment-brand span {
  color: #bce9d8 !important;
  border-color: rgba(77, 193, 147, 0.32) !important;
  background: rgba(77, 193, 147, 0.09) !important;
}

.checkout-payment-method.is-test .checkout-payment-brand span {
  color: #ffe0ad !important;
  border-color: rgba(233, 145, 50, 0.38) !important;
  background: rgba(233, 145, 50, 0.1) !important;
}

.checkout-payment-copy h3 {
  color: #ffffff !important;
  font-size: 0.83rem !important;
  line-height: 1.25 !important;
}

.checkout-payment-copy p {
  max-width: 470px !important;
  margin-top: 6px !important;
  color: rgba(255, 255, 255, 0.63) !important;
  font-size: 0.62rem !important;
  line-height: 1.48 !important;
}

.checkout-payment-options {
  grid-column: 1 / -1 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

.checkout-payment-options span {
  padding: 5px 8px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 4px !important;
  color: rgba(255, 255, 255, 0.8) !important;
  background: rgba(255, 255, 255, 0.045) !important;
  font-size: 0.54rem !important;
  font-weight: 720 !important;
}

.checkout-payment-assurance {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 9px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.checkout-payment-assurance span {
  padding: 10px 11px !important;
  border: 1px solid rgba(17, 23, 26, 0.1) !important;
  border-radius: 6px !important;
  color: #657076 !important;
  background: #ffffff !important;
  font-size: 0.58rem !important;
  line-height: 1.4 !important;
}

.checkout-payment-assurance b {
  display: block !important;
  margin-bottom: 2px !important;
  color: var(--ls-green) !important;
}

.checkout-submit-row {
  margin-top: 13px !important;
}

.checkout-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.85fr) !important;
  gap: 8px !important;
}

.checkout-actions > .button {
  min-height: 48px !important;
  padding-inline: 15px !important;
}

.checkout-actions > [data-payment-submit] {
  color: #11171a !important;
  border-color: var(--ls-orange) !important;
  background: var(--ls-orange) !important;
  box-shadow: 0 10px 24px rgba(189, 101, 24, 0.18) !important;
}

.checkout-summary {
  top: calc(var(--header-h) + 13px) !important;
  padding: 18px !important;
}

.checkout-summary-head {
  padding-bottom: 13px !important;
}

.checkout-summary-head h2 {
  font-size: 1.02rem !important;
}

.checkout-summary ul {
  max-height: 340px !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
}

.checkout-line {
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  gap: 10px !important;
  padding: 11px 0 !important;
}

.checkout-line img {
  width: 54px !important;
  height: 54px !important;
  padding: 6px !important;
  border: 1px solid var(--ls-line) !important;
  border-radius: 5px !important;
  background: #f8faf8 !important;
}

.checkout-line strong {
  font-size: 0.66rem !important;
}

.checkout-line span,
.checkout-line small {
  font-size: 0.54rem !important;
}

.checkout-line > b {
  font-size: 0.62rem !important;
}

.checkout-total {
  padding: 15px 0 !important;
}

.checkout-total strong {
  font-size: 1.26rem !important;
}

@media (max-width: 1040px) {
  .shop-product {
    grid-template-columns: 178px minmax(0, 1fr) !important;
  }

  .shop-product-copy {
    padding: 15px !important;
  }

  .shop-buy-row {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .shop-price {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
  }

  .checkout-band {
    width: calc(100% - 34px) !important;
    grid-template-columns: minmax(0, 1fr) 330px !important;
  }
}

@media (max-width: 820px) {
  .shop-grid,
  .shop-grid.is-single-result {
    grid-template-columns: 1fr !important;
  }

  .shop-product {
    grid-template-columns: 210px minmax(0, 1fr) !important;
  }

  .checkout-hero {
    grid-template-columns: 1fr !important;
    gap: 13px !important;
  }

  .checkout-steps {
    max-width: 520px !important;
  }

  .checkout-band {
    grid-template-columns: 1fr !important;
  }

  .checkout-summary {
    position: static !important;
    order: initial !important;
  }

  .checkout-summary ul {
    max-height: 190px !important;
  }
}

@media (max-width: 680px) {
  .shop-hero {
    min-height: 238px !important;
  }

  .shop-hero-inner {
    width: calc(100% - 26px) !important;
    max-width: calc(100vw - 26px) !important;
    min-width: 0 !important;
    padding: calc(var(--header-h) + 22px) 0 20px !important;
  }

  .shop-hero h1 {
    width: 100% !important;
    max-width: 340px !important;
    overflow-wrap: break-word !important;
    font-size: 1.72rem !important;
    line-height: 1.06 !important;
  }

  .shop-hero-inner > p:not(.eyebrow) {
    max-width: 330px !important;
    margin-top: 8px !important;
    font-size: 0.68rem !important;
  }

  .shop-assurance {
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    overflow: hidden !important;
    margin-top: 13px !important;
    padding-top: 9px !important;
  }

  .shop-assurance span,
  .shop-assurance span + span {
    min-width: 0 !important;
    padding: 0 7px !important;
    border-left: 1px solid rgba(255, 255, 255, 0.18) !important;
    font-size: 0.49rem !important;
    overflow-wrap: anywhere !important;
  }

  .shop-assurance span:first-child {
    padding-left: 0 !important;
    border-left: 0 !important;
  }

  .shop-assurance b {
    font-size: 0.56rem !important;
  }

  .shop-band {
    padding-top: 22px !important;
    padding-bottom: 38px !important;
  }

  .shop-intro {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
    margin-bottom: 11px !important;
  }

  .shop-intro h2 {
    font-size: 1.32rem !important;
  }

  .shop-intro > p {
    padding-bottom: 0 !important;
    font-size: 0.64rem !important;
  }

  .shop-toolbar {
    gap: 6px !important;
    margin-bottom: 10px !important;
    padding: 7px !important;
    border-radius: 7px !important;
  }

  .shop-search,
  .shop-search input,
  .shop-family-select-field select {
    height: 40px !important;
  }

  .shop-search input {
    font-size: 0.7rem !important;
  }

  .shop-family-select-field {
    grid-template-columns: 80px minmax(0, 1fr) !important;
    font-size: 0.57rem !important;
  }

  .shop-family-select-field select {
    font-size: 0.65rem !important;
  }

  .shop-product {
    min-height: 270px !important;
    grid-template-columns: 118px minmax(0, 1fr) !important;
  }

  .shop-product-media {
    min-height: 270px !important;
  }

  .shop-media-photo img,
  .shop-product-media.is-exact-media .shop-media-photo img {
    padding: 10px !important;
  }

  .shop-model-key {
    top: 7px !important;
    right: 7px !important;
    padding: 4px 5px !important;
    font-size: 0.48rem !important;
  }

  .shop-product-copy {
    gap: 7px !important;
    padding: 11px !important;
  }

  .shop-product-meta {
    font-size: 0.5rem !important;
  }

  .shop-product-meta span:last-child {
    display: none !important;
  }

  .shop-product-heading h3 {
    font-size: 0.88rem !important;
  }

  .shop-product-heading p {
    font-size: 0.58rem !important;
    line-height: 1.35 !important;
  }

  .shop-variant-field {
    gap: 4px !important;
    font-size: 0.54rem !important;
  }

  .shop-variant-field select {
    height: 39px !important;
    padding: 0 27px 0 8px !important;
    font-size: 0.58rem !important;
  }

  .shop-buy-row {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    padding-top: 8px !important;
  }

  .shop-price {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
  }

  .shop-price small {
    font-size: 0.48rem !important;
  }

  .shop-price strong {
    font-size: 0.9rem !important;
  }

  .shop-actions {
    gap: 5px !important;
  }

  .shop-add,
  .shop-buy-now,
  .shop-request-price {
    min-height: 39px !important;
    padding: 0 6px !important;
    font-size: 0.56rem !important;
  }

  .shop-commercial-note {
    margin-top: 14px !important;
    padding-inline: 8px !important;
    font-size: 0.56rem !important;
  }

  .cart-drawer {
    height: 100dvh !important;
  }

  .cart-drawer-head {
    min-height: 66px !important;
    padding: 11px 14px !important;
  }

  .cart-progress {
    min-height: 40px !important;
    padding-inline: 14px !important;
  }

  .cart-progress span {
    font-size: 0.52rem !important;
  }

  .cart-drawer-body {
    padding: 6px 14px 16px !important;
  }

  .cart-line {
    grid-template-columns: 58px minmax(0, 1fr) auto !important;
    gap: 9px !important;
    padding: 11px 0 !important;
  }

  .cart-line > img {
    width: 58px !important;
    height: 58px !important;
  }

  .cart-line-copy strong {
    font-size: 0.64rem !important;
  }

  .cart-line-copy span {
    font-size: 0.5rem !important;
  }

  .cart-line-controls {
    gap: 7px !important;
  }

  .checkout-hero {
    min-height: 0 !important;
    gap: 12px !important;
    padding: calc(var(--header-h) + 18px) 13px 18px !important;
  }

  .checkout-hero h1 {
    font-size: 1.55rem !important;
  }

  .checkout-hero > div > p:not(.eyebrow) {
    margin-top: 6px !important;
    font-size: 0.62rem !important;
  }

  .checkout-steps {
    border-radius: 5px !important;
  }

  .checkout-steps span {
    padding: 9px 4px !important;
    font-size: 0.51rem !important;
  }

  .checkout-band {
    width: 100% !important;
    gap: 10px !important;
    padding: 10px 12px 34px !important;
  }

  .checkout-summary {
    padding: 13px !important;
  }

  .checkout-mobile-orderbar {
    min-height: 45px !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 9px 13px !important;
    border-bottom: 1px solid rgba(17, 23, 26, 0.1) !important;
    color: #657076 !important;
    background: #f7f9f8 !important;
    font-size: 0.58rem !important;
  }

  .checkout-mobile-orderbar strong {
    color: var(--ls-ink) !important;
    font-size: 0.77rem !important;
    text-align: right !important;
  }

  .checkout-mobile-orderbar button,
  .checkout-mobile-orderbar a {
    padding: 0 !important;
    color: var(--ls-orange-strong) !important;
    border: 0 !important;
    background: transparent !important;
    font-size: 0.58rem !important;
    font-weight: 780 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
  }

  .checkout-summary-head {
    padding-bottom: 9px !important;
  }

  .checkout-summary ul {
    max-height: 154px !important;
  }

  .checkout-form-section {
    padding: 17px 14px !important;
  }

  .checkout-form-head {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    margin-bottom: 12px !important;
  }

  .checkout-section-label {
    width: max-content !important;
    min-width: 0 !important;
  }

  .checkout-form-head h2 {
    font-size: 1.08rem !important;
  }

  .checkout-contact-fields,
  .checkout-location-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .checkout-location-fields label:last-child {
    grid-column: 1 / -1 !important;
  }

  .checkout-payment-method {
    grid-template-columns: 1fr !important;
    gap: 11px !important;
    padding: 14px !important;
  }

  .checkout-payment-brand {
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
  }

  .checkout-payment-brand img {
    width: 112px !important;
  }

  .checkout-payment-options {
    grid-column: 1 !important;
  }

  .checkout-payment-assurance {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }

  .checkout-actions {
    grid-template-columns: 1fr !important;
  }

  .checkout-actions > .button {
    width: 100% !important;
  }
}

@media (max-width: 360px) {
  .shop-product {
    grid-template-columns: 102px minmax(0, 1fr) !important;
  }

  .shop-add,
  .shop-buy-now,
  .shop-request-price {
    font-size: 0.52rem !important;
  }

  .checkout-contact-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .checkout-payment-options span {
    padding-inline: 6px !important;
  }
}

/* Mobile refinement: simplify the header, preserve the advisor as a floating
   tool, and keep dense commerce screens comfortable at 320px. */
.cart-count:not(.has-items) {
  display: none !important;
}

.nav-advisor-button {
  display: none !important;
}

@media (max-width: 640px) {
  .site-header,
  .site-header.is-scrolled,
  .menu-open .site-header,
  .menu-open .site-header.is-scrolled {
    min-height: 56px !important;
    padding-inline: 12px !important;
  }

  .brand {
    min-width: 0 !important;
  }

  .header-tools {
    margin-left: auto !important;
    gap: 7px !important;
  }

  .header-cart,
  .menu-button {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
  }

  .product-advisor {
    right: 12px !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
  }

  .advisor-launch {
    position: fixed !important;
    top: auto !important;
    right: 12px !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    padding: 6px !important;
    border-color: rgba(19, 27, 31, 0.18) !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    box-shadow: 0 10px 28px rgba(16, 24, 28, 0.18) !important;
  }

  .advisor-launch-mark {
    width: 32px !important;
    height: 32px !important;
    flex-basis: 32px !important;
  }

  body[data-page="shop"] .product-advisor,
  body[data-page="checkout"] .product-advisor {
    display: none !important;
  }

  .section {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }

  .hero {
    min-height: 0 !important;
    padding-top: calc(var(--header-h) + 31px) !important;
    padding-bottom: 23px !important;
  }

  .hero h1 {
    font-size: 1.94rem !important;
    line-height: 1.03 !important;
  }

  .hero-copy > p:not(.eyebrow) {
    margin-top: 10px !important;
    line-height: 1.43 !important;
  }

  .hero-actions {
    margin-top: 15px !important;
  }

  .product-cockpit {
    margin-top: 16px !important;
  }

  .product-cockpit > div {
    min-height: 44px !important;
    padding: 7px 9px !important;
  }

  .page-hero-has-product {
    min-height: 0 !important;
    align-items: center !important;
    grid-template-columns: minmax(0, 1fr) 112px !important;
    grid-template-rows: auto !important;
    gap: 14px !important;
    padding: calc(var(--header-h) + 28px) 13px 22px !important;
    overflow: hidden !important;
  }

  .page-hero-has-product .page-hero-copy {
    min-width: 0 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .page-hero-has-product > img {
    width: 112px !important;
    height: 112px !important;
    align-self: center !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    padding: 9px !important;
    object-fit: contain !important;
  }

  .page-hero-has-product h1 {
    font-size: 1.78rem !important;
    line-height: 1.04 !important;
  }

  .page-hero-has-product .page-hero-copy > p {
    margin-top: 8px !important;
    font-size: 0.73rem !important;
    line-height: 1.4 !important;
  }

  .page-hero-has-product .page-hero-copy > span {
    margin-top: 8px !important;
    font-size: 0.58rem !important;
    line-height: 1.35 !important;
  }

  .home-system-card,
  .benefit-card,
  .industry-card,
  .shop-product,
  .checkout-form-panel,
  .checkout-summary {
    border-radius: 7px !important;
  }

  .checkout-form-panel label,
  .checkout-form-panel .field-label {
    min-width: 0 !important;
  }

  .checkout-contact-fields .field-label {
    gap: 5px !important;
  }

  .optional-label {
    flex: 0 0 auto !important;
  }
}

@media (max-width: 860px) {
  .advisor-launch {
    display: none !important;
  }

  .nav-advisor-button {
    display: flex !important;
    min-width: 0 !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    padding: 0 10px !important;
    color: var(--ls-ink) !important;
    border: 0 !important;
    border-radius: 5px !important;
    background: transparent !important;
    font: inherit !important;
    font-size: 0.65rem !important;
    font-weight: 760 !important;
    text-align: left !important;
    cursor: pointer !important;
  }

  .nav-advisor-button:hover,
  .nav-advisor-button:focus-visible {
    background: #eff2ef !important;
  }

  .nav-advisor-mark {
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
  }

  .nav-advisor-mark img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }

  body[data-page="shop"] .nav-advisor-button,
  body[data-page="checkout"] .nav-advisor-button,
  body[data-page="contact"] .nav-advisor-button,
  body[data-page="distributor"] .nav-advisor-button {
    display: none !important;
  }
}

@media (max-width: 360px) {
  .site-header,
  .site-header.is-scrolled,
  .menu-open .site-header,
  .menu-open .site-header.is-scrolled {
    padding-inline: 10px !important;
  }

  .brand > img.brand-mark,
  .site-header.is-scrolled .brand > img.brand-mark {
    width: 29px !important;
    height: 29px !important;
    flex-basis: 29px !important;
  }

  .brand-name {
    font-size: 0.82rem !important;
  }

  .header-cart,
  .menu-button {
    width: 37px !important;
    min-width: 37px !important;
    height: 37px !important;
    min-height: 37px !important;
  }

  .hero {
    padding-top: calc(var(--header-h) + 28px) !important;
  }

  .hero h1 {
    font-size: 1.78rem !important;
  }

  .hero-copy > p:not(.eyebrow) {
    font-size: 0.72rem !important;
  }

  .hero-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  .hero-actions .button {
    padding-inline: 6px !important;
    font-size: 0.63rem !important;
  }

  .section {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  .section-head h2,
  .home-section-intro h2,
  .detail-copy h2,
  .legacy-detail-main h2,
  .contact-copy h2,
  .career-panel h2,
  .distributor-panel h2 {
    font-size: 1.4rem !important;
    line-height: 1.08 !important;
  }

  .page-hero-has-product {
    grid-template-columns: minmax(0, 1fr) 96px !important;
    gap: 10px !important;
  }

  .page-hero-has-product > img {
    width: 96px !important;
    height: 96px !important;
    padding: 7px !important;
  }

  .page-hero-has-product h1 {
    font-size: 1.62rem !important;
  }

  .checkout-contact-fields,
  .checkout-location-fields {
    gap: 7px !important;
  }

  .checkout-form-panel label,
  .checkout-form-panel .field-label {
    font-size: 0.52rem !important;
  }

  .checkout-form-panel input,
  .checkout-form-panel select,
  .checkout-form-panel textarea {
    min-height: 42px !important;
  }
}
