/* Locally served Nunito Sans; original font and OFL license in fonts/. */
@font-face{
  font-family:"Nunito Sans";
  src:url("fonts/nunito-sans-variable.ttf") format("truetype");
  font-weight:200 900;
  font-style:normal;
  font-display:swap;
}
:root{--font:"Nunito Sans","Segoe UI",Arial,sans-serif}
body{font-family:var(--font);font-weight:400;font-optical-sizing:auto}
h1,h2,h3,.profile-photo figcaption{font-family:var(--font);font-weight:600;letter-spacing:-.025em}
h1,h2,.hero.hero-illustrated h1,.teaser .teaser-heading,.personal-profile h2,.contact-hero h1,.closing h2{line-height:1.2}
h3{line-height:1.35;letter-spacing:-.012em}
.profile-photo figcaption span{font-family:var(--font);font-weight:400}
.button,.nav-contact{font-weight:700}

/* Unnumbered examples and steps align directly with their section content. */
.teaser summary{grid-template-columns:minmax(0,1fr) 50px}
.teaser summary>.insight-title{font-family:var(--font);font-size:30px;font-weight:600;letter-spacing:-.02em;line-height:1.3}
.teaser summary:hover>.insight-title{color:var(--accent)}
.teaser summary>.round-arrow{font-family:var(--font);font-size:23px;font-weight:400;line-height:1;letter-spacing:normal}
.reveal{margin-left:0}
.process-points article{padding-left:0}

@media(max-width:650px){
  .hero.hero-illustrated h1{font-size:clamp(28px,9.35vw,36px)}
  .teaser summary{grid-template-columns:minmax(0,1fr) 30px;gap:18px}
  .teaser summary>.insight-title{font-size:23px;line-height:1.3}
  .teaser summary>.round-arrow{font-size:17px}
  .contact-person h2{font-size:26px}
}
