@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800;900&family=IBM+Plex+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700;800;900&display=swap');

:root {
  --display: 'Archivo', 'Arial Black', 'Arial Narrow', sans-serif;
  --sans: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
}

html[lang='zh'] {
  --display: 'Noto Sans SC', 'Microsoft YaHei', sans-serif;
  --sans: 'Noto Sans SC', 'IBM Plex Sans', 'Microsoft YaHei', sans-serif;
}

.cv-section .section-heading h2 {
  font-weight: 700;
}

.cv-section .download-links a,
.cv-entry span {
  font-weight: 600;
}

.cv-entry h3 {
  font-weight: 600;
}

html[lang='zh'] .cv-section .section-heading h2,
html[lang='zh'] .cv-entry h3 {
  font-weight: 500;
}

.is-content-removed {
  display: none !important;
}

.cv-section .section-heading > p:first-child,
.current-section .section-heading > p:first-child,
.contact-main > p:first-child {
  position: relative;
  visibility: hidden;
}

.cv-section .section-heading > p:first-child::before,
.current-section .section-heading > p:first-child::before,
.contact-main > p:first-child::before {
  position: absolute;
  inset: 0;
  visibility: visible;
}

html[lang='en'] .cv-section .section-heading > p:first-child::before,
html[lang='it'] .cv-section .section-heading > p:first-child::before {
  content: '06 / CV';
}

html[lang='zh'] .cv-section .section-heading > p:first-child::before {
  content: '06 / 履历';
}

html[lang='en'] .current-section .section-heading > p:first-child::before {
  content: '07 / News';
}

html[lang='it'] .current-section .section-heading > p:first-child::before {
  content: '07 / News';
}

html[lang='zh'] .current-section .section-heading > p:first-child::before {
  content: '07 / 动态';
}

html[lang='en'] .contact-main > p:first-child::before {
  content: '08 / Contact';
}

html[lang='it'] .contact-main > p:first-child::before {
  content: '08 / Contatti';
}

html[lang='zh'] .contact-main > p:first-child::before {
  content: '08 / 联系';
}

.hero-topline {
  font-size: 13px;
}

.work-media,
.work-item button:hover .work-media {
  border-color: transparent;
}

.work-caption {
  border-top-color: transparent;
}

.lightbox:has(figure img[src*='/images/works/']) figure {
  width: auto;
  height: auto;
  max-height: none;
  overflow: visible;
  aspect-ratio: auto;
}

.lightbox:has(figure img[src*='/images/works/']) figure img {
  display: block;
  object-fit: contain;
  width: auto;
  height: auto;
  max-width: calc(100vw - 48px);
  max-height: calc(100vh - 48px);
  aspect-ratio: auto;
}

.contact-section {
  --contact-value-size: 33px;
}

.contact-main > p:last-child {
  font-size: 12px;
}

.contact-link > span {
  font-size: 9px;
}

.contact-link strong {
  font-size: var(--contact-value-size);
}

.contact-section footer {
  font-size: 8px;
}

@media (width <= 1180px) {
  .contact-section {
    --contact-value-size: 27px;
  }
}

@media (width > 1180px) {
  .artwork-groups {
    margin-right: auto;
    margin-left: clamp(64px, calc((100vw - 1128px) * 0.42), 260px);
  }
}

@media (width <= 680px) {
  .hero-topline {
    font-size: 11px;
  }

  .contact-section {
    --contact-value-size: 21px;
  }

  .contact-main > p:last-child {
    font-size: 11px;
  }
}
