/* line 1, app/assets/stylesheets/storefront.scss */
.storefront-page {
  max-width: 1040px;
  margin: 0 auto;
  padding: 24px 16px 48px;
}

/* line 7, app/assets/stylesheets/storefront.scss */
.storefront-header {
  margin-bottom: 24px;
}

/* line 11, app/assets/stylesheets/storefront.scss */
.storefront-header h1 {
  margin: 0 0 12px;
}

/* line 15, app/assets/stylesheets/storefront.scss */
.storefront-product-toolbar {
  display: flex;
  justify-content: flex-end;
  margin: -4px 0 20px;
}

/* line 21, app/assets/stylesheets/storefront.scss */
.storefront-product-filter-form {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: flex-end;
}

/* line 28, app/assets/stylesheets/storefront.scss */
.storefront-product-filter-field {
  display: grid;
  gap: 6px;
  color: #6b7280;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* line 38, app/assets/stylesheets/storefront.scss */
.storefront-product-filter-field select {
  min-width: 150px;
  height: 36px;
  border: 1px solid #d7d7d4;
  background: #fff;
  color: #171717;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  padding: 0 32px 0 10px;
  text-transform: none;
}

/* line 51, app/assets/stylesheets/storefront.scss */
.storefront-product-filter-submit {
  height: 36px;
  border: 1px solid #171717;
  background: #171717;
  color: #fff;
  cursor: pointer;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  padding: 0 16px;
  text-transform: uppercase;
}

/* line 64, app/assets/stylesheets/storefront.scss */
.storefront-section {
  margin-bottom: 24px;
}

/* line 68, app/assets/stylesheets/storefront.scss */
.storefront-two-column {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 24px;
}

/* line 75, app/assets/stylesheets/storefront.scss */
.storefront-card,
.storefront-form-card,
.storefront-empty-state {
  background: #fff;
  border: 1px solid #d9dee6;
  border-radius: 8px;
  padding: 16px;
}

/* line 84, app/assets/stylesheets/storefront.scss */
.storefront-address-list {
  display: grid;
  gap: 12px;
}

/* line 89, app/assets/stylesheets/storefront.scss */
.storefront-product-card {
  position: relative;
  background: #fff;
  overflow: hidden;
}

/* line 95, app/assets/stylesheets/storefront.scss */
.storefront-product-card-actions {
  position: absolute;
  top: 15px;
  right: 20px;
  z-index: 2;
}

/* line 102, app/assets/stylesheets/storefront.scss */
.storefront-product-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

/* line 108, app/assets/stylesheets/storefront.scss */
.storefront-product-card-image {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #f4f6f8;
}

/* line 114, app/assets/stylesheets/storefront.scss */
.storefront-product-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  transition: transform 0.2s ease;
}

/* line 122, app/assets/stylesheets/storefront.scss */
.storefront-product-card:hover .storefront-product-card-image img {
  transform: scale(1.03);
}

/* line 126, app/assets/stylesheets/storefront.scss */
.storefront-product-card-image .storefront-product-card-placeholder {
  height: 100%;
}

/* line 130, app/assets/stylesheets/storefront.scss */
.storefront-product-copy {
  padding: 14px;
}

/* line 134, app/assets/stylesheets/storefront.scss */
.storefront-product-copy h2 {
  margin: 0 0 8px;
  font-size: 18px;
}

/* line 139, app/assets/stylesheets/storefront.scss */
.storefront-product-image,
.storefront-product-gallery-item {
  background: #f4f6f8;
}

/* line 144, app/assets/stylesheets/storefront.scss */
.storefront-product-image img,
.storefront-product-gallery-item img {
  display: block;
  width: 100%;
  height: auto;
}

/* line 151, app/assets/stylesheets/storefront.scss */
.storefront-product-image-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 220px;
  color: #7a8795;
  background: #f4f6f8;
}

/* line 160, app/assets/stylesheets/storefront.scss */
.storefront-product-image-placeholder-large {
  min-height: 360px;
}

/* line 164, app/assets/stylesheets/storefront.scss */
.storefront-product-detail {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(300px, 0.9fr);
  gap: 20px;
  margin-bottom: 24px;
}

/* line 171, app/assets/stylesheets/storefront.scss */
.storefront-product-show-page {
  max-width: 1180px;
  padding-top: 28px;
}

/* line 176, app/assets/stylesheets/storefront.scss */
.storefront-product-show-page .storefront-product-detail {
  grid-template-columns: minmax(0, 1.25fr) minmax(360px, 0.95fr);
  gap: 44px;
  align-items: start;
}

/* line 182, app/assets/stylesheets/storefront.scss */
.storefront-product-media {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 16px;
}

/* line 188, app/assets/stylesheets/storefront.scss */
.storefront-product-thumbs {
  display: grid;
  align-content: start;
  gap: 12px;
}

/* line 194, app/assets/stylesheets/storefront.scss */
.storefront-product-thumb,
.storefront-product-main-image {
  background: #f5f5f3;
}

/* line 199, app/assets/stylesheets/storefront.scss */
.storefront-product-thumb {
  padding: 0;
  border: 1px solid transparent;
  cursor: pointer;
}

/* line 205, app/assets/stylesheets/storefront.scss */
.storefront-product-thumb-active {
  border-color: #171717;
}

/* line 209, app/assets/stylesheets/storefront.scss */
.storefront-product-thumb img,
.storefront-product-main-image img {
  display: block;
  width: 100%;
  height: auto;
}

/* line 216, app/assets/stylesheets/storefront.scss */
.storefront-product-main-image {
  min-height: 520px;
  overflow: hidden;
}

/* line 221, app/assets/stylesheets/storefront.scss */
.storefront-product-main-image img {
  height: 100%;
}

/* line 226, app/assets/stylesheets/storefront.scss */
.storefront-product-breadcrumb {
  color: #9aa0a6;
  font-size: 12px;
  margin-bottom: 8px;
}

/* line 232, app/assets/stylesheets/storefront.scss */
.storefront-product-gallery {
  display: grid;
  gap: 12px;
}

/* line 237, app/assets/stylesheets/storefront.scss */
.storefront-product-panel {
  display: grid;
  gap: 16px;
  align-content: start;
  padding-right: 10%;
}

/* line 244, app/assets/stylesheets/storefront.scss */
.storefront-product-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

/* line 251, app/assets/stylesheets/storefront.scss */
.storefront-product-title-row h1,
.storefront-product-title-row h2 {
  margin: 0;
  color: #171717;
  font-size: 26px;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.15;
  text-transform: uppercase;
}

/* line 262, app/assets/stylesheets/storefront.scss */
.storefront-product-price {
  margin-top: 0;
  padding-bottom: 18px;
  color: #171717;
  font-size: 15px;
  font-weight: 700;
}

/* line 271, app/assets/stylesheets/storefront.scss */
.storefront-product-description {
  margin-top: 18px;
  color: #666;
  font-size: 13px;
  line-height: 1.6;
}

/* line 278, app/assets/stylesheets/storefront.scss */
.storefront-product-description p {
  margin: 0 0 10px;
}

/* line 282, app/assets/stylesheets/storefront.scss */
.storefront-product-meta {
  display: grid;
  gap: 8px;
  margin: 18px 0 24px;
  color: #666;
  font-size: 12px;
}

/* line 290, app/assets/stylesheets/storefront.scss */
.storefront-product-meta div {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 10px;
}

/* line 296, app/assets/stylesheets/storefront.scss */
.storefront-product-meta dt {
  color: #777;
}

/* line 300, app/assets/stylesheets/storefront.scss */
.storefront-product-meta dd {
  margin: 0;
  color: #555;
}

/* line 305, app/assets/stylesheets/storefront.scss */
.storefront-product-cart-panel {
  margin-top: 12px;
}

/* line 309, app/assets/stylesheets/storefront.scss */
.storefront-product-cart-form {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

/* line 316, app/assets/stylesheets/storefront.scss */
.storefront-product-variant-select {
  height: 42px;
  border: 1px solid #cfcfcf;
  background: #fff;
  color: #555;
  font-size: 12px;
}

/* line 324, app/assets/stylesheets/storefront.scss */
.storefront-product-quantity-field {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #777;
  font-size: 11px;
}

/* line 332, app/assets/stylesheets/storefront.scss */
.storefront-product-quantity-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  width: 64px;
  border: 1px solid #cfcfcf;
  border-radius: 2px;
  background: #fff;
  color: #555;
  font-size: 12px;
}

/* line 345, app/assets/stylesheets/storefront.scss */
.storefront-product-quantity {
  width: 52px;
  height: 40px;
  padding: 0 16px 0 8px;
  border: 0;
  background: transparent;
  color: #555;
  font-size: 12px;
  outline: 0;
  appearance: auto;
  -webkit-appearance: auto;
  -moz-appearance: auto;
}

/* line 359, app/assets/stylesheets/storefront.scss */
.storefront-product-variant-select {
  flex: 1 1 100%;
  padding: 0 8px;
}

/* line 365, app/assets/stylesheets/storefront.scss */
.storefront-product-add-btn {
  min-width: 132px;
  height: 42px;
  border-radius: 2px;
  background: #3d3732;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* line 376, app/assets/stylesheets/storefront.scss */
.storefront-product-soft-action {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 42px;
  padding: 0 8px;
  color: #777;
  font-size: 11px;
  text-decoration: none;
}

/* line 387, app/assets/stylesheets/storefront.scss */
.storefront-product-soft-action span {
  color: #555;
  font-size: 15px;
  line-height: 1;
}

/* line 393, app/assets/stylesheets/storefront.scss */
.storefront-product-soft-action:hover,
.storefront-product-soft-action-active {
  color: #171717;
}

/* line 398, app/assets/stylesheets/storefront.scss */
.storefront-product-promises {
  display: flex;
  flex-wrap: wrap;
  gap: 36px;
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid #ededed;
  color: #9aa0a6;
  font-size: 11px;
}

/* line 409, app/assets/stylesheets/storefront.scss */
.storefront-wishlist-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid #d9dee6;
  border-radius: 999px;
  background: #fff;
  color: #1f2937;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08);
  text-decoration: none;
}

/* line 426, app/assets/stylesheets/storefront.scss */
.storefront-wishlist-btn-active {
  color: #9f2f2f;
}

/* line 430, app/assets/stylesheets/storefront.scss */
.storefront-wishlist-cart-form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

/* line 437, app/assets/stylesheets/storefront.scss */
.storefront-wishlist-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

/* line 444, app/assets/stylesheets/storefront.scss */
.storefront-wishlist-variant-select {
  min-width: 180px;
}

/* line 448, app/assets/stylesheets/storefront.scss */
.storefront-related-products {
  padding-top: 8px;
}

/* line 452, app/assets/stylesheets/storefront.scss */
.storefront-related-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* line 458, app/assets/stylesheets/storefront.scss */
.storefront-related-list li {
  margin-bottom: 8px;
}

/* line 462, app/assets/stylesheets/storefront.scss */
.storefront-card-actions,
.storefront-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

/* line 470, app/assets/stylesheets/storefront.scss */
.storefront-table-wrap {
  overflow-x: auto;
  background: #fff;
  border: 1px solid #d9dee6;
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

/* line 478, app/assets/stylesheets/storefront.scss */
.storefront-table {
  margin-bottom: 0;
  background: #fff;
}

/* line 483, app/assets/stylesheets/storefront.scss */
.storefront-cart-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

/* line 508, app/assets/stylesheets/storefront.scss */
.storefront-cart-table tbody tr:first-child td {
  border-top: 0;
}

/* line 512, app/assets/stylesheets/storefront.scss */
.storefront-cart-row:hover td {
  background: #fcfcfd;
}

/* line 516, app/assets/stylesheets/storefront.scss */
.storefront-cart-product-cell,
.storefront-cart-variant-cell {
  min-width: 0;
}

/* line 521, app/assets/stylesheets/storefront.scss */
.storefront-cart-product-link {
  color: #1f2937;
  font-weight: 600;
  text-decoration: none;
}

/* line 527, app/assets/stylesheets/storefront.scss */
.storefront-cart-product-link:hover {
  text-decoration: underline;
}

/* line 531, app/assets/stylesheets/storefront.scss */
.storefront-cart-variant-name {
  display: inline-block;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 4px;
}

/* line 538, app/assets/stylesheets/storefront.scss */
.storefront-cart-money-cell {
  white-space: nowrap;
  font-weight: 600;
  color: #111827;
  text-align: left;
}

/* line 545, app/assets/stylesheets/storefront.scss */
.storefront-cart-line-total {
  font-size: 18px;
}

/* line 549, app/assets/stylesheets/storefront.scss */
.storefront-quantity-cell {
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-start;
}

/* line 557, app/assets/stylesheets/storefront.scss */
.storefront-cart-qty-btn {
  min-width: 34px;
  min-height: 34px;
  border-radius: 8px;
  padding: 0 10px;
}

/* line 564, app/assets/stylesheets/storefront.scss */
.storefront-summary {
  margin-top: 16px;
  padding: 16px;
  background: #fff;
  border: 1px solid #d9dee6;
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

/* line 573, app/assets/stylesheets/storefront.scss */
.storefront-cart-summary {
  padding: 20px 22px;
}

/* line 577, app/assets/stylesheets/storefront.scss */
.storefront-cart-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid #eef2f6;
}

/* line 586, app/assets/stylesheets/storefront.scss */
.storefront-cart-summary-note {
  margin: 8px 0 0;
}

/* line 590, app/assets/stylesheets/storefront.scss */
.storefront-cart-summary-total {
  border-bottom: 0;
  padding-bottom: 0;
}

/* line 595, app/assets/stylesheets/storefront.scss */
.storefront-total {
  font-size: 28px;
  margin: 0;
  color: #111827;
}

/* line 601, app/assets/stylesheets/storefront.scss */
.storefront-muted {
  color: #5f6b7a;
}

/* line 605, app/assets/stylesheets/storefront.scss */
.storefront-badge {
  color: #2b5a2b;
  font-weight: 600;
}

/* line 610, app/assets/stylesheets/storefront.scss */
.storefront-success-box,
.storefront-error-box {
  padding: 12px 14px;
  border-radius: 6px;
  margin-bottom: 14px;
}

/* line 617, app/assets/stylesheets/storefront.scss */
.storefront-success-box {
  background: #edf8ee;
  color: #225a2a;
  border: 1px solid #bedec2;
}

/* line 623, app/assets/stylesheets/storefront.scss */
.storefront-error-box {
  background: #fff1f1;
  color: #8a2d2d;
  border: 1px solid #efc0c0;
}

/* line 629, app/assets/stylesheets/storefront.scss */
.storefront-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

/* line 635, app/assets/stylesheets/storefront.scss */
.storefront-page .field {
  margin-bottom: 14px;
}

/* line 639, app/assets/stylesheets/storefront.scss */
.storefront-page label {
  display: inline-block;
  margin-bottom: 6px;
  font-weight: 600;
}

/* line 645, app/assets/stylesheets/storefront.scss */
.storefront-page input[type="text"] {
  width: 100%;
  min-height: 40px;
  padding: 10px 12px;
  border: 1px solid #c7ced8;
  border-radius: 6px;
  box-sizing: border-box;
}

/* line 654, app/assets/stylesheets/storefront.scss */
.storefront-page input[type="email"],
.storefront-page input[type="password"],
.storefront-page input[type="tel"],
.storefront-page input[type="number"],
.storefront-page select {
  width: 100%;
  min-height: 40px;
  padding: 10px 12px;
  border: 1px solid #c7ced8;
  border-radius: 6px;
  box-sizing: border-box;
  background: #fff;
}

/* line 668, app/assets/stylesheets/storefront.scss */
.storefront-page input[type="number"] {
  appearance: auto;
  -webkit-appearance: auto;
  -moz-appearance: auto;
}

/* line 674, app/assets/stylesheets/storefront.scss */
.storefront-page textarea {
  width: 100%;
  min-height: 140px;
  padding: 10px 12px;
  border: 1px solid #c7ced8;
  border-radius: 6px;
  box-sizing: border-box;
  background: #fff;
  resize: vertical;
}

/* line 685, app/assets/stylesheets/storefront.scss */
.storefront-page input[type="text"]:focus,
.storefront-page input[type="email"]:focus,
.storefront-page input[type="password"]:focus,
.storefront-page input[type="tel"]:focus,
.storefront-page input[type="number"]:focus,
.storefront-page select:focus,
.storefront-page textarea:focus {
  border-color: #111827;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(17, 24, 39, 0.08);
}

/* line 697, app/assets/stylesheets/storefront.scss */
.storefront-primary-btn,
.storefront-danger-btn,
.storefront-link-btn,
.storefront-mini-btn,
.storefront-page input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 6px;
  border: 1px solid transparent;
  text-decoration: none;
  cursor: pointer;
  box-sizing: border-box;
}

/* line 714, app/assets/stylesheets/storefront.scss */
.storefront-primary-btn,
.storefront-page input[type="submit"] {
  background: #1f2937;
  color: #fff;
  border-color: #1f2937;
}

/* line 721, app/assets/stylesheets/storefront.scss */
.storefront-link-btn {
  background: #fff;
  color: #1f2937;
  border-color: #c7ced8;
  padding-block: 10px;
  padding-inline: 30px;
}

/* line 729, app/assets/stylesheets/storefront.scss */
.storefront-danger-btn {
  background: #fff;
  color: #9f2f2f;
  border-color: #e5bcbc;
}

/* line 735, app/assets/stylesheets/storefront.scss */
.storefront-mini-btn {
  min-width: 34px;
  padding: 0 10px;
  background: #fff;
  color: #1f2937;
  border-color: #c7ced8;
}

/* line 743, app/assets/stylesheets/storefront.scss */
.storefront-inline-form {
  display: inline-block;
  margin: 0;
}

/* line 748, app/assets/stylesheets/storefront.scss */
.storefront-quantity-value {
  display: inline-block;
  min-width: 28px;
  text-align: center;
  font-weight: 600;
  color: #111827;
}

/* line 756, app/assets/stylesheets/storefront.scss */
.storefront-cart-remove-cell {
  text-align: right;
}

/* line 760, app/assets/stylesheets/storefront.scss */
.storefront-cart-remove-btn {
  min-height: 36px;
}

/* line 764, app/assets/stylesheets/storefront.scss */
.storefront-cart-delivery-row td {
  background: #f8fafc;
}

/* line 768, app/assets/stylesheets/storefront.scss */
.storefront-cart-delivery-label {
  color: #475467;
  font-weight: 600;
}

/* line 773, app/assets/stylesheets/storefront.scss */
.storefront-contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr);
  gap: 20px;
  align-items: start;
}

/* line 780, app/assets/stylesheets/storefront.scss */
.storefront-contact-copy {
  line-height: 1.7;
}

/* line 784, app/assets/stylesheets/storefront.scss */
.storefront-contact-copy > :first-child,
.storefront-contact-form-card > :first-child {
  margin-top: 0;
}

/* line 789, app/assets/stylesheets/storefront.scss */
.storefront-contact-form-card h2 {
  margin: 0 0 8px;
}

/* line 793, app/assets/stylesheets/storefront.scss */
.storefront-contact-form {
  margin-top: 18px;
}

/* line 797, app/assets/stylesheets/storefront.scss */
.storefront-contact-field label {
  color: #344054;
}

/* line 801, app/assets/stylesheets/storefront.scss */
.storefront-contact-email-field,
.storefront-contact-phone-field,
.storefront-contact-message-field {
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8fafc;
}

/* line 810, app/assets/stylesheets/storefront.scss */
.storefront-contact-email-field input,
.storefront-contact-phone-field input,
.storefront-contact-message-field textarea {
  background: #fff;
}

/* line 816, app/assets/stylesheets/storefront.scss */
.storefront-contact-message-field {
  margin-top: 2px;
}

/* line 820, app/assets/stylesheets/storefront.scss */
.storefront-contact-message-field textarea {
  min-height: 180px;
}

/* line 824, app/assets/stylesheets/storefront.scss */
.storefront-contact-actions {
  margin-top: 18px;
}

/* line 828, app/assets/stylesheets/storefront.scss */
.storefront-contact-captcha {
  margin-top: 16px;
}

/* line 832, app/assets/stylesheets/storefront.scss */
.storefront-contact-page #errorExplanation {
  padding: 12px 14px;
  border: 1px solid #efc0c0;
  border-radius: 6px;
  margin-bottom: 16px;
  background: #fff1f1;
  color: #8a2d2d;
}

/* line 841, app/assets/stylesheets/storefront.scss */
.storefront-contact-page #errorExplanation p,
.storefront-contact-page #errorExplanation ul {
  margin: 0;
}

/* line 846, app/assets/stylesheets/storefront.scss */
.storefront-contact-page #errorExplanation ul {
  margin-top: 8px;
  padding-left: 18px;
}

/* line 851, app/assets/stylesheets/storefront.scss */
.storefront-auth-intro,
.storefront-auth-card > :first-child {
  margin-top: 0;
}

/* line 856, app/assets/stylesheets/storefront.scss */
.storefront-auth-card {
  padding: 22px;
}

/* line 860, app/assets/stylesheets/storefront.scss */
.storefront-auth-intro {
  margin-bottom: 20px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e5e7eb;
}

/* line 866, app/assets/stylesheets/storefront.scss */
.storefront-auth-card h2 {
  margin: 0 0 8px;
}

/* line 870, app/assets/stylesheets/storefront.scss */
.storefront-auth-intro p {
  margin: 0;
  color: #5f6b7a;
  line-height: 1.7;
}

/* line 876, app/assets/stylesheets/storefront.scss */
.storefront-auth-form {
  margin: 0;
}

/* line 880, app/assets/stylesheets/storefront.scss */
.storefront-auth-card .field {
  margin-bottom: 16px;
}

/* line 884, app/assets/stylesheets/storefront.scss */
.storefront-auth-card label {
  color: #111827;
}

/* line 888, app/assets/stylesheets/storefront.scss */
.storefront-auth-card input[type="email"],
.storefront-auth-card input[type="password"],
.storefront-auth-card input[type="text"],
.storefront-auth-card input[type="tel"] {
  min-height: 46px;
}

/* line 895, app/assets/stylesheets/storefront.scss */
.storefront-auth-actions {
  margin-top: 20px;
}

/* line 905, app/assets/stylesheets/storefront.scss */
.storefront-auth-links ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

/* line 913, app/assets/stylesheets/storefront.scss */
.storefront-auth-links li {
  margin: 0;
}

/* line 917, app/assets/stylesheets/storefront.scss */
.storefront-auth-secondary-btn {
  width: 100%;
}

/* line 921, app/assets/stylesheets/storefront.scss */
.storefront-auth-text-link {
  color: #475467;
  text-decoration: none;
  font-weight: 500;
}

/* line 927, app/assets/stylesheets/storefront.scss */
.storefront-auth-text-link:hover {
  text-decoration: underline;
}

/* line 931, app/assets/stylesheets/storefront.scss */
.storefront-auth-card #error_explanation,
.storefront-auth-card #errorExplanation {
  padding: 12px 14px;
  border: 1px solid #efc0c0;
  border-radius: 6px;
  margin-bottom: 16px;
  background: #fff1f1;
  color: #8a2d2d;
}

/* line 941, app/assets/stylesheets/storefront.scss */
.storefront-auth-card #error_explanation h2,
.storefront-auth-card #errorExplanation h2,
.storefront-auth-card #error_explanation p,
.storefront-auth-card #errorExplanation p {
  margin: 0 0 8px;
}

/* line 948, app/assets/stylesheets/storefront.scss */
.storefront-auth-card #error_explanation ul,
.storefront-auth-card #errorExplanation ul {
  margin: 0;
  padding-left: 18px;
}

@media (max-width: 767px) {
  /* line 955, app/assets/stylesheets/storefront.scss */
  .storefront-product-toolbar {
    justify-content: flex-start;
  }
  /* line 959, app/assets/stylesheets/storefront.scss */
  .storefront-product-filter-form,
.storefront-product-filter-field {
    width: 100%;
  }
  /* line 964, app/assets/stylesheets/storefront.scss */
  .storefront-product-filter-field select,
.storefront-product-filter-submit {
    width: 100%;
  }
  /* line 969, app/assets/stylesheets/storefront.scss */
  .storefront-two-column,
.storefront-form-grid,
.storefront-contact-layout {
    grid-template-columns: 1fr;
  }
  /* line 975, app/assets/stylesheets/storefront.scss */
  .storefront-product-grid,
.storefront-product-detail {
    grid-template-columns: 1fr;
  }
  /* line 980, app/assets/stylesheets/storefront.scss */
  .storefront-product-show-page .storefront-product-detail,
.storefront-product-media {
    grid-template-columns: 1fr;
  }
  /* line 985, app/assets/stylesheets/storefront.scss */
  .storefront-product-thumbs {
    grid-auto-flow: column;
    grid-auto-columns: 74px;
    overflow-x: auto;
  }
  /* line 991, app/assets/stylesheets/storefront.scss */
  .storefront-product-main-image {
    min-height: auto;
  }
  /* line 995, app/assets/stylesheets/storefront.scss */
  .storefront-cart-table thead {
    display: none;
  }
  /* line 999, app/assets/stylesheets/storefront.scss */
  .storefront-cart-table,
.storefront-cart-table tbody,
.storefront-cart-table tr,
.storefront-cart-table td {
    display: block;
    width: 100%;
  }
  /* line 1007, app/assets/stylesheets/storefront.scss */
  .storefront-cart-table tbody td {
    padding: 8px 14px;
    border-top: 0;
  }
  /* line 1012, app/assets/stylesheets/storefront.scss */
  .storefront-cart-row {
    border-top: 1px solid #eef2f6;
    padding: 10px 0;
  }
  /* line 1017, app/assets/stylesheets/storefront.scss */
  .storefront-cart-table tbody tr:first-child {
    border-top: 0;
  }
  /* line 1021, app/assets/stylesheets/storefront.scss */
  .storefront-cart-remove-cell {
    text-align: left;
    padding-top: 12px;
  }
  /* line 1026, app/assets/stylesheets/storefront.scss */
  .storefront-cart-table tbody tr:first-child td {
    border-top: 0;
  }
}

/* line 1035, app/assets/stylesheets/storefront.scss */
.lt-site-header a,
.lt-site-header a:link,
.lt-site-header a:visited,
.lt-site-header a:hover,
.lt-site-header a:active,
.lt-site-header a:focus,
.lt-site-header button,
.lt-site-header input,
.lt-site-header label,
.lt-site-header span,
.lt-site-header div,
.lt-site-header li {
  text-decoration: none;
}

/* line 1051, app/assets/stylesheets/storefront.scss */
.lt-site-header .text-neutral-500 {
  color: #737373 !important;
}

/* line 1055, app/assets/stylesheets/storefront.scss */
.lt-site-header .text-neutral-700 {
  color: #404040 !important;
}

/* line 1059, app/assets/stylesheets/storefront.scss */
.lt-site-header .text-neutral-800,
.lt-site-header .text-neutral-900 {
  color: #171717 !important;
}

/* line 1064, app/assets/stylesheets/storefront.scss */
.lt-clickable {
  cursor: pointer;
  transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
}

/* line 1069, app/assets/stylesheets/storefront.scss */
.lt-clickable:hover {
  color: #171717;
}

/* line 1073, app/assets/stylesheets/storefront.scss */
.lt-search-submit {
  background: transparent;
  border: 0;
  color: inherit;
  padding: 0;
}

/* line 1080, app/assets/stylesheets/storefront.scss */
.lt-account-menu {
  position: relative;
}

/* line 1084, app/assets/stylesheets/storefront.scss */
.lt-account-menu-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  min-height: 24px;
  cursor: pointer;
  list-style: none;
}

/* line 1094, app/assets/stylesheets/storefront.scss */
.lt-account-menu-trigger::-webkit-details-marker {
  display: none;
}

/* line 1098, app/assets/stylesheets/storefront.scss */
.lt-account-menu-panel {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 20;
  display: grid;
  min-width: 140px;
  padding: 8px;
  background: #fff;
  border: 1px solid #d9dee6;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(16, 24, 40, 0.12);
}

/* line 1112, app/assets/stylesheets/storefront.scss */
.lt-account-menu-link,
.lt-account-menu-button {
  display: block;
  width: 100%;
  padding: 8px 10px;
  background: transparent;
  border: 0;
  color: #171717;
  font: inherit;
  letter-spacing: 0.12em;
  text-align: left;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
}

/* line 1128, app/assets/stylesheets/storefront.scss */
.lt-account-menu-link:hover,
.lt-account-menu-button:hover {
  background: #f4f6f8;
}

/* line 1133, app/assets/stylesheets/storefront.scss */
.lt-account-menu-form {
  margin: 0;
}

/* line 1137, app/assets/stylesheets/storefront.scss */
.lt-site-header form.button_to,
.lt-site-header form.button_to input[type="submit"],
.lt-site-header form.button_to button,
.storefront-page form.button_to input[type="submit"],
.storefront-page form.button_to button {
  cursor: pointer;
}

/* line 1145, app/assets/stylesheets/storefront.scss */
.lt-home-menu {
  list-style: none;
  margin: 0;
}

/* line 1150, app/assets/stylesheets/storefront.scss */
.lt-home-menu-link {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  color: #4b5563;
  text-decoration: none;
  transition: color 0.2s ease;
}

/* line 1159, app/assets/stylesheets/storefront.scss */
.lt-home-menu-link:hover {
  color: #111111;
}

/* line 1163, app/assets/stylesheets/storefront.scss */
.lt-category-dropdown-trigger {
  cursor: pointer;
}

/* line 1167, app/assets/stylesheets/storefront.scss */
.lt-category-dropdown-menu {
  display: none;
  opacity: 0;
  pointer-events: none;
  width: max-content;
  max-width: calc(100vw - 32px);
  transform: translateX(0);
}

/* line 1176, app/assets/stylesheets/storefront.scss */
.lt-category-dropdown:hover .lt-category-dropdown-menu,
.lt-category-dropdown:focus-within .lt-category-dropdown-menu,
.lt-category-dropdown.is-open .lt-category-dropdown-menu {
  display: block;
  opacity: 1;
  pointer-events: auto;
}

/* line 1184, app/assets/stylesheets/storefront.scss */
.lt-category-dropdown-panel {
  width: max-content;
  box-sizing: border-box;
}

/* line 1189, app/assets/stylesheets/storefront.scss */
.lt-category-dropdown-panel a {
  white-space: normal;
}

/* line 1193, app/assets/stylesheets/storefront.scss */
.lt-category-dropdown-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -12px;
  height: 12px;
}

/* line 1206, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
  color: #6b7280;
  font-size: 0.7rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

/* line 1217, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-breadcrumb-button {
  border: 0;
  background: transparent;
  padding: 0;
  color: #6b7280;
  text-transform: uppercase;
  cursor: pointer;
}

/* line 1226, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-breadcrumb-button:hover {
  color: #111111;
}

/* line 1230, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-breadcrumb-current {
  color: #111111;
}

/* line 1234, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-breadcrumb-separator {
  color: #9ca3af;
}

/* line 1238, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-viewport {
  position: relative;
  flex: 1 1 auto;
  overflow: hidden;
  background: #ffffff;
}

/* line 1245, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-panel {
  position: absolute;
  inset: 0;
  overflow-y: auto;
  padding: 1.5rem;
  background: #ffffff;
  opacity: 0;
  pointer-events: none;
  transform: translateX(100%);
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* line 1257, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-panel.is-current {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0);
}

/* line 1263, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-panel.is-before {
  transform: translateX(-100%);
}

/* line 1267, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-panel.is-after {
  transform: translateX(100%);
}

/* line 1271, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* line 1277, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-item {
  border-bottom: 1px solid #f3f4f6;
}

/* line 1281, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-item:last-child {
  border-bottom: 0;
}

/* line 1285, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-button,
.lt-mobile-drilldown-link {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 0;
  color: #374151;
  font-size: 0.78rem;
  letter-spacing: 0.18em;
  text-decoration: none;
  text-transform: uppercase;
}

/* line 1300, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-button {
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
}

/* line 1307, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-button--panel {
  padding-left: 0;
  padding-right: 0;
}

/* line 1312, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-button:hover,
.lt-mobile-drilldown-link:hover {
  color: #111111;
}

/* line 1317, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-link[aria-current="page"] {
  color: #111111;
  font-weight: 600;
}

/* line 1322, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-link.is-sale,
.lt-mobile-drilldown-label.is-sale {
  color: #c95a4a;
}

/* line 1327, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-chevron {
  color: #6b7280;
  font-size: 1rem;
  line-height: 1;
}

/* line 1333, app/assets/stylesheets/storefront.scss */
.lt-mobile-drilldown-back[hidden] {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  /* line 1338, app/assets/stylesheets/storefront.scss */
  .lt-mobile-drilldown-panel {
    transition: none;
  }
}

/* line 1343, app/assets/stylesheets/storefront.scss */
.lt-site-footer .lt-footer-brand {
  user-select: none;
}

/* line 1347, app/assets/stylesheets/storefront.scss */
.lt-site-footer ul a,
.lt-site-footer ul a:link,
.lt-site-footer ul a:visited,
.lt-site-footer ul a:hover,
.lt-site-footer ul a:active,
.lt-site-footer ul a:focus,
.lt-site-footer ul li {
  color: #9f9f9f !important;
}

/* line 1357, app/assets/stylesheets/storefront.scss */
.lt-site-footer p {
  color: rgba(255, 255, 255, 0.65) !important;
}
/* Default error colouring */
/* line 2, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
article, nav, header, footer, aside, hgroup, section {
  display: block;
}

/* line 6, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
div.fieldWithErrors {
  display: inline;
}

/* line 10, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
#errorExplanation {
  border-top: 3px solid #F27F7F;
  background: #FFBEBE;
  padding: 10px;
}

/* line 16, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
#errorExplanation, #errorExplanation *, .fieldWithErrors, .fieldWithErrors * {
  color: #9C2626;
}

/* Browser Hacks */
/* line 21, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
a {
  /* remove borders from images */
  /*
  Firefox Dotted Line Fix
    - http://sonspring.com/journal/removing-dotted-links
  */
}

/* line 23, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
a img {
  border: 0px none;
}

/* line 30, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
a:focus {
  outline: none;
}

/*
Clearfix docs
 - Main docs: http://positioniseverything.net/easyclearing.html
 - IE7 change: http://www.456bereastreet.com/archive/200603/new_clearing_method_needed_for_ie7/
*/
/* line 40, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
.clearfix, section {
  display: inline-block;
}

/* line 42, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
.clearfix:after, section:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* Hide from IE Mac \*/
/* line 52, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/formatting.scss */
.clearfix, section {
  display: block;
}

/* End hide from IE Mac */
/* alignment styles */
/* line 2, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.text-align-left {
  text-align: left;
}

/* line 5, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.text-align-center {
  text-align: center;
}

/* line 8, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.text-align-right {
  text-align: right;
}

/* line 11, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.text-align-justify {
  text-align: justify;
}

/* block alignment styles */
/* line 16, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.image-align-left {
  float: left;
  margin-right: 6px;
  margin-bottom: 6px;
}

/* line 21, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.image-align-right {
  float: right;
  margin-left: 6px;
  margin-bottom: 6px;
}

/* font sizes */
/* line 28, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.font-size-small {
  font-size: 0.75em;
}

/* line 31, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.font-size-normal {
  font-size: 1em;
}

/* line 34, ../usr/local/bundle/ruby/4.0.0/gems/refinerycms-core-4.1.0/app/assets/stylesheets/refinery/theme.scss */
.font-size-large {
  font-size: 1.25em;
}
/*




 */
/* line 8, app/assets/stylesheets/application.scss */
.alternating-col-rich-text {
  color: #171717;
  line-height: 1.7;
}

/* line 13, app/assets/stylesheets/application.scss */
.alternating-col-rich-text h1 {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  margin: 0 0 16px;
}

/* line 20, app/assets/stylesheets/application.scss */
.alternating-col-rich-text h2 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 14px;
}

/* line 27, app/assets/stylesheets/application.scss */
.alternating-col-rich-text p,
.alternating-col-rich-text div {
  margin: 0 0 16px;
}

/* line 32, app/assets/stylesheets/application.scss */
.alternating-col-rich-text ul {
  list-style: disc;
  margin: 0 0 16px 22px;
  padding: 0;
}

/* line 38, app/assets/stylesheets/application.scss */
.alternating-col-rich-text ol {
  list-style: decimal;
  margin: 0 0 16px 22px;
  padding: 0;
}

/* line 44, app/assets/stylesheets/application.scss */
.alternating-col-rich-text li {
  margin: 0 0 6px;
}

/* line 48, app/assets/stylesheets/application.scss */
.scroll-to-top-button {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 999px;
  background: rgba(23, 23, 23, 0.92);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2);
  color: #fff;
  cursor: pointer;
  font-size: 20px;
  line-height: 1;
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

/* line 72, app/assets/stylesheets/application.scss */
.scroll-to-top-button:hover,
.scroll-to-top-button:focus-visible {
  background: #171717;
}

/* line 77, app/assets/stylesheets/application.scss */
.scroll-to-top-button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}

/* line 82, app/assets/stylesheets/application.scss */
.scroll-to-top-button.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

@media (max-width: 767px) {
  /* line 89, app/assets/stylesheets/application.scss */
  .scroll-to-top-button {
    right: 16px;
    bottom: 16px;
    width: 44px;
    height: 44px;
  }
}
