/** Shopify CDN: Minification failed

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

**/
/* ============================================================
   PERMEABLE SELF — GLOBAL OVERRIDES
   Styles search, cart, and all other default theme pages
   to match the Permeable Self design system.
   Include in layout/theme.liquid.
   ============================================================ */

/* Force light mode */
:root {
  color-scheme: light only;
}

html, body {
  color-scheme: light !important;
}

@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,600;1,8..60,400&display=swap');

@font-face {
  font-family: 'VTF Victorianna';
  src: url('VTF-victorianna-thin.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'VTF Victorianna';
  src: url('VTF-victorianna-thin-talic.otf') format('opentype');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

/* ---- Global body text: VTF Victorianna ---- */

body {
  font-family: 'VTF Victorianna', serif;
  font-weight: 100;
  font-size: 1.4rem;
  line-height: 2;
  color: #111;
  background: #f9f8f5 !important;
}

/* ---- Paragraphs, spans, labels, links, inputs, td: VTF Victorianna ---- */

p, span, label, a, li, td, th,
input, textarea, select, blockquote {
  font-family: 'VTF Victorianna', serif;
  font-weight: 100;
  color: #111;
  line-height: 1.8;
}

/* ---- Headings: Source Serif 4 ---- */

h1, h2, h3, h4, h5, h6 {
  font-family: 'Source Serif 4', serif !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #111 !important;
}

/* ---- Default page content: push below overlay ---- */

#MainContent,
main[role="main"],
.content-for-layout {
  padding-top: clamp(14rem, 26vh, 18rem) !important;
}

/* Undo for our custom pages that handle their own padding */
body.ps-homepage #MainContent,
body.ps-homepage .content-for-layout,
body.ps-collection-page #MainContent,
body.ps-collection-page .content-for-layout,
body.ps-search-page #MainContent,
body.ps-search-page .content-for-layout,
body.ps-cart-page #MainContent,
body.ps-cart-page .content-for-layout,
body.ps-product-page #MainContent,
body.ps-product-page .content-for-layout,
body.ps-blog-page #MainContent,
body.ps-blog-page .content-for-layout,
body.ps-article-page #MainContent,
body.ps-article-page .content-for-layout,
body.ps-friends-page #MainContent,
body.ps-friends-page .content-for-layout {
  padding-top: 0 !important;
}

/* ---- Search page ---- */

/* ---- Cart page ---- */

.template-cart main,
.template-cart #MainContent,
.template-cart [role="main"] {
  padding-left: clamp(3rem, 6vw, 6rem);
  padding-right: clamp(3rem, 6vw, 6rem);
  text-align: center;
}

.template-cart h1,
.cart__heading {
  font-family: 'Source Serif 4', serif !important;
  font-weight: 400 !important;
  font-size: clamp(1.3rem, 2.5vw, 2rem) !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #111 !important;
}

/* "Have an account?" smaller */
.template-cart h2 {
  font-family: 'Source Serif 4', serif !important;
  font-weight: 400 !important;
  font-size: clamp(0.9rem, 1.3vw, 1.1rem) !important;
  letter-spacing: 0.08em;
  text-transform: none !important;
  color: #111 !important;
}

/* Cart empty heading: hide original text, show custom */
.template-cart .cart__empty-text,
.template-cart h1.cart__empty-text {
  font-size: 0 !important;
  line-height: 0;
}
.template-cart .cart__empty-text::after,
.template-cart h1.cart__empty-text::after {
  content: 'cart is empty :)';
  font-family: 'VTF Victorianna', serif;
  font-weight: 100;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  letter-spacing: 0.06em;
  display: block;
}

.template-cart p,
.template-cart span,
.template-cart label,
.template-cart td,
.template-cart th {
  font-family: 'VTF Victorianna', serif !important;
  font-weight: 100 !important;
  color: #111 !important;
  font-size: clamp(0.85rem, 1.1vw, 1rem);
}

.template-cart a {
  font-family: 'VTF Victorianna', serif !important;
  font-weight: 100 !important;
  color: #111 !important;
}

.template-cart button,
.template-cart .button,
.template-cart [type="submit"] {
  font-family: 'Source Serif 4', serif !important;
  font-weight: 400 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

/* ---- All pages: link styling ---- */

a {
  color: #111;
  transition: color 0.2s ease;
}

/* ---- All pages: button styling ---- */

.shopify-challenge__button,
.button,
button[type="submit"] {
  font-family: 'Source Serif 4', serif !important;
  letter-spacing: 0.08em;
}

/* ---- Hide default theme header/footer on ALL pages ---- */
/* Use clip instead of display:none to preserve cart drawer JS */

#shopify-section-header,
#shopify-section-footer,
#shopify-section-announcement-bar,
.shopify-section-header,
.shopify-section-footer,
.section-header,
.header-wrapper,
.announcement-bar-section,
body > footer {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  padding: 0 !important;
  margin: -1px !important;
}

/* ---- Dream sticker: bottom-right on search/cart pages ---- */

.template-search .ps-sticker--dream-global,
.template-cart .ps-sticker--dream-global {
  top: auto !important;
  bottom: clamp(6rem, 16vh, 12rem);
}

/* ---- Mobile overrides for default pages ---- */

@media (max-width: 749px) {
  #MainContent,
  main[role="main"],
  .content-for-layout {
    padding-top: clamp(18rem, 36vh, 22rem) !important;
    padding-left: 1.2rem;
    padding-right: 1.2rem;
  }

  body.ps-homepage #MainContent,
  body.ps-homepage .content-for-layout,
  body.ps-collection-page #MainContent,
  body.ps-collection-page .content-for-layout,
  body.ps-search-page #MainContent,
  body.ps-search-page .content-for-layout,
  body.ps-cart-page #MainContent,
  body.ps-cart-page .content-for-layout,
  body.ps-product-page #MainContent,
  body.ps-product-page .content-for-layout,
  body.ps-blog-page #MainContent,
  body.ps-blog-page .content-for-layout,
  body.ps-article-page #MainContent,
  body.ps-article-page .content-for-layout,
  body.ps-friends-page #MainContent,
  body.ps-friends-page .content-for-layout {
    padding-top: 0 !important;
    padding-left: 0;
    padding-right: 0;
  }

  .template-search .ps-sticker--dream-global,
  .template-cart .ps-sticker--dream-global {
    display: none !important;
  }

}

/* ---- Prevent thumbnail flash on product page load ---- */
.ps-product__thumbs {
  opacity: 0;
  animation: ps-fade-in 0.3s ease 0.1s forwards;
}

@keyframes ps-fade-in {
  to { opacity: 1; }
}