/** Shopify CDN: Minification failed

Line 1711:14 Unexpected "{"
Line 1711:23 Expected ":"
Line 2529:0 All "@import" rules must come first

**/
/* ============================================================
   AH-RIN — THEME POLISH (GLOBAL)
   Palette • Typography • Cards • Buttons • Focus • Hero • Footer
   + PDP micro-polish • Collection toolbar • Cart notes
   + Announcement bar (pearl bg, gold text, with milky pill)
   ============================================================ */

/* Pretendard (Modern Korean Luxury Font) */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');



/* ---------- Brand palette & gentle transitions ---------- */
:root{
  --ahrin-ink:#2b261b;      /* deep ink */
  --ahrin-milk:#f5f3ef;     /* milky porcelain */
  --ahrin-gold:#d4af37;     /* soft gold token */
  --ahrin-gold-1:#D1A23A;   /* richer gold for effects */
  --ahrin-gold-2:#F1E9C9;   /* light iridescent gold */
  --ahrin-veil:rgba(255,255,255,.65);
  --ahrin-shadow:0 10px 24px rgba(0,0,0,.08);
  --ahrin-iris:conic-gradient(from 180deg at 50% 50%,
    #ffd7a8 0deg, #f4bce6 75deg, #bde0ff 150deg, #d7ffd0 225deg, #ffd7a8 360deg);

  /* typography tuning */
  --ahrin-heading-weight: 600;
  --ahrin-body-weight: 400;
  --ahrin-ui-weight: 500;
  --ahrin-letter-tight: .01em;
  --ahrin-letter-ui: .03em;
}
*{ transition:color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }

/* ================================
   TYPOGRAPHY — Playfair + Inter
   ================================ */
h1, h2, h3, h4, h5, h6,
.h0, .h1, .h2, .h3, .h4, .h5, .h6,
.section-title, .title-wrapper-with-link .title,
.card__heading, .product__title{
  font-family: var(--font-heading-family, serif);
  font-weight: var(--ahrin-heading-weight);
  letter-spacing: var(--ahrin-letter-tight);
  line-height: 1.15;
}
body, p, li, small, .rte *{
  font-family: var(--font-body-family, system-ui);
  font-weight: var(--ahrin-body-weight);
  letter-spacing: var(--ahrin-letter-tight);
  line-height: 1.6;
}
.card__heading, .card__heading a{
  font-weight: var(--ahrin-heading-weight);
  line-height: 1.2;
  font-size: clamp(.95rem, .9rem + .3vw, 1.15rem);
}
.price, .price .price-item,
.card-information .caption, .product__tax{
  font-family: var(--font-body-family, system-ui);
  letter-spacing: var(--ahrin-letter-tight);
}
.header__inline-menu a,
.button, .button--primary, .button--secondary,
.shopify-payment-button__button,
.facets__summary, .disclosure__button,
.badge, .link, .breadcrumb a{
  font-family: var(--font-body-family, system-ui);
  font-weight: var(--ahrin-ui-weight);
  letter-spacing: var(--ahrin-letter-ui);
  text-transform: none;
}
@media (min-width: 990px){
  .banner__heading, .hero__title, .title--primary{
    font-size: clamp(2rem, 1.6rem + 1.5vw, 3rem);
  }
}

/* ================================
   PRODUCT CARDS — polish & spacing
   ================================ */
.card{
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(0,0,0,.04);
  position: relative;
  overflow: hidden;
}
.card:hover{ transform: translateY(-2px); box-shadow: var(--ahrin-shadow); }

/* Iridescent hairline on hover (non-interactive) */
.card:hover::after{
  content:""; position:absolute; inset:0; border-radius:16px; padding:1px; background:var(--ahrin-iris);
  -webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  -webkit-mask-composite:xor; mask-composite:exclude;
  pointer-events:none;
}

/* Media wrapper edge + gentle zoom */
.card .card__media, .card .media{
  border-radius: 14px; overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(201,167,102,.25);
}
.card:hover .media img{ transform: scale(1.02); }
.card__information{ padding-top: .6rem; }
.card__information .price{ color: var(--ahrin-ink); }

/* Richer golden glow on product hover */
.card--product:hover .card__media::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background: radial-gradient(120% 120% at 50% 45%,
    color-mix(in oklab, var(--ahrin-gold-2), white 10%) 0%,
    color-mix(in oklab, var(--ahrin-gold-1), black 8%) 46%,
    transparent 70%);
  opacity: .10;
}
.card--product:hover{
  box-shadow: 0 18px 50px rgba(209,162,58,.35), 0 6px 18px rgba(0,0,0,.10);
}

/* No “kissing” the border */
.grid .card .card__inner > .card__media,
.collection .card .card__inner > .card__media,
.card--product .card__media,
.card .card__media{ margin-bottom: 16px !important; }
.card .card__content,
.card .card__information,
.card-information{ padding: 12px 16px 18px !important; gap: 6px !important; }
.card-information__wrapper{ padding: 0 16px 14px !important; }
.card .card__actions,
.card .card__quick-actions,
.card .product-icons,
.card .card__buttons,
.card .jdgm-prev-badge{ margin-top: 8px !important; }
.card-wrapper, .card--product{ border-radius: 16px; overflow: hidden; }
.card-wrapper:hover{
  box-shadow: 0 14px 40px rgba(0,0,0,.08);
  transform: translateY(-2px);
  transition: box-shadow .25s ease, transform .25s ease;
}

/* ================================
   BADGES
   ================================ */
.badge{
  border-radius: 999px; padding: 6px 10px;
  border: 1px solid rgba(201,167,102,.35);
  background: var(--ahrin-veil);
  color: var(--ahrin-ink);
  box-shadow: 0 3px 8px rgba(0,0,0,.06);
}
.badge:hover{
  border-color: transparent;
  background-image: var(--ahrin-iris);
  color: var(--ahrin-ink);
}
.badge--sale{ border-color: rgba(201,167,102,.6); }
.badge--sold-out{ opacity: .9; }

/* ================================
   BUTTONS (global) + Focus ring
   ================================ */
.button, .button--primary, button.shopify-payment-button__button{
  border-radius: 999px !important;
  border: 1.5px solid var(--ahrin-gold);
  background: rgba(255,255,255,.88);
  color: var(--ahrin-ink);
  backdrop-filter: saturate(1.2) blur(1px);
}
.button:hover, .button--primary:hover, button.shopify-payment-button__button:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
  background: #fff;
}
.button--secondary{ border-color: rgba(201,167,102,.45); background: #fff; }

/* Keyboard-first, accessible gold focus ring */
.button, .button--primary, .button--secondary, .button--tertiary,
a.button, button, .shopify-payment-button__button{ border-radius: 999px !important; }
.button:focus, .button--primary:focus, .button--secondary:focus,
.button--tertiary:focus, a.button:focus, button:focus,
.shopify-payment-button__button:focus{ outline: none !important; }
.button:focus:not(:focus-visible),
.button--primary:focus:not(:focus-visible),
.button--secondary:focus:not(:focus-visible),
.button--tertiary:focus:not(:focus-visible),
a.button:focus:not(:focus-visible),
button:focus:not(:focus-visible),
.shopify-payment-button__button:focus:not(:focus-visible){
  box-shadow: none !important;
}
.button:focus-visible, .button--primary:focus-visible, .button--secondary:focus-visible,
.button--tertiary:focus-visible, a.button:focus-visible, button:focus-visible,
.shopify-payment-button__button:focus-visible{
  outline: none !important;
  border-color: var(--ahrin-gold) !important;
  box-shadow: 0 0 0 3px rgba(209,162,58,.45) !important;
}

/* ================================
   CART DRAWER
   ================================ */
.drawer, .cart-drawer, .cart-drawer__inner{ border-radius: 16px 0 0 16px; }
.drawer__overlay{ background: rgba(0,0,0,.45) !important; backdrop-filter: blur(2px); }
.cart-drawer__inner{ box-shadow: -12px 0 24px rgba(0,0,0,.12); border-left: 1px solid rgba(201,167,102,.25); }
.cart-item__name a{ color: var(--ahrin-ink); }
.quantity__button, .quantity__input{ border-color: rgba(201,167,102,.35); }
.totals, .cart-drawer .totals{ border-top: 1px solid rgba(201,167,102,.3); padding-top: 8px; }
.cart-drawer .cart__ctas .button--primary{ background: #fff; border-color: var(--ahrin-gold); }

/* ================================
   FILTER CHIPS & HEADER ICONS
   ================================ */
.facets__summary, .disclosure__button{
  border-radius: 999px;
  border: 1px solid rgba(201,167,102,.35);
  background: #fff;
}
.facets__summary:hover, .disclosure__button:hover{ box-shadow: 0 6px 14px rgba(0,0,0,.06); }
.header__icon, .header__icon--cart{ border-radius: 999px; }
.header__icon:hover, .header__icon--cart:hover{ background: var(--ahrin-veil); box-shadow: 0 6px 14px rgba(0,0,0,.06); }

/* ================================
   SMALL TYPE TOUCHES
   ================================ */
.price .price-item--regular{ color: var(--ahrin-ink); }
a:hover{ color: var(--ahrin-ink); }
@media (prefers-reduced-motion: reduce){
  *{ transition: none !important; }
  .card:hover, .button:hover{ transform: none !important; box-shadow: none !important; }
}

/* ================================
   HERO (Pearl banner) refinements
   ================================ */
.banner{ position: relative; }
.banner .banner__media::after{
  content: "";
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(to bottom,
    rgba(255,255,255,0.00) 0%,
    rgba(255,255,255,0.00) 55%,
    rgba(255,255,255,0.10) 100%);
}
.banner .banner__heading{
  font-family: "Playfair Display", serif;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.15;
  color: var(--ahrin-ink);
  text-shadow: 0 1px 0 rgba(255,255,255,.35);
}
.banner .banner__text{
  font-family: var(--font-body-family, system-ui);
  color: color-mix(in oklab, var(--ahrin-ink) 80%, #000 20%);
  opacity: .85;
}
.banner .banner__buttons .button{
  border-radius: 999px;
  border: 1.5px solid var(--ahrin-gold);
  background: linear-gradient(135deg, #fffdf9, #f6f2e9);
  color: var(--ahrin-ink);
  padding-inline: clamp(18px, 2vw, 28px);
  padding-block: clamp(10px, 1.2vw, 14px);
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
}
.banner .banner__buttons .button:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(0,0,0,.12);
}
@media (max-width: 749px){
  .banner .banner__heading{ line-height: 1.12; }
  .banner .banner__buttons{ margin-top: 10px; }
}

/* ================================
   FOOTER “Quick links” pills
   ================================ */
.footer .footer-block__heading{
  font-family: "Playfair Display", serif;
  font-weight: 600;
  letter-spacing: .01em;
  color: var(--ahrin-ink);
  text-align: center;
  margin-bottom: 10px;
}
.footer .footer-block .list-menu,
.footer .footer-block .list-unstyled{
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: 10px 12px; margin: 6px 0 14px; padding: 0;
}
.footer .footer-block .list-menu__item,
.footer .footer-block .list-unstyled > li{ margin: 0; }
.footer .footer-block .list-menu__item .link,
.footer .footer-block .list-unstyled > li > a{
  display: inline-block; padding: .40rem .70rem; line-height: 1;
  border-radius: 999px; border: 1px solid rgba(201,167,102,.35);
  background: #fff; color: var(--ahrin-ink); text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.footer .footer-block .list-menu__item .link:hover,
.footer .footer-block .list-unstyled > li > a:hover,
.footer .footer-block .list-menu__item .link:focus-visible,
.footer .footer-block .list-unstyled > li > a:focus-visible{
  background: linear-gradient(120deg, #fff, #f7f3e6);
  border-color: rgba(201,167,102,.7);
  box-shadow: 0 6px 14px rgba(0,0,0,.06);
  transform: translateY(-1px);
}
.footer .copyright__content a{ text-decoration: none; }
.footer .copyright__content a:hover{ text-decoration: underline; }

/* ================================
   Header & Navigation polish
   ================================ */
.header, .shopify-section-header-sticky { box-shadow: 0 1px 0 rgba(0,0,0,.04); }
.header__inline-menu .list-menu__item,
.header__menu-item { padding-inline: 10px; letter-spacing: .02em; }
.header__inline-menu a, .header__menu-item { position: relative; text-decoration: none; }
.header__inline-menu a::after, .header__menu-item::after{
  content: ""; position: absolute; left: 0; right: 0; bottom: -.35rem; height: 2px;
  background: linear-gradient(90deg, transparent, var(--ahrin-gold), transparent);
  transform: scaleX(0); transform-origin: 50% 50%; transition: transform .2s ease;
}
.header__inline-menu a:hover::after, .header__menu-item:hover::after,
.header__inline-menu .list-menu__item--active a::after, .header__menu-item--active::after{ transform: scaleX(1); }
.header__icon, .header__icon--cart { border-radius: 999px; transition: background-color .18s ease, box-shadow .18s ease; }
.header__icon:hover, .header__icon--cart:hover{ background: var(--ahrin-veil); box-shadow: 0 6px 14px rgba(0,0,0,.06); }
.header__icon:focus-visible, .header__icon--cart:focus-visible{ outline: none; box-shadow: 0 0 0 3px rgba(209,162,58,.45); }
.menu-drawer__menu, .header__submenu{
  border-radius: 14px; box-shadow: 0 12px 36px rgba(0,0,0,.10); border: 1px solid rgba(201,167,102,.20);
}

/* ================================
   Collection toolbar polish
   ================================ */
.facets-container, .collection .facets-container{
  border-bottom: 1px solid rgba(201,167,102,.18); padding-block: 10px;
}
.facets__summary, .disclosure__button, .facets__item .select__select{
  border-radius: 999px; border: 1px solid rgba(201,167,102,.35);
  background: #fff; color: var(--ahrin-ink); padding: .45rem .75rem;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.facets__summary:hover, .disclosure__button:hover, .facets__item .select__select:hover{
  background: linear-gradient(120deg, #fff, #f7f3e6); border-color: rgba(201,167,102,.7);
  box-shadow: 0 6px 14px rgba(0,0,0,.06); transform: translateY(-1px);
}
.facets__summary:focus-visible, .disclosure__button:focus-visible, .facets__item .select__select:focus-visible{
  outline: none; box-shadow: 0 0 0 3px rgba(209,162,58,.45);
}
.active-facets__button, .active-facets__button-remove{
  border-radius: 999px; border: 1px solid rgba(201,167,102,.45); background: #fff; color: var(--ahrin-ink);
  padding: .35rem .6rem; gap: .35rem; transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.active-facets__button:hover, .active-facets__button-remove:hover{
  background: linear-gradient(120deg, #fff, #f7f3e6); border-color: rgba(201,167,102,.7);
  box-shadow: 0 6px 14px rgba(0,0,0,.06); transform: translateY(-1px);
}
.active-facets__clear{
  border-radius: 999px; border: 1px solid rgba(201,167,102,.35); padding: .35rem .7rem;
  text-decoration: none; color: var(--ahrin-ink); background: #fff;
}
.active-facets__clear:hover{
  border-color: rgba(201,167,102,.7); background: linear-gradient(120deg, #fff, #f7f3e6);
  box-shadow: 0 6px 14px rgba(0,0,0,.06);
}
.disclosure__list-wrapper, .facets__disclosure{
  border-radius: 14px; border: 1px solid rgba(201,167,102,.25); box-shadow: 0 12px 36px rgba(0,0,0,.10); overflow: hidden;
}
.disclosure__list, .facets__list{ padding: 8px; }
.facets__item label, .facets__list .facets__item{ border-radius: 10px; padding: 6px 8px; }
.facets__item:hover{ background: rgba(201,167,102,.06); }
.facets__form .product-count, .facets__form .facets__sort{ align-items: center; }
@media (max-width: 749px){ .facets-container{ padding-block: 8px; } .active-facets{ gap: 8px; } }

/* ================================
   Utilities / integrations
   ================================ */
#ahrin-dock { z-index: 10000; }                 /* keep dock above */
.card::after, .card:hover::after{ pointer-events: none; }  /* decorative overlay fix */

/* ================================
   Cart notes styling (full cart page)
   ================================ */
.cart__note .field__input, #Cart-note{
  border-radius: 12px; border: 1px solid rgba(201,167,102,.35); background: #fff; padding: 10px 12px;
  transition: box-shadow .2s ease, border-color .2s ease;
}
.cart__note .field__input:focus, #Cart-note:focus{
  outline: none; border-color: var(--ahrin-gold); box-shadow: 0 0 0 3px rgba(209,162,58,.20);
}
.cart__note .field__label{ color: var(--ahrin-ink); font-weight: 500; margin-bottom: 6px; display: inline-block; }

/* ================================
   PDP micro-polish
   ================================ */
.product .price{ align-items: baseline; gap: .35rem; }
.product .price__regular .price-item--regular,
.product .price__sale .price-item--sale{
  font-size: clamp(1.1rem, 1rem + .6vw, 1.5rem);
  font-weight: 600; color: var(--ahrin-ink);
}
.product .price__sale .price-item--regular{ opacity: .6; }
.product .price .price-item--regular[aria-hidden="true"]{ display:inline-flex; }
.product-form__input input[type="radio"] + label,
.product-form__input input[type="checkbox"] + label,
.product-form__input .product-form__input--pill label{
  border-radius: 999px; border: 1px solid rgba(201,167,102,.35); background: #fff; padding: .45rem .8rem;
  transition: border-color .2s ease, box-shadow .2s ease, transform .15s ease;
}
.product-form__input input:checked + label, .product-form__input .is-selected > label{
  border-color: var(--ahrin-gold); box-shadow: 0 0 0 3px rgba(209,162,58,.18);
}
.product-form__input label:hover{ transform: translateY(-1px); box-shadow: 0 6px 14px rgba(0,0,0,.06); }
.product-form__quantity{ margin-right: .6rem; }
.product-form__buttons{ gap: .6rem; }

/* Add to cart + Buy now (milky + gold) */
.product-form__buttons .button, .shopify-payment-button__button{
  border-radius: 999px !important; border: 1.5px solid var(--ahrin-gold);
  background: linear-gradient(135deg, #fffdf9, #f6f2e9); color: var(--ahrin-ink);
  box-shadow: 0 10px 24px rgba(0,0,0,.08); transition: transform .15s ease, box-shadow .15s ease;
}
.product-form__buttons .button:hover, .shopify-payment-button__button:hover{
  transform: translateY(-1px); box-shadow: 0 16px 32px rgba(0,0,0,.12);
}
.product-form__buttons .button:focus-visible, .shopify-payment-button__button:focus-visible{
  outline: none; box-shadow: 0 0 0 3px rgba(209,162,58,.45), 0 10px 24px rgba(0,0,0,.08);
}
.thumbnail-list__item .thumbnail{
  border-radius: 12px; overflow: hidden; box-shadow: inset 0 0 0 1px rgba(201,167,102,.25);
  transition: transform .15s ease, box-shadow .15s ease;
}
.thumbnail-list__item .thumbnail:hover{ transform: translateY(-2px); box-shadow: 0 10px 20px rgba(0,0,0,.08); }
.thumbnail-list__item .thumbnail[aria-current="true"]{
  box-shadow: 0 0 0 2px var(--ahrin-gold), inset 0 0 0 1px rgba(201,167,102,.25);
}
.product__accordion .accordion__title{ letter-spacing: .02em; }
.product__accordion .accordion__content{ line-height: 1.65; }
.product__inventory, .product__policies{
  color: color-mix(in oklab, var(--ahrin-ink) 80%, white); letter-spacing: .01em;
}
@media (max-width: 749px){
  .product-form__buttons .button, .shopify-payment-button__button{ width: 100%; }
}

/* Fix dynamic checkout (“Buy it now”) black hover */
.shopify-payment-button__button--unbranded{
  background: linear-gradient(135deg, #fffdf9, #f6f2e9) !important;
  color: var(--ahrin-ink) !important;
  border: 1.5px solid var(--ahrin-gold) !important;
  border-radius: 999px !important;
  transition: background-color .2s ease, box-shadow .2s ease, transform .1s ease;
}
.shopify-payment-button__button--unbranded:hover,
.shopify-payment-button__button--unbranded:focus-visible{
  background: #ffffff !important; color: var(--ahrin-ink) !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.08) !important;
}
.shopify-payment-button__button--unbranded:active{ transform: translateY(1px); }
/* Branded wallets (Apple Pay, etc.) render in iframes and can’t be re-styled. */


















/* =========================================================
   AH-RIN — Announcement bar (single canonical block)
   Where to change:
   - DESKTOP image URL:  --annc-bg-desktop
   - MOBILE  image URL:  --annc-bg-mobile
   - Heights:            --annc-h-desktop / --annc-h-mobile
   - Text size:          --annc-fs-desktop / --annc-fs-mobile (clamp)
   - Pill look:          --annc-pill-*
   - Alignment:          justify-content (center|flex-start|flex-end)
   ========================================================= */

:root{
  /* 🔁 Swap these to your uploaded CDN files (Content → Files) */
  --annc-bg-desktop: url("/cdn/shop/files/Announcement_bar_9.png?v=1763906387");
  --annc-bg-mobile:  url("/cdn/shop/files/Announcement_bar_9.png?v=1763906387");

  /* Sizing */
  --annc-h-desktop: 128px;                          /* desktop banner height */
  --annc-h-mobile:   96px;                           /* mobile banner height */

  /* Typography (use clamp to scale with viewport) */
  --annc-fs-desktop: clamp(26px, 2.2vw, 44px);
  --annc-fs-mobile:  clamp(18px, 4.5vw, 28px);
  --annc-text-color: #C5A769;                        /* AH-RIN gold */
  --annc-letter-space: 0.02em;
  --annc-font-weight: 700;

  /* Pill */
  --annc-pill-bg: rgba(255,255,246,.62);            /* translucent “pearl” */
  --annc-pill-pad-d: .3rem 1.1rem;                  /* desktop padding */
  --annc-pill-pad-m: .25rem .9rem;                  /* mobile padding  */
  --annc-pill-radius: 9999px;
  --annc-pill-shadow: 0 6px 12px rgba(0,0,0,.10);
  --annc-pill-blur: 3px;                            /* backdrop blur strength */

  /* Optional top→bottom soft overlay if the image is bright */
  --annc-overlay: linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,0));
}

/* Banner box */
.announcement-bar{
  position: relative;
  height: var(--annc-h-desktop);
  overflow: hidden;
  background: none !important;                      /* ignore theme bg */
  display: flex;
  align-items: center;
  justify-content: center;                          /* change to flex-start for left align */
}

/* Background image layer */
.announcement-bar::before{
  content:"";
  position:absolute; inset:0;
  background-image: var(--annc-bg-desktop);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 0;
}

/* Optional overlay */
.announcement-bar::after{
  content:"";
  position:absolute; inset:0;
  background: var(--annc-overlay);
  z-index: 1;
  pointer-events: none;
}

/* Text + pill */
.announcement-bar__message,
.announcement-bar a,
.announcement-bar p{
  position: relative;
  z-index: 2;
  display: inline-block;
  color: var(--annc-text-color);
  font-weight: var(--annc-font-weight);
  font-size: var(--annc-fs-desktop);
  letter-spacing: var(--annc-letter-space);
  text-decoration: none;
}

/* Pill background (separate layer so text stays crisp) */
.announcement-bar__message::before,
.announcement-bar a::before,
.announcement-bar p::before{
  content:"";
  position:absolute; inset:-6px -14px;              /* grows behind the text */
  background: var(--annc-pill-bg);
  border-radius: var(--annc-pill-radius);
  box-shadow: var(--annc-pill-shadow);
  -webkit-backdrop-filter: blur(var(--annc-pill-blur));
  backdrop-filter: blur(var(--annc-pill-blur));
  z-index:-1;
}

/* Add real padding on the text so the pill has breathing room */
.announcement-bar__message,
.announcement-bar a,
.announcement-bar p{
  padding: var(--annc-pill-pad-d);
}

/* ---------- Mobile tweaks ---------- */
@media (max-width: 749px){
  .announcement-bar{
    height: var(--annc-h-mobile);
    justify-content: center;                        /* keep centered on mobile */
  }
  .announcement-bar::before{
    background-image: var(--annc-bg-mobile);        /* mobile-specific asset */
  }
  .announcement-bar__message,
  .announcement-bar a,
  .announcement-bar p{
    font-size: var(--annc-fs-mobile);
    padding: var(--annc-pill-pad-m);
  }
  .announcement-bar__message::before,
  .announcement-bar a::before,
  .announcement-bar p::before{
    inset:-4px -10px;                                /* slightly tighter pill */
  }
}






/* Mobile tap-target improvements */
@media (max-width: 749px){
  /* Minimum comfortable button size */
  .button{ min-height: 44px; padding: .7rem 1rem; }

  /* Larger tap area for header icons (cart, search, menu) */
  .header__icon{ width: 44px; height: 44px; }

  /* Keep hero CTA a nice width on phones */
  .banner .banner__buttons .button{ width: min(320px, 86vw); }
}

















/* Mobile — clamp product titles to 2 lines for tidy cards */
@media (max-width: 749px){
  .card__heading,
  .card__heading a{
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;   /* show only 2 lines */
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1.25 !important;
    max-height: calc(1.25em * 2) !important;
  }

  /* Slightly tighter info stack under the image */
  .card .card__information,
  .card-information{
    gap: 4px !important;
  }
}











/* Mobile — clearer price + bigger tap targets in product cards */
@media (max-width: 749px){
  /* Price: larger, bolder, tighter line-height */
  .card .price{
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
  }
  .price .price-item--regular{ color: var(--ahrin-ink) !important; }
  .price .price-item--compare{ opacity: .6 !important; } /* crossed-out */

  /* Tighten spacing around the info stack */
  .card__heading{ margin-bottom: 2px !important; }
  .card__information{ padding-top: .4rem !important; gap: 4px !important; }

  /* If your theme shows Quick add, make it full-width & comfy */
  .card .quick-add__submit,
  .card .button--primary,
  .card .card__buttons .button{
    width: 100% !important;
    padding-block: 0.85rem !important;
    font-size: 1.3rem !important;
    border-radius: 999px !important;
  }
}





/* Mobile — tighter product grid spacing + tidy titles */
@media (max-width: 749px){
  /* smaller gaps between cards */
  :root{
    --grid-mobile-horizontal-spacing: 1.2rem !important; /* was ~1.6rem */
    --grid-mobile-vertical-spacing: 1.4rem !important;   /* was ~1.6–2rem */
  }

  /* slightly tighter inside padding on cards */
  .card .card__content,
  .card .card__information,
  .card-information{
    padding: 10px 12px 14px !important;
  }

  /* limit title to 2 lines so cards don't get too tall */
  .card__heading, .card__heading a{
    display: -webkit-box;
    -webkit-line-clamp: 2;         /* show 2 lines max */
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}







/* Step 5 — Mobile: comfier add-to-cart area */
@media (max-width: 749px){
  /* Stack controls & add spacing */
  .product-form__quantity{
    width: 100% !important;
    margin-right: 0 !important;
  }
  .product-form__buttons{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;          /* space between buttons */
  }

  /* Bigger, easier quantity control */
  .quantity{
    min-height: 48px !important;
  }
  .quantity__button{
    width: 44px !important;        /* larger tap target */
  }
  .quantity__input{
    height: 44px !important;
    font-size: 1.6rem !important;  /* easier to read */
  }

  /* Taller, full-width main buttons */
  .product-form__buttons .button,
  .shopify-payment-button__button{
    width: 100% !important;
    padding-block: 14px !important;  /* taller buttons */
    font-size: 1.6rem !important;
  }
}







/* Step 6 — Mobile: sticky add-to-cart bar on product pages */
@media (max-width: 749px){
  /* Make room so nothing is hidden behind the sticky bar */
  .product__info-container{
    padding-bottom: calc(84px + env(safe-area-inset-bottom)) !important;
  }

  /* Stick the buttons to the bottom of the screen */
  .product-form__buttons{
    position: sticky !important;
    bottom: 0 !important;
    left: 0; right: 0;
    z-index: 30;

    /* comfy surface */
    padding: 10px 0 calc(10px + env(safe-area-inset-bottom)) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.82), #ffffff);
    backdrop-filter: saturate(1.1) blur(6px);
    border-top: 1px solid rgba(201,167,102,.35);
    box-shadow: 0 -8px 18px rgba(0,0,0,.06);

    /* small gap above when it becomes sticky */
    margin-top: 12px;
  }

  /* Keep buttons full-width & comfy (from Step 5) */
  .product-form__buttons .button,
  .shopify-payment-button__button{
    width: 100% !important;
    padding-block: 14px !important;
    font-size: 1.6rem !important;
  }
}


@media (max-width: 749px){
  .product__info-container{ position: relative; }
}












/* Step 8 — Collection cards: better mobile spacing (no “kissing” the border) */
@media (max-width: 749px){
  /* Side breathing room so cards don't hit the screen edge */
  .template-collection .product-grid{
    padding-left: 10px;
    padding-right: 10px;
  }

  /* Larger gaps between cards */
  .template-collection .product-grid{
    column-gap: 12px;
    row-gap: 14px;
  }

  /* Space between the image and the text */
  .template-collection .card .card__media{
    margin-bottom: 12px !important;
  }

  /* Tidy, comfy padding for titles/prices */
  .template-collection .card .card__content,
  .template-collection .card .card__information,
  .template-collection .card-information{
    padding: 10px 12px 14px !important;
    gap: 6px !important;
  }

  /* Subtle card boundary + rounded corners */
  .template-collection .card,
  .template-collection .card-wrapper{
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 0 0 1px rgba(0,0,0,.04);
  }
}





/* Step 9 — Mobile header polish: compact but still accessible */
@media (max-width: 749px){
  /* A) Slightly reduce side padding of the header container */
  .header.page-width{
    padding-left: 1rem;
    padding-right: 1rem;
  }

  /* B) Keep the logo from growing too wide on small screens */
  .header__heading-logo-wrapper{
    max-width: 140px; /* adjust 120–160px to taste */
  }

  /* C) Nudge heading link padding down a hair */
  .header__heading-link{
    padding: 0.5rem; /* was 0.75rem */
  }

  /* D) Keep the right icon group tidy (tap target remains 44x44) */
  .header__icons{
    padding-right: 0.4rem; /* was 0.8rem */
    gap: 2px;
  }

  /* E) Drawer menu items: slightly denser spacing */
  .menu-drawer__menu .list-menu__item{
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
  }
  .menu-drawer__menu details[open] > summary,
  .menu-drawer__menu summary.list-menu__item{
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
  }
}

/* Step 10 — Mobile product card image-fit: contain + gentle buffer */
@media (max-width: 749px){
  /* A) Give the media area a little breathing room and a clean backdrop */
 .product-grid .card--product .card__media,
.collection .card--product .card__media{
  background: #fff;
  padding: 2px;                 /* was 6px; tighter brings badges closer */
  box-sizing: border-box;
  box-shadow: inset 0 0 0 1px rgba(201,167,102,.18);
}

/* Hug badges toward the left edge on mobile */
.product-grid .card--product .card__badge{
  left: 2px !important;           /* match the padding above */
  right: auto !important;
  top: 6px !important;
}

/* Safety: if a badge comes from an app with a different class */
.product-grid .card--product [class*="badge"]{
  left: 2px !important;
}

  /* B) Show the whole image (no crop) and keep it centered */
  .product-grid .card--product .card__media > img,
  .collection .card--product .card__media > img{
    object-fit: contain !important;
    object-position: center center !important;
  }

  /* C) If your cards swap to a second image on hover, keep that one contained too */
  .product-grid .card--product .card__media > img + img,
  .collection .card--product .card__media > img + img{
    object-fit: contain !important;
    object-position: center center !important;
  }
}





/* Step 12 — Mobile: compact product titles (2-line clamp) */
@media (max-width: 749px){
  /* A) Slightly smaller title on product cards */
  .card--product .card__heading,
  .card--product .card__heading a,
  .product-card-wrapper .card__heading,
  .product-card-wrapper .card__heading a,
  .card-information__text {
    font-size: clamp(0.95rem, 0.9rem + 0.3vw, 1.05rem);
    line-height: 1.25;
  }

  /* B) Clamp to two lines, hide overflow */
  .card--product .card__heading,
  .product-card-wrapper .card__heading,
  .card-information__text {
    display: -webkit-box;
    -webkit-line-clamp: 2;           /* number of visible lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* C) Slightly tighter spacing below title area */
  .card--product .card__information,
  .product-card-wrapper .card__information {
    gap: 4px;
  }
}


/* Step 13 — Mobile: tighter product grid gutters (scoped, safe) */
@media (max-width: 749px){
  /* Only affect product grids (collections, featured collections, search results) */
  .product-grid {
    /* Dial down gutters (default Dawn is larger). Tweak these two values to taste. */
    --grid-mobile-horizontal-spacing: 0.8rem;  /* was ~1.6rem */
    --grid-mobile-vertical-spacing: 1.0rem;    /* was ~1.6rem */
  }

  /* Slightly reduce outer margins beneath the grid, so rows feel tighter overall */
  .product-grid.grid {
    margin-bottom: 1rem;
  }
}






/* Step 15 — Mobile: 2-line clamp for product titles */
@media (max-width: 749px){
  /* Clamp the product title to 2 lines with ellipsis */
  .card__heading,
  .card__heading a,
  .card .full-unstyled-link {
    display: -webkit-box;             /* enables line clamp on WebKit */
    -webkit-line-clamp: 2;            /* number of lines */
    -webkit-box-orient: vertical;
    overflow: hidden;                  /* hide overflow */
    text-overflow: ellipsis;           /* end with … */
    word-break: break-word;            /* avoid overflow on long words */
    hyphens: auto;                     /* nicer wrapping where supported */
    line-height: 1.25;                 /* consistent line height */
    min-height: calc(1.25em * 2);      /* keep cards equal height */
  }
}













/* Step 16 — Mobile: tighter card spacing & balanced gutters */
@media (max-width: 749px){
  /* 1) Slightly narrower page edges */
  .page-width{
    padding-left: 1.2rem !important;
    padding-right: 1.2rem !important;
  }

  /* 2) Tighter grid gutters (affects all product grids) */
  :root{
    --grid-mobile-horizontal-spacing: 1.2rem;  /* was ~1.5rem */
    --grid-mobile-vertical-spacing: 1.2rem;    /* was ~1.5rem */
  }

  /* 3) Card internals: trim spacing a touch */
  .grid .card .card__inner > .card__media,
  .collection .card .card__inner > .card__media,
  .card--product .card__media,
  .card .card__media{
    margin-bottom: 12px !important;  /* was 16px */
  }

  .card .card__content,
  .card .card__information,
  .card-information{
    padding: 10px 12px 14px !important;  /* was 12px 16px 18px */
    gap: 6px !important;
  }

  .card-information__wrapper{
    padding: 0 12px 12px !important;     /* was 0 16px 14px */
  }
}







/* Step 17 — Mobile: calm product image zoom (no jumpiness on touch) */
@media (max-width: 749px){
  /* Phones don’t really hover; keep images steady */
  .card:hover .media img{ 
    transform: none !important;
  }

  /* Also drop the decorative hover rim on touch so nothing flashes */
  .card:hover::after{
    content: none !important;
  }
}

/* Extra safety for touch devices that report no hover */
@media (hover: none){
  .card:hover .media img{ transform: none !important; }
  .card:hover::after{ content: none !important; }
}


/* Step 18 — Mobile: tidy header spacing (safe, minimal) */
@media (max-width: 749px){
  /* Slightly reduce header side padding only inside the header */
  .section-header .header.page-width{
    padding-left: 1.2rem !important;
    padding-right: 1.2rem !important;
  }

  /* Keep the row compact */
  .header{
    column-gap: .4rem !important;
    grid-template-columns: auto 1fr auto !important; /* menu/logo/icons */
  }

  /* Logo: prevent over-tall scaling, keep crisp */
  .header__heading-link{ padding: .5rem !important; }
  .header__heading-logo{
    height: 28px !important;           /* adjust to 30–32px if you want bigger */
    max-height: 28px !important;
    width: auto !important;
  }

  /* Icons: keep hit area but trim outer padding a touch */
  .header__icons{ padding-right: .4rem !important; }
  .header__icon, .header__icon--cart{ margin: 0 .1rem !important; }
}




/* Step 19 — Mobile footer spacing + hide empty blocks (safe) */
@media (max-width: 749px){
  /* Trim vertical padding a little */
  .footer{
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  /* Tighter gaps and centered blocks */
  .footer .grid,
  .footer .footer__blocks-wrapper{
    row-gap: 10px !important;
  }
  .footer .footer-block{
    text-align: center !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Pills wrap neatly and stay centered */
  .footer .footer-block .list-unstyled,
  .footer .footer-block .list-menu{
    justify-content: center !important;
    gap: 8px 10px !important;
  }

  /* Small, tidy copyright */
  .footer .copyright__content{
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  /* Hide any blocks that end up empty (no links/text) */
  .footer .footer-block:has(.list-unstyled:empty):not(:has(form, input, textarea)),
  .footer .footer-block:has(.list-menu:empty):not(:has(form, input, textarea)),
  .footer .footer-block:has(.rte:empty){
    display: none !important;
  }
}










/* Step 20 — Cart drawer polish on phones (safe) */
@media (max-width: 749px){
  .cart-drawer__inner{
    width: 100vw !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
    border-left: 1px solid rgba(201,167,102,.25);
  }

  /* Consistent side padding */
  .cart-drawer__header,
  .cart-drawer__warnings,
  .cart-drawer .cart-items,
  .cart-drawer .totals,
  .cart-drawer__footer{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Header */
  .cart-drawer__header{
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid rgba(201,167,102,.18);
  }
  .cart-drawer__close{
    width: 44px !important;
    height: 44px !important;
    border-radius: 999px;
  }

  /* Line items */
  .cart-item{
    padding: 12px 0 !important;
    border-bottom: 1px solid rgba(201,167,102,.12);
  }
  .cart-item__media{
    width: 88px !important;
    min-width: 88px !important;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: inset 0 0 0 1px rgba(201,167,102,.25);
  }
  .cart-item__name{
    font-size: 14px !important;
    line-height: 1.3 !important;
    color: var(--ahrin-ink);
  }
  .cart-item__totals,
  .cart-item__price-wrapper{
    font-size: 13px !important;
  }

  /* Quantity control: bigger tap targets */
  .quantity{
    min-height: 40px !important;
    height: 40px !important;
  }
  .quantity__button{ width: 40px !important; }
  .quantity__input{ font-size: 14px !important; }

  /* Sticky footer so CTAs stay visible */






}

  /* AH-RIN: Share buttons styling */
.ahrin-share-wrap {
  margin: 28px 0 18px;
}

.ahrin-share-btn {
  /* size/shape */
  min-width: 180px;
  padding: 10px 16px;
  border-radius: 999px;

  /* typography */
  font-weight: 600;
  letter-spacing: .02em;

  /* gold that matches your UI (less “yellow” than before) */
  background: linear-gradient(180deg, #E6D5A6 0%, #D1B77A 100%);
  color: #1f1f1f;
  border: 1px solid #C8A968;
  box-shadow:
    0 1px 0 rgba(255,255,255,.4) inset,
    0 4px 12px rgba(0,0,0,.08);
  transition: transform .08s ease, box-shadow .18s ease, filter .18s ease;
}

.ahrin-share-btn:hover {
  filter: saturate(1.05);
  box-shadow:
    0 1px 0 rgba(255,255,255,.5) inset,
    0 6px 16px rgba(0,0,0,.12);
}

.ahrin-share-btn:active {
  transform: translateY(1px);
}

.ahrin-share-note {
  margin: 10px 0 0;
  font-size: .9rem;
  color: rgba(0,0,0,.55);
}

/* AH-RIN • Featured product: scale pearl badges down on small screens only
   This targets only the section where we added .ahrin-featured above.  */

/* Default tweak (keeps desktop the same, tiny nudge if you want) */
.ahrin-featured .badge--pearl { transform: scale(0.92); transform-origin: center; }

/* Mobile: tighter scale + slightly smaller label */
@media (max-width: 480px) {
  .ahrin-featured .badge--pearl { transform: scale(0.75); }
  .ahrin-featured .badge--pearl.badge--lg { transform: scale(0.70); }
  .ahrin-featured .badge--pearl.badge--xl { transform: scale(0.65); }

  /* If your badge has a text label inside */
  .ahrin-featured .badge--pearl .badge__label {
    font-size: 0.72rem;
    letter-spacing: 0.02em;
  }

  /* Keep shadows subtle on small screens */
  .ahrin-featured .badge--pearl { filter: drop-shadow(0 1px 2px rgba(0,0,0,.12)); }
}

/* Fallback selectors (in case your badges use data attributes instead of classes) */
@media (max-width: 480px) {
  .ahrin-featured [data-badge="pearl"],
  .ahrin-featured [data-badge-pearl] {
    transform: scale(0.75);
    transform-origin: center;
  }
}








/* Fallback: target this single Featured Product by section id */
#shopify-section-template--1234567890__featured_product .badge--pearl { transform: scale(0.92); }
@media (max-width: 480px){
  #shopify-section-template--1234567890__featured_product .badge--pearl{ transform: scale(0.75); }
  #shopify-section-template--1234567890__featured_product .badge--pearl.badge--lg{ transform: scale(0.70); }
  #shopify-section-template--1234567890__featured_product .badge--pearl.badge--xl{ transform: scale(0.65); }
  #shopify-section-template--1234567890__featured_product .badge--pearl .badge__label{ font-size: .72rem; letter-spacing: .02em; }
}










/* AH-RIN — move product card badges to top-left, tight spacing */
.card--product .card__badge{
  position: absolute;
  top: 8px;
  left: 8px;
  right: auto !important;   /* cancel Dawn's right alignment */
  z-index: 3;               /* stay on top of images */
}

/* Tighter stack and no extra left margin on the pills */
.card--product .card__badge .badge{
  margin-left: 0 !important;
}
.card--product .card__badge .badge + .badge{
  margin-top: 6px;          /* vertical gap between multiple badges */
}

/* Mobile: nudge even closer, matching your 6px media padding */
@media (max-width: 749px){
  .card--product .card__badge{ top: 6px; left: 6px; }
}

/* Featured collection section (defensive scope, in case Dawn variants differ) */
.section .product-grid .card--product .card__badge{
  left: 8px;
  right: auto !important;
}


/* ================================
   FEATURED/GRID PRODUCT BADGES — hug left edge
   ================================ */

/* Desktop & tablet: keep badges near the left edge */
.card--product .card__badge {
  left: 6px !important;
  right: auto !important;
  top: 6px;
}

/* Mobile: compensate for any media padding so the badge sits very close */
@media (max-width: 749px){
  .product-grid .card--product .card__badge{
    left: 4px !important;       /* pull closer to the left border */
    top: 6px !important;
    transform: translateX(-2px);/* cancels a bit of image padding */
  }
}

/* Safety net for third-party round badges that don’t use .card__badge */
@media (max-width: 749px){
  .product-grid .card--product [class*="badge"]{
    left: 4px !important;
  }
}


/* AH-RIN • Featured products — hug badges to the left edge on mobile and desktop */

/* Ensure the media/card is a positioning context */
.card--product .card__media,
.card--product .card__inner {
  position: relative !important;
}

/* Dawn’s own card badge container (top overlay) */
.card--product .card__badge {
  position: absolute !important;
  top: 6px !important;
  left: 6px !important;
  right: auto !important;
  transform: none !important;
  z-index: 3 !important;
}

/* Some apps inject a generic ".badge" inside the media overlay */
.card--product .card__media .badge,
.card--product .card__media [class*="badge"] {
  position: absolute !important;
  top: 6px !important;
  left: 6px !important;
  right: auto !important;
  z-index: 3 !important;
}

/* If an app renders the badge with inline styles, neutralize conflicting right offsets */
.card--product .card__media .badge[style*="right"],
.card--product .card__badge[style*="right"] {
  right: auto !important;
}

/* Tighten left padding on the image wrapper slightly so the badge looks “flush” */
.card--product .card__media {
  padding-left: 2px !important; /* subtle nudge; adjust 0–4px to taste */
}

/* Mobile: keep everything the same, just ensure the badge never wraps or shifts */
@media (max-width: 749px){
  .card--product .card__badge,
  .card--product .card__media .badge,
  .card--product .card__media [class*="badge"]{
    top: 6px !important;
    left: 6px !important;
  }
}

/* Product brand line */
.product__brand{margin-top:.4rem;font-size:.95rem;letter-spacing:.2px}
.product__brand strong{font-weight:600}




/* Hide Brands sidebar on mobile */
@media screen and (max-width: 749px) {
  .ahrin-brands--sidebar { display: none !important; }
}







/* ===== AH-RIN Brands Dock — pearl button skin (dash classes) ===== */

/* Keep the launcher on top of the dark overlay so it stays visible while open */
.brand-dock-launcher-wrap { 
  position: fixed; 
  left: 14px; 
  bottom: 14px; 
  z-index: 100; /* higher than the dock (which is 70) */
}

/* AH-RIN — Brands pearl launcher (image + glow) */
.brand-dock-launcher {
  position: relative;
  width: 96px !important;    /* bigger pearl */
  height: 96px !important;
  border-radius: 999px !important;

  background:
    radial-gradient(120% 120% at 60% 25%,
      rgba(255, 248, 229, 0.95) 0%,
      rgba(248, 228, 199, 0.9) 28%,
      rgba(209, 162, 88, 0.4) 62%,
      rgba(0, 0, 0, 0) 100%
    ),
    url("/cdn/shop/files/ChatGPT_Image_Oct_9_2025_11_58_33_AM.png?v=1760804576")
    center / cover no-repeat !important;

  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.12),
    0 8px 18px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.75) !important;

  display: inline-grid;
  place-items: center;
  cursor: pointer;
}


/* Iridescent sheen stays the same */
.brand-dock-launcher::after{
  content:"";
  position:absolute; inset:-3px;
  border-radius:50%;
  pointer-events:none;
  mix-blend-mode:overlay;
  background:
    conic-gradient(from 140deg,
      rgba(205,230,255,.28),
      rgba(171,210,255,.25),
      rgba(210,216,255,.25),
      rgba(255,210,230,.22),
      rgba(255,240,210,.25),
      rgba(205,230,255,.28));
  filter: blur(5px) saturate(115%);
  opacity:.55;
  animation:nacreShift 7s linear infinite;
}

/* Make sure the label is white on top of the pearl */
.brand-dock-launcher__label{
  position: relative; z-index: 1;
  color: #fff !important;             /* force white */
  font-weight: 700; font-size: 11px; letter-spacing: .2px;
  text-shadow: 0 1px 2px rgba(0,0,0,.35);
}

/* BRANDS DOCK — remove global gold focus halo and force perfect circle */
.brand-dock-launcher {
  /* match WC bubble size – tweak to 48/50/52 to taste */
  width: 52px !important;
  height: 52px !important;
  min-width: 0 !important;
  padding: 0 !important;
  border-radius: 50% !important;
}

/* Suppress the global focus outline/halo only for this button */
.brand-dock-launcher:focus,
.brand-dock-launcher:focus-visible,
.brand-dock-launcher:active {
  outline: none !important;
  box-shadow:
    0 2px 8px rgba(0,0,0,.12),            /* keep soft drop shadow */
    inset 0 1px 0 rgba(255,255,255,.70)   /* keep inner pearl shine */
    !important;
}
.brand-dock-launcher {
  box-shadow:
    0 1px 3px rgba(0,0,0,.12),
    0 8px 18px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.70) !important;
}


/* BRANDS DOCK — one-knob size control */
:root{
  --brand-dock-size: 88px;   /* ← change this to 52 / 56 / 64 / 72 / etc. */
}

.brand-dock-launcher{
  width: var(--brand-dock-size) !important;
  height: var(--brand-dock-size) !important;
  min-width: 0 !important;           /* keep it perfectly round */
  padding: 0 !important;
  border-radius: 50% !important;
}

/* (optional) slightly smaller on phones — tweak or delete */
@media (max-width: 749px){
  :root{ --brand-dock-size: 56px; }
}


/* BRANDS DOCK — remove gold focus halo + WC-like shadow */
.brand-dock-launcher:focus,
.brand-dock-launcher:focus-visible,
.brand-dock-launcher:focus:not(:focus-visible){
  outline: 0 !important;
  box-shadow: none !important;          /* kill the gold ring */
}

/* Use drop-shadow like WC instead of box-shadow */
.brand-dock-launcher{
  box-shadow: none !important;           /* ensure no outer ring */
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.18)) !important;
  -webkit-tap-highlight-color: transparent; /* no mobile halo */
}
.brand-dock-launcher:hover{
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.22)) !important;
}












:root{ --ahrin-pearl-size: 72px; }  /* match your Brands size */

.ahrin-fab{
  position: fixed; z-index: 100;
  right:14px;                              /* right-side stack */
  width:var(--ahrin-pearl-size); height:var(--ahrin-pearl-size);
  border-radius:50%;
  border:2px solid rgba(218,180,92,.70);
  background:
    radial-gradient(120% 120% at 60% 25%,
      rgba(255,248,229,.28) 0%,
      rgba(248,236,198,.22) 35%,
      rgba(230,205,140,.16) 62%,
      rgba(189,151,79,.12) 100%),
    url("{{ 'pearl-blank.png' | file_url }}") center/cover no-repeat;
  box-shadow:0 6px 24px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.75);
  display:grid; place-items:center; cursor:pointer;
}

#ahrin-fab-w{ bottom: calc(14px + var(--ahrin-pearl-size) + 10px); }
#ahrin-fab-c{ bottom: calc(14px + var(--ahrin-pearl-size)*2 + 20px); }

.ahrin-fab__label{
  color:#fff; font-weight:800; letter-spacing:.05em; font-size:13px;
  -webkit-text-stroke:.35px rgba(0,0,0,.28);
  text-shadow:0 1px 1px rgba(0,0,0,.55);
}














/* AH-RIN — kill any auto-focus/halo on floating pearls */
.brand-dock-launcher,
.brand-dock-launcher:focus,
.brand-dock-launcher:focus-visible,
.brand-dock-launcher:active{
  outline: none !important;
  box-shadow: none !important;      /* remove any glow/ring */
  filter: none !important;          /* cancel drop-shadows from inline styles */
}

/* If your pearl has an image shadow via filter, force it off */
.brand-dock-launcher img{
  filter: none !important;
}






/* AH-RIN — Brands pearl: no border/no shadow/no focus halo */
.brand-dock-launcher,
.brand-dock-launcher:focus,
.brand-dock-launcher:focus-visible,
.brand-dock-launcher:active{
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-tap-highlight-color: transparent;
}
.brand-dock-launcher img{ filter:none !important; }


/* Brands launcher: no halo/ring */
.brand-dock-launcher,
.brand-dock-launcher:focus,
.brand-dock-launcher:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
}


/* AH-RIN — Brands pearl: no halo on load/focus */
.brand-dock-launcher{
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-tap-highlight-color: transparent;
}
.brand-dock-launcher:focus,
.brand-dock-launcher:focus-visible{
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
}
.brand-dock-launcher::-moz-focus-inner{ border:0 !important; }


/* AH-RIN: disable FAB & dock (Plan B) */
#ahrin-dock,
.ahrin-dock,
.ahrin-fab,
button.ahrin-fab { display:none !important; visibility:hidden !important; }

/* Keep WC buttons above the stretched-link overlay */
.card-wrapper .full-unstyled-link::after { z-index: 2 !important; }
.ahrin-wc-buttons, .ahrin-wc-bar { position: relative; z-index: 3 !important; }
.ahrin-wc-buttons .wc-btn, .ahrin-wc-bar .wc-btn { pointer-events: auto !important; }

#ProductInfo-{{ section.id }} .product__title + .ahrin-wc-buttons { display:none !important; }


/* PDP: hide the duplicate WC/Share strip that appears under the Brand row */
.product__info-container .product__brand + .ahrin-wc-buttons { 
  display: none !important; 
}

/* Fallback: if a product has no Brand line but the extra strip appears right under the title */
.product__info-container .product__title + .ahrin-wc-buttons { 
  display: none !important; 
}


/* Active state = gold */
.ahrin-wc-buttons .wc-btn[aria-pressed="true"]{
  color: var(--arin-brand, #C5A769);
}
.ahrin-wc-buttons .wc-btn[aria-pressed="true"] svg path,
.ahrin-wc-buttons .wc-btn[aria-pressed="true"] svg circle,
.ahrin-wc-buttons .wc-btn[aria-pressed="true"] svg line{
  fill: currentColor;
  stroke: currentColor;
}





/* AHRIN — unify WC/Share buttons on PDP & cards */
.ahrin-wc-buttons{ display:flex; gap:8px; align-items:center; }
.ahrin-wc-buttons .wc-btn{
  width:38px; height:38px; padding:0;
  display:grid; place-items:center;
  border:1px solid rgba(0,0,0,.18);
  border-radius:999px; background:#fff;
  cursor:pointer;
  transition:background .15s ease, border-color .15s ease, box-shadow .2s ease, transform .05s ease;
}
.ahrin-wc-buttons .wc-btn:hover{
  background:rgba(0,0,0,.04);
  border-color:rgba(0,0,0,.30);
}
.ahrin-wc-buttons .wc-btn:active{ transform: translateY(1px); }

/* icon sizing + make icons inherit color */
.ahrin-wc-buttons .wc-btn svg{
  width:18px; height:18px;
  color:rgba(var(--color-foreground), .85);
}
.ahrin-wc-buttons .wc-btn svg *{
  fill:currentColor; stroke:currentColor;
}

/* ACTIVE state: when item is in the list (works with aria-pressed OR legacy .is-active) */
.ahrin-wc-buttons .wc-btn[aria-pressed="true"],
.ahrin-wc-buttons .wc-btn.is-active{
  background:var(--arin-brand, #C5A769);
  border-color:var(--arin-brand, #C5A769);
  box-shadow:0 6px 14px rgba(197,167,105,.30);
}
.ahrin-wc-buttons .wc-btn[aria-pressed="true"] svg,
.ahrin-wc-buttons .wc-btn.is-active svg{
  color:#111; /* icon contrast on gold */
}
.ahrin-wc-buttons .wc-btn[aria-pressed="true"]:hover,
.ahrin-wc-buttons .wc-btn.is-active:hover{
  box-shadow:0 10px 20px rgba(197,167,105,.40);
}

/* ensure the three buttons look identical in shape (no elongated heart) */
.ahrin-wc-buttons .wc-btn > *{ line-height:0; display:block; }


/* WC buttons — center icons perfectly everywhere (grid + PDP) */
.ahrin-wc-buttons .wc-btn,
.card-wrapper .wc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;   /* kill any stray padding */
  line-height: 1;
}

/* Make sure the SVG itself is centered with no extra inline spacing */
.ahrin-wc-buttons .wc-btn svg,
.card-wrapper .wc-btn svg {
  display: block;
  width: 1.1em;
  height: 1.1em;
  margin: 0;               /* no auto margins that can shift it */
}

/* Micro-nudge only the heart (its glyph has a right-bearing) */
.ahrin-wc-buttons .wc-btn[data-wc="wish"] svg,
.card-wrapper .wc-btn[data-wc="wish"] svg {
  transform: translateX(-1px);
}

/* If your browser renders half-pixels poorly, switch to -2px instead */


/* Heart size (PDP + grid) */
.wc-btn[data-wc="wish"] svg { width: 1.38em !important; height: 1.38em !important; }

.wc-btn[data-wc="wish"] svg { transform: translateX(-5px); } /* try -2px if needed */













/* Header menu badges for Wishlist / Compare */
.header .list-menu a[href*="/pages/wishlist"] sup,
.header .list-menu a[href*="/pages/compare"] sup,
.header .list-menu a[href*="/pages/wishlist"] .arin-badge,
.header .list-menu a[href*="/pages/compare"] .arin-badge,
.header .list-menu a[href*="/pages/wishlist"] .wc-count,
.header .list-menu a[href*="/pages/compare"] .wc-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  line-height: 18px;
  padding: 0 6px;
  margin-left: 6px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  background: var(--arin-brand, #C5A769);
  color: #fff;
  vertical-align: middle;
}








/* Header nav counter badge */
.header .list-menu a .nav-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:6px;
  min-width:18px;
  height:18px;
  padding:0 6px;
  border-radius:999px;
  background:var(--arin-brand, #C5A769);
  color:#fff;
  font-size:11px;
  font-weight:600;
  line-height:18px;
  vertical-align:middle;
  text-decoration:none;          /* don't underline the bubble */
  pointer-events:none;           /* keep hover feel on the label */
}
.header .list-menu a:hover .nav-count{ filter:brightness(1.05); } /* subtle polish */









/* Bulk actions bar above the grid */
.ahrin-bulkbar{
  display: flex !important;           /* force visible */
  visibility: visible !important;
  opacity: 1 !important;
  gap: 12px;
  align-items: center;
  margin: 0 0 12px;
}
@media (max-width: 749px){
  .ahrin-bulkbar{
    position: sticky;
    top: var(--header-bottom-position, 0);
    background: rgb(var(--color-background));
    padding: 8px 0;
    z-index: 2;
  }
}

/* Bulk bar button sizing */
.ahrin-bulkbar .button{
  min-height: 40px;
  padding: 0 16px;
  border-radius: 8px;                 /* boxed, tidy */
}


/* Per-card Add button placement */
.ahrin-grid-card__actions .ahrin-mini-add{ margin-right:8px; }


/* AHRIN — unify wishlist/compare per-card buttons (Add to cart + Remove) */
.ahrin-grid-card__actions .ahrin-mini-add,
.ahrin-grid-card__actions .ahrin-add,
.ahrin-grid-card__actions .ahrin-remove,
.ahrin-grid-card__actions button.button,            /* Dawn button in card actions */
.ahrin-grid-card__actions .button                    /* fallback */
{
  /* same outer box */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  height: 44px !important;
  padding: 0 18px !important;

  /* same look */
  background: #fff !important;
  color: var(--ahrin-ink, #1f1f1f) !important;
  border: 1px solid rgba(0,0,0,.55) !important;
  border-radius: 10px !important;
  font: 500 14px/1 var(--font-body-family, system-ui) !important;

  /* kill any double outlines/borders */
  box-shadow: none !important;
  outline: none !important;
}

.ahrin-grid-card__actions .ahrin-mini-add:hover,
.ahrin-grid-card__actions .ahrin-add:hover,
.ahrin-grid-card__actions .ahrin-remove:hover,
.ahrin-grid-card__actions button.button:hover,
.ahrin-grid-card__actions .button:hover{
  background: #f6f6f6 !important;
}








/* AH-RIN — unify Remove buttons (per-item + bulk) to match Add-to-cart */
.ahrin-bulkbar .ahrin-remove-all,
.ahrin-grid-card__actions .ahrin-remove {
  height: 40px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 8px;
  border: 1px solid var(--arin-brand, #C5A769);
  background: transparent;
  color: inherit;
  font-weight: 500;
  line-height: 40px; /* keeps text vertically centered on plain buttons */
  transition: background .15s ease, color .15s ease, box-shadow .15s ease, transform .05s ease;
}

.ahrin-bulkbar .ahrin-remove-all:hover,
.ahrin-grid-card__actions .ahrin-remove:hover {
  background: var(--arin-brand, #C5A769);
  color: #000;
  box-shadow: 0 6px 14px rgba(197,167,105,.30);
  transform: translateY(-1px);
}

.ahrin-bulkbar .ahrin-remove-all:active,
.ahrin-grid-card__actions .ahrin-remove:active {
  transform: translateY(0);
}

.ahrin-bulkbar .ahrin-remove-all:focus-visible,
.ahrin-grid-card__actions .ahrin-remove:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(209,162,58,.35);
}

/* Keep all wishlist actions the same height/shape */
.ahrin-bulkbar .button,
.ahrin-grid-card__actions .ahrin-mini-add,
.ahrin-grid-card__actions .ahrin-remove {
  min-height: 40px;
  border-radius: 8px;
}









/* Bulk bar (top) */
.ahrin-list__controls{ display:flex; gap:12px; margin: 0 0 16px; }
.ahrin-list__controls .button{ height:44px; padding:0 16px; border-radius:12px; }
.ahrin-list__controls .button--secondary{
  background:transparent;
  border:1px solid var(--arin-brand, #C5A769);
}









/* =========================================================
   AH-RIN — Wishlist/Compare buttons: make all “boxed” & uniform
   Targets:
   - Per-card “Add to cart” (ahrin-mini-add)
   - Per-card “Remove” (ahrin-remove or any .button in actions)
   - Bulk bar “Add all to cart” / “Remove all”
   ========================================================= */

/* =========================================================
   AH-RIN — Wishlist/Compare buttons UNIFIED (boxed, black border)
   Applies to:
   - Per-card actions in list grids (Add to cart + Remove)
   - Bulk bar buttons (Add all / Remove all)
   ========================================================= */

/* 1) Per-card buttons (catch ANY button in the actions area) */
.ahrin-list-grid .ahrin-grid-card__actions button,
.ahrin-list-grid .ahrin-grid-card__actions .button,
.ahrin-list-grid .ahrin-grid-card__actions .ahrin-mini-add,
.ahrin-list-grid .ahrin-grid-card__actions .ahrin-remove{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 40px !important;
  min-height: 40px !important;
  padding: 0 14px !important;

  border: 1px solid rgba(0,0,0,.45) !important;  /* visible black/grey border */
  border-radius: 8px !important;                 /* boxed corners */
  background: #fff !important;                   /* no gold by default */
  color: inherit !important;

  font: 500 14px/1 var(--font-body-family, system-ui) !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Unified hover/active */
.ahrin-list-grid .ahrin-grid-card__actions button:hover,
.ahrin-list-grid .ahrin-grid-card__actions .button:hover,
.ahrin-list-grid .ahrin-grid-card__actions .ahrin-mini-add:hover,
.ahrin-list-grid .ahrin-grid-card__actions .ahrin-remove:hover{
  background: #f6f6f6 !important;
  color: inherit !important;
}

/* Unified focus ring (boxed) */
.ahrin-list-grid .ahrin-grid-card__actions button:focus-visible,
.ahrin-list-grid .ahrin-grid-card__actions .button:focus-visible,
.ahrin-list-grid .ahrin-grid-card__actions .ahrin-mini-add:focus-visible,
.ahrin-list-grid .ahrin-grid-card__actions .ahrin-remove:focus-visible{
  box-shadow: 0 0 0 3px rgba(0,0,0,.25) !important;
  border-radius: 8px !important;
}

/* 2) Bulk bar buttons (top of page) */
.ahrin-bulkbar .button{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 40px !important;
  min-height: 40px !important;
  padding: 0 16px !important;

  border: 1px solid rgba(0,0,0,.45) !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: inherit !important;

  font: 500 14px/1 var(--font-body-family, system-ui) !important;
  box-shadow: none !important;
  outline: 0 !important;
}
.ahrin-bulkbar .button:hover{
  background: #f6f6f6 !important;
}
.ahrin-bulkbar .button:focus-visible{
  box-shadow: 0 0 0 3px rgba(0,0,0,.25) !important;
  border-radius: 8px !important;
}

/* 3) Defensive: stop any nested span from adding its own halo */
.ahrin-list-grid .button *,
.ahrin-bulkbar .button *{
  box-shadow: none !important;
}


/* Buttons (global) + Focus ring */
.button, .button--primary, button.shopify-payment-button__button{
  border-radius: 999px !important;
  border: 1.5px solid var(--ahrin-gold);
  background: rgba(255,255,255,.88);
  color: var(--ahrin-ink);
  backdrop-filter: saturate(1.2) blur(1px);
}












/* ============================================================
   AHRIN — Wishlist & Compare buttons: make them IDENTICAL
   Applies to:
     - Bulk bar buttons (Add all to cart / Remove all)
     - Per-card buttons (Add to cart / Remove)
   Kills any leftover pill radius, light grey borders, inner outlines, etc.
   ============================================================ */

.ahrin-bulkbar .button,
.ahrin-list-grid .button,
.ahrin-grid-card__actions .button,
.ahrin-grid-card__actions [class*="button"],
.ahrin-grid-card__actions .ahrin-mini-add,
.ahrin-grid-card__actions .ahrin-add {
  /* shape & size */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 40px !important;
  padding: 0 16px !important;
  border-radius: 8px !important;

  /* border & colors */
  border: 1px solid #111 !important;          /* unify border darkness */
  background: #fff !important;
  color: #111 !important;

  /* text */
  font: 600 14px/1 var(--font-body-family, system-ui) !important;
  letter-spacing: .01em !important;

  /* remove theme “block” look */
  outline: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

/* Kill any inner outline/halo many themes add with pseudo-elements */
.ahrin-bulkbar .button::before,
.ahrin-bulkbar .button::after,
.ahrin-list-grid .button::before,
.ahrin-list-grid .button::after,
.ahrin-grid-card__actions .button::before,
.ahrin-grid-card__actions .button::after,
.ahrin-grid-card__actions [class*="button"]::before,
.ahrin-grid-card__actions [class*="button"]::after {
  content: none !important;
}

/* Hover/active match */
.ahrin-bulkbar .button:hover,
.ahrin-list-grid .button:hover,
.ahrin-grid-card__actions .button:hover,
.ahrin-grid-card__actions [class*="button"]:hover,
.ahrin-grid-card__actions .ahrin-mini-add:hover,
.ahrin-grid-card__actions .ahrin-add:hover {
  background: #f7f7f7 !important;
}

.ahrin-bulkbar .button:active,
.ahrin-list-grid .button:active,
.ahrin-grid-card__actions .button:active,
.ahrin-grid-card__actions [class*="button"]:active,
.ahrin-grid-card__actions .ahrin-mini-add:active,
.ahrin-grid-card__actions .ahrin-add:active {
  transform: translateY(1px) !important;
}

/* Defensive: if theme marks Remove as “secondary”, still force it */
.ahrin-grid-card__actions .button--secondary,
.ahrin-bulkbar .button--secondary {
  border-color: #111 !important;
  background: #fff !important;
  color: #111 !important;
  border-radius: 8px !important;
  min-height: 40px !important;
  padding: 0 16px !important;
}




/* AHRIN — Make "Add to cart" match the "Remove" pill on Wishlist + Compare */

/* Per-card buttons inside each wishlist/compare card */
.ahrin-grid-card__actions .button,
.ahrin-grid-card__actions button {
  /* same pill box */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;

  height: 38px !important;               /* match Remove’s smaller height */
  padding: 0 14px !important;             /* compact like Remove */
  border-radius: 999px !important;        /* pill corners */

  /* same subtle “ghost” look */
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  color: #1f1f1f !important;

  /* kill any extra Dawn/app outline/inner shadow */
  box-shadow: none !important;
  outline: none !important;

  /* typography */
  font: 500 14px/1 var(--font-body-family, system-ui) !important;
}

/* Hover – same for both */
.ahrin-grid-card__actions .button:hover,
.ahrin-grid-card__actions button:hover {
  background: #f6f6f6 !important;
}

/* (Optional) make the top bulk buttons match too */
.ahrin-bulkbar .button,
.ahrin-list__controls .button{
  height: 38px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  color: #1f1f1f !important;
  box-shadow: none !important;
}
.ahrin-bulkbar .button:hover,
.ahrin-list__controls .button:hover{ background:#f6f6f6 !important; }

/* =========================================
   AHRIN — Wishlist & Compare grid polish
   (tight spacing, aligned titles/prices, contained images)
   ========================================= */

/* Scope to our ARIN list grids (covers both Wishlist + Compare) */
[data-ahrin-list] .ahrin-grid-card{
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 0 0 1px rgba(0,0,0,.06);
  background: #fff;
}

/* Media: keep images fully visible and centered */
[data-ahrin-list] .ahrin-grid-card .media,
[data-ahrin-list] .ahrin-grid-card__media{
  background: #fff;
  padding: 6px;
  box-shadow: inset 0 0 0 1px rgba(201,167,102,.18);
  border-radius: 12px;
}
[data-ahrin-list] .ahrin-grid-card img{
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center center !important;
  aspect-ratio: 1 / 1;                 /* square canvas so rows align */
}

/* Card body: consistent internal spacing */
[data-ahrin-list] .ahrin-grid-card__body{
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 14px 14px;
}

/* Titles: 2-line clamp so rows stay even */
[data-ahrin-list] .ahrin-grid-card__title,
[data-ahrin-list] .ahrin-grid-card__title a{
  font-size: clamp(.98rem, .94rem + .25vw, 1.06rem);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;          /* max 2 lines */
  overflow: hidden;
  min-height: calc(1.3em * 2);    /* reserve height for 2 lines */
  margin: 0 0 2px 0;
}

/* Price block: sits just above the buttons; same size everywhere */
[data-ahrin-list] .ahrin-grid-card__price{
  font-size: 0.95rem;
  line-height: 1.2;
  margin-top: auto;               /* push price down so titles align */
}

/* Actions row: matched sizing & gaps */
[data-ahrin-list] .ahrin-grid-card__actions{
  display: flex;
  gap: 10px;
  margin-top: 8px;
}

/* Make both "Add to cart" and "Remove" look/size the same */
[data-ahrin-list] .ahrin-grid-card__actions .button,
[data-ahrin-list] .ahrin-grid-card__actions .button--secondary,
[data-ahrin-list] .ahrin-grid-card__actions .button--tertiary,
[data-ahrin-list] .ahrin-grid-card__actions .ahrin-mini-add,
[data-ahrin-list] .ahrin-grid-card__actions .ahrin-remove,
[data-ahrin-list] .ahrin-grid-card__actions button{
  height: 40px;
  padding: 0 16px;
  border-radius: 8px;               /* rectangular with soft corners */
  border: 1px solid rgba(0,0,0,.22);/* same subtle border on both */
  background: #fff;
  color: var(--ahrin-ink, #222);
  font-weight: 500;
  letter-spacing: .02em;
}
[data-ahrin-list] .ahrin-grid-card__actions .button:hover,
[data-ahrin-list] .ahrin-grid-card__actions button:hover{
  background: #f7f7f7;
  border-color: rgba(0,0,0,.30);
}

/* Top controls bar spacing (“Add all to cart” / “Remove all”) */
[data-ahrin-list] .ahrin-list__controls{
  display: flex;
  gap: 12px;
  margin: 0 0 16px;
}
[data-ahrin-list] .ahrin-list__controls .button{
  height: 40px;
  padding: 0 16px;
  border-radius: 8px;
}

/* Mobile tweaks */
@media (max-width: 749px){
  [data-ahrin-list] .ahrin-grid-card__body{ gap: 6px; padding: 10px 12px 12px; }
  [data-ahrin-list] .ahrin-grid-card__actions{ gap: 8px; }
  [data-ahrin-list] .ahrin-grid-card__actions .button,
  [data-ahrin-list] .ahrin-grid-card__actions button{
    flex: 1 1 auto;                   /* both buttons same width on phones */
  }
}



.cart-policy-notes{background:#fffaf0;border:1px solid #eadfbe;border-radius:12px;padding:14px 16px;margin:18px 0 8px;font-size:14px;line-height:1.55}
.cart-policy-notes ul{list-style:none;margin:0;padding:0}
.cart-policy-notes li{display:flex;gap:8px;margin:.4rem 0}
.cart-policy-notes li:before{content:"✓";font-weight:700;color:var(--ahrin-gold,#c9a227)}
.cart-policy-notes a{text-decoration:underline}
@media(max-width:480px){.cart-policy-notes{font-size:13.5px;padding:12px 14px}}



/* PDP mini shipping notice */
.pdp-policy-mini {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 5px;
  color: #5b564f;
}

.pdp-policy-mini ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pdp-policy-mini li {
  display: flex;
  gap: 6px;
  margin: 4px 0;
}

.pdp-policy-mini li:before {
  content: "✓";
  font-weight: 700;
  color: var(--ahrin-gold, #c9a227);
}

.pdp-policy-mini a {
  text-decoration: underline;
  color: inherit;
}












/* === AH-RIN · Global Gold-Outline Buttons === */
:root{
  --ahrin-gold: #b59a6a;     /* refined gold */
  --ahrin-ink:  #2b261b;     /* deep ink text */
  --ahrin-pearl:#f7f3ea;     /* soft pearl base */
}

/* Base buttons across the site */
.button,
.button--primary,
.button--secondary,
.shopify-challenge__button,
.customer button,
.pagination__item--next,
.pagination__item--prev,
.product-form__submit,
.cart__checkout-button,
.shopify-payment-button__button--unbranded {
  background: transparent;
  color: var(--ahrin-gold);
  border: 1.6px solid var(--ahrin-gold);
  border-radius: 9999px;               /* pill */
  padding: .6rem 1.2rem;
  letter-spacing: .02em;
  font-weight: 500;
  transition: all .18s ease-in-out;
  box-shadow: none;
}

/* Hover / focus */
.button:hover,
.button:focus,
.button--primary:hover,
.button--secondary:hover,
.product-form__submit:hover,
.cart__checkout-button:hover,
.shopify-payment-button__button--unbranded:hover {
  background: var(--ahrin-gold);
  color: #fff;
  box-shadow: 0 6px 16px rgba(181,154,106,.28);
  transform: translateY(-1px);
}

/* Disabled states stay readable */
.button[disabled],
.product-form__submit[disabled]{
  opacity:.55;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}

/* Mobile touch target */
@media (max-width: 640px){
  .button,
  .product-form__submit{
    padding: .65rem 1rem;
    font-size: .95rem;
  }
}










@media (max-width: 767px) {
  #shopify-section-announcement-bar .announcement-bar__message {
    font-size: 14px;
    padding-top: 2px;
  }
}























@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&display=swap');









/* AH-RIN — Announcement Bar Font */
.announcement-bar__message,
.announcement-bar,
.announcement,
.announcement__message {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 600;
  letter-spacing: 0.4px;
}

/* Mobile refinement */
@media (max-width: 750px) {
  .announcement-bar__message,
  .announcement-bar,
  .announcement,
  .announcement__message {
    font-size: 20px !important;
    line-height: 1.1;
  }
}















/* AH-RIN — Global Font System */
body,
html,
button,
input,
select,
textarea {
  font-family: "Pretendard", sans-serif !important;
}

/* Headlines — Slightly heavier */
h1, h2, h3, h4, h5, h6 {
  font-family: "Pretendard", sans-serif !important;
  font-weight: 600;
  letter-spacing: 0.2px;
}

/* Announcement bar */
.announcement-bar,
.announcement-bar__message,
.announcement__message {
  font-family: "Pretendard", sans-serif !important;
  font-weight: 600;
  letter-spacing: 0.4px;
}

/* Buttons — clean luxury */
button,
.button,
.shopify-payment-button__button {
  font-family: "Pretendard", sans-serif !important;
  font-weight: 500;
}







@media (max-width: 750px) {
  .announcement-bar__message {
    font-size: 14.5px !important;
  }

  h1 {
    font-size: 1.85rem !important;
    line-height: 1.2 !important;
  }
}










/* =========================================================
   AH-RIN — MOBILE NAV POLISH (Dawn-based)
   Requirements: Sticky header ON in Theme settings
   Font: Pretendard already imported above
   ========================================================= */

/* ---------- Header bar (phones ≤ 749px) ---------- */
@media (max-width: 749px){
  .section-header .header.page-width{
    padding-left: 12px !important;
    padding-right: 12px !important;
    column-gap: .35rem !important;
    grid-template-columns: auto 1fr auto !important; /* menu | logo | icons */
  }

  /* Logo sizing: crisp but not overpowering */
  .header__heading-link{ padding: 6px !important; }
  .header__heading-logo{ height: 28px !important; max-height: 28px !important; width: auto !important; }

  /* Icon tap targets */
  .header__icon{ width: 44px !important; height: 44px !important; border-radius: 999px; }
  .header__icons{ gap: 2px !important; padding-right: 4px !important; }
  .header__icon:hover{ background: rgba(0,0,0,.05); }
}

/* Sticky shadow only AFTER the header sticks */
.shopify-section-header-sticky .header,
.shopify-section-header-hidden .header{
  box-shadow: 0 2px 10px rgba(0,0,0,.06) !important;
  background: #fff !important;
}



















/* ---------- Drawer (hamburger menu) ---------- */
.menu-drawer{ border-radius: 14px 0 0 14px; box-shadow: -12px 0 28px rgba(0,0,0,.12); }
.menu-drawer__inner{ padding-top: 6px !important; }

.menu-drawer__menu .list-menu__item,
.menu-drawer__menu summary.list-menu__item{
  padding: 12px 16px !important;
  font: 500 15px/1.25 Pretendard, system-ui;
  letter-spacing: .02em;
}
.menu-drawer__menu details[open] > summary{ background: #faf9f6; }

/* Clear dividers for scan-ability */
.menu-drawer__menu .list-menu__item{ border-bottom: 1px solid rgba(0,0,0,.06); }
.menu-drawer__menu > li:last-child .list-menu__item{ border-bottom: 0; }

/* Submenu indentation + larger chevrons */
.menu-drawer__menu .list-menu__item .icon-caret,
.menu-drawer__menu summary .icon-caret{
  transform: scale(1.15);
}
.menu-drawer__menu details .list-menu--sub{ padding-left: 10px; }
.menu-drawer__menu .list-menu--sub .list-menu__item{ padding: 10px 16px !important; font-size: 14.5px; }

/* Improve hit-area for summary rows */
.menu-drawer__menu summary.list-menu__item{ -webkit-tap-highlight-color: transparent; }

/* ---------- Mobile search: full-width overlay feel ---------- */
@media (max-width: 749px){
  .header .predictive-search{
    position: fixed !important; left: 0; right: 0; top: var(--header-bottom-position, 56px);
    background: #fff; border-bottom: 1px solid rgba(0,0,0,.06);
    z-index: 50;
  }
  .header .search__input.field__input{
    height: 44px !important; font-size: 16px !important;
    border-radius: 999px !important; padding: 0 14px !important;
  }
  .header .search__button{ width: 44px; height: 44px; }
}

/* ---------- Accessibility & micro-polish ---------- */
.header__icon:focus-visible,
.menu-drawer__menu .list-menu__item:focus-visible,
.menu-drawer__menu summary:focus-visible{
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(181,154,106,.35) inset !important;
  border-radius: 10px;
}

/* Prevent layout shift on sticky toggle */
.section-header{ will-change: transform; backface-visibility: hidden; }

/* iOS rubber-banding: keep drawer smooth */
.menu-drawer__navigation{ overscroll-behavior: contain; }











/* AH-RIN — Force sticky header on mobile (works across Dawn variants) */
@media (max-width: 749px){
  .section-header{
    position: -webkit-sticky; /* iOS */
    position: sticky;
    top: 0;
    z-index: 60;               /* above page content & drawer overlay */
    background: #fff;          /* solid background so it doesn't ghost */
  }

  /* Soft divider so it feels anchored */
  .header{ box-shadow: 0 1px 0 rgba(0,0,0,.06); }
}

/* Keep announcement bar above, header below (in case both are sticky) */
#shopify-section-announcement-bar{ z-index: 70; }
.section-header{ z-index: 60; }













/* AH-RIN — Mobile header icon polish */
@media (max-width: 749px) {
  .header__icon,
  .header__icon--cart {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Icon size slightly bigger */
  .header__icon svg,
  .header__icon--cart svg {
    width: 22px !important;
    height: 22px !important;
  }

  /* Softer hover */
  .header__icon:hover,
  .header__icon--cart:hover {
    background: rgba(0,0,0,0.04);
  }
}


/* AH-RIN — Mobile nav: Pretendard type + tidy chevrons */
@media (max-width: 749px){
  /* Base link style (luxury, readable) */
  .menu-drawer__menu a,
  .menu-drawer__menu button,
  .menu-drawer__menu summary{
    font-family: "Pretendard", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: .02em !important;
    color: var(--ahrin-ink, #2b261b) !important;
    text-decoration: none !important;
    line-height: 1.25 !important;
  }

  /* Current/active look (subtle) */
  .menu-drawer__menu .list-menu__item[aria-current="page"],
  .menu-drawer__menu .list-menu__item[aria-current="true"],
  .menu-drawer__menu .list-menu__item[aria-current="active"]{
    font-weight: 600 !important;
    color: color-mix(in oklab, var(--ahrin-ink) 88%, #000 12%) !important;
  }

  /* Larger tap targets */
  .menu-drawer__menu .list-menu__item{
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
    padding: 12px 12px !important;
    border-radius: 10px !important;
  }

  /* Divider rhythm without heavy lines */
  .menu-drawer__menu .list-menu__item + .list-menu__item{
    margin-top: 2px !important;
  }

  /* --- Clean chevrons for items with children (Dawn uses <details><summary>) --- */
  .menu-drawer__menu details > summary.list-menu__item{
    position: relative !important;
    padding-right: 32px !important;      /* space for chevron */
  }
  .menu-drawer__menu details > summary.list-menu__item::after{
    content: "›";                         /* simple, crisp chevron */
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
    font-size: 18px;
    line-height: 1;
    color: rgba(0,0,0,.55);
  }
  .menu-drawer__menu details[open] > summary.list-menu__item::after{
    transform: translateY(-50%) rotate(90deg); /* points down when open */
    color: rgba(0,0,0,.65);
  }

  /* Submenu list: soft indent */
  .menu-drawer__menu details .list-menu{
    padding-left: 8px !important;
    margin-left: 6px !important;
    border-left: 1px solid rgba(201,167,102,.20);
  }
  .menu-drawer__menu details .list-menu .list-menu__item{
    padding-left: 10px !important;
  }

  /* Hover/press feedback */
  .menu-drawer__menu .list-menu__item:hover{
    background: rgba(0,0,0,.04) !important;
  }
  .menu-drawer__menu .list-menu__item:active{
    background: rgba(0,0,0,.06) !important;
    transform: translateY(0); /* keep stable */
  }

  /* Remove default disclosure triangles if any theme shows them */
  .menu-drawer__menu summary::-webkit-details-marker{ display:none; }
}





/* AH-RIN — Mobile header row: compact, crisp, sticky-safe */
@media (max-width: 749px){
  /* 1) Tighten the header container without hurting tap targets */
  .section-header .header.page-width{
    padding-left: 12px !important;
    padding-right: 12px !important;
    column-gap: 6px !important;
    grid-template-columns: auto 1fr auto !important; /* menu • logo • icons */
    align-items: center !important;
    min-height: 56px !important; /* stable height to prevent layout jump */
  }

  /* 2) Logo: keep elegant but not oversized */
  .header__heading-link{ padding: 6px !important; }
  .header__heading-logo{
    height: 28px !important;     /* try 30–32px if you want bigger */
    max-height: 28px !important;
    width: auto !important;
  }

  /* 3) Menu (hamburger) + icon cluster spacing & tap size */
  .header__icons{
    gap: 2px !important;
    padding-right: 6px !important;
  }
  .header__icon{
    width: 44px !important;
    height: 44px !important;
    border-radius: 999px !important;
  }
  /* subtle hover */
  .header__icon:hover{ background: rgba(0,0,0,.04) !important; }

  /* 4) Remove heavy bottom rule; use ultra-light hairline */
  .header, .shopify-section-header-sticky{
    box-shadow: 0 1px 0 rgba(0,0,0,.05) !important;
    border-bottom: 0 !important;
  }

  /* 5) Sticky header: glassy background + shadow when stuck */
  /* Dawn 2025 uses a sticky wrapper on scroll; cover common variants */
  .shopify-section-header-sticky .header,
  .section-header.is-sticky .header,
  .shopify-section-header-sticky.is-sticky .header{
    background: rgba(255,255,255,.86) !important;
    backdrop-filter: saturate(1.1) blur(6px);
    -webkit-backdrop-filter: saturate(1.1) blur(6px);
    box-shadow: 0 6px 18px rgba(0,0,0,.07) !important;
  }

  /* 6) Keep header above drawers/overlays just in case */
  .shopify-section-header-sticky,
  .section-header{ z-index: 40 !important; }
}

/* Fallback: if theme uses .header-wrapper for the sticky state */
@media (max-width: 749px){
  .shopify-section-header-sticky .header-wrapper,
  .section-header.is-sticky .header-wrapper{
    background: rgba(255,255,255,.86) !important;
    backdrop-filter: saturate(1.1) blur(6px);
    -webkit-backdrop-filter: saturate(1.1) blur(6px);
    box-shadow: 0 6px 18px rgba(0,0,0,.07) !important;
  }
}





/* AH-RIN — Mobile menu drawer polish (Dawn 2025 compatible) */
:root{ --ahrin-header-h: 56px; }  /* keep in sync with Step 4 */

@media (max-width: 749px){
  /* 1) Drawer sits neatly under the sticky header */
  .menu-drawer{
    top: var(--ahrin-header-h) !important;
    height: calc(100vh - var(--ahrin-header-h)) !important;
  }
  /* If theme uses a wrapper element for the panel */
  .menu-drawer__inner{
    height: 100% !important;
    padding-top: 6px !important;
  }

  /* 2) Softer overlay so header glass still feels present */
  .menu-drawer__overlay{
    background: rgba(0,0,0,.42) !important;
    backdrop-filter: blur(2px);
  }

  /* 3) Clean list spacing + 44px tap targets */
  .menu-drawer__menu .list-menu__item{
    padding: 12px 14px !important;
    min-height: 44px !important;
    line-height: 1.15 !important;
  }
  .menu-drawer__menu a,
  .menu-drawer__menu summary{
    font-size: 15px !important;
    letter-spacing: .02em !important;
  }

  /* 4) Section headers / first level look luxe but minimal */
  .menu-drawer__menu > .list-menu > li > a,
  .menu-drawer__menu > .list-menu > li > summary{
    font-weight: 600 !important;
  }

  /* 5) Submenus slide-in full height under the header too */
  .menu-drawer__submenu{
    top: 0 !important;                 /* already offset by parent .menu-drawer */
    height: 100% !important;
  }

  /* 6) Divider hairlines: subtle, consistent */
  .menu-drawer__menu .list-menu__item + .list-menu__item{
    border-top: 1px solid rgba(0,0,0,.06) !important;
  }

  /* 7) Expand/collapse affordance spacing */
  .menu-drawer__menu details[open] > summary{
    background: rgba(0,0,0,.02) !important;
  }

  /* 8) Close button: reachable, consistent size */
  .menu-drawer__close-button,
  .menu-drawer__close{
    width: 44px !important;
    height: 44px !important;
    border-radius: 999px !important;
    margin: 6px 6px 0 auto !important;
  }
  .menu-drawer__close-button:hover{ background: rgba(0,0,0,.04) !important; }

  /* 9) Optional: compact “utility links” (login, cart, etc.) at bottom */
  .menu-drawer__utility-links{
    padding: 8px 12px !important;
    border-top: 1px solid rgba(0,0,0,.06);
  }
  .menu-drawer__utility-links a{
    min-height: 40px !important;
    display: flex; align-items: center;
    gap: 8px;
  }

  /* 10) Optional: drawer search input, if present */
  .menu-drawer .search__input,
  .menu-drawer .field__input{
    border-radius: 10px !important;
    border: 1px solid rgba(0,0,0,.18) !important;
    min-height: 40px !important;
    padding: 10px 12px !important;
  }
}

/* Fallback for themes that wrap header with sticky class */
@media (max-width: 749px){
  .section-header.is-sticky + .menu-drawer,
  .shopify-section-header-sticky.is-sticky + .menu-drawer{
    top: var(--ahrin-header-h) !important;
    height: calc(100vh - var(--ahrin-header-h)) !important;
  }
}






/* AH-RIN — Mobile header icons + cart badge (Dawn 2025 compatible) */
:root{ --ahrin-header-h: 56px; }

@media (max-width: 749px){
  /* 1) Keep icons compact but 44px tappable */
  .header__icons{
    display: grid !important;
    grid-auto-flow: column !important;
    gap: 4px !important;
    align-items: center !important;
  }
  .header__icon{
    width: 44px !important;
    height: 44px !important;
    border-radius: 999px !important;
    display: inline-grid !important;
    place-items: center !important;
  }
  .header__icon:hover{ background: rgba(0,0,0,.04); }

  /* 2) Normalize icon SVG sizing (prevents jitter across apps) */
  .header__icon svg{
    width: 22px !important;
    height: 22px !important;
    display: block !important;
  }

  /* 3) Cart count bubble: small gold pill, top-right, no layout shift */
  .cart-count-bubble,
  .header__icon--cart .cart-count-bubble{
    position: absolute !important;
    top: 4px !important;
    right: 4px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    border-radius: 999px !important;
    background: var(--ahrin-gold, #b59a6a) !important;
    color: #fff !important;
    font: 700 11px/18px Pretendard, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Apple Color Emoji","Segoe UI Emoji" !important;
    text-align: center !important;
    pointer-events: none !important;
    transform: translate(0,0); /* no shift */
    box-shadow: 0 2px 6px rgba(0,0,0,.14);
  }
  .cart-count-bubble:empty{ display: none !important; }

  /* Dawn sometimes nests count in <span aria-hidden> — keep centered */
  .cart-count-bubble > *{
    display: inline !important;
    line-height: 18px !important;
  }

  /* 4) Subtle “pop” when count changes (CSS only) */
  .header__icon--cart .cart-count-bubble{
    animation: ahrinCountPop .24s ease;
  }
  @keyframes ahrinCountPop{
    0%{ transform: scale(.85); opacity: .6; }
    100%{ transform: scale(1); opacity: 1; }
  }

  /* 5) Keep header row tight and vertically centered with sticky height */
  .section-header .header{
    min-height: var(--ahrin-header-h) !important;
  }
}

/* Optional: match desktop bubble aesthetic too (keeps it consistent) */
@media (min-width: 750px){
  .header__icon--cart .cart-count-bubble{
    background: var(--ahrin-gold, #b59a6a) !important;
    color:#fff !important;
    box-shadow: 0 2px 6px rgba(0,0,0,.14);
  }
}








/* AH-RIN — Mobile header logo/text sizing & no-wrap */
@media (max-width: 749px){
  /* If your header shows TEXT (not an image) for the logo */
  .header__heading-link {
    font-family: var(--font-heading-family, "Pretendard", system-ui) !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    white-space: nowrap !important;         /* keep on one line */
    font-size: clamp(14px, 3.2vw, 18px) !important;  /* scale down on small screens */
    line-height: 1.05 !important;
  }

  /* Tighten header grid so it all fits without wrapping */
  .header {
    grid-template-columns: auto 1fr auto !important;  /* menu | brand | icons */
    column-gap: .35rem !important;
  }

  /* If you use an IMAGE logo, cap its height (safe) */
  .header__heading-logo {
    max-height: 28px !important;
    height: 28px !important;
    width: auto !important;
  }

  /* Keep icon cluster tidy */
  .header__icons { gap: 2px !important; padding-right: .4rem !important; }
  .header__icon { width: 44px !important; height: 44px !important; }
}











/* AH-RIN — Mobile drawer menu polish */
@media (max-width: 749px){
  .menu-drawer{ border-radius: 14px 0 0 14px; box-shadow: 0 12px 36px rgba(0,0,0,.12); }
  .menu-drawer__menu,
  .menu-drawer .list-menu{
    font-family: "Pretendard", system-ui !important;
    font-weight: 500;
    letter-spacing: .02em;
  }
  .menu-drawer .list-menu__item,
  .menu-drawer summary.list-menu__item{
    padding: 0.8rem 1rem !important;       /* comfy 44px+ */
    border-bottom: 1px solid rgba(0,0,0,.06);
  }
  .menu-drawer details[open] > summary{ background: #faf9f6; }
  .menu-drawer .list-menu__item:hover{ background: #fafaf8; }
  .menu-drawer__close-button{ width: 44px; height: 44px; border-radius: 999px; }
  .menu-drawer .icon-caret{ transform: scale(1.1); opacity: .7; }
}











/* AH-RIN — Mobile header compaction */
@media (max-width: 749px){
  .section-header .header.page-width{ padding-left: 1rem; padding-right: 1rem; }
  .header{ min-height: 56px !important; }                  /* reduce bar height */
  .header__heading-link{ padding: .45rem !important; }     /* tighter brand pad */
  .header__icons{ padding-right: .4rem !important; gap: 2px !important; }
}













/* AH-RIN — Mobile footer tidy */
@media (max-width: 749px){
  .footer{ padding-top: 16px !important; padding-bottom: 16px !important; }
  .footer .grid{ row-gap: 10px !important; }
  .footer .footer-block__heading{
    font-family: "Pretendard", system-ui !important;
    font-weight: 600; letter-spacing: .02em; text-align: center;
    margin-bottom: 8px;
  }
  .footer .footer-block .list-menu,
  .footer .footer-block .list-unstyled{
    justify-content: center; flex-wrap: wrap; gap: 8px 10px;
  }
  /* auto-hide empty blocks */
  .footer .footer-block:has(.list-unstyled:empty):not(:has(form, input, textarea)),
  .footer .footer-block:has(.list-menu:empty):not(:has(form, input, textarea)),
  .footer .footer-block:has(.rte:empty){ display: none !important; }
}












/* AH-RIN — Search modal polish */
.search__input{
  font-family:"Pretendard",system-ui !important;
  font-size:16px; border-radius:12px; padding:.8rem 1rem;
}
.search-modal__content{ padding: 14px !important; }

.predictive-search{
  border-radius:14px; box-shadow:0 12px 36px rgba(0,0,0,.12);
}
.predictive-search__item{
  padding:12px !important; gap:10px; border-bottom:1px solid rgba(0,0,0,.06);
}
.predictive-search__item:hover{ background:#faf9f6; }
.predictive-search__heading{ font-weight:600; letter-spacing:.02em; }
.predictive-search__item .price{ font-weight:600; }
.predictive-search__item .predictive-search__item-content{ row-gap:2px; }



/* AH-RIN — Collection filters sticky on mobile */
@media (max-width: 749px){
  .facets-container{
    position: sticky; top: var(--header-bottom-position, 0);
    z-index: 10; background: rgb(var(--color-background));
  }
  .active-facets{ gap:8px; }
}












/* AH-RIN — PDP tidy on mobile */
@media (max-width: 749px){
  .product__title{ font-size: clamp(1.25rem,1.1rem + 2.2vw,1.6rem); line-height:1.2; }
  .product .price{ gap:.35rem; }
  .product .price__sale .price-item--sale,
  .product .price__regular .price-item--regular{ font-weight:700; }
  .product__info-container{ row-gap:10px; }
  .product-form__buttons .button{ width:100%; }
}

















/* AHRIN — Announcement bar: readable, slim pill (desktop + mobile) */
:root{
  /* tweak these knobs only */
  --annc-h-desktop: 124px;
  --annc-h-mobile:  92px;

  /* Text: use ink for max contrast (switch to #C5A769 if you really want gold) */
  --annc-text-color: #2b261b; /* #C5A769 = gold */

  /* Sizing */
  --annc-fs-desktop: clamp(22px, 2.0vw, 34px);
  --annc-fs-mobile:  clamp(15px, 4.2vw, 19px);
  --annc-pill-pad-d:  6px 18px;  /* slimmer desktop pill */
  --annc-pill-pad-m:  4px 14px;  /* slimmer mobile pill */

  /* Pill surface */
  --annc-pill-bg: rgba(255,255,252,.96);
  --annc-pill-shadow: 0 4px 10px rgba(0,0,0,.10);
  --annc-pill-blur: 2px;
}

/* Height + text */
#shopify-section-announcement-bar .announcement-bar{
  height: var(--annc-h-desktop) !important;
  display:flex; align-items:center; justify-content:center;
  background:none !important;
}
#shopify-section-announcement-bar .announcement-bar__message,
#shopify-section-announcement-bar .announcement-bar a,
#shopify-section-announcement-bar .announcement-bar p{
  position:relative !important; z-index:2 !important;
  color:var(--annc-text-color) !important;
  font-weight:700 !important;
  font-size:var(--annc-fs-desktop) !important;
  letter-spacing:.02em !important;
  padding:var(--annc-pill-pad-d) !important;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  text-shadow:0 1px 0 rgba(255,255,255,.5), 0 0 1px rgba(0,0,0,.05);
}

/* Recreate a smaller pill (wins over any old “content:none”) */
#shopify-section-announcement-bar .announcement-bar__message::before,
#shopify-section-announcement-bar .announcement-bar a::before,
#shopify-section-announcement-bar .announcement-bar p::before{
  content:"" !important;
  position:absolute !important; inset:-3px -10px !important;
  background:var(--annc-pill-bg) !important;
  border-radius:9999px !important;
  box-shadow:var(--annc-pill-shadow) !important;
  -webkit-backdrop-filter:blur(var(--annc-pill-blur));
  backdrop-filter:blur(var(--annc-pill-blur));
  z-index:-1 !important;
}

/* Mobile scaling + tighter pill */
@media (max-width: 749px){
  #shopify-section-announcement-bar .announcement-bar{
    height:var(--annc-h-mobile) !important;
  }
  #shopify-section-announcement-bar .announcement-bar__message,
  #shopify-section-announcement-bar .announcement-bar a,
  #shopify-section-announcement-bar .announcement-bar p{
    font-size:var(--annc-fs-mobile) !important;
    padding:var(--annc-pill-pad-m) !important;
    letter-spacing:.03em !important;
  }
  #shopify-section-announcement-bar .announcement-bar__message::before,
  #shopify-section-announcement-bar .announcement-bar a::before,
  #shopify-section-announcement-bar .announcement-bar p::before{
    inset:-2px -8px !important;
    background:rgba(255,255,255,.98) !important; /* extra solid on phones */
  }
}

/* If you want gold text, keep the pill light and outline the glyph slightly:
#shopify-section-announcement-bar .announcement-bar__message,
#shopify-section-announcement-bar .announcement-bar a,
#shopify-section-announcement-bar .announcement-bar p{
  -webkit-text-stroke:.25px rgba(0,0,0,.28);
}
*/









/* AH-RIN — Announcement bar: keep image, remove pill, improve contrast */
:root{
  /* mobile + desktop background assets already set above via --annc-bg-* */
  --annc-text-ink: #2b261b; /* deep ink */
}

/* 1) Remove ONLY the pill layer (don't touch the background image) */
.announcement-bar__message::before,
.announcement-bar p::before,
.announcement-bar a::before{
  content: none !important;
}

/* 2) Readable text (no pill) that stands out on pearls */
.announcement-bar__message,
.announcement-bar p,
.announcement-bar a{
  color: var(--annc-text-ink) !important;
  font-weight: 700;
  letter-spacing: .02em;
  /* subtle outline for light/dark beads behind text */
  text-shadow:
    0 1px 0 rgba(255,255,255,.55),
    0 0 10px rgba(0,0,0,.18),
    0 0 1px rgba(0,0,0,.25);
}

/* 3) Slight darkening overlay so text isn’t “drowned out” */
.announcement-bar::after{
  background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,0)) !important;
}

/* 4) Mobile: ensure the image layer is NOT disabled and uses the mobile asset */
@media (max-width: 749px){
  .announcement-bar{
    height: var(--annc-h-mobile, 96px) !important;
    justify-content: center;
  }
  .announcement-bar::before{
    background-image: var(--annc-bg-mobile) !important; /* keep bg image on phones */
    background-size: cover; background-position: center; background-repeat: no-repeat;
    content: "" !important; /* revive if a previous block killed it */
  }
}






/* AH-RIN — Announcement bar content styling (no pill, high contrast) */
:root{
  --ahrin-annc-ink: #2b261b;         /* deep ink */
  --ahrin-annc-gold: var(--ahrin-gold, #b59a6a);
}

/* Layout */
.ahrin-annc{
  display:flex; align-items:center; justify-content:center;
  gap:.8rem; flex-wrap:wrap; text-align:center;
  max-width: 96vw; margin-inline:auto;
}

/* Headline */
.ahrin-annc__title{
  font-family:"Playfair Display", serif;
  font-weight:600;
  font-size: clamp(18px, 1.9vw, 28px);
  letter-spacing:.02em;
  color: color-mix(in oklab, var(--ahrin-annc-ink) 90%, #000 10%);
  /* soft outline so it pops on light pearls */
  text-shadow:
    0 1px 0 rgba(255,255,255,.55),
    0 0 8px rgba(0,0,0,.15),
    0 0 1px rgba(0,0,0,.22);
  white-space: nowrap;              /* keep it one line in the bar */
}

/* Subline & tag (desktop only) */
.ahrin-annc__sub,
.ahrin-annc__tag{
  font-family: var(--font-body-family, "Pretendard", system-ui);
  font-weight:400;
  font-size: clamp(12px, 1.05vw, 14px);
  color: color-mix(in oklab, var(--ahrin-annc-ink) 78%, #000 22%);
  opacity:.9;
}

/* CTA — subtle, not a pill */
.ahrin-annc__cta{
  display:inline-block;
  padding: 6px 14px;
  border: 1px solid var(--ahrin-annc-gold);
  border-radius: 8px;               /* soft rectangle, not round pill */
  background: rgba(255,255,255,.55);
  color: var(--ahrin-annc-gold);
  text-decoration:none;
  font: 600 14px/1 var(--font-body-family, system-ui);
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
  backdrop-filter: saturate(1.05) blur(2px);
}
.ahrin-annc__cta:hover{ background:#fff; }

/* Mobile: keep bar compact, keep the BG image, ensure readability */
@media (max-width: 749px){
  .announcement-bar{ height: var(--annc-h-mobile, 96px) !important; }
  .announcement-bar::before{
    content:"" !important;                /* make sure image stays */
    background-image: var(--annc-bg-mobile) !important;
    background-size: cover; background-position:center;
  }
  .ahrin-annc{ gap:.5rem; }
  .ahrin-annc__title{ font-size: clamp(16px, 4.6vw, 22px); }
  .ahrin-annc__sub, .ahrin-annc__tag{ display:none; }   /* hide extras on phones */
  .ahrin-annc__cta{ padding: 6px 12px; font-size: 13px; border-radius: 6px; }
}




.brand-dock-launcher__label {
    opacity: 1 !important;
    color: #ffffff  !important;
    font-size: 14px !important;
    text-indent: 0 !important;
    display: inline-block !important;
}













/* Force "Brands" text to show on the floating brands dock button */
button.brand-dock-launcher .brand-dock-launcher__label {
  display: inline-block !important;
  opacity: 1 !important;
  color: #000000 !important;          /* or #ffffff if background is dark */
  font-size: 14px !important;
  text-indent: 0 !important;
  clip: auto !important;
  width: auto !important;
  height: auto !important;
  line-height: 1.2 !important;
}



/* AH-RIN – make the Brands label readable on the pearl */
button.brand-dock-launcher .brand-dock-launcher__label {
  position: static !important;
  display: block !important;
  opacity: 1 !important;

  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: 0.08em !important;
  text-align: center !important;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.6) !important;

  /* undo any “visually hidden” tricks */
  text-indent: 0 !important;
  clip: auto !important;
  clip-path: none !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* Slightly bigger pearl so text has room */
button.brand-dock-launcher {
  width: 80px !important;
  height: 80px !important;
}
