/* Semantic role mappings. Sizes/rhythm live in theme.css; font choices stay in typography.php. */
:is(.shop-heading,.journal-listing__header,.policy-heading,.product-heading,.dfvn-studio .studio-hero,.club-calculator-hero,.dfvn-member-hero,.curated-heading,.curated-detail-heading) h1,
.dfvn-support .support-hero .hero-copy h1 {
  font-size:var(--page-title-size);line-height:var(--page-title-leading);
}
.home-main :is(.section-heading,.home-service-heading,.home-member-copy) h2 {
  font-size:var(--home-section-title-size,var(--section-title-size));line-height:var(--section-title-leading);color:var(--heading-ink);
}
.home-main .home-daily-heading h2 {
  font-size:var(--section-title-size);line-height:var(--section-title-leading);color:var(--heading-ink);
}
:is(.shop-heading,.journal-listing__header,.policy-heading,.curated-heading) p,.curated-detail-heading>div>p,.dfvn-member-hero>p,
.studio-hero .studio-hero-copy>p,.club-calculator-copy>p,.dfvn-support .support-hero .hero-copy>p,
.home-main .home-weekly-intro p,
.home-main :is(.home-service-heading,.home-daily-copy,.home-member-copy,.home-newsletter-copy)>p,.home-main .section-description {
  font-size:var(--lead-size);line-height:var(--lead-leading);color:var(--lead-ink);
}
.product-subtitle { font-size:var(--product-subtitle-size);line-height:var(--lead-leading);color:var(--lead-ink); }
.product-subtitle p { margin:0;font:inherit;color:inherit; }
.home-main .home-weekly-intro p,.home-main .home-service-heading>p { margin:var(--title-lead-gap) auto 0; }
.home-main .section-description { max-width:650px;margin:var(--title-lead-gap) auto 0; }
.home-main .home-member-copy h2 { margin-bottom:var(--title-lead-gap); }
.home-main .home-newsletter-copy>p { margin:4px auto var(--heading-card-gap); }
.home-main .home-journal .journal-card h3 { font-size:var(--card-title-size);line-height:var(--card-title-leading); }
.home-member-copy { --heading-ink:var(--home-member-ink);--lead-ink:color-mix(in srgb,var(--home-member-ink) 85%,transparent); }
.home-newsletter-copy { --heading-ink:#fff;--lead-ink:#fff; }
.studio-gradient .studio-hero,.dfvn-support.support-c .support-hero { --lead-ink:color-mix(in srgb,currentColor 85%,transparent); }

/* Dedicated Font Manager workspace follows the site's shell, including its gutters. */
body.dfvnfm-font-manager-page #dfvnfm-app .dfvnfm-lab { width:100%; max-width:none; }

/* The editable lead and supplied vector wordmark form one responsive heading. */
.home-newsletter-copy .section-heading #home-newsletter-title{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:clamp(8px,1.2vw,18px);font-size:clamp(28px,4.5vw,68px);line-height:1.12;color:#f7f7f2}
.home-newsletter-prefix{white-space:nowrap;min-width:0}
.home-newsletter-wordmark{display:block;flex:0 0 auto;width:clamp(130px,20vw,270px);color:inherit}
.home-newsletter-wordmark>svg{display:block;width:100%;height:auto;max-height:none}

@media(max-width:600px){.home-newsletter-copy .section-heading #home-newsletter-title{font-size:clamp(24px,7.5vw,32px)}.home-newsletter-wordmark{width:clamp(110px,34vw,145px)}}

/* The latest collection uses the supplied vector; custom titles remain editable text. */
.home-latest-title{display:flex;align-items:center;justify-content:center;gap:.22em}
.home-latest-wordmark{display:block;flex:0 0 auto;width:2.35em;color:inherit;transform:translateY(-.045em)}
.home-latest-wordmark>svg{display:block;width:100%;height:auto}
@media(max-width:600px){.home-main .home-newsletter-copy>p{margin-top:8px}}
