/* Geist Sans — SIL Open Font License, bundled with the site. */
@font-face {
  font-family: 'Geist';
  src: url('/fonts/Geist-Variable.woff2') format('woff2');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: 'Geist';
  src: url('/fonts/Geist-Italic-Variable.woff2') format('woff2');
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
}
:root {
  --main-font: 'Geist', 'Helvetica Neue', Arial, sans-serif;
  --heading-font: var(--main-font);
}

/* Shared reading styles: the same family and weight on every portfolio surface. */
body, button, input, textarea, select { font-family: var(--main-font); }
.home-gallery .portfolio-bio,
.home-gallery .portfolio-bio .heading-hero,
.home-gallery .home-clock,
.home-gallery .home-clock time,
.home-gallery .cms-project-caption { font-family: var(--main-font); }
.home-gallery .portfolio-bio .portfolio-bio-copy,
.home-gallery .cms-project-caption .project-info,
.portfolio-viewer-summary,
.portfolio-viewer-project .cms-rich-text :is(p, li),
.portfolio-viewer-project .portfolio-viewer-meta dd,
.portfolio-viewer-project.case-editorial .case-editorial-figure > figcaption,
.portfolio-viewer-about .nd-prose,
.portfolio-viewer-about p,
.portfolio-viewer-about blockquote,
.portfolio-viewer-about figcaption,
.portfolio-viewer-about .portfolio-about-job-dates,
.portfolio-viewer-about .nd-resource-list :is(dd, a) { font-weight: 400; }

.home-gallery .portfolio-bio .heading-hero,
.home-gallery .heading-project-b { font-size: 22px; line-height: 1.3; }

@media (max-width: 767px) {
  :root, .portfolio-viewer-about {
    --type-body: 16px;
    --type-body-leading: 25px;
    --type-heading: 26px;
    --type-heading-leading: 1.25;
    --type-detail: 15px;
  }
  .home-gallery .portfolio-bio .portfolio-bio-copy {
    font-size: var(--type-body);
    line-height: var(--type-body-leading);
  }
  .home-gallery .portfolio-bio .heading-hero { font-size: 28px; line-height: 1.3; font-weight: 500; }
  .home-gallery .hero-sticky .portfolio-contact-link { font-size: var(--type-body); }
  .home-gallery .heading-project-b { font-size: 24px; line-height: 1.3; font-weight: 500; }
  .home-gallery .cms-project-caption .project-info { font-size: var(--type-body); line-height: var(--type-body-leading); }
  .home-gallery .home-clock span { font-size: 16px; }
  .home-gallery .home-clock { display: none; }
  .portfolio-viewer-about .nd-resource-list dt { font-size: var(--type-body); }
}

/* Navigation rests at regular weight on touch screens as well. */
@media (max-width: 767px), (hover: none), (pointer: coarse) {
  .home-gallery .hero-sticky .portfolio-contact-link { font-weight: 400; }
}

@media (max-width: 767px) {
  #portfolio-viewer-title .case-title-brand { display: block; }
}

/* Intro and project titles use the body family with the same stronger weight. */
.home-gallery .portfolio-bio .heading-hero,
.home-gallery .cms-project-caption .heading-project-b {
  font-family: var(--main-font);
  font-style: normal;
  font-weight: 600;
}

/* Walkie hero typography: Geist Medium, measured from trywalkie.com/en. */
.home-gallery .hero-sticky .portfolio-bio > .intro-greeting,
.home-gallery .hero-sticky .intro-greeting .brand,
.home-gallery .hero-sticky .intro-greeting .brand-name {
  font-family: var(--main-font);
  font-size: clamp(2.1rem, 3.8vw, 3.6rem);
  font-weight: 500;
  line-height: .95;
  letter-spacing: -.04em;
}
.home-gallery .hero-sticky .portfolio-bio > .intro-identity,
.home-gallery .hero-sticky .portfolio-bio > .heading-hero {
  font-weight: 500;
  letter-spacing: -.04em;
}
.home-gallery .hero-sticky .portfolio-bio .portfolio-bio-copy {
  font-size: clamp(.9rem, 1.2vw, 1.05rem);
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: normal;
}
