/* PMJ brand typography — local font files in assets/fonts/
   Giovanni · Gotham (Light/Book/Bold) · Sloop Script
   Current files are licensed substitutes; swap for official PMJ files when available. */

@font-face {
  font-family: 'Giovanni';
  src: url('../assets/fonts/Giovanni-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Gotham';
  src: url('../assets/fonts/Gotham-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Gotham';
  src: url('../assets/fonts/Gotham-Book.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Gotham';
  src: url('../assets/fonts/Gotham-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Sloop Script';
  src: url('../assets/fonts/SloopScript-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-giovanni: 'Giovanni', Georgia, 'Times New Roman', serif;
  --font-gotham: 'Gotham', system-ui, -apple-system, sans-serif;
  --font-accent: 'Sloop Script', cursive;
  --font-gotham-light: 300;
  --font-gotham-book: 400;
  --font-gotham-bold: 700;
}

body {
  font-family: var(--font-gotham);
  font-weight: var(--font-gotham-book);
}

/* ——— Giovanni: headlines & titles ——— */
h1, h2, h3, h4, h5, h6,
.display,
.wordmark,
.card-name,
.pm-name,
.collection-banner-title,
.collection-landing-hero-copy h2,
#collectionGalleryHeroTitle,
.section-head h2,
.hero-copy h1,
.pdp-title,
.drawer-head h3,
.promo-banner-content h2,
.login-container h2,
.logo-container h2 {
  font-family: var(--font-giovanni);
  font-weight: 400;
  letter-spacing: 0.02em;
}

/* ——— Sloop Script: poetic highlights ——— */
.pmj-accent,
.hero-copy h1 em,
.collection-banner-kicker,
#collectionGalleryHeroEyebrow,
.pdp-kicker,
.promo-banner-content .eyebrow,
.brand-est,
.login-container p,
.collection-landing-hero-copy .eyebrow {
  font-family: var(--font-accent);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.02em;
  text-transform: none;
  line-height: 1.2;
}

.collection-banner-kicker {
  font-size: clamp(1.1rem, 2vw, 1.45rem);
  color: rgba(255, 255, 255, 0.92);
}

.hero-copy h1 em {
  font-style: normal;
  display: inline-block;
}

/* ——— Gotham: body & UI ——— */
p,
.card-desc,
.card-material,
.collections-intro,
.collection-banner-sub,
.pm-desc,
.pm-material,
label,
input,
textarea,
select,
.nav-link,
.filter-chip,
.view-link,
.form-note,
.collections-hub .collections-intro {
  font-family: var(--font-gotham);
  font-weight: var(--font-gotham-book);
}

.eyebrow,
.card-cat,
.filter-group-label,
.pm-cat,
.plp-crumb-link,
.plp-crumb-current,
.pdp-breadcrumb,
.pdp-eyebrow,
.pdp-back,
.pdp-gallery-kicker,
.pdp-ref,
.brand-tagline,
.loading-caption,
.admin-note {
  font-family: var(--font-gotham);
  font-weight: var(--font-gotham-light);
  letter-spacing: 0.14em;
}

.section-head .eyebrow,
.filter-group-label {
  text-transform: uppercase;
  font-size: 10px;
}

.card-price,
.pm-price,
.pdp-price,
strong, b,
.btn-primary,
.submit-btn,
.add-link,
.pdp-btn,
.cart-preview-view-btn,
.wishlist-count {
  font-family: var(--font-gotham);
  font-weight: var(--font-gotham-bold);
}

.card-price,
.pm-price {
  letter-spacing: 0.04em;
}

button,
.wishlist-tab {
  font-family: var(--font-gotham);
  font-weight: var(--font-gotham-bold);
  letter-spacing: 0.1em;
}

.card-name,
.pm-name {
  letter-spacing: 0.01em;
}

.card-desc,
.collection-banner-sub,
.pm-desc {
  font-weight: var(--font-gotham-light);
  line-height: 1.65;
}
