/*
 * TUM typography system
 * Self-hosted via Fontsource packages; no external font requests.
 */

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-300-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}

/* Legacy family aliases keep older plugin styles on the new local typeface. */
@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-300-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-400-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-400-italic.woff2") format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-600-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-700-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-400-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-400-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-400-italic.woff2") format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-500-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-600-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-600-italic.woff2") format("woff2");
  font-style: italic;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/ibm-plex-sans/ibm-plex-sans-latin-700-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("vendor/fonts/russo-one/russo-one-latin-400-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

body,
input,
textarea,
select,
button,
p,
a,
li,
blockquote,
pre,
code,
kbd,
#access .menu,
#access .menu a {
  font-family: "Open Sans", "Segoe UI", Arial, sans-serif !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
h7,
.page_title .title,
.tp-caption,
.big_white,
.big_white_two,
.very_big_white,
.small_text,
.portfolio_image .title,
.fresh_projects_list .title {
  font-family: "Open Sans", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0.015em;
}

h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong,
h7 strong {
  font-weight: 400 !important;
}

h7 {
  display: block;
  font-size: 14px;
  line-height: 22px;
  margin-bottom: 20px;
}

#access .menu,
#access .menu a,
.button_slider,
.button_slider_02,
.knowmore_but {
  font-weight: 600;
  letter-spacing: 0.035em;
}

.page_title .title h1,
.tp-caption.big_white,
.tp-caption.big_white_two,
.tp-caption.very_big_white {
  font-weight: 400;
  letter-spacing: 0.025em;
}
