@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Source+Sans+Pro:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap");

/* Orchid typography v426. Editorial serif owns the complete heading hierarchy;
   Source Sans Pro remains the authority for body copy and functional UI. */
:root {
  --font-editorial:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --font-ui:"Source Sans Pro",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --orchid-ui-font:var(--font-ui);
  --serif-font:var(--font-editorial);
  --font-body:var(--font-ui);

  --type-display:600 32px/38px var(--font-editorial);
  --type-editorial-title:600 32px/38px var(--font-editorial);
  --type-storefront-name:600 32px/38px var(--font-editorial);
  --type-editorial-section:600 22px/28px var(--font-editorial);
  --type-editorial-italic:italic 500 18px/26px var(--font-editorial);
  --type-page-title:600 30px/36px var(--font-editorial);
  --type-section-title:600 22px/28px var(--font-editorial);
  --type-subtitle:500 17px/24px var(--font-editorial);
  --type-body:400 15px/22px var(--font-ui);
  --type-lead:400 19px/28px var(--font-ui);
  --type-nav:600 15px/20px var(--font-ui);
  --type-control:600 14px/20px var(--font-ui);
  --type-product:600 15px/20px var(--font-ui);
  --type-price:600 16px/22px var(--font-ui);
  --type-meta:400 13px/18px var(--font-ui);
  --type-eyebrow:600 12px/16px var(--font-ui);

  --type-display-size:32px;
  --type-display-line:38px;
  --type-editorial-title-size:32px;
  --type-page-title-size:30px;
  --type-page-title-line:36px;
  --type-section-title-size:22px;
  --type-section-title-line:28px;
  --type-subtitle-size:17px;
  --type-subtitle-line:24px;
  --type-body-size:15px;
  --type-body-line:22px;
  --type-lead-size:19px;
  --type-lead-line:28px;
  --type-nav-size:15px;
  --type-nav-line:20px;
  --type-control-size:14px;
  --type-control-line:20px;
  --type-product-size:15px;
  --type-product-line:20px;
  --type-price-size:16px;
  --type-price-line:22px;
  --type-meta-size:13px;
  --type-meta-line:18px;
  --type-eyebrow-size:12px;
  --type-eyebrow-line:16px;
}

html,
body,
body :where(*):not(code):not(pre):not(kbd):not(samp) {
  font-family:var(--font-ui)!important;
}

body {
  font:var(--type-body)!important;
}

html body :is(*) {
  font-weight:400!important;
}

html body :is(p,li,dd,dt,blockquote,.text-body) {
  font:var(--type-body)!important;
}

html body :is(h1,.text-page-title,.text-h1) {
  font:var(--type-page-title)!important;
  letter-spacing:-.01em!important;
}

html body :is(h2,.text-section-title,.text-h2) {
  font:var(--type-section-title)!important;
  letter-spacing:-.005em!important;
}

html body :is(h3,h4,.text-subtitle,.text-h3) {
  font:var(--type-subtitle)!important;
  letter-spacing:normal!important;
}

html body :is(h1,h2,h3,h4,.text-page-title,.text-section-title,.text-subtitle,.text-h1,.text-h2,.text-h3) {
  max-width:100%;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:pretty;
}

html body :is(.text-lead,.lead,.hero-copy,.brand-lead,.landing-lead) {
  font:var(--type-lead)!important;
}

html body :is(nav a,.nav-links a,.text-nav) {
  font:var(--type-nav)!important;
  letter-spacing:normal!important;
}

html body :is(button,.button,.btn,[role="button"],input,select,textarea,label,.tab,[role="tab"],.text-control,.text-ui) {
  font:var(--type-control)!important;
  letter-spacing:normal!important;
}

html body :is(.button-primary,.btn-primary,[type="submit"],.primary-action) {
  font-weight:700!important;
}

html body :is(strong,b,th) {
  font-weight:600!important;
}

html body :is(small,time,caption,figcaption,.text-meta,.meta,.subtle-meta,.field-help,.form-note,.status-line,.waitlist-message,.blog-post-meta,.journal-hero-meta,.os-meta) {
  font:var(--type-meta)!important;
}

html body :is(.text-meta.is-strong,.meta.is-strong,th) {
  font-weight:500!important;
}

html body :is(.text-eyebrow,.eyebrow,.brand-label,.partner-name,.cart-kicker,.roots-eyebrow,.root-card-eyebrow,.pg-eye,.pg-card-tag,.blog-post-kicker,.announcement-group span,.h-eye,.sh-text,.li) {
  font:var(--type-eyebrow)!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}

/* Identity and editorial roles. */
html body :is(.text-display,.h-title,.roots-title,.pg-title,.discover-search-hero h2,.brand-directory-hero h1,.creator-landing-hero h1,.waitlist-dialog h2) {
  font:var(--type-display)!important;
  letter-spacing:-.025em!important;
  text-wrap:balance;
}

html body :is(.text-editorial-title,.journal-hero-copy h1,.blog-reader-main > h1,.visual-title-input) {
  font:var(--type-editorial-title)!important;
  letter-spacing:-.025em!important;
  text-wrap:balance;
}

html body :is(.text-storefront-name,.public-creator-identity h2,.storefront-profile-hero h2,.public-creator-name,.os-name-row h1,.talent-card h3,.public-talent-card h3) {
  font:var(--type-storefront-name)!important;
  letter-spacing:-.025em!important;
}

html body :is(.text-editorial-section,.journal-feature-copy h3,.journal-latest-row h3,.journal-open-story h3,.creator-blog-card h3,.orchid-collection-card__copy strong,.orchid-collection-card-surface > span,.discover-circle-card-copy strong,.collection-copy strong) {
  font:var(--type-editorial-section)!important;
  letter-spacing:-.015em!important;
}

html body :is(.text-editorial-italic,.public-creator-curated,.storefront-profile-hero .curated-by) {
  font:var(--type-editorial-italic)!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}

/* Functional commerce roles. */
html body :is(.orchid-product-card__brand,.product-card .partner-name,.product-brand,.brand-label) {
  font:var(--type-eyebrow)!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}

html body :is(.text-product,.orchid-product-card__title,.product-card h3,.discover-product-card h4,.product-title,[data-product-title]) {
  display:-webkit-box!important;
  min-height:40px!important;
  overflow:hidden!important;
  font:var(--type-product)!important;
  letter-spacing:normal!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

html body :is(.text-price,.orchid-product-card__price,.product-card .price-small,.product-price,.price,[data-product-price]) {
  font:var(--type-price)!important;
  letter-spacing:normal!important;
  font-variant-numeric:tabular-nums!important;
}

html body :is(.orchid-product-card__actions,.cart-drawer,.checkout-shell) :where(button,.button,[role="button"]) {
  font:var(--type-control)!important;
}

html body :is(.metric b,.payment-card strong,.brand-commerce-kpi strong,.brand-performance-preview-metrics strong) {
  font:700 30px/36px var(--font-ui)!important;
  font-variant-numeric:tabular-nums!important;
}

html body :is(button,.button,.btn,[role="button"],label,nav a,h1,h2,h3,h4,.text-display,.text-editorial-title,.text-storefront-name,.text-page-title,.text-section-title,.text-subtitle,.text-body,.text-lead,.text-nav,.text-control,.text-product,.text-price,.text-meta,.text-eyebrow) :where(*) {
  font:inherit!important;
  letter-spacing:inherit!important;
}

html body .blog-reader-body {
  font:var(--type-body)!important;
}

/* Final heading authority over legacy route-specific declarations. */
html body.page-discover.page-discover #discover :is(h1,.text-page-title,.text-h1),
html body.page-brands.page-brands #brands :is(h1,.text-page-title,.text-h1),
html body:is(.page-journal,.page-blog) #journal :is(h1,.text-page-title,.text-h1),
html body .creator-app.creator-app :is(#screen-myshop,#screen-storefront,#screen-import,#screen-blog) :is(h1,.text-page-title,.text-h1) {
  font:var(--type-page-title)!important;
  letter-spacing:-.01em!important;
}

html body.page-discover.page-discover #discover :is(h2,.text-section-title,.text-h2),
html body.page-brands.page-brands #brands :is(h2,.text-section-title,.text-h2),
html body:is(.page-journal,.page-blog) #journal :is(h2,.text-section-title,.text-h2),
html body .creator-app.creator-app :is(#screen-myshop,#screen-storefront,#screen-import,#screen-blog) :is(h2,.text-section-title,.text-h2) {
  font:var(--type-section-title)!important;
  letter-spacing:-.005em!important;
}

html body.page-discover.page-discover #discover :is(h3,h4,.text-subtitle,.text-h3),
html body.page-brands.page-brands #brands :is(h3,h4,.text-subtitle,.text-h3),
html body:is(.page-journal,.page-blog) #journal :is(h3,h4,.text-subtitle,.text-h3),
html body .creator-app.creator-app :is(#screen-myshop,#screen-storefront,#screen-import,#screen-blog) :is(h3,h4,.text-subtitle,.text-h3) {
  font:var(--type-subtitle)!important;
  letter-spacing:normal!important;
}

html body :is(.orchid-product-card__title,.product-card h3,.discover-product-card h4,.product-title,[data-product-title]),
html body :is(button,.button,.btn,[role="button"],input,select,textarea,label,.tab,[role="tab"],nav a,.nav-links a) {
  font-family:var(--font-ui)!important;
}

/* Inline Admin density is normalized into the shared scale. */
#orchid-admin-control-root :where([style*="font-size: 10px"],[style*="font-size: 10.5px"],[style*="font-size: 11px"],[style*="font-size: 11.5px"],[style*="font-size: 12px"],[style*="font-size: 12.5px"],[style*="font-size: 13px"],[style*="font-size: 13.5px"]) {
  font:var(--type-meta)!important;
}

#orchid-admin-control-root :where([style*="font-size: 14px"]) {
  font:var(--type-control)!important;
}

#orchid-admin-control-root :where([style*="font-size: 15px"],[style*="font-size: 16px"],[style*="font-size: 16.5px"]) {
  font:var(--type-body)!important;
}

#orchid-admin-control-root :where([style*="font-size: 17px"],[style*="font-size: 18px"],[style*="font-size: 20px"]) {
  font:var(--type-subtitle)!important;
}

#orchid-admin-control-root :where([style*="font-size: 21px"],[style*="font-size: 22px"],[style*="font-size: 24px"],[style*="font-size: 26px"],[style*="font-size: 27px"]) {
  font:var(--type-section-title)!important;
}

#orchid-admin-control-root :where([style*="font-size: 28px"],[style*="font-size: 30px"],[style*="font-size: 32px"],[style*="font-size: 34px"],[style*="font-size: 36px"]) {
  font:var(--type-page-title)!important;
}

@media (max-width:1100px) and (min-width:761px) {
  :root {
    --type-display:600 30px/36px var(--font-editorial);
    --type-editorial-title:600 30px/36px var(--font-editorial);
    --type-storefront-name:600 30px/36px var(--font-editorial);
    --type-display-size:30px;
    --type-editorial-title-size:30px;
  }
}

@media (max-width:760px) {
  :root {
    --type-display:600 28px/34px var(--font-editorial);
    --type-editorial-title:600 28px/34px var(--font-editorial);
    --type-storefront-name:600 28px/34px var(--font-editorial);
    --type-page-title:600 26px/32px var(--font-editorial);
    --type-display-size:28px;
    --type-editorial-title-size:28px;
    --type-page-title-size:26px;
    --type-page-title-line:32px;
  }
}

/* v427 stronger editorial hierarchy and shared text-width guardrails. */
:root {
  --type-display:700 44px/48px var(--font-editorial);
  --type-editorial-title:700 40px/44px var(--font-editorial);
  --type-storefront-name:700 38px/42px var(--font-editorial);
  --type-page-title:700 38px/42px var(--font-editorial);
  --type-section-title:700 28px/34px var(--font-editorial);
  --type-subtitle:700 22px/28px var(--font-editorial);
  --type-display-size:44px;
  --type-editorial-title-size:40px;
  --type-page-title-size:38px;
  --type-page-title-line:42px;
  --type-section-title-size:28px;
  --type-section-title-line:34px;
  --type-subtitle-size:22px;
  --type-subtitle-line:28px;
}

html body :is(
  h1,h2,h3,h4,h5,h6,
  .public-creator-name,
  .registered-brand-copy > strong,
  .brand-performance-preview h2,
  .os-name-row h1,
  .journal-open-story,
  .journal-open-story > :is(h1,h2,h3),
  .blog-reader-main > h1
) {
  min-width:0!important;
  width:auto;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

html body :is(
  .section-heading,
  .page-heading,
  .discover-block-heading,
  .brand-directory-copy,
  .brand-directory-heading,
  .brand-dashboard-heading,
  .creator-app .workspace-head,
  .creator-app .section-head,
  .creator-app .creator-blog-hero,
  .creator-app .storefront-profile-hero
) :is(h1,h2,h3) {
  font-family:var(--font-editorial)!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

html body .creator-app .workspace-head h1 {
  font:var(--type-page-title)!important;
  letter-spacing:-.015em!important;
}

html body .creator-app :is(.section-head,.creator-blog-hero,.storefront-profile-hero) h2 {
  font:var(--type-section-title)!important;
  letter-spacing:-.01em!important;
}

html body .creator-app .section-head h3 {
  font:var(--type-subtitle)!important;
}

@media (max-width:1100px) and (min-width:761px) {
  :root {
    --type-display:700 40px/44px var(--font-editorial);
    --type-editorial-title:700 36px/40px var(--font-editorial);
    --type-storefront-name:700 34px/38px var(--font-editorial);
    --type-page-title:700 34px/38px var(--font-editorial);
    --type-section-title:700 26px/32px var(--font-editorial);
    --type-subtitle:700 20px/26px var(--font-editorial);
  }
}

@media (max-width:760px) {
  :root {
    --type-display:700 34px/38px var(--font-editorial);
    --type-editorial-title:700 32px/36px var(--font-editorial);
    --type-storefront-name:700 30px/34px var(--font-editorial);
    --type-page-title:700 30px/34px var(--font-editorial);
    --type-section-title:700 24px/30px var(--font-editorial);
    --type-subtitle:700 19px/24px var(--font-editorial);
  }
}

/* v442: new introduction pages use the same heading, body and UI roles. */
html body :is(.creator-public-intro,.brand-public) h1 {
  font:var(--type-display)!important;
  letter-spacing:-.01em!important;
}
html body :is(.creator-public-intro,.brand-public) h2 {
  font:var(--type-editorial-section)!important;
  letter-spacing:-.005em!important;
}
html body :is(.creator-public-intro,.brand-public) :is(p,li) {
  font:var(--type-body)!important;
}
html body :is(.creator-public-brand-card,.creator-public-story,.brand-external-card__copy,.brand-insight-card) strong {
  font:var(--type-subtitle)!important;
}
html body .creator-public-stat strong { font:var(--type-display)!important; }
html body .orchid-media-editor :is(legend,.orchid-media-sections strong) {
  font:var(--type-subtitle)!important;
}
html body .orchid-media-editor :is(button,input,textarea,select,label) { font:var(--type-control)!important; }
html body :is([data-creator-intro-image],[data-brand-intro-image])[hidden] { display:none!important; }

/* Discovery identity roles remain separate from compact commerce labels. */
:root {
  --type-discovery-title:500 clamp(64px,8vw,124px)/.98 var(--font-editorial);
  --type-discovery-name:500 clamp(32px,4vw,64px)/1.04 var(--font-editorial);
}
html body.page-discover.page-discover #discover :is(.discover-shop-by-header,.discover-directory-heading) h2 {
  font:var(--type-discovery-title)!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
  margin:0!important;
  max-width:100%;
}
html body.page-discover.page-discover #discover .discover-directory-feature__copy h3 {
  font:var(--type-discovery-name)!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}
html body.page-discover.page-discover #discover .discover-directory-feature .discover-directory-heading h2 {
  color:var(--line)!important;
  -webkit-text-fill-color:var(--line)!important;
}
html body.page-discover.page-discover #discover .shopper-live-banner__copy h1 {
  font:500 clamp(36px,5vw,76px)/1.04 var(--font-editorial)!important;
  letter-spacing:-.025em!important;
}
html body.page-discover.page-discover #discover .shopper-live-banner__copy :is(h1,p,span) {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
@media(max-width:760px) {
  :root {
    --type-discovery-title:500 clamp(58px,14vw,88px)/1 var(--font-editorial);
    --type-discovery-name:500 clamp(32px,8vw,44px)/1.06 var(--font-editorial);
  }
}
