@font-face {
    font-family: 'Inter';
    src: URL('/fonts/Inter-VariableFont_slnt,wght.ttf') format('truetype');
    font-display: block; /* Fix flickering */
}

 

body {
    font-family: 'Inter';
    font-display: block; /* Fix flickering */
}



.aboutDiv{
  display:grid;
  grid-template-columns: 25% 75%;
  max-width: 100%;

}
.aboutPicture{
  grid-column: 1;
  margin-top: 0;
  margin-right: 4%;
  max-width: 100%;
}
.aboutText{
  grid-column: 2;
  margin-left: 4%;
}



@media (max-width: 25rem) {
  .aboutDiv{
    display:grid;
    grid-template-columns:1fr;
  }

  .aboutPicture{
    grid-column: 1;
    margin-top: 0rem;
    margin-right: 0;
  }
  .aboutText{
    grid-column: 1;
    margin-left: 0;
  }
  
  
}


.articleNest {
  text-decoration: none;
  color: inherit;
}

.articleNest:link, .articleNest:visited {
  text-decoration: none;
  color: inherit;

}

/*    here we have styling for lemmas and co  */

.definition, .lemma, .theorem, .proposition, .example, .info{
    border-radius: 1;
    border-width: 1px;
    border-style: solid;
    padding: 5px;
    display:block;margin:1ex 0pt
}


.proof{
    padding-bottom: 25px;
}


.proof:after {
    content: "\25FC";
    float:right;
}

.lemma{
    background-color: #dcf6f7;
}

.example {
    background-color: #f2f9ff;
    border-color: #cfcfcf;
}

.theorem {
    background-color:rgb(233, 233, 255);
    border-color: rgba(0,0, 0);
}

.info {
    background-color:rgb(233, 233, 255);
    border-color: rgba(0,0, 0);
}

.definition {
    background-color: #fff4ec;
}


h1, h2, h3, h4, h5, h6{
    font-family: 'Inter', serif;
    font-weight: 600;
}

.sourceCode { overflow: visible; }
code.sourceCode > span { color: inherit; text-decoration: inherit; }
div.sourceCode { margin: 1em 0; }
pre.sourceCode { margin: 0; }
@media screen {
div.sourceCode { overflow: auto; }
}
@media print {
pre > code.sourceCode { white-space: pre-wrap; }
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
}
pre.numberSource code
{ counter-reset: source-line 0; }
pre.numberSource code > span
{ position: relative; left: -4em; counter-increment: source-line; }
pre.numberSource code > span > a:first-child::before
{ content: counter(source-line);
position: relative; left: -1em; text-align: right; vertical-align: baseline;
border: none; display: inline-block;
-webkit-touch-callout: none; -webkit-user-select: none;
-khtml-user-select: none; -moz-user-select: none;
-ms-user-select: none; user-select: none;
padding: 0 4px; width: 4em;
color: #aaaaaa;
}
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa;  padding-left: 4px; }
@media screen {
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
}
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code span.at { color: #7d9029; } /* Attribute */
code span.bn { color: #40a070; } /* BaseN */
code span.bu { color: #008000; } /* BuiltIn */
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code span.ch { color: #4070a0; } /* Char */
code span.cn { color: #880000; } /* Constant */
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
code span.dt { color: #902000; } /* DataType */
code span.dv { color: #40a070; } /* DecVal */
code span.er { color: #ff0000; font-weight: bold; } /* Error */
code span.fl { color: #40a070; } /* Float */
code span.fu { color: #06287e; } /* Function */
code span.im { color: #008000; font-weight: bold; } /* Import */
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
code span.op { color: #666666; } /* Operator */
code span.ot { color: #007020; } /* Other */
code span.pp { color: #bc7a00; } /* Preprocessor */
code span.sc { color: #4070a0; } /* SpecialChar */
code span.ss { color: #bb6688; } /* SpecialString */
code span.st { color: #4070a0; } /* String */
code span.va { color: #19177c; } /* Variable */
code span.vs { color: #4070a0; } /* VerbatimString */
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */




/* ==== GRID SYSTEM ==== */

/* code from https://simplegrid.io/  */

.container {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.row {
  position: relative;
  width: 100%;
}

.row [class^="col"] {
  float: left;
  margin: 0.5rem 2%;
  min-height: 0.125rem;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
  width: 96%;
}

.col-1-sm {
  width: 4.33%;
}

.col-2-sm {
  width: 12.66%;
}

.col-3-sm {
  width: 21%;
}

.col-4-sm {
  width: 29.33%;
}

.col-5-sm {
  width: 37.66%;
}

.col-6-sm {
  width: 46%;
}

.col-7-sm {
  width: 54.33%;
}

.col-8-sm {
  width: 62.66%;
}

.col-9-sm {
  width: 71%;
}

.col-10-sm {
  width: 79.33%;
}

.col-11-sm {
  width: 87.66%;
}

.col-12-sm {
  width: 96%;
}

.row::after {
	content: "";
	display: table;
	clear: both;
}

.hidden-sm {
  display: none;
}

@media only screen and (min-width: 33.75em) {  /* 540px */
  .container {

  }
}

@media only screen and (min-width: 45em) {  /* 720px */
  .col-1 {
    width: 4.33%;
  }

  .col-2 {
    width: 12.66%;
  }

  .col-3 {
    width: 21%;
  }

  .col-4 {
    width: 29.33%;
  }

  .col-5 {
    width: 37.66%;
  }

  .col-6 {
    width: 46%;
  }

  .col-7 {
    width: 54.33%;
  }

  .col-8 {
    width: 62.66%;
  }

  .col-9 {
    width: 71%;
  }

  .col-10 {
    width: 79.33%;
  }

  .col-11 {
    width: 87.66%;
  }

  .col-12 {
    width: 96%;
  }

  .hidden-sm {
    display: block;
  }
}

@media only screen and (min-width: 60em) { /* 960px */
}


.projectDiv{
  border: 1px solid var(--border);
  padding: 16px;
  background-color: var(--accent-bg);
}

/* make h2 empty space smaller */

.projectDiv p{
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.projectDiv h2{
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.projectDiv a {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

/* News callout styling */
.news {
    padding: 16px 18px;
    margin-bottom: 32px;
    border-radius: 8px;
    background: rgb(228, 226, 236);
    border: 1px solid #ccc;
    color: #2d3748;
}

.news p {
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
}

.news a {
    color: #1d0bc0;
    text-decoration: underline;
    transition: color 0.2s ease;
}

.news a:hover {
    color: grey;
}

/* Better typography hierarchy */
h2 {
    font-size: 2rem;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
    line-height: 1.2;
}

h3 {
    font-size: 1.5rem;
    margin-top: 2rem;
    margin-bottom: 0.75rem;
    line-height: 1.3;
    color: #2d3748;
}

/* Better spacing for about sections */
.aboutText h3 {
    border-bottom: 2px solid #e2e8f0;
    padding-bottom: 0.5rem;
    margin-bottom: 1.5rem;
}

.aboutText p {
    margin-bottom: 1.25rem;
    line-height: 1.7;
}

.aboutText ul {
    margin-bottom: 1.5rem;
}

.aboutText ul ul {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}