/** Shopify CDN: Minification failed

Line 59:16 Unexpected "{"
Line 59:25 Expected ":"
Line 67:16 Unexpected "{"
Line 67:25 Expected ":"
Line 77:18 Unexpected "{"
Line 77:27 Expected ":"

**/
button[name="checkout"],
.cart__checkout-button,
.checkout-button,
button.checkout,
a.checkout-button {
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #000000 !important;
}
/* CART COUNT BUBBLE: white circle + black number */
.header__icon .cart-count-bubble,
.header__icon .cart-count-bubble span,
.cart-count-bubble,
.cart-count-bubble span,
.cart-count-bubble__text {
  background: #ffffff !important;
  color: #000000 !important;
}

.cart-count-bubble {
  border: 1px solid #000000 !important;
}

/* If the number is an <span> inside, force it too */
.cart-count-bubble span {
  color: #000000 !important;
}
/* FORCE ADD TO CART BUTTON — white background, black text */
button[name="add"],
.product-form__submit,
button.product-form__submit,
.product-form__buttons button {
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #000000 !important;
}

/* FORCE VIEW CART BUTTON — white background, black text */
a[href="/cart"],
.cart__checkout-button--secondary,
.cart-drawer__footer a,
.cart-drawer__footer .button,
a.button--secondary {
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #000000 !important;
}
/* make images behave like your normal cards */
#bbb-pair-save-{{ section.id }} .favorite-card-image-link {
  display: block;
  width: 100%;
  overflow: hidden;
  border-radius: 16px; /* adjust if your cards already round */
}

/* consistent image frame */
#bbb-pair-save-{{ section.id }} .favorite-card-img {
  display: block;
  width: 100%;
  height: 260px;              /* desktop card image height */
  object-fit: cover;          /* THIS is the fix */
  object-position: center;
}

/* mobile: a little taller so it feels lush */
@media (max-width: 820px) {
  #bbb-pair-save-{{ section.id }} .favorite-card-img {
    height: 300px;
  }
}
/* bybookishbabe — collection "choose options" button */
.collection .button,
.collection .button--secondary,
.collection .card__information .button {
  background-color: #000 !important;
  color: #fff !important;
  border: 1px solid #fff !important;
  border-radius: 999px; /* soft pill shape */
  font-weight: 500;
  letter-spacing: 0.04em;
  transition: all 0.15s ease;
}

/* Hover / focus */
.collection .button:hover,
.collection .button--secondary:hover,
.collection .card__information .button:hover {
  background-color: #111 !important;
  transform: translateY(-1px);
}

/* Keep accessibility clean */
.collection .button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}
.collection .button {
  font-size: 13px;
  padding: 10px 16px;
  text-transform: lowercase;
}

/* black background stays */
.bbb-threads{
  background: #0b0b0b; /* or whatever your site black is */
}

/* inner wrapper stays transparent so black shows */
.bbb-threads__inner{
  background: transparent;
}

/* labels + headings on black */
.bbb-threads__label{
  color: rgba(246,246,246,.55);
}

.bbb-threads__title{
  color: #ffffff;
}

.bbb-threads__sub{
  color: rgba(246,246,246,.70);
}

/* THREAD CARDS = WHITE */
.bbb-thread-card{
  background: #ffffff;
  color: #111;
  border: 1px solid rgba(17,17,17,.12);
  box-shadow: 0 14px 36px rgba(0,0,0,.35);
}

/* active card (slightly elevated, still white) */
.bbb-thread-card.is-active{
  background: #ffffff;
  border-color: rgba(17,17,17,.22);
  box-shadow: 0 18px 44px rgba(0,0,0,.45);
}

/* card text */
.bbb-thread-card__body{
  color: rgba(17,17,17,.88);
}
/* ==========================================
  BLACK + WHITE OVERRIDES (no more cream)
  paste at the VERY BOTTOM of your css
========================================== */

/* global: stop any soft beige/cream showing in your custom sections */
:root{
  --bbb-paper:#ffffff;
  --bbb-ink:#111111;
}

/* SECTION 2 — NEW THIS MONTH */
.new-month-card{
  background: var(--bbb-paper) !important;
  color: var(--bbb-ink) !important;
  border-color: var(--bbb-ink) !important;

  /* keep ruled lines but make them crisp */
  background-image: linear-gradient(
    to bottom,
    rgba(0,0,0,0.06) 1px,
    transparent 1px
  ) !important;
}

.new-month-catalog,
.new-month-edition-label,
.new-month-subtitle{
  color: rgba(0,0,0,0.65) !important;
}

.new-detail-line{
  color: rgba(0,0,0,0.85) !important;
}

.new-month-button{
  background:#111 !important;
  color:#fff !important;
  border-color:#111 !important;
}
.new-month-button:hover{
  background:#fff !important;
  color:#111 !important;
}

/* SECTION 3 — READER FAVORITES */
.favorite-card-inner{
  background: var(--bbb-paper) !important;
  color: var(--bbb-ink) !important;
  border-color: var(--bbb-ink) !important;
}

.favorite-card-content{
  background-image: linear-gradient(to bottom, rgba(0,0,0,0.05) 1px, transparent 1px) !important;
}

.favorite-card-meta{
  color: rgba(0,0,0,0.65) !important;
}

.favorite-card-select{
  background:#fff !important;
  color:#111 !important;
  border-color:#111 !important;
}

/* SECTION 4 — SOCIETY CARD (membership block) */
.society-card{
  background: var(--bbb-paper) !important;
  color: var(--bbb-ink) !important;
  border-color: var(--bbb-ink) !important;

  background-image: linear-gradient(
    to bottom,
    rgba(0,0,0,0.06) 1px,
    transparent 1px
  ) !important;
}

/* hole punch: remove beige tones */
.society-hole{
  box-shadow: 0 0 0 3px #fff !important;
  background: radial-gradient(circle, #e9e9e9 0, #ffffff 55%, #d6d6d6 100%) !important;
}

.society-title{ color:#111 !important; }
.society-subtitle{ color: rgba(0,0,0,0.72) !important; }
.society-row-label{ color: rgba(0,0,0,0.55) !important; }
.society-row-value{ color: rgba(0,0,0,0.85) !important; }

.society-btn-main{
  background:#111 !important;
  color:#fff !important;
  border-color:#111 !important;
}
.society-btn-main:hover{
  background:#fff !important;
  color:#111 !important;
}

.society-archive-link{ color:#111 !important; }
.society-footnote{ color: rgba(0,0,0,0.6) !important; }

/* CONNECT CARDS — remove the cream variable entirely */
.bbb-connect-cards{
  --cream:#ffffff !important; /* override your internal var */
  --ink:#111111 !important;
  color:#fff !important;      /* section text stays white on black */
}

.libcard__paper{
  background:#fff !important;
  border-color:#111 !important;

  background-image:
    repeating-linear-gradient(
      to bottom,
      rgba(0,0,0,0.06) 0,
      rgba(0,0,0,0.06) 1px,
      transparent 1px,
      transparent 28px
    ) !important;
}

.libcard__stamp{
  color:#111 !important;
  border-color: rgba(0,0,0,.85) !important;
  background: rgba(0,0,0,.04) !important;
}

.libcard__platform,
.libcard__cta,
.libcard__row{
  color:#111 !important;
}

/* THREADS — keep black background, force white cards */
.bbb-threads{
  background:#000 !important;
  color:#fff !important;
}

.bbb-thread-card{
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.18) !important;
}

.bbb-thread-card__body{
  color: rgba(0,0,0,.88) !important;
}

/* REMOVE FLORAL BACKGROUND — LET'S CONNECT */

.lets-connect,
.bbb-connect,
.bbb-connect-section{
  background-image: none !important;
  background: #000 !important; /* or transparent if it sits on black already */
}

/* if the floral is injected via ::before or ::after */
.lets-connect::before,
.lets-connect::after,
.bbb-connect::before,
.bbb-connect::after{
  content: none !important;
  display: none !important;
}

/* if it's an inner wrapper */
.lets-connect *{
  background-image: none !important;
}
/* =========================
   HERO BUTTON HIERARCHY
   pink = society (primary)
   shop = quiet secondary
========================= */

/* shared button polish (keeps them aligned + premium) */
.hero-buttons a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
  transition: all .25s ease;
}

/* SHOP — quieter, editorial */
.hero-buttons .btn-primary{
  background: transparent;
  color: #fff;
  border: 2px solid rgba(255,255,255,.65);
}

.hero-buttons .btn-primary:hover{
  background: #fff;
  color: #111;
  border-color: #fff;
}

/* SOCIETY — pink, primary */
.hero-buttons .btn-secondary{
  background: #f3a7b7; /* your society pink */
  color: #111;
  border: 2px solid #f3a7b7;
  box-shadow: 0 10px 28px rgba(243,167,183,.35);
  position: relative;
}

/* hover feels intentional, not flashy */
.hero-buttons .btn-secondary:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 36px rgba(243,167,183,.45);
}

/* =========================
   ONE-TIME SOCIETY PULSE
   (fires once per session)
========================= */

@keyframes societyPulse {
  0%   { box-shadow: 0 0 0 0 rgba(243,167,183,.55); }
  70%  { box-shadow: 0 0 0 14px rgba(243,167,183,0); }
  100% { box-shadow: 0 0 0 0 rgba(243,167,183,0); }
}

.hero-buttons .btn-secondary.is-pulsing{
  animation: societyPulse 1.8s ease-out;
}
/* =========================
   HERO BUTTON HIERARCHY
   Society Pink = #EC80B8
========================= */

/* shared button styling */
.hero-buttons a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
  transition: all .25s ease;
}

/* SHOP — quiet, editorial */
.hero-buttons .btn-primary{
  background: transparent;
  color: #fff;
  border: 2px solid rgba(255,255,255,.65);
}

.hero-buttons .btn-primary:hover{
  background: #fff;
  color: #111;
  border-color: #fff;
}

/* SOCIETY — primary pink */
.hero-buttons .btn-secondary{
  background: #EC80B8;
  color: #111;
  border: 2px solid #EC80B8;
  box-shadow: 0 10px 28px rgba(236,128,184,.38);
  position: relative;
}

/* hover polish */
.hero-buttons .btn-secondary:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 36px rgba(236,128,184,.48);
}

/* ===== GLOBAL MOBILE HORIZONTAL LOCK ===== */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}

#MainContent {
  overflow-x: hidden;
}

body {
  position: relative;
}
.morally-gray-archive .book-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 40px;
  margin-top: 60px;
}

.book-cover {
  width: 100%;
  border-radius: 8px;
}

.book-card h3 {
  margin-top: 16px;
  font-size: 18px;
}

.book-card .buttons a {
  display: inline-block;
  margin-top: 12px;
  margin-right: 10px;
  padding: 8px 14px;
  background: #000;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
}

.metaobject-archive .book-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 40px;
  margin-top: 60px;
}

.metaobject-archive img {
  width: 100%;
  border-radius: 8px;
}

.metaobject-archive h3 {
  margin-top: 16px;
  font-size: 18px;
}

.metaobject-archive .buttons a {
  display: inline-block;
  margin-top: 10px;
  margin-right: 10px;
  padding: 8px 14px;
  background: #000;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
}
.metaobject-archive {
  margin-top: 80px;
}

.metaobject-archive .book-card {
  text-align: left;
}

.metaobject-archive h3 {
  margin-top: 14px;
  font-size: 20px;
}

.metaobject-archive .author {
  opacity: 0.7;
  margin-bottom: 10px;
}

.metaobject-archive .meta {
  font-size: 14px;
  opacity: 0.8;
}

.metaobject-archive .buttons a {
  border: 1px solid #fff;
  background: transparent;
  padding: 6px 12px;
  font-size: 13px;
  transition: 0.2s ease;
}

.metaobject-archive .buttons a:hover {
  background: #fff;
  color: #000;
}
.metaobject-archive .slider {
  display: flex;
  gap: 40px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 20px;
}

.metaobject-archive .slider__slide {
  flex: 0 0 260px;
  scroll-snap-align: start;
}

.metaobject-archive .slider::-webkit-scrollbar {
  height: 6px;
}

.metaobject-archive .slider::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.3);
}
/* ===============================
   DYNAMIC ARTICLE HERO
================================ */

.sss-article-hero{
  background:#0b0b0b;
  padding:90px 20px 60px;
  text-align:center;
}

.sss-article-hero__collage{
  position:relative;
  height:500px;
  max-width:900px;
  margin:0 auto 50px;
}

.sss-article-hero__book{
  position:absolute;
  width:280px;
  aspect-ratio:2/3;
  box-shadow:0 40px 80px rgba(0,0,0,.7);
  border-radius:12px;
  overflow:hidden;
}

.sss-article-hero__book img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.book-1{
  left:50%;
  transform:translateX(-50%) rotate(-6deg);
  z-index:1;
}

.book-2{
  left:calc(50% - 240px);
  transform:rotate(-12deg);
  z-index:2;
}

.book-3{
  left:calc(50% + 100px);
  transform:rotate(8deg);
  z-index:3;
}

.sss-article-hero__title h1{
  font-size:34px;
  max-width:820px;
  margin:0 auto;
}

/* mobile */
@media(max-width:768px){
  .sss-article-hero__collage{
    height:360px;
  }

  .sss-article-hero__book{
    width:180px;
  }

  .book-2{ left:calc(50% - 150px); }
  .book-3{ left:calc(50% + 40px); }

  .sss-article-hero__title h1{
    font-size:22px;
  }
}
/* ===============================
   BLOG CARD COLLAGE PREVIEW
================================ */

.sss-blog-card-collage{
  position:relative;
  height:260px;
  background:#0b0b0b;
  overflow:hidden;
}

.sss-blog-card-book{
  position:absolute;
  width:110px;
  aspect-ratio:2/3;
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 20px 40px rgba(0,0,0,.6);
}

.sss-blog-card-book img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.book-1{
  left:50%;
  transform:translateX(-50%) rotate(-6deg);
  top:30px;
  z-index:1;
}

.book-2{
  left:calc(50% - 90px);
  transform:rotate(-12deg);
  top:40px;
  z-index:2;
}

.book-3{
  left:calc(50% + 20px);
  transform:rotate(10deg);
  top:40px;
  z-index:3;
}
/* ===============================
   BOOK STYLE BLOG CARDS
================================ */

.sss-book-card{
  width:260px;
  aspect-ratio:2 / 3;
  background:#0b0b0b;
  border-radius:6px;
  overflow:hidden;
  box-shadow:
    -6px 0 0 #111,           /* fake spine */
    0 25px 60px rgba(0,0,0,.6);
  transition:transform .25s ease;
}

.sss-book-card:hover{
  transform:translateY(-6px);
}

.sss-book-cover{
  position:relative;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:20px;
}

.sss-blog-card-collage{
  position:absolute;
  top:20px;
  left:0;
  right:0;
  height:60%;
}

.sss-blog-card-book{
  position:absolute;
  width:90px;
  aspect-ratio:2/3;
  border-radius:6px;
  overflow:hidden;
  box-shadow:0 15px 35px rgba(0,0,0,.6);
}

.book-1{
  left:50%;
  transform:translateX(-50%) rotate(-6deg);
  z-index:1;
}

.book-2{
  left:calc(50% - 70px);
  transform:rotate(-12deg);
  z-index:2;
}

.book-3{
  left:calc(50% + 10px);
  transform:rotate(10deg);
  z-index:3;
}

.sss-book-title{
  position:relative;
  z-index:5;
}

.sss-book-title h3{
  font-family:"Libre Baskerville", Georgia, serif;
  font-size:18px;
  line-height:1.3;
  text-transform:lowercase;
}

.sss-book-title a{
  color:white;
  text-decoration:none;
}
.sss-blog-card-collage{
  position:relative;
  height:260px;
  background:#0b0b0b;
}

.sss-blog-card-book{
  position:absolute;
  width:90px;
  aspect-ratio:2/3;
  border-radius:6px;
  overflow:hidden;
  box-shadow:0 15px 35px rgba(0,0,0,.6);
}

.book-1{
  left:50%;
  transform:translateX(-50%) rotate(-6deg);
  top:30px;
}

.book-2{
  left:calc(50% - 70px);
  transform:rotate(-12deg);
  top:40px;
}

.book-3{
  left:calc(50% + 10px);
  transform:rotate(10deg);
  top:40px;
}
.article-template__content p{
  font-size: 18px;
  line-height: 1.75;
  margin-bottom: 1.4em;
  max-width: 720px;
}

.article-template__content ul{
  list-style: none;
  padding-left: 0;
  margin-top: 20px;
}

.article-template__content ul li{
  padding: 6px 0;
  font-size: 17px;
}
.article-template__content{
  max-width: 760px;
  margin: auto;
}
.article-template__content p:first-of-type{
  font-size: 20px;
  line-height: 1.8;
}
.article-template__content{
  font-family: "Libre Baskerville", serif;
}

.article-template__content h1,

.article-template__content blockquote{
  font-size: 26px;
  font-style: italic;
  line-height: 1.6;
  margin: 30px 0;
  padding-left: 14px;
  border-left: 3px solid #ff4fa3;
  color: #ffffff;
}
.article-template__content h2{
  font-size: 32px;
  font-weight: 600;
  letter-spacing: -0.02em;
  margin-top: 70px;
  margin-bottom: 20px;
  border-bottom: 1px solid #eee;
  padding-bottom: 8px;
}
.article-template__content ul{
  list-style:none;
  padding:0;
}

.article-template__content ul li{
  display:inline-block;
  margin:6px 8px 6px 0;
  padding:6px 12px;
  border:1px solid #ff4fa3;
  border-radius:20px;
  font-size:15px;
}