﻿/* VIVERE unified typography: Inter for UI/body and Playfair Display for headings. */
:root {
  --vivere-font-sans: "Inter", Arial, sans-serif;
  --vivere-font-serif: "Playfair Display", Georgia, serif;
  --vivere-type-body: 16px;
  --vivere-type-label: 11px;
  --vivere-type-button: 12px;
  --vivere-type-h1: clamp(42px, 5vw, 68px);
  --vivere-type-h2: clamp(34px, 3.6vw, 50px);
  --vivere-type-h3: clamp(26px, 2.5vw, 36px);
  --vivere-type-h4: 22px;
  --vivere-type-card: clamp(22px, 2vw, 28px);
  --vivere-leading-body: 1.7;
  --vivere-leading-heading: 1.12;
}

html body, html body button, html body input, html body select, html body textarea,
html body .elementor, html body .woocommerce, html body .woocommerce-page {
  font-family: var(--vivere-font-sans) !important;
}
html body { font-size: var(--vivere-type-body) !important; line-height: var(--vivere-leading-body) !important; }
html body p, html body li, html body input, html body select, html body textarea,
html body .elementor-widget-text-editor, html body .woocommerce-product-details__short-description {
  font-size: var(--vivere-type-body); line-height: var(--vivere-leading-body);
}
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6,
html body .entry-title, html body .page-title, html body .product_title,
html body .woocommerce-loop-product__title {
  font-family: var(--vivere-font-serif) !important; font-weight: 500 !important;
  letter-spacing: -.025em !important; line-height: var(--vivere-leading-heading) !important;
}
html body h1, html body .entry-title, html body .page-title { font-size: var(--vivere-type-h1) !important; }
html body h2 { font-size: var(--vivere-type-h2) !important; }
html body h3 { font-size: var(--vivere-type-h3) !important; }
html body h4 { font-size: var(--vivere-type-h4) !important; }
html body h5 { font-size: 18px !important; }
html body h6 { font-size: 16px !important; }
html body button, html body input[type="button"], html body input[type="submit"],
html body .button, html body .elementor-button, html body .wp-block-button__link,
html body .woocommerce a.button, html body .woocommerce button.button {
  font-family: var(--vivere-font-sans) !important; font-size: var(--vivere-type-button) !important;
  line-height: 1.35 !important;
}

/* Theme archives, custom post types and WooCommerce. */
html body :is(.vivere-project-page, .vivere-lookbook-page, .vivere-project-single,
.vivere-lookbook-single, .vivere-collections-shell, .vivere-product-page) {
  font-family: var(--vivere-font-sans) !important; font-size: var(--vivere-type-body) !important;
}
html body :is(.vivere-project-title, .vivere-lookbook-title, .vivere-archive-hero h1, .vivere-pdp-title) {
  font-family: var(--vivere-font-serif) !important; font-size: var(--vivere-type-h1) !important;
  font-weight: 500 !important; line-height: 1.05 !important;
}
html body :is(.vivere-project-card__title, .vivere-lookbook-card__title,
.vivere-product-card__title, .vivere-pdp-related-title, .vivere-sticky-product-bar__title) {
  font-family: var(--vivere-font-serif) !important; font-size: var(--vivere-type-card) !important;
  font-weight: 500 !important; line-height: 1.2 !important;
}
html body :is(.vivere-project-card__excerpt, .vivere-lookbook-card__excerpt,
.vivere-archive-hero__text, .vivere-pdp-excerpt, .vivere-pdp-story-behind__copy) {
  font-family: var(--vivere-font-sans) !important; font-size: var(--vivere-type-body) !important;
  line-height: var(--vivere-leading-body) !important;
}
html body :is(.vivere-project-eyebrow, .vivere-lookbook-eyebrow, .vivere-project-card__meta,
.vivere-lookbook-card__meta, .vivere-archive-hero__eyebrow, .vivere-pdp-eyebrow,
.vivere-pdp-label, .vivere-pdp-breadcrumb, .vivere-pdp-related-cat, .vivere-sticky-product-bar__eyebrow) {
  font-family: var(--vivere-font-sans) !important; font-size: var(--vivere-type-label) !important;
  line-height: 1.5 !important;
}
html body .woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: var(--vivere-type-card) !important; line-height: 1.2 !important;
}
html body .woocommerce div.product .product_title { font-size: var(--vivere-type-h1) !important; }
html body .woocommerce div.product :is(p.price, span.price) {
  font-family: var(--vivere-font-serif) !important; font-size: var(--vivere-type-h4) !important;
}
html body :is(.woocommerce table.shop_table, .woocommerce form,
.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-checkout, .woocommerce-cart) {
  font-family: var(--vivere-font-sans) !important; font-size: var(--vivere-type-body) !important;
}
html body :is(.woocommerce table.shop_table th, .woocommerce .product_meta,
.woocommerce .woocommerce-breadcrumb, .woocommerce div.product .woocommerce-tabs ul.tabs li a) {
  font-size: var(--vivere-type-label) !important; line-height: 1.5 !important;
}
