article, aside, details, figcaption, figure, footer,
header, main, menu, nav, section, summary {
display: block;
}
audio, canvas, progress, video {
display: inline-block;
}
video {
max-width: 100%;
}
audio:not([controls]) {
display: none;
height: 0;
}
progress {
vertical-align: baseline;
}
[hidden],
template {
display: none;
}
a {
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
a:active,
a:hover {
outline-width: 0;
}
abbr[title] {
border-bottom: none;
text-decoration: underline dotted;
}
b,
strong {
font-weight: inherit;
font-weight: bolder;
}
dfn {
font-style: italic;
}
mark {
background-color: #ff0;
color: #000;
}
small {
font-size: 80%;
}
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
img {
border-style: none;
}
svg:not(:root) {
overflow: hidden;
}
code, kbd, pre, samp {
font-family: monospace, monospace;
font-size: 1em;
white-space: pre-wrap;       
white-space: -moz-pre-wrap;  
white-space: -pre-wrap;      
white-space: -o-pre-wrap;    
word-wrap: break-word;
}
figure {
margin: 1em 40px;
}
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
button, input, optgroup, select, textarea {
font: inherit;
margin: 0;
}
optgroup {
font-weight: 700;
}
button, input {
overflow: visible;
}
button, select {
text-transform: none;
}
[type="reset"],
[type="submit"],
button,
html [type="button"] {
-webkit-appearance: button;
}
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
border-style: none;
padding: 0;
}
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
outline: 1px dotted ButtonText;
}
fieldset {
border: 1px solid silver;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
legend {
box-sizing: border-box;
color: inherit;
display: table;
max-width: 100%;
padding: 0;
white-space: normal;
}
textarea {
overflow: auto;
}
[type="checkbox"],
[type="radio"] {
box-sizing: border-box;
padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-input-placeholder {
color: inherit;
opacity: 0.54;
}
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}
*, *:before, *:after {
box-sizing: inherit;
}
html {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
color: hsla(0, 0%, 0%, 0.8);
font-weight: normal;
word-wrap: break-word;
font-kerning: normal;
}
html, body, hgroup, ul, ol, dl, dd, p, pre, figure, table, fieldset, blockquote, form, noscript, iframe, hr, address, img,
h1, h2, h3, h4, h5, h6 {
margin: 0;
padding: 0;
}
img {
max-width: 100%;
margin-bottom: 1.45rem;
}
h1, h2, h3, h4, h5, h6 {
font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
color: inherit;
font-weight: bold;
line-height: 1.1;
}
h1 {
margin-bottom: 1.45rem;
font-size: 2.25rem;
}
h2 {
margin-bottom: 1.45rem;
font-size: 1.62671rem;
}
h3 {
margin-bottom: 1.45rem;
font-size: 1.38316rem;
}
h4 {
margin-bottom: 1.45rem;
font-size: 1rem;
}
h5 {
margin-bottom: 1.45rem;
font-size: 0.85028rem;
}
h6 {
margin-bottom: 1.45rem;
font-size: 0.78405rem;
}
hgroup {
margin-bottom: 1.45rem;
}
ul {
margin-left: 1.45rem;
margin-bottom: 1.45rem;
list-style-position: outside;
list-style-image: none;
}
ol {
margin-left: 1.45rem;
margin-bottom: 1.45rem;
list-style-position: outside;
list-style-image: none;
}
dl {
margin-bottom: 1.45rem;
}
dd {
margin-bottom: 1.45rem;
}
p {
margin-bottom: 1.45rem;
}
figure {
margin-bottom: 1.45rem;
}
pre {
margin-bottom: 1.45rem;
font-size: 0.85rem;
line-height: 1.42;
background: hsla(0, 0%, 0%, 0.04);
border-radius: 3px;
overflow: auto;
word-wrap: normal;
padding: 1.45rem;
}
table {
margin-bottom: 1.45rem;
font-size: 1rem;
line-height: 1.45rem;
border-collapse: collapse;
width: 100%;
}
fieldset {
margin-bottom: 1.45rem;
}
blockquote {
margin-left: 1.45rem;
margin-right: 1.45rem;
margin-bottom: 1.45rem;
}
form {
margin-bottom: 1.45rem;
}
noscript {
margin-bottom: 1.45rem;
}
iframe {
margin-bottom: 1.45rem;
}
hr {
margin-bottom: calc(1.45rem - 1px);
background: hsla(0, 0%, 0%, 0.2);
border: none;
height: 1px;
}
address {
margin-bottom: 1.45rem;
}
b, strong, dt, th {
font-weight: bold;
}
li {
margin-bottom: calc(1.45rem / 2);
}
ol li, ul li {
padding-left: 0;
}
li > ol {
margin-left: 1.45rem;
margin-bottom: calc(1.45rem / 2);
margin-top: calc(1.45rem / 2);
}
li > ul {
margin-left: 1.45rem;
margin-bottom: calc(1.45rem / 2);
margin-top: calc(1.45rem / 2);
}
blockquote *:last-child, li *:last-child, p *:last-child {
margin-bottom: 0;
}
li > p {
margin-bottom: calc(1.45rem / 2);
}
code {
font-size: 0.85rem;
line-height: 1.45rem;
}
kbd {
font-size: 0.85rem;
line-height: 1.45rem;
}
samp {
font-size: 0.85rem;
line-height: 1.45rem;
}
abbr, acronym, abbr[title] {
border-bottom: 1px dotted hsla(0, 0%, 0%, 0.5);
cursor: help;
}
abbr[title] {
text-decoration: none;
}
thead {
text-align: left;
}
td,
th {
text-align: left;
border-bottom: 1px solid hsla(0, 0%, 0%, 0.12);
font-feature-settings: "tnum";
-moz-font-feature-settings: "tnum";
-ms-font-feature-settings: "tnum";
-webkit-font-feature-settings: "tnum";
padding-left: 0.96667rem;
padding-right: 0.96667rem;
padding-top: 0.725rem;
padding-bottom: calc(0.725rem - 1px);
}
th:first-child,
td:first-child {
padding-left: 0;
}
th:last-child,
td:last-child {
padding-right: 0;
}
tt,
code {
background-color: hsla(0, 0%, 0%, 0.04);
border-radius: 3px;
font-family: "SFMono-Regular", Consolas, "Roboto Mono", "Droid Sans Mono",
"Liberation Mono", Menlo, Courier, monospace;
padding: 0;
padding-top: 0.2em;
padding-bottom: 0.2em;
}
pre code {
background: none;
line-height: 1.42;
}
code:before,
code:after,
tt:before,
tt:after {
letter-spacing: -0.2em;
content: " ";
}
pre code:before,
pre code:after,
pre tt:before,
pre tt:after {
content: "";
}
@media only screen and (max-width: 480px) {
html {
font-size: 100%;
}
}
.simple-columns {
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-wrap: nowrap;
margin-bottom: 1em;
gap: 16pt;
}
.simple-columns p {
text-align: justify;
text-justify: inter-word;
}
.simple-columns img {
border: 1px solid black;
}
.simple-columns * {
flex-wrap: nowrap;
width: 100%;
background: solid blue;
padding: 0;
margin: 0;
}
.float img {
float:left;
padding-right: 16pt;
}
.float-right img {
float:right;
padding-left: 16pt;
}
.column-grid {
border: 1px solid black;
padding: 1em;
}
.column-grid > * {
margin: 1em;
}
.twocolumns {
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-wrap: nowrap;
gap: 16pt;
width: 100%;
}
.twocolumns * {
padding: 0;
margin: 0;
width: 100%;
flex-grow: 1;
flex-basis: 50%;
}
.twocolumns img {
width: 49vw;
}
.columns {
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-wrap: wrap;
gap: 16pt;
}
.columns p, .columns div {
padding: 0;
margin: 0;
flex-basis: 30vw;
flex-grow: 1;
background: solid blue;
margin-bottom: 1em;
text-align: justify;
text-justify: inter-word;
}
.columns img {
border: 1px solid black;
}
@media only screen and (max-width: 1100px) {
.columns p, .columns div {
flex-basis: 35vw;
}
}
@media only screen and (min-width: 2400px) {
.columns p, .columns div {
flex-basis: 15vw;
}
}
div.goals {
background-color: rgba(var(--colorUtu2d), 0.5);
border: 1px solid var(--colorUtu5);
border-radius: 15px;
padding: 8px;
}
div.goals h3 {
width: 100%;
background-color: rgba(var(--colorUtu1d), 0.5);
border-radius: 15px;
padding: 8px;
text-align: center;
}
div.goals h3::before, div.goals ul li::before {
content: "🎓 "
}
div.goals h3::after {
content: " 🎓"
}
div.goals ul {
list-style: none;
}
div.important, span.important {
background-color: rgba(var(--colorUtu3d), 0.3);
border: 1px solid var(--colorUtu5);
border-radius: 15px;
padding: 8px;
margin-top: 8px;
margin-bottom: 8px;
}
div.important > *:first-child::before {
content: "❗ "
}
div.important > *:last-child::after {
content: " ❗"
}
div.nicetoknow {
background-color: rgba(var(--colorUtu4d), 0.1);
border: 1px solid var(--colorUtu5);
border-radius: 15px;
padding: 8px;
margin-top: 8px;
margin-bottom: 8px;
}
div.nicetoknow > *:first-child::before {
content: "💡 Nice to know 💡\A ";
font-weight: bold;
}
:root {
--pageWidth: 894px;
--backgroundColor: #fff;
--colorUtu1: #8b5dcb;
--colorUtu2: #78c8d2;
--colorUtu3: #f8485e;
--colorUtu4: #adcb00;
--colorUtu5: #000;
--colorUtu6: #868686;
--colorUtu7: #b1b1b0;
--colorUtu8: #d9d9d9;
--colorUtu9: #ffffff;
--colorUtu1d: 139, 93, 203;
--colorUtu2d: 120, 200, 210;
--colorUtu3d: 248, 72, 94;
--colorUtu4d: 173, 203, 0;
}
.external-nav * {
font-weight: bold;
padding-left: 0.5em;
padding-right: 0.5em;
border-radius: 25px;
}
.nav-separator {
display: none;
}
.toplogo {
width: 7.020rem;
height: 2rem;
margin: 0;
padding: 0;
margin-top:0.2em;
margin-right: 1em;
margin-left: 20px;
}
.topnav {
padding-bottom: 0.5em;
border-bottom: 1px solid var(--colorUtu8);
}
header {
margin: 0;
padding: 0;
background-color: var(--colorUtu9);
}
header .topbar {
background-color: var(--colorUtu1);
color: var(--colorUtu9);
padding: 8px;
display: flex;
justify-content: space-between;
}
header .topbar div {
display: flex;
justify-content: center;
align-items: top;
}
header .topbar div * {
padding-right: 0.2em;
color: var(--colorUtu9);
}
header a:hover {
text-decoration: underline solid var(--colorUtu9);
}
header .page-section {
font-size: 2em;
}
header a, footer a {
text-decoration: none;
}
header .sectiontitle {
font-size: 150%;
}
header a {
color: var(--colorUtu5);
}
.header-content {
display: flex;
flex-wrap: wrap;
align-items: flex-end;
justify-content: space-between;
}
footer {
background: var(--colorUtu5);
color: var(--colorUtu9);
font-size: 87.4975%;
padding-left: 3.25rem;
padding-bottom: 1.475rem;
padding-right: 3.25rem;
padding-top: 1.475rem;
}
footer .copyright {
padding-top: 0.3em;
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
text-transform: uppercase;
}
footer .licenses img {
width: 2.5em;
height: 2.5em;
margin: 0;
padding: 0;
}
footer .licenses {
white-space: nowrap;
padding-top: 0.3em;
width: 100%;
display: flex;
justify-content: flex-end;
}
footer .external-nav {
border-bottom: 1px solid var(--colorUtu9);
}
footer .external-nav {
margin: 0;
padding: 0;
text-transform: uppercase;
}
footer .external-nav .active {
background: var(--colorUtu4);
}
footer .external-nav a:hover {
background: var(--colorUtu1);
}
footer a {
color: var(--colorUtu9);
}
footer a:hover {
text-decoration: underline solid var(--colorUtu9);
}
.footer-right {
max-width: 50%;
}
.footer-content {
width: 100%;
max-width: 1920px;
margin-left: auto;
margin-right: auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
footer #site-status {
background-color: var(--colorUtu3);
color: var(--colorUtu9);
mid-width: 2em;
position: fixed;
bottom: 0;
left: 0;
border-radius: 0px 6px 0px 0px;
}
footer #site-status .tooltip {
background-color: var(--colorUtu1);
color: var(--colorUtu9);
visibility: hidden;
min-width: 3em;
min-height: 3em;
border-radius: 6px;
padding: 4px;
position: fixed;
bottom: 1em;
left: 1em;
z-index: 1;
}
footer #site-status:hover .tooltip {
visibility: visible;
}
footer #site-status p {
padding: 4px;
margin: 0;
color: var(--colorUtu9);
}
footer #site-info {
background-color: var(--colorUtu3);
color: var(--colorUtu9);
width: 100%;
padding: 0;
position: fixed;
bottom: 0;
left: 0;
}
footer #site-info p {
padding-top: 8px;
padding-right: 0.2em;
color: var(--colorUtu9);
}
.sitebranding {
width: 14.040rem;
height: 3.967rem;
flex: 0 0 auto;
flex-shrink: 0;
margin: 0;
}
header .topbar .homelink {
display: none;
}
@media (min-width:50em) {
.sitebranding {
width: 15.100rem;
height: 4.267rem;
}
}
@media (min-width:60em) {
.sitebranding {
width: 16.400rem;
height: 4.634rem;
}
}
@media (min-width:80em) {
.sitebranding {
width: 17.700rem;
height: 5.002rem;
}
}
@media only screen and (max-width: 780px) {
footer .external-nav {
display: flex;
justify-content: center;
margin: 0;
padding:0;
}
footer, footer div {
display: block;
padding:0;
padding-top: 1em;
}
.sitebranding {
display: block;
margin-left: auto;
margin-right: auto;
}
footer .copyright {
display: flex;
justify-content: center;
}
footer .licenses {
justify-content: center;
}
.footer-content {
display: block;
padding:0;
flex-wrap: wrap;
justify-content: center;
}
.footer-right {
margin-left: auto;
margin-right: auto;
}
footer .copyright * {
text-align: center;
}
header .topbar .profilelink span {
display:none;
}
header .topbar .profilelink:after {
content: "👤";
}
header .topbar .helplink span {
display:none;
}
header .topbar .helplink:after {
content: "❔";
}
header .topbar .homelink {
display:block;
}
.toplogo {
display: none;
}
}
html {
font: 120% brother-1816, sans-serif;
box-sizing: border-box;
overflow-y: scroll;
}
.layout {
background-color: var(--colorUtu9);
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
justify-content: top;
justify-content: space-between;
align-items: top;
min-height: 100vh;
}
.page-layout {
background-color: var(--colorUtu8);
display: flex;
justify-content: center;
flex-grow: 1;
}
.page-container {
background-color: var(--colorUtu9);
max-width: 1920px;
padding: 1em;
}
.thesis-layout {
background-color: var(--colorUtu8);
display: flex;
}
.thesis-layout .infobar {
background-color: var(--colorUtu9);
margin: 0.5em;
padding: 0.5em;
padding-top: 1em;
padding-bottom: 1em;
}
.thesis-layout .infobar th {
background-color: var(--colorUtu2);
border-bottom: 1px solid black;
padding: 0;
margin: 0;
}
.thesis-layout .infobar td {
padding: 0em;
padding-left: 0.3em;
margin: 0;
}
.thesis-layout .infobar table {
border: 2pt solid black;
}
.site-nav {
margin: 0;
padding-top: 1em;
padding-bottom: 1em;
}
.site-nav ul, .site-nav li {
margin: 0;
padding: 0;
list-style: none;
}
.site-nav a {
display: block;
text-decoration: none;
color: var(--colorUtu5);
height: 4em;
background-color: var(--colorUtu2);
font-family: "Comic Sans Ms";
font-weight: bold;
border-radius: 5px;
text-align: center;
padding: 6px;
}
.site-nav ul {
display: flex;
align-items: center;
flex-flow: row wrap;
justify-content: space-between;
}
.site-nav ul.section {
padding: 2px;
display: flex;
align-items: center;
border: var(--colorUtu1) dotted;
flex-flow: nowrap;
border-radius: 10px;
}
.site-nav ul li {
flex: 1;
}
.site-nav ul li a.home {
width: 100%;
line-height: 3em;
}
.site-nav ul.section:hover {
background-color: var(--colorUtu1);
}
.site-nav ul li a.active {
background: var(--colorUtu1);
}
.site-nav ul li a:hover {
background: var(--colorUtu4);
}
.site-nav ul.section li + li {
margin-left: 10px;
}
.site-nav li.section + li.section {
margin-left: 10px;
}
.site-nav ul.fi li a.part:before {
content: "Osa "; display: block;
}
.site-nav ul.en li a.part:before {
content: "Part "; display: block;
}
.site-nav ul.fi li a.home:before {
content: ""
}
.site-nav ul.en li a.home:before {
content: ""
}
.page-header {
padding-top: 0.5em;
padding-bottom: 0.5em;
margin-bottom: 1em;
margin-top: 1em;
border-top: 2px solid var(--colorUtu2);
border-bottom: 2px solid var(--colorUtu2);
border-right: 2px solid var(--colorUtu2);
}
.page-header span {
font-size: 2em;
margin: 0.67em 0;
}
.page-header * {
text-decoration: none;
}
.main-content section {
border-top: 1px solid var(--colorUtu8);
padding-top: 8px;
}
.section-header {
border-bottom: solid 1px #eee;
display: flex;
justify-content: space-between;
padding-top: 0;
padding-bottom: 0;
width: 100%;
}
.section-header h2 {
padding: 0;
margin: 0;
padding-top: 0.2em;
padding-bottom: 0.2em;
}
.section-header h2.isolated {
padding-top: 2.5em;
}
@media only screen and (max-width: 780px) {
.page-container, .main-lecture pre {
padding: 0;
}
.page-container {
max-width: 100vw;
}
.main-lecture a, .page-header span, .main-lecture pre {
-ms-word-break: break-all;
word-break: break-all;
word-break: break-word;
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
.page-layout {
padding: 4px;
}
.site-nav {
margin: 0;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.site-nav a {
display: block;
height: auto;
font-weight: normal;
border-radius: 0px;
padding: 6px;
}
.site-nav.fi:before {
content: "Osat:"
}
.site-nav.en:before {
content: "Parts:"
}
.site-nav ul.fi li a.part:before {
content: ""
}
.site-nav ul.en li a.part:before {
content: ""
}
.site-nav ul a {
height: auto;
border-radius: 10px;
}
.site-nav ul.section a {
height: auto;
}
.site-nav ul li a.home {
width: 100%;
line-height: inherit;
}
.site-nav ul.section {
padding: 4px;
margin: 2px;
background-color: rgba(var(--colorUtu2d), 0.5);
border: 0px;
border-radius: 5px;
}
}
.cards {
display: flex;
flex-flow: row wrap;
justify-content: flex-start;
width: 100%;
}
.card {
display: flex;
flex-direction: column;
justify-content: space-between;
border: solid 1.5px var(--colorUtu7);
padding: 8px;
border-radius: 15px;
}
.course-card {
background-color: #fcfcfc;
width: 400px;
margin: 8px;
}
.course-card.hide {
display: none;
}
.course-card h3 {
margin-top: 0;
}
.course-card img {
width: 382px;
height: 152px;
margin-bottom: 0.5em;
}
.course-card a {
text-decoration: none;
color: var(--colorUtu5);
}
.course-card a:hover {
text-decoration: underline solid var(--colorUtu5);
}
.course-card .card-footer {
background-color: rgba(var(--colorUtu2d), 0.25);
border-radius: 8px;
padding-right: 4px;
padding-left: 4px;
margin-top: 1em;
width: 100%;
min-height: 48px;
display: flex;
justify-content: center;
flex-direction: column;
}
.course-card .organizer {
text-align: center;
text-decoration: none;
color: var(--colorUtu5);
}
.course-card .card-operation {
text-align: center;
text-decoration: none;
color: var(--colorUtu5);
cursor: hand;
cursor: pointer;
}
.course-card .card-operation:hover {
background: var(--colorUtu1);
}
@media only screen and (max-width: 780px) {
.course-card {
width: 100%;
border: 1;
margin: 0;
padding: 0;
padding-top: 8px;
margin-bottom: 16px;
}
.course-card img {
width: 100%;
height: auto;
}
.course-card .card-body, .course-card .card-footer {
text-align: center;
}
}
.page-container {
background-color: #f8f8f8;
max-width: 1920px;
padding: 1em;
}
h1.title {
font-size: 4rem;
margin-bottom: 8pt;
}
.columns {
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-wrap: nowrap;
gap: 1rem;
width: 100%;
max-width: 1920px;
}
@media only screen and (max-width: 95rem) {
.columns {
display: block;
width: 100%;
}
.columns div {
flex-grow: 1;
margin: 0;
width: 100%;
}
}
@media only screen and (min-width: 2000px) and (max-width: 115rem) {
.columns div {
flex-grow: 1;
margin: 0;
}
}
.main-menu {
border-radius: 10px;
background-color: var(--colorUtu9);
box-shadow: 0 10px 6px -6px #777;
}
.main-menu .title {
color: var(--colorUtu6);
font-family: Verdana, Geneva, Tahoma, sans-serif;
font-size: 3.5rem;
font-weight: bolder;
text-transform: uppercase;
text-shadow: 1.0rem 0.5rem rgb(245,245,245);
margin-left: 15px;
margin-right: 15px;
}
.main-menu a:hover {
box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
border-left: 10px solid var(--colorUtu1);
-webkit-transition: 0.5s ease-out;
-moz-transition: 0.5s ease-out;
-o-transition: 0.5s ease-out;
transition: 0.5s ease-out;
}
.main-menu a {
display: flex;
align-items: flex-start;
flex-wrap: nowrap;
color: var(--text-color);
text-decoration: none;
font-size: 0.8rem;
border-radius: 5px;
background: var(--colorUtu9);
margin-bottom: 4pt;
margin-top: 4pt;
padding: 10px 25px;
border-left: 10px solid var(--colorUtu9);
box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
text-wrap: wrap;
height: 7rem;
}
.main-menu a div {
margin: 0;
}
.main-menu .icon {
margin: 0;
border: 0;
width: 10vw;
max-width: 5rem;
padding-right: 1rem;
}
.main-menu a div :nth-child(1) {
font-size: 1.5rem;
font-weight: bold;
}
.main-menu a div :nth-child(2) {
font-size: 1.5rem;
font-weight: 300;
white-space: wrap;
text-overflow: ellipsis;
overflow: hidden;
}
