/** Shopify CDN: Minification failed

Line 81:0 All "@import" rules must come first

**/
/* ============================================================
   AUTUMN MOON — CUSTOM CSS FOR IMPULSE 7.4
   ============================================================ */

/* ============================================================
   SECTION 1: DESIGN TOKENS
   ============================================================ */

:root {
  --am-linen:          #fcfbf9;
  --am-linen-dark:     #fcfbf9;
  --am-chocolate:      #4A3A2A;
  --am-charcoal:       #2f2f2f;
  --am-blush:          #BFA6A1;
  --am-gold:           #C8A064;
  --am-white:          #FFFFFF;
  --am-bg-main:        #FCFBF9;
  --am-bg-alt:         #F8F4ED;
  --am-text-main:      #2F2F2F;
  --am-text-soft:      #6F6258;
  --am-border:         #D8CEC2;
  --am-button-primary-bg:    #4A3A2A;
  --am-button-primary-text:  #FCFBF9;
  --am-button-secondary-bg:   #EFE7DA;
  --am-button-secondary-text: #2F2F2F;
  --am-overlay:        rgba(47, 47, 47, 0.18);
  --am-font-heading:   'Playfair Display', Georgia, serif;
  --am-font-body:      'Questrial', sans-serif;
  --am-font-aviola:    'AviolaMemories', cursive;
  --am-font-kitten:    'Bettanisellia', cursive;
  --am-size-nav:       11px;
  --am-size-body:      15px;
  --am-size-small:     12px;
  --am-size-h1:        52px;
  --am-size-h2:        36px;
  --am-size-h3:        24px;
  --am-size-aviola:    48px;
  --am-tracking-nav:   0.18em;
  --am-tracking-label: 0.22em;
  --am-tracking-btn:   0.18em;
  --am-border-color:   #D4C9BE;
  --am-border-thin:    0.5px;
  --am-border-frame:   1px;
  --am-radius:         0px;
  --am-section-pad:    80px;
  --am-section-pad-sm: 50px;
  --am-transition:     0.3s ease;
}
/* Related Products (Pair It With) — overrides shared .index-section class */
[data-section-type="product-recommendations"] .index-section {
  background-color: #F8F4ED !important;
  padding-top: 60px !important;
}

@media only screen and (max-width: 768px) {
  [data-section-type="product-recommendations"] .index-section {
    padding-top: 40px !important;
  }
}

/* Recently Viewed — overrides shared .index-section class */
[data-section-type="recently-viewed"] .index-section {
  background-color: #FCFBF9 !important;
  padding-top: 60px !important;
}

@media only screen and (max-width: 768px) {
  [data-section-type="recently-viewed"] .index-section {
    padding-top: 40px !important;
  }
}
/* ============================================================
   SECTION 2: GOOGLE FONTS
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&family=Questrial&display=swap');
/* ============================================================
   SECTION 3: GLOBAL
   ============================================================ */

body {
  background-color: var(--am-linen) !important;
  color: var(--am-charcoal) !important;
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-body) !important;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4,
.section__title,
.collection-hero__title,
.page-header__title {
  font-family: var(--am-font-heading) !important;
  color: var(--am-charcoal) !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em;
}

p, li, label,
.rte, .rte p {
  font-family: var(--am-font-body) !important;
}

a {
  color: var(--am-charcoal);
  text-decoration: none;
  transition: color var(--am-transition);
}
a:hover { color: var(--am-chocolate); }

.page-container,
.main-content,
.index-template,
.template-collection,
.template-page {
  background-color: var(--am-linen) !important;
}

.template-product {
  background-color: var(--am-linen);
}

.index-section {
  background-color: var(--am-linen);
}

.template-page .shopify-section,
.template-collection .shopify-section,
.index-template .shopify-section {
  background-color: var(--am-linen);
}
/* ============================================================
   SECTION 4: TOOLBAR (DUAL LOGO BAR)
   ============================================================ */

.toolbar {
  background-color: var(--am-linen) !important;
  border-bottom: var(--am-border-thin) solid var(--am-border-color) !important;
  padding: 10px 0 !important;
}

.toolbar a[href="/"] {
  font-family: var(--am-font-aviola) !important;
  color: var(--am-charcoal) !important;
  font-size: 38px !important;
  line-height: 1 !important;
  letter-spacing: 0.01em !important;
  transition: opacity var(--am-transition) !important;
}
.toolbar a[href="/"]:hover { opacity: 0.7; }

.toolbar a[href="/pages/little-kitten-by-autumn-moon"] {
  font-family: var(--am-font-kitten) !important;
  color: var(--am-charcoal) !important;
  font-size: 28px !important;
  line-height: 1 !important;
  letter-spacing: 0.01em !important;
  transition: opacity var(--am-transition) !important;
}
.toolbar a[href="/pages/little-kitten-by-autumn-moon"]:hover { opacity: 0.7; }

.toolbar__social a,
.toolbar__item {
  color: var(--am-charcoal) !important;
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-small) !important;
  letter-spacing: var(--am-tracking-label) !important;
}

/* ---------- AM Brand Toolbar: reset currency + language selects ---------- */
[id^="abt-"] .abt-locale select,
[id^="abt-"] .abt-currency select {
  font-family: Questrial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.2 !important;
  color: #2F2F2F !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer;
}

/* ============================================================
   SECTION 5: MAIN HEADER & NAVIGATION
   ============================================================ */

.site-header,
#SiteHeader,
.header-wrapper,
.header-sticky-wrapper {
  background-color: var(--am-linen) !important;
  border-bottom: var(--am-border-thin) solid var(--am-border-color) !important;
  box-shadow: none !important;
}

.header-sticky-wrapper .site-header {
  background-color: rgba(252, 251, 249, 0.97) !important;
  backdrop-filter: blur(8px);
}

.site-nav__link {
  font-family: var(--am-font-heading) !important;
  
  letter-spacing: var(--am-tracking-nav) !important;
  text-transform: uppercase !important;
  color: var(--am-charcoal) !important;
  font-weight: 400 !important;
  padding: 8px 12px !important;
}

/* Announcement bar — compact Autumn Moon styling */

.announcement-slider,
.announcement-slider__slide {
  background-color: #EFE7DA !important;
}

.announcement-link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  padding: 7px 16px !important;
  color: #2F2F2F !important;
  text-decoration: none !important;
  -webkit-text-decoration: none !important;
}

.announcement-text,
.announcement-link-text {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #2F2F2F !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  -webkit-text-decoration: none !important;
}

.announcement-text + .announcement-link-text {
  padding-left: 5px !important;
}

@media screen and (max-width: 749px) {
  .announcement-link {
    padding: 5px 10px !important;
  }

  .announcement-text,
  .announcement-link-text {
    font-size: 9px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.1em !important;
  }
}

/* ============================================================
   SECTION 7: BUTTONS
   ============================================================ */

.btn,
.button,
.product-form__cart-submit,
.cart__submit,
button[name="add"],
.return-link {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-small) !important;
  letter-spacing: var(--am-tracking-btn) !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  background-color: var(--am-button-primary-bg) !important;
  color: var(--am-button-primary-text) !important;
  border: 1px solid var(--am-button-primary-bg) !important;
  border-radius: var(--am-radius) !important;
  padding: 14px 36px !important;
  transition: opacity var(--am-transition),
              transform var(--am-transition) !important;
  position: relative;
  overflow: hidden;
}

.btn:hover,
.button:hover,
.product-form__cart-submit:hover,
.cart__submit:hover,
button[name="add"]:hover,
.return-link:hover {
  background-color: var(--am-button-primary-bg) !important;
  color: var(--am-button-primary-text) !important;
  border-color: var(--am-button-primary-bg) !important;
  opacity: 0.88 !important;
  transform: scale(1.01) !important;
}

/* ---------- Return Link (Back to Collection) — sizing preserved ---------- */
.return-link {
  margin-top: 24px !important;
  padding: 12px 24px !important;
}

@media only screen and (max-width: 768px) {
  .return-link {
    width: auto !important;
    max-width: 320px !important;
    margin: 24px auto 0 !important;
    padding: 12px 24px !important;
  }
}

/* ============================================================
   SECTION 8: ORNATE FRAMES
   ============================================================ */

.am-frame {
  position: relative;
  padding: 6px;
}

.am-frame::before {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid var(--am-charcoal);
  pointer-events: none;
  z-index: 2;
}

.am-frame-corners {
  position: relative;
}
.am-frame-corners::before,
.am-frame-corners::after {
  content: '';
  position: absolute;
  width: 20px; height: 20px;
  border-color: var(--am-charcoal);
  border-style: solid;
  z-index: 3;
  pointer-events: none;
}
.am-frame-corners::before {
  top: 10px; left: 10px;
  border-width: 1px 0 0 1px;
}
.am-frame-corners::after {
  bottom: 10px; right: 10px;
  border-width: 0 1px 1px 0;
}
/* ============================================================
   SECTION 9: AVIOLA HEADINGS
   ============================================================ */

.am-aviola-title {
  font-family: var(--am-font-aviola) !important;
  font-size: var(--am-size-aviola) !important;
  color: var(--am-charcoal) !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.01em !important;
  display: block;
}

.am-chapter-label {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-small) !important;
  letter-spacing: var(--am-tracking-label) !important;
  text-transform: uppercase !important;
  color: var(--am-blush) !important;
  display: block;
  margin-bottom: 10px;
}

.am-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 280px;
  margin: 16px auto;
  color: var(--am-border-color);
}
.am-divider::before,
.am-divider::after {
  content: '';
  flex: 1;
  height: 0.5px;
  background: currentColor;
}
.am-divider span {
  font-size: 10px;
  color: var(--am-gold);
  letter-spacing: 0.1em;
}


/* ============================================================
   SECTION 10: HERO SECTION
   ============================================================ */

.hero,
.slideshow__slide,
.index-section--hero {
  background-color: var(--am-linen-dark) !important;
}

.hero__text-wrap,
.slideshow__text-wrap {
  background: transparent !important;
}

.hero__title,
.slideshow__title {
  font-family: var(--am-font-heading) !important;
  font-size: var(--am-size-h1) !important;
  font-weight: 400 !important;
  color: var(--am-white) !important;
  letter-spacing: 0.02em !important;
  text-shadow: 0 2px 20px rgba(43, 43, 43, 0.3);
}

.hero__subtitle,
.slideshow__subtitle {
  font-family: var(--am-font-body) !important;
  font-size: 13px !important;
  letter-spacing: var(--am-tracking-label) !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.85) !important;
}

.hero .btn,
.slideshow .btn {
  background: rgba(242, 238, 232, 0.15) !important;
  color: var(--am-white) !important;
  border: 1px solid rgba(255,255,255,0.7) !important;
  backdrop-filter: blur(4px);
  font-size: 10px !important;
  letter-spacing: 0.28em !important;
}
.hero .btn:hover,
.slideshow .btn:hover {
  background: rgba(242, 238, 232, 0.9) !important;
  color: var(--am-charcoal) !important;
  border-color: transparent !important;
}
/* ============================================================
   SECTION 11: COLLECTION CARDS
   ============================================================ */

.collection-grid__item,
.collection-item {
  overflow: hidden;
  position: relative;
  background: var(--am-linen-dark);
}

.collection-grid__item img,
.collection-item img {
  transition: transform 0.7s ease !important;
  transform-origin: center center;
}
.collection-grid__item:hover img,
.collection-item:hover img {
  transform: scale(1.04) !important;
}

.collection-grid__title,
.collection-item__title {
  font-family: var(--am-font-heading) !important;
  font-size: var(--am-size-h3) !important;
  font-weight: 400 !important;
  color: var(--am-white) !important;
  transition: transform 0.4s ease, opacity 0.4s ease !important;
}

.collection-grid__item .collection-grid__title::after,
.collection-item .collection-item__title::after {
  content: ' - explore';
  font-family: var(--am-font-body);
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  display: block;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.4s ease 0.1s, transform 0.4s ease 0.1s;
  color: rgba(255,255,255,0.8);
  margin-top: 6px;
}
.collection-grid__item:hover .collection-grid__title::after,
.collection-item:hover .collection-item__title::after {
  opacity: 1;
  transform: translateY(0);
}

.collection-grid__item .collection-grid__image-wrap::after,
.collection-item::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(43, 43, 43, 0.55) 0%,
    rgba(43, 43, 43, 0.1) 50%,
    transparent 100%
  );
  transition: opacity var(--am-transition);
}
.collection-grid__item:hover .collection-grid__image-wrap::after {
  opacity: 0.85;
}


/* ============================================================
   SECTION 12: PRODUCT CARDS
   ============================================================ */

.grid-product {
  background: transparent !important;
}

.grid-product__title,
.grid-product__meta .grid-product__title {
  font-family: var(--am-font-heading) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
  letter-spacing: 0.01em !important;
}

.grid-product__price,
.grid-product__price--original {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-small) !important;
  color: var(--am-charcoal) !important;
  letter-spacing: 0.08em !important;
}

.grid-product__price--savings {
  color: var(--am-blush) !important;
}

.grid-product__image-wrap {
  overflow: hidden;
}
.grid-product__image-wrap img {
  transition: transform 0.6s ease !important;
}
.grid-product:hover .grid-product__image-wrap img {
  transform: scale(1.03) !important;
}

.grid-product__tag {
  font-family: var(--am-font-body) !important;
  font-size: 10px !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  background: #A63D3D !important;
  color: var(--am-linen) !important;
  border-radius: 0 !important;
  padding: 4px 10px !important;
}
/* ============================================================
   SECTION 13: PRODUCT PAGE
   ============================================================ */

.product-single__title,
h1.product-single__title {
  font-family: var(--am-font-heading) !important;
  font-size: 32px !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
  letter-spacing: 0.01em !important;
}

.product__price,
.product-single__price {
  font-family: var(--am-font-body) !important;
  font-size: 16px !important;
  color: var(--am-charcoal) !important;
  letter-spacing: 0.08em !important;
}

.product-single__description,
.product-single__description p {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-body) !important;
  line-height: 1.85 !important;
  color: var(--am-charcoal) !important;
}

.variant__label,
.single-option-selector__radio + label {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-small) !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--am-charcoal) !important;
}

.swatch__button,
.single-option-selector__radio + label {
  border: var(--am-border-thin) solid var(--am-border-color) !important;
  border-radius: 0 !important;
  font-family: var(--am-font-body) !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  transition: border-color var(--am-transition), background var(--am-transition) !important;
}
.swatch__button:hover,
.swatch__button.is-active {
  border-color: var(--am-chocolate) !important;
  background: var(--am-chocolate) !important;
  color: var(--am-linen) !important;
}


/* ============================================================
   SALES POINTS & INVENTORY STATUS — CONSISTENT LEFT ALIGNMENT
   (Both share the same .product-block--sales-point component)
   ============================================================ */
.template-product .product-block--sales-point,
.template-product .product-block--sales-point .sales-points,
.template-product .product-block--sales-point .sales-point {
  width: 100% !important;
  text-align: left !important;
}
.template-product .product-block--sales-point .sales-points {
  display: block !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}
.template-product .product-block--sales-point .sales-point {
  display: block !important;
}
.template-product .product-block--sales-point .sales-point .icon-and-text {
  display: flex !important;
  width: 100% !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  text-align: left !important;
}
.template-product .product-block--sales-point .sales-point .icon-and-text > svg,
.template-product .product-block--sales-point .sales-point .icon-and-text > .icon {
  flex: 0 0 auto !important;
  margin-top: 2px !important;
}
.template-product .product-block--sales-point .sales-point .icon-and-text > span:not(.icon) {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  text-align: left !important;
}
/* ============================================================
   INVENTORY STATUS DOTS — AUTUMN MOON PALETTE
   Recolors only the dot and pulse, not the icon container
   ============================================================ */
/* In stock */
.template-product .icon--inventory::before,
.template-product .icon--inventory::after {
  background-color: #6E8572 !important;
}
/* Low stock */
.template-product .inventory--low .icon--inventory::before,
.template-product .inventory--low .icon--inventory::after {
  background-color: #C8A064 !important;
}
/* Inventory on the way */
.template-product [data-incoming-inventory] .icon--inventory::before,
.template-product [data-incoming-inventory] .icon--inventory::after {
  background-color: #8A8A8A !important;
}
/* ============================================================
   SECTION 14: COLLECTION PAGE
   ============================================================ */
.collection-hero {
  background-color: var(--am-linen-dark) !important;
}

.collection-hero__title {
  font-family: var(--am-font-heading) !important;
  font-size: 42px !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
}

.breadcrumb,
.breadcrumb a {
  font-family: var(--am-font-body) !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--am-charcoal) !important;
  opacity: 0.6;
}

.collection-filter,
.collection-filter__label,
.collection-sort label {
  font-family: var(--am-font-body) !important;
  font-size: 11px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--am-charcoal) !important;
}


/* ============================================================
   SECTION 15: PAGES
   ============================================================ */

.page-header,
.page-header__title {
  background: var(--am-linen-dark) !important;
  font-family: var(--am-font-heading) !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
  text-align: center;
  padding: 60px 20px !important;
  letter-spacing: 0.02em;
}

.page-content,
.page-content p,
.rte p {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-body) !important;
  line-height: 1.9 !important;
  color: var(--am-charcoal) !important;
}

.page-content h2,
.rte h2 {
  font-family: var(--am-font-heading) !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
  margin-top: 40px !important;
  margin-bottom: 16px !important;
  padding-bottom: 10px;
  border-bottom: var(--am-border-thin) solid var(--am-border-color);
  letter-spacing: 0.01em;
}

.page-content h3,
.rte h3 {
  font-family: var(--am-font-heading) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--am-charcoal) !important;
  margin-top: 28px !important;
}

.page-content li::marker {
  color: var(--am-gold);
}

.page-content:not(.page-content--product) {
  max-width: 760px;
  margin: 0 auto;
  padding: 60px 30px !important;
}
/* ============================================================
   SECTION 16: FOOTER
   ============================================================ */

.site-footer {
  background-color: var(--am-linen-dark) !important;
  color: var(--am-charcoal) !important;
  border-top: 1px solid var(--am-border-color) !important;
}

.site-footer h3,
.site-footer h4,
.site-footer .footer__title {
  font-family: var(--am-font-body) !important;
  font-size: 10px !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: var(--am-chocolate) !important;
  font-weight: 400 !important;
  margin-bottom: 16px !important;
}

.site-footer a,
.site-footer li a,
.footer__links a {
  font-family: var(--am-font-body) !important;
  font-size: 13px !important;
  color: var(--am-charcoal) !important;
  letter-spacing: 0.05em !important;
  opacity: 0.8;
  transition: opacity var(--am-transition), color var(--am-transition) !important;
}
.site-footer a:hover,
.footer__links a:hover {
  color: var(--am-chocolate) !important;
  opacity: 1;
}

.site-footer__bottom,
.footer__copyright {
  border-top: 0.5px solid var(--am-border-color) !important;
  font-family: var(--am-font-body) !important;
  font-size: 10px !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: var(--am-charcoal) !important;
  opacity: 0.5;
  padding-top: 20px !important;
}

.footer__newsletter input[type="email"],
.footer__newsletter input[type="text"] {
  background: transparent !important;
  border: var(--am-border-thin) solid var(--am-border-color) !important;
  color: var(--am-charcoal) !important;
  font-family: var(--am-font-body) !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  border-radius: 0 !important;
}
.footer__newsletter input::placeholder {
  color: var(--am-blush) !important;
}
.footer__newsletter .btn {
  background: var(--am-chocolate) !important;
  color: var(--am-linen) !important;
  border-color: var(--am-chocolate) !important;
}


/* ============================================================
   SECTION 17: CART DRAWER
   ============================================================ */

.cart-drawer,
#CartDrawer {
  background: var(--am-linen) !important;
}

.cart-drawer__title,
#CartDrawer h2 {
  font-family: var(--am-font-heading) !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
  font-size: 22px !important;
  letter-spacing: 0.02em !important;
}

.cart-item__title {
  font-family: var(--am-font-heading) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
}

.cart-item__price,
.cart-item__variant {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-small) !important;
  color: var(--am-charcoal) !important;
  opacity: 0.7;
  letter-spacing: 0.08em !important;
}


/* ============================================================
   SECTION 18: FORMS
   ============================================================ */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
textarea,
select {
  font-family: var(--am-font-body) !important;
  font-size: var(--am-size-body) !important;
  color: var(--am-charcoal) !important;
  background: var(--am-linen) !important;
  border: var(--am-border-thin) solid var(--am-border-color) !important;
  border-radius: 0 !important;
  padding: 12px 16px !important;
  transition: border-color var(--am-transition) !important;
}
input:focus,
textarea:focus,
select:focus {
  border-color: var(--am-chocolate) !important;
  outline: none !important;
  box-shadow: none !important;
}
input::placeholder,
textarea::placeholder {
  color: var(--am-blush) !important;
  opacity: 0.7;
}
/* ============================================================
   SECTION 19: BLOG — THE MOON LEDGER
   ============================================================ */

.blog-posts__inner,
.blog-posts,
[class*="blog-posts"] {
  background: var(--am-linen-dark) !important;
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

.blog-posts__title,
.blog-posts [class*="title"],
.index-section--blog .section__title {
  font-family: var(--am-font-aviola) !important;
  font-size: 52px !important;
  font-weight: 400 !important;
  color: var(--am-charcoal) !important;
  letter-spacing: 0.01em !important;
  text-align: center !important;
  margin-bottom: 10px !important;
}

.article-listing__date,
.blog-article__date,
[class*="article"] [class*="date"],
[class*="blog"] [class*="date"] {
  background: transparent !important;
  color: var(--am-blush) !important;
  font-family: var(--am-font-body) !important;
  font-size: 10px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  border: 1px solid var(--am-border-color) !important;
  padding: 6px 12px !important;
  font-weight: 400 !important;
}

.article-listing,
[class*="article-listing"],
[class*="blog-article"] {
  background: var(--am-linen) !important;
  border: 0.5px solid var(--am-border-color) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  overflow: hidden !important;
}

.article-listing:hover,
[class*="article-listing"]:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 30px rgba(74, 58, 42, 0.08) !important;
}

.article-listing__title,
[class*="article"] [class*="title"],
[class*="blog"] [class*="article-title"] {
  font-family: var(--am-font-heading) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--am-charcoal) !important;
  line-height: 1.4 !important;
  letter-spacing: 0.01em !important;
}

.article-listing__excerpt,
[class*="article"] [class*="excerpt"],
[class*="blog"] [class*="excerpt"] {
  font-family: var(--am-font-body) !important;
  font-size: 14px !important;
  color: var(--am-charcoal) !important;
  opacity: 0.7 !important;
  line-height: 1.75 !important;
}

.article-listing__link,
[class*="article"] [class*="read-more"],
[class*="blog"] [class*="read-more"],
[class*="blog"] a.btn {
  font-family: var(--am-font-body) !important;
  font-size: 10px !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  color: var(--am-charcoal) !important;
  background: transparent !important;
  border: 1px solid var(--am-border-color) !important;
  padding: 10px 24px !important;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
  border-radius: 0 !important;
}

.article-listing__link:hover,
[class*="article"] [class*="read-more"]:hover,
[class*="blog"] a.btn:hover {
  background: var(--am-chocolate) !important;
  color: var(--am-linen) !important;
  border-color: var(--am-chocolate) !important;
}

[class*="blog"] [class*="prev"],
[class*="blog"] [class*="next"],
[class*="slider"] [class*="prev"],
[class*="slider"] [class*="next"] {
  color: var(--am-charcoal) !important;
  opacity: 0.4 !important;
  transition: opacity 0.3s ease !important;
}

[class*="blog"] [class*="prev"]:hover,
[class*="blog"] [class*="next"]:hover {
  opacity: 1 !important;
}


/* ============================================================
   SECTION 20: MOBILE RESPONSIVE
   ============================================================ */

@media (max-width: 768px) {
  .mobile-nav,
  .nav-drawer {
    background: var(--am-linen) !important;
  }

  .mobile-nav__link,
  .mobile-nav__link--top-level {
    font-family: var(--am-font-body) !important;
    font-size: 13px !important;
    letter-spacing: var(--am-tracking-nav) !important;
    text-transform: uppercase !important;
    color: var(--am-charcoal) !important;
    border-bottom: var(--am-border-thin) solid var(--am-border-color) !important;
  }

  .hero__title,
  .slideshow__title {
    font-size: 36px !important;
  }

  .index-section {
    padding-top: var(--am-section-pad-sm) !important;
    padding-bottom: var(--am-section-pad-sm) !important;
  }

  .toolbar a[href="/"] {
    font-size: 28px !important;
  }
  .toolbar a[href="/pages/little-kitten-by-autumn-moon"] {
    font-size: 22px !important;
  }
}

@media (max-width: 480px) {
  .hero__title,
  .slideshow__title {
    font-size: 28px !important;
  }
  .am-aviola-title {
    font-size: 36px !important;
  }
}


/* ============================================================
   SECTION 21: SPEED OPTIMIZATIONS
   ============================================================ */

html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}

.collection-grid__item img,
.grid-product__image-wrap img,
.btn, .button {
  will-change: transform;
}
/* ---------- Size Buttons — compact, editorial refinement ---------- */
.variant-input-wrap label,
.variant__button-label {
  background-color: #FCFBF9 !important;
  border: 1px solid #D8CEC2 !important;
  box-shadow: none !important;
  color: #2F2F2F !important;
  font-family: Questrial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  border-radius: 0 !important;
  padding: 10px 14px !important;
  min-height: 40px !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s ease, color 0.2s ease !important;
}

.variant-input-wrap input[type="radio"]:checked + label {
  background-color: #FCFBF9 !important;
  border-color: #4B453E !important;
  border-width: 1px !important;
  box-shadow: none !important;
  color: #2F2F2F !important;
  font-weight: 500 !important;
}

.variant-input-wrap label.disabled,
.variant__button-label.disabled {
  opacity: 0.48;
  border-color: #D8CEC2 !important;
}

/* Tighter grouping between buttons */
.variant-input-wrap .variant-input {
  margin: 0 7px 7px 0 !important;
}

/* Keep option wrappers compact */
.variant-input {
  min-height: unset !important;
  height: auto !important;
}

@media screen and (max-width: 749px) {
  .variant-input-wrap label,
  .variant__button-label {
    min-height: 40px !important;
    padding: 9px 12px !important;
    font-size: 13px !important;
  }

  .variant-input-wrap .variant-input {
    margin: 0 6px 6px 0 !important;
  }
}
/* ============================================================
   SEARCH DRAWER / SEARCH OVERLAY
   ============================================================ */

.site-header__search-container,
.site-header__search,
.search-bar,
.predictive-results,
.predictive-search,
.predictive-search__results,
.modal--search {
  background-color: var(--am-bg-main) !important;
  color: var(--am-text-main) !important;
}

.site-header__search-container input,
.site-header__search input,
.search-bar input,
.predictive-search input,
.modal--search input {
  background-color: var(--am-bg-main) !important;
  color: var(--am-text-main) !important;
  border-color: var(--am-border) !important;
}

.site-header__search-container input::placeholder,
.site-header__search input::placeholder,
.search-bar input::placeholder,
.predictive-search input::placeholder,
.modal--search input::placeholder {
  color: var(--am-text-soft) !important;
  opacity: 0.8 !important;
}

/* ---------- Search submit button — quiet, scoped to search only ---------- */

.site-header__search-container button[type="submit"],
.site-header__search button[type="submit"],
.search-bar button[type="submit"],
.predictive-search button[type="submit"],
.modal--search button[type="submit"] {
  background-color: transparent !important;
  color: var(--am-text-main) !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: var(--am-radius) !important;
}

.site-header__search-container button[type="submit"]:hover,
.site-header__search button[type="submit"]:hover,
.search-bar button[type="submit"]:hover,
.predictive-search button[type="submit"]:hover,
.modal--search button[type="submit"]:hover {
  background-color: transparent !important;
  color: var(--am-text-main) !important;
  opacity: 0.75 !important;
  transform: none !important;
}
/* ============================================================
   PRODUCT IMAGE ZOOM — KEEP PHOTOS UNTINTED
   ============================================================ */
.template-product .product__photo-zoom,
.template-product .product__photo-zoom:hover,
.template-product .product__photo-zoom:focus,
.template-product .product__photo-zoom:active {
  background-color: transparent !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  transform: none !important;
}
/* ============================================================
   PRODUCT GALLERY CONTROLS — COMPACT & QUIET
   ============================================================ */

.template-product .pswp__button,
.template-product .photoswipe__button,
.template-product .product-single__close-media {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;

  background: rgba(252, 251, 249, 0.82) !important;
  color: var(--am-text-main) !important;

  border: 1px solid rgba(216, 206, 194, 0.85) !important;
  border-radius: 50% !important;
  box-shadow: none !important;

  opacity: 1 !important;
  transform: none !important;
}

.template-product .pswp__button:hover,
.template-product .photoswipe__button:hover,
.template-product .product-single__close-media:hover {
  background: rgba(252, 251, 249, 0.95) !important;
  color: var(--am-text-main) !important;
  opacity: 1 !important;
  transform: none !important;
}
/* ============================================================
   END OF AUTUMN MOON CUSTOM CSS
   ============================================================ */