/** Shopify CDN: Minification failed

Line 339:35 Unexpected "{"
Line 339:44 Expected ":"
Line 339:50 Unexpected ","

**/
/* Grain Archives - Styled Product Info */
/* Replicating the design from the React demo */

/* Category Badge Styling */
.product__category-badge {
  display: inline-block;
  width: fit-content;
  font-size: 0.75rem; /* 12px */
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: rgb(var(--color-foreground));
  border: 1px solid rgba(var(--color-foreground), 0.2);
  padding: 0.25rem 0.5rem;
  margin-bottom: 1rem;
}

/* Divider Styling */
.product__divider {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  background-color: rgba(var(--color-foreground), 0.15) !important;
  border: none !important;
  margin: 1.5rem 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
}

/* Product Title Styling */
.product__title h1 {
  font-family: var(--font-heading-family);
  font-style: italic;
  font-size: 2.5rem; /* 40px */
  line-height: 1.2;
  margin: 0;
  font-weight: 400;
}

@media screen and (min-width: 750px) {
  .product__title h1 {
    font-size: 3rem; /* 48px */
  }
}

/* Remove duplicate title link if present */
.product__title a.product__title {
  display: none;
}

/* Price Styling */
.product__price-wrapper {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.price--large {
  font-family: 'Courier New', Courier, monospace;
  font-size: 1.5rem; /* 24px */
  opacity: 0.8;
  font-weight: 400;
}

/* Price layout - sale price left, compare-at right */
.price--large .price__sale {
  display: flex;
  align-items: baseline;
  gap: 1rem;
  flex-wrap: wrap;
}

.price--large .price-item--sale {
  font-size: 1.5rem;
  font-weight: 600;
  color: rgb(var(--color-foreground));
  opacity: 1;
  order: 1;
}

.price--large .price-item--regular {
  font-size: 1rem;
  text-decoration: line-through;
  color: rgba(var(--color-foreground), 0.5);
  order: 2;
}

/* Styled Sale Badge */
.price__badge-sale--styled {
  display: inline-flex;
  align-items: center;
  background-color: transparent;
  border: 1px solid rgba(var(--color-foreground), 0.3);
  color: rgb(var(--color-foreground));
  padding: 0.25rem 0.75rem;
  font-family: 'Courier New', Courier, monospace;
  font-size: 1.5rem; /* Match price font size */
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 400;
  margin-left: 0;
  margin-top: 0.5rem;
  opacity: 0.8;
}

.price__badge-sale-text {
  white-space: nowrap;
}

/* Description Styling */
.product__description {
  margin: 0 !important;
  padding: 0 !important;
}

.product__description p {
  font-size: 1.125rem; /* 18px */
  font-weight: 300;
  line-height: 1.75;
  color: rgba(var(--color-foreground), 0.7);
  max-width: none;
  margin: 0 !important;
  padding: 0 !important;
}

.product__description p:first-child {
  margin-top: 0 !important;
}

.product__description p:last-child {
  margin-bottom: 0 !important;
}

/* Add to Cart Section */
.product__add-to-cart-section {
  padding-top: 1.5rem;
  border-top: 1px solid rgb(var(--color-border));
  margin-top: 1.5rem;
}

/* Product Form - Full Width */
.product-form {
  width: 100% !important;
}

.product-form .form {
  width: 100% !important;
}

/* Buy Buttons Container - Centered */
.product-form__buttons {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center;
  gap: 0;
}

/* Add to Cart Button Styling - Deep Moss Green */
.product-form__submit {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 3.5rem; /* 56px */
  border-radius: 8px !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 1.14rem; /* 30% larger than 0.875rem */
  font-weight: 700;
  background-color: #1F3B2C !important;
  color: #F8F5EB !important;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
  margin: 0 !important;
  padding: 0 1rem !important;
}

/* Fix pseudo-element border radius for Add to Cart button */
.product-form__submit::before,
.product-form__submit::after {
  border-radius: 8px !important;
}

.product-form__submit:hover:not([disabled]) {
  background-color: #2a4d3a !important;
}

/* Fix focus border radius for Add to Cart button */
.product-form__submit:focus,
.product-form__submit:focus-visible,
.product-form__submit.focused {
  outline: none !important;
  box-shadow: 0 0 0 3px rgb(var(--color-background)), 0 0 0 5px rgba(var(--color-foreground), 0.5) !important;
  border-radius: 8px !important;
}

.product-form__submit:focus::before,
.product-form__submit:focus::after,
.product-form__submit:focus-visible::before,
.product-form__submit:focus-visible::after {
  border-radius: 8px !important;
}

/* Buy It Now / Dynamic Checkout Buttons */
.shopify-payment-button {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 1rem 0 0 0 !important;
}

.shopify-payment-button__button {
  border-radius: 8px !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 1.14rem !important; /* 30% larger than 0.875rem */
  font-weight: 700 !important;
  width: 100% !important;
}

/* Buy Now Unbranded Button - Film Black */
.shopify-payment-button__button--unbranded {
  border-radius: 8px !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 1.14rem !important; /* 30% larger */
  font-weight: 700 !important;
  width: 100% !important;
  background-color: #111111 !important;
  color: #F8F5EB !important;
}

.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  background-color: #222222 !important;
}

/* Fix pseudo-element border radius for Buy It Now / Dynamic Checkout buttons */
.shopify-payment-button__button::before,
.shopify-payment-button__button::after,
.shopify-payment-button__button--unbranded::before,
.shopify-payment-button__button--unbranded::after {
  border-radius: 8px !important;
}

/* Fix focus border radius for Buy It Now / Dynamic Checkout buttons */
.shopify-payment-button__button:focus,
.shopify-payment-button__button:focus-visible,
.shopify-payment-button__button.focused,
.shopify-payment-button__button [role='button']:focus,
.shopify-payment-button__button [role='button']:focus-visible,
.shopify-payment-button__button [role='button'].focused,
.shopify-payment-button__button--unbranded:focus,
.shopify-payment-button__button--unbranded:focus-visible,
.shopify-payment-button__button--unbranded.focused {
  outline: none !important;
  box-shadow: 0 0 0 3px rgb(var(--color-background)), 0 0 0 5px rgba(var(--color-foreground), 0.5) !important;
  border-radius: 8px !important;
}

.shopify-payment-button__button:focus::before,
.shopify-payment-button__button:focus::after,
.shopify-payment-button__button:focus-visible::before,
.shopify-payment-button__button:focus-visible::after,
.shopify-payment-button__button--unbranded:focus::before,
.shopify-payment-button__button--unbranded:focus::after,
.shopify-payment-button__button--unbranded:focus-visible::before,
.shopify-payment-button__button--unbranded:focus-visible::after {
  border-radius: 8px !important;
}

/* Ensure button text is centered */
.product-form__submit span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Trust Badges (Free Shipping, Warranty) */
/* Container for trust badges */
.product__trust-badges-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  margin-top: 1.5rem;
  flex-wrap: wrap;
}

.product__trust-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.17rem; /* 20% larger than 0.975rem */
  text-transform: uppercase;
  letter-spacing: 0.1em;
  opacity: 0.5;
  margin: 0;
}

.product__trust-badge svg {
  width: 1.2rem;
  height: 1.2rem;
  flex-shrink: 0;
}

/* Spacing adjustments for product info container */
.product__info-container {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.product__info-container > * + * {
  margin-top: 0;
}

/* Ensure proper spacing between major sections */
.product__info-container > .product__category-badge {
  margin-bottom: 1rem;
}

.product__info-container > .product__title {
  margin-bottom: 0;
}

.product__info-container > #price-{{ section.id }},
.product__info-container > div[id^="price-"] {
  margin-bottom: 0;
}

/* Remove default margins on text blocks that might interfere */
.product__text.inline-richtext {
  margin: 0;
  padding: 0;
}

/* Variant picker and quantity adjustments */
.product-form__input {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

/* Side-by-side layout when variant picker follows quantity selector */
/* Quantity selector on left, variant picker on right */

/* Flex container for quantity + variant side-by-side layout */
.product-form__quantity-variant-row {
  display: flex;
  align-items: flex-start;
  gap: 3rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

/* Quantity selector in the row - only take space it needs */
.product-form__quantity-variant-row .product-form__quantity {
  flex: 0 0 auto;
  width: auto;
  max-width: fit-content;
  margin: 0;
}

/* Variant picker fills remaining space */
.product-form__quantity-variant-row variant-selects,
.product-form__quantity-variant-row variant-radios {
  flex: 1;
  min-width: 150px;
}

/* Remove margins from variant picker inside the row */
.product-form__quantity-variant-row variant-selects .product-form__input,
.product-form__quantity-variant-row variant-radios .product-form__input {
  margin-top: 0;
  margin-bottom: 0;
}

/* Align the labels at the same level */
.product-form__quantity-variant-row .quantity__label,
.product-form__quantity-variant-row legend,
.product-form__quantity-variant-row label {
  margin-bottom: 0.5rem;
}

/* Ensure the quantity buttons align with the select dropdown */
.product-form__quantity-variant-row .quantity {
  height: 52px;
  min-height: 52px;
  display: flex;
  align-items: center;
}

/* Match the variant dropdown height to the quantity selector */
.product-form__quantity-variant-row .select__select {
  height: 52px;
  min-height: 52px;
}

/* Variant Picker Dropdown Styling */
.product-form__input--dropdown,
.variant-picker {
  position: relative;
  overflow: visible;
}

.product-form__input--dropdown label,
.variant-picker__label,
.variant-picker legend {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.75rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: rgb(var(--color-foreground));
  padding: 0;
}

.product-form__input--dropdown select,
.select__select,
.variant-picker select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 100%;
  padding: 1rem 3rem 1rem 1rem;
  font-family: inherit;
  font-size: 1.14rem; /* Match add to cart button */
  letter-spacing: 0.05em;
  background-color: transparent;
  border: 1px solid rgba(var(--color-foreground), 0.2);
  border-radius: 8px;
  color: rgb(var(--color-foreground));
  cursor: pointer;
  transition: border-color 0.2s ease;
}

.product-form__input--dropdown select:hover,
.select__select:hover,
.variant-picker select:hover {
  border-color: rgba(var(--color-foreground), 0.4);
}

.product-form__input--dropdown select:focus,
.select__select:focus,
.variant-picker select:focus {
  outline: none;
  border-color: rgb(var(--color-foreground));
  border-radius: 8px;
}

/* Override Dawn's focus box-shadow to use matching border-radius */
.product-form__input .select__select:focus,
.product-form__input .select__select:focus-visible {
  box-shadow: none !important;
  outline: none !important;
  border: 1px solid rgb(var(--color-foreground)) !important;
  border-radius: 8px !important;
}

/* Select wrapper styling */
.select {
  position: relative;
  overflow: visible;
}

/* Remove the default pseudo-element borders from Dawn theme */
.product-form__input .select:before,
.product-form__input .select:after {
  display: none !important;
}

/* Hide all SVG wrappers inside select - we use CSS arrow instead */
.select .svg-wrapper {
  position: absolute !important;
  right: 1rem !important;
  left: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 12px !important;
  height: 12px !important;
  pointer-events: none !important;
  border: none !important;
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.select .svg-wrapper svg {
  width: 12px !important;
  height: 12px !important;
  opacity: 0.6;
}

/* Hide dropdown swatch if present (left icon) */
.select .dropdown-swatch {
  display: none !important;
}

/* Variant picker fieldset reset */
.variant-picker fieldset {
  border: none;
  padding: 0;
  margin: 0;
}

/* Quantity Selector Styling - Matching Cart Drawer */
.product-form__input.product-form__quantity {
  max-width: 100%;
}

.product-form__input.product-form__quantity .quantity {
  width: auto;
  min-height: auto;
  border-radius: 0;
  gap: 8px;
}

.product-form__input.product-form__quantity .quantity:before,
.product-form__input.product-form__quantity .quantity:after {
  display: none;
}

.product-form__input.product-form__quantity .quantity__button {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border: 1px solid rgba(var(--color-foreground), 0.2);
  border-radius: 0;
  background: transparent;
  transition: background-color 0.15s ease;
  margin: 0;
}

.product-form__input.product-form__quantity .quantity__button:hover {
  background-color: rgba(var(--color-foreground), 0.05);
}

.product-form__input.product-form__quantity .quantity__button .svg-wrapper {
  width: 12px;
  height: 12px;
}

.product-form__input.product-form__quantity .quantity__input {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 14px;
  width: 24px;
  min-width: 24px;
  flex-grow: 0;
  border: none;
  text-align: center;
  padding: 0;
}

.product-form__input.product-form__quantity label {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.75rem;
  font-weight: 700;
}

/* Additional shopify payment button spacing */
.shopify-payment-button {
  margin-top: 1rem;
}

/* Pulsating Stock Status */
.product__stock-status {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 1rem 0;
  font-size: 0.875rem;
  font-weight: 500;
  color: rgb(var(--color-foreground));
}

.product__stock-status-indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #ef4444;
  animation: pulse-stock 1.5s ease-in-out infinite;
}

.product__stock-status--low .product__stock-status-indicator {
  background-color: #ef4444;
}

.product__stock-status--medium .product__stock-status-indicator {
  background-color: #f59e0b;
}

.product__stock-status--high .product__stock-status-indicator {
  background-color: #22c55e;
}

@keyframes pulse-stock {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(1.1);
  }
}
