From bb9eeb744a95620b1263ece71f05939b0ce148ae Mon Sep 17 00:00:00 2001
From: Camil Staps
Date: Wed, 29 Nov 2023 17:12:53 +0100
Subject: Do not put navigation next to profile image (on wide screens); make
 nnavigation sticky on small screens
---
 resources/pug/finals/index.pug | 661 +++++++++++++++++++++--------------------
 resources/sass/style.scss      |  49 ++-
 2 files changed, 373 insertions(+), 337 deletions(-)
(limited to 'resources')
diff --git a/resources/pug/finals/index.pug b/resources/pug/finals/index.pug
index 4b79fc9..67e0ebc 100644
--- a/resources/pug/finals/index.pug
+++ b/resources/pug/finals/index.pug
@@ -24,358 +24,359 @@ block content
 			li(role='presentation') #[a(href='#employment') Employment]
 			li(role='presentation') #[a(href='#education') Education]
 
-	header#introduction
-		div(style="display:table-row;")
-			img#profile(alt="Camil Staps", style="vertical-align:bottom;", src="/assets/img/profile.jpg", width="170")
-			div#basicinfo(style="display:table-cell;vertical-align:bottom;")
-				h1
-					| Camil Staps 
-					small.nowrap [ka'mil stɑps]
-					small  
-					small.nowrap he/his
-				p
-					span.tt.obfuscate
-						| info@c
-						span dummy
-						| amilst
-						span dummy
-						| aps.nl
-				p(style="margin-bottom:1em;")
-					a(href="https://leidenuni.academia.edu/CamilStaps")
-						i.ai.ai-lg.ai-academia(title="Academia.edu")
-					|  
-					a(href="https://orcid.org/0000-0003-1164-6838")
-						i.ai.ai-lg.ai-orcid(title="ORCiD")
-					|  
-					a(href="https://mstdn.social/@CamilStaps", rel="me")
-						i.fab.fa-lg.fa-mastodon(title="Mastodon")
-					|  
-					a(href="https://gitlab.com/camilstaps")
-						i.fab.fa-lg.fa-gitlab(title="GitLab")
-					|  
-					a(href="https://github.com/camilstaps")
-						i.fab.fa-lg.fa-github(title="GitHub")
-					|  
-					a(href="https://nl.linkedin.com/in/camilstaps")
-						i.fab.fa-lg.fa-linkedin(title="LinkedIn")
+	.container#content
+		header#introduction
+			div(style="display:table-row;")
+				img#profile(alt="Camil Staps", style="vertical-align:bottom;", src="/assets/img/profile.jpg", width="170")
+				div#basicinfo(style="display:table-cell;vertical-align:bottom;")
+					h1
+						| Camil Staps 
+						small.nowrap [ka'mil stɑps]
+						small  
+						small.nowrap he/his
+					p
+						span.tt.obfuscate
+							| info@c
+							span dummy
+							| amilst
+							span dummy
+							| aps.nl
+					p(style="margin-bottom:1em;")
+						a(href="https://leidenuni.academia.edu/CamilStaps")
+							i.ai.ai-lg.ai-academia(title="Academia.edu")
+						|  
+						a(href="https://orcid.org/0000-0003-1164-6838")
+							i.ai.ai-lg.ai-orcid(title="ORCiD")
+						|  
+						a(href="https://mstdn.social/@CamilStaps", rel="me")
+							i.fab.fa-lg.fa-mastodon(title="Mastodon")
+						|  
+						a(href="https://gitlab.com/camilstaps")
+							i.fab.fa-lg.fa-gitlab(title="GitLab")
+						|  
+						a(href="https://github.com/camilstaps")
+							i.fab.fa-lg.fa-github(title="GitHub")
+						|  
+						a(href="https://nl.linkedin.com/in/camilstaps")
+							i.fab.fa-lg.fa-linkedin(title="LinkedIn")
 
-	hr
+		hr
 
-	section
-		p.larger#lead
-			| I am a PhD candidate in linguistics.
-			| My interests are in semantics and its interfaces with morphosyntax and pragmatics.
-		p.larger
-			| The Bigger Question I try to answer is what language can tell us about how abstract concepts like causation and evidentiality are represented in the mind.
-			| In particular, I study the relation between spatial and non-spatial meanings of prepositions, demonstratives, and other function words.
-		p.larger
-			| I do this at #[a(href="https://www.universiteitleiden.nl/", target="_blank") Leiden University]
-			| and #[a(href="https://www.ru.nl/") Radboud University]
-			| under the supervision of #[a(href="https://www.rooryck.org/") Johan Rooryck]
-			| and #[a(href="https://radboud.academia.edu/ellenvanwolde") Ellen van Wolde].
+		section
+			p.larger#lead
+				| I am a PhD candidate in linguistics.
+				| My interests are in semantics and its interfaces with morphosyntax and pragmatics.
+			p.larger
+				| The Bigger Question I try to answer is what language can tell us about how abstract concepts like causation and evidentiality are represented in the mind.
+				| In particular, I study the relation between spatial and non-spatial meanings of prepositions, demonstratives, and other function words.
+			p.larger
+				| I do this at #[a(href="https://www.universiteitleiden.nl/", target="_blank") Leiden University]
+				| and #[a(href="https://www.ru.nl/") Radboud University]
+				| under the supervision of #[a(href="https://www.rooryck.org/") Johan Rooryck]
+				| and #[a(href="https://radboud.academia.edu/ellenvanwolde") Ellen van Wolde].
 
-	section#publications
-		h2 Publications
-		mixin pub(year, title)
-			p
-				if attributes.oa
-					if attributes.doi
-						- var oaurl = 'https://doi.org/'+attributes.doi
-					else if attributes.url
-						- var oaurl = attributes.url
-					else
-						- throw 'pub: oa set but no doi or url'
-					a.oa(href!=oaurl, target='_blank')
-						i.ai.ai-lg.ai-open-access(title="Open Access")
+		section#publications
+			h2 Publications
+			mixin pub(year, title)
+				p
+					if attributes.oa
+						if attributes.doi
+							- var oaurl = 'https://doi.org/'+attributes.doi
+						else if attributes.url
+							- var oaurl = attributes.url
+						else
+							- throw 'pub: oa set but no doi or url'
+						a.oa(href!=oaurl, target='_blank')
+							i.ai.ai-lg.ai-open-access(title="Open Access")
 
-				if !attributes.authors
-					- attributes.authors = 'Staps, Camil'
-				| !{attributes.authors}, #{year}. 
-				|
-				if attributes.url
-					a(href!=attributes.url, target='_blank')!= title
-				else
-					| !{title}
-				|
-				if attributes.journal
-					|. !{attributes.prejournal}#[em!=attributes.journal]
-					if attributes.volume
-						|  #{attributes.volume}
-						if attributes.issue
-							| (#{attributes.issue})
-				else if attributes.booktitle
-					| . In !{attributes.editors} (eds.), #[em!=attributes.booktitle]
-				else if attributes.misc
-					| . #{attributes.misc}
-				if attributes.pages
-					- attributes.pages = attributes.pages.replace('-', '–')
-					if attributes.journal
-						| . !{attributes.pages}
+					if !attributes.authors
+						- attributes.authors = 'Staps, Camil'
+					| !{attributes.authors}, #{year}. 
+					|
+					if attributes.url
+						a(href!=attributes.url, target='_blank')!= title
 					else
-						| , !{attributes.pages}
-				| .
-				if attributes.address
-					|  #{attributes.address}:
-				if attributes.publisher
-					|  #{attributes.publisher}.
-				if attributes.doi
-					|  #[span.sc doi]: 
-					- var doiurl = 'https://doi.org/'+attributes.doi
-					a(href!=doiurl, target='_blank')!= attributes.doi
+						| !{title}
+					|
+					if attributes.journal
+						|. !{attributes.prejournal}#[em!=attributes.journal]
+						if attributes.volume
+							|  #{attributes.volume}
+							if attributes.issue
+								| (#{attributes.issue})
+					else if attributes.booktitle
+						| . In !{attributes.editors} (eds.), #[em!=attributes.booktitle]
+					else if attributes.misc
+						| . #{attributes.misc}
+					if attributes.pages
+						- attributes.pages = attributes.pages.replace('-', '–')
+						if attributes.journal
+							| . !{attributes.pages}
+						else
+							| , !{attributes.pages}
 					| .
-		mixin review(year, author, title)
-			+pub(year, 'Review of: ' + author + ', ' + title)&attributes(attributes)
+					if attributes.address
+						|  #{attributes.address}:
+					if attributes.publisher
+						|  #{attributes.publisher}.
+					if attributes.doi
+						|  #[span.sc doi]: 
+						- var doiurl = 'https://doi.org/'+attributes.doi
+						a(href!=doiurl, target='_blank')!= attributes.doi
+						| .
+			mixin review(year, author, title)
+				+pub(year, 'Review of: ' + author + ', ' + title)&attributes(attributes)
 
-		h4 Refereed articles
-		table.main_table.publications
-			tr
-				td In preparation
-				td
-					+pub('in preparation', 'Complementation and Common Ground: Discursive effects in Biblical Hebrew')(url='https://lingbuzz.net/lingbuzz/007711', oa)
-			tr
-				td
-				td
-					+pub('in preparation', 'Formalizing spatial-causal polysemy of Agent prepositions')(authors='Staps, Camil & Johan Rooryck', prejournal='Under revision for ', journal='Semantics & Pragmatics', url='https://lingbuzz.net/lingbuzz/007721', oa)
-			tr
-				td
-				td
-					+pub('in preparation', 'Semantic properties of prepositions: The distinction between causal min ‘from’ and bə ‘in’')(authors='Staps, Camil & Martijn Beukenhorst', url='https://lingbuzz.net/lingbuzz/007716', oa)
-			tr
-				td 2023
-				td
-					+pub(2023, 'The interpretation of [+distal] in demonstratives and complementizers')(authors='Staps, Camil & Johan Rooryck', journal='Linguistics', volume=61, issue=5, pages='1195-1231', doi='10.1515/ling-2022-0178', oa)
-			tr
-				td 2022
-				td
-					+pub(2022, 'Voice, discourse prominence, and aspect: The niphal and passive qal of yālad')(booktitle='Where is the way to the dwelling of light? Studies in Genesis, Job and linguistics in honor of Ellen van Wolde', editors='Pierre Van Hecke & Hanneke van Loon', pages='387-408', address='Leiden', publisher='Brill', doi='10.1163/9789004536296_020')
-			tr
-				td
-				td
-					+pub(2022, 'Lip̄nē ‘in the face of’: a Locative preposition with a threatening connotation')(journal='Journal of Hebrew Scriptures', volume=22, issue=1, pages='1-24', doi='10.5508/jhs29582', oa)
-			tr
-				td 2020
-				td
-					+pub(2020, '“When dust was poured out”: Creation in Job 38.36–38')(journal='Journal for the Study of the Old Testament', volume=44, issue=3, pages='456-471', doi='10.1177/0309089219862828', oa)
-			tr
-				td
-				td
-					+pub(2020, 'Prepositions and the grammaticalization of Ancient Hebrew bipartite reciprocal markers')(journal='Journal of Semitic Studies', volume=65, issue=1, pages='61-84', doi='10.1093/jss/fgz050', oa)
-			tr
-				td 2019
-				td
-					+pub(2019, 'Lazy interworking of compiled and interpreted code for sandboxing and distributed systems')(authors='Staps, Camil, John van Groningen & Rinus Plasmeijer', booktitle='Implementation and Application of Functional Languages (IFL \'19), September 25–27, 2019, Singapore, Singapore', editors='Jurriën Stutterheim & Wei Ngan Chin', doi='10.1145/3412932.3412941', url='/assets/pdf/ifl2019.pdf', oa)
-			tr
-				td 2018
-				td
-					+pub(2018, 'A case study of reciprocal middles in Biblical Hebrew: The niphal of לחם')(journal='Orientalia', volume=87, issue=2, pages='159-183', url='http://www.academia.edu/37896637')
+			h4 Refereed articles
+			table.main_table.publications
+				tr
+					td In preparation
+					td
+						+pub('in preparation', 'Complementation and Common Ground: Discursive effects in Biblical Hebrew')(url='https://lingbuzz.net/lingbuzz/007711', oa)
+				tr
+					td
+					td
+						+pub('in preparation', 'Formalizing spatial-causal polysemy of Agent prepositions')(authors='Staps, Camil & Johan Rooryck', prejournal='Under revision for ', journal='Semantics & Pragmatics', url='https://lingbuzz.net/lingbuzz/007721', oa)
+				tr
+					td
+					td
+						+pub('in preparation', 'Semantic properties of prepositions: The distinction between causal min ‘from’ and bə ‘in’')(authors='Staps, Camil & Martijn Beukenhorst', url='https://lingbuzz.net/lingbuzz/007716', oa)
+				tr
+					td 2023
+					td
+						+pub(2023, 'The interpretation of [+distal] in demonstratives and complementizers')(authors='Staps, Camil & Johan Rooryck', journal='Linguistics', volume=61, issue=5, pages='1195-1231', doi='10.1515/ling-2022-0178', oa)
+				tr
+					td 2022
+					td
+						+pub(2022, 'Voice, discourse prominence, and aspect: The niphal and passive qal of yālad')(booktitle='Where is the way to the dwelling of light? Studies in Genesis, Job and linguistics in honor of Ellen van Wolde', editors='Pierre Van Hecke & Hanneke van Loon', pages='387-408', address='Leiden', publisher='Brill', doi='10.1163/9789004536296_020')
+				tr
+					td
+					td
+						+pub(2022, 'Lip̄nē ‘in the face of’: a Locative preposition with a threatening connotation')(journal='Journal of Hebrew Scriptures', volume=22, issue=1, pages='1-24', doi='10.5508/jhs29582', oa)
+				tr
+					td 2020
+					td
+						+pub(2020, '“When dust was poured out”: Creation in Job 38.36–38')(journal='Journal for the Study of the Old Testament', volume=44, issue=3, pages='456-471', doi='10.1177/0309089219862828', oa)
+				tr
+					td
+					td
+						+pub(2020, 'Prepositions and the grammaticalization of Ancient Hebrew bipartite reciprocal markers')(journal='Journal of Semitic Studies', volume=65, issue=1, pages='61-84', doi='10.1093/jss/fgz050', oa)
+				tr
+					td 2019
+					td
+						+pub(2019, 'Lazy interworking of compiled and interpreted code for sandboxing and distributed systems')(authors='Staps, Camil, John van Groningen & Rinus Plasmeijer', booktitle='Implementation and Application of Functional Languages (IFL \'19), September 25–27, 2019, Singapore, Singapore', editors='Jurriën Stutterheim & Wei Ngan Chin', doi='10.1145/3412932.3412941', url='/assets/pdf/ifl2019.pdf', oa)
+				tr
+					td 2018
+					td
+						+pub(2018, 'A case study of reciprocal middles in Biblical Hebrew: The niphal of לחם')(journal='Orientalia', volume=87, issue=2, pages='159-183', url='http://www.academia.edu/37896637')
 
-		h4 Book reviews
-		table.main_table.publications
-			tr
-				td 2021
-				td
-					+review(2021, 'Peter Bekins', 'Inscriptions from the world of the Bible: A reader and introduction to Old Northwest Semitic')(journal='Bibliotheca Orientalis', volume=78, issue='5/6', pages='723-726')
-			tr
-				td
-				td
-					+review(2021, 'Margaret Winters', 'Historical linguistics')(journal='LINGUIST List', volume=32, issue=1438, url='https://linguistlist.org/issues/32/32-1438/', oa)
-			tr
-				td 2020
-				td
-					+review(2020, 'Elitzur A. Bar-Asher Siegal', 'The NP-strategy for expressing reciprocity')(journal='Bibliotheca Orientalis', volume=77, issue='3/4', pages='318-322', url='https://scholarlypublications.universiteitleiden.nl/handle/1887/3142525', oa)
+			h4 Book reviews
+			table.main_table.publications
+				tr
+					td 2021
+					td
+						+review(2021, 'Peter Bekins', 'Inscriptions from the world of the Bible: A reader and introduction to Old Northwest Semitic')(journal='Bibliotheca Orientalis', volume=78, issue='5/6', pages='723-726')
+				tr
+					td
+					td
+						+review(2021, 'Margaret Winters', 'Historical linguistics')(journal='LINGUIST List', volume=32, issue=1438, url='https://linguistlist.org/issues/32/32-1438/', oa)
+				tr
+					td 2020
+					td
+						+review(2020, 'Elitzur A. Bar-Asher Siegal', 'The NP-strategy for expressing reciprocity')(journal='Bibliotheca Orientalis', volume=77, issue='3/4', pages='318-322', url='https://scholarlypublications.universiteitleiden.nl/handle/1887/3142525', oa)
 
-		h4 Non-refereed work
-		table.main_table.publications
-			tr
-				td 2019
-				td
-					+pub(2019, 'Tense, aspect and modality in Jewish Palestinian Aramaic')(misc='Leiden University MA. thesis', url='https://hdl.handle.net/1887/77991', oa)
-			tr
-				td
-				td
-					+pub(2019, 'Lazy interworking of compiled and interpreted code for sandboxing and distributed systems')(misc='Radboud University Nijmegen MSc. thesis', url='https://www.ru.nl/publish/pages/769526/thesis_1.pdf', oa)
-			tr
-				td 2017
-				td
-					+pub(2017, 'Code generation for the Thumb-2 instruction set')(misc='Radboud University Nijmegen BSc. thesis', url='https://cs.ru.nl/bachelorscripties/2017/Camil_Staps___4498062___Code-generation-for-the-Thumb-2-instruction-set.pdf', oa)
+			h4 Non-refereed work
+			table.main_table.publications
+				tr
+					td 2019
+					td
+						+pub(2019, 'Tense, aspect and modality in Jewish Palestinian Aramaic')(misc='Leiden University MA. thesis', url='https://hdl.handle.net/1887/77991', oa)
+				tr
+					td
+					td
+						+pub(2019, 'Lazy interworking of compiled and interpreted code for sandboxing and distributed systems')(misc='Radboud University Nijmegen MSc. thesis', url='https://www.ru.nl/publish/pages/769526/thesis_1.pdf', oa)
+				tr
+					td 2017
+					td
+						+pub(2017, 'Code generation for the Thumb-2 instruction set')(misc='Radboud University Nijmegen BSc. thesis', url='https://cs.ru.nl/bachelorscripties/2017/Camil_Staps___4498062___Code-generation-for-the-Thumb-2-instruction-set.pdf', oa)
 
-	section#talks
-		h2 Talks
-		p.
-			I keep track of #[a(href='/conferences.html') the conferences I visit and how much CO#[sub 2] I emit in doing so].
+		section#talks
+			h2 Talks
+			p.
+				I keep track of #[a(href='/conferences.html') the conferences I visit and how much CO#[sub 2] I emit in doing so].
 
-		table.main_table.presentations
-			//tr
-			//	td(colspan=3)
-			//		h4 Upcoming
+			table.main_table.presentations
+				//tr
+				//	td(colspan=3)
+				//		h4 Upcoming
 
-			tr
-				td(colspan=3)
-					h4 Past
-			tr
-				td 2023
-				td Oct 13, #[a(href="https://spe-uca.sciencesconf.org/", title="Semantics and Philosophy in Europe") SPE12/OASIS]
-				td With Johan Rooryck. Interpreting [+distal] complementizers as markers of Common Ground (#[a(href="/assets/pdf/spe2023.pdf") slides]; #[a(href="/assets/pdf/spe2023-handout.pdf") handout]).
-			tr
-				td 2022
-				td Dec 9, #[a(href="https://benecla.com/", title="CogLing Days") CogLing Days]
-				td With Johan Rooryck. Finite complementizers as demonstratives in the clausal domain (#[a(href="/assets/pdf/coglingdays2022.pdf") slides]; #[a(href="/assets/pdf/coglingdays2022-handout.pdf") handout]).
-			tr
-				td
-				td Nov 21, #[a(href="https://www.sbl-site.org/meetings/AnnualMeeting.aspx", title="Society of Biblical Literature") SBL Annual]
-				td With Martijn Beukenhorst. Semantic properties of prepositions: the distinction between causal מן and ב (#[a(href="/assets/pdf/sbl2022.pdf") slides]).
-			tr
-				td
-				td Nov 9, #[a(href="https://bcopley.com/cocoa", title="Converging On Causal Ontology Analyses") COCOA]
-				td With Johan Rooryck. Space in the causal chain: The perspective from French and Biblical Hebrew (#[a(href="/assets/pdf/cocoa2022.pdf") handout]).
-			tr
-				td
-				td Aug 25, #[a(href="https://societaslinguistica.eu/sle2022/", title="Societas Linguistica Europaea") SLE2022]
-				td With Johan Rooryck. On the demonstratives nature of finite complementizers (#[a(href="/assets/pdf/sle2022.pdf") slides]; #[a(href="/assets/pdf/sle2022-handout.pdf") handout]).
-			tr
-				td
-				td Jan 12, #[a(href="https://ail-workshop.github.io/AIL2-Workshop/", title="Agency and Intentions in Language") AIL2]
-				td With Johan Rooryck. French double Agents: a force-theoretic account of #[em de] and #[em par] (#[a(href="/assets/pdf/ail2022.pdf") handout]).
-			tr
-				td 2020
-				td Jan 10, #[a(href="https://sites.google.com/view/nl-fp-day-2020/home", title="Dutch Functional Programming Day") NL-FP day]
-				td With John van Groningen and Rinus Plasmeijer. Lazy interworking of compiled and interpreted code.
-			tr
-				td 2019
-				td Sep 27, #[a(href="https://web.archive.org/web/20201201105043/http://2019.iflconference.org/", title="Implementation and application of Functional Languages") IFL31]
-				td By Rinus Plasmeijer, with John van Groningen. Lazy interworking of compiled and interpreted code for sandboxing and distributed systems.
-			tr
-				td 2018
-				td Jan 26, #[a(href="http://clin28.cls.ru.nl/", title="Computational Linguistics in the Netherlands") CLIN28]
-				td Combining grammatical features for dating texts in small-corpus languages (#[a(href="http://clin28.cls.ru.nl/#abstract-42") abstract & slides]).
-			tr
-				td
-				td Jan 5, #[a(href="http://clean.cs.ru.nl/NL-FP_dag_2018", title="Dutch Functional Programming Day") NL-FP day]
-				td #[a(href="https://cloogle.org") Cloogle]: a programming language search engine and its applications (#[a(href="https://clean.cs.ru.nl/NL-FP_dag_2018#Camil_Staps_-_Cloogle:_a_programming_language_search_engine_and_its_applications") abstract & slides]).
+				tr
+					td(colspan=3)
+						h4 Past
+				tr
+					td 2023
+					td Oct 13, #[a(href="https://spe-uca.sciencesconf.org/", title="Semantics and Philosophy in Europe") SPE12/OASIS]
+					td With Johan Rooryck. Interpreting [+distal] complementizers as markers of Common Ground (#[a(href="/assets/pdf/spe2023.pdf") slides]; #[a(href="/assets/pdf/spe2023-handout.pdf") handout]).
+				tr
+					td 2022
+					td Dec 9, #[a(href="https://benecla.com/", title="CogLing Days") CogLing Days]
+					td With Johan Rooryck. Finite complementizers as demonstratives in the clausal domain (#[a(href="/assets/pdf/coglingdays2022.pdf") slides]; #[a(href="/assets/pdf/coglingdays2022-handout.pdf") handout]).
+				tr
+					td
+					td Nov 21, #[a(href="https://www.sbl-site.org/meetings/AnnualMeeting.aspx", title="Society of Biblical Literature") SBL Annual]
+					td With Martijn Beukenhorst. Semantic properties of prepositions: the distinction between causal מן and ב (#[a(href="/assets/pdf/sbl2022.pdf") slides]).
+				tr
+					td
+					td Nov 9, #[a(href="https://bcopley.com/cocoa", title="Converging On Causal Ontology Analyses") COCOA]
+					td With Johan Rooryck. Space in the causal chain: The perspective from French and Biblical Hebrew (#[a(href="/assets/pdf/cocoa2022.pdf") handout]).
+				tr
+					td
+					td Aug 25, #[a(href="https://societaslinguistica.eu/sle2022/", title="Societas Linguistica Europaea") SLE2022]
+					td With Johan Rooryck. On the demonstratives nature of finite complementizers (#[a(href="/assets/pdf/sle2022.pdf") slides]; #[a(href="/assets/pdf/sle2022-handout.pdf") handout]).
+				tr
+					td
+					td Jan 12, #[a(href="https://ail-workshop.github.io/AIL2-Workshop/", title="Agency and Intentions in Language") AIL2]
+					td With Johan Rooryck. French double Agents: a force-theoretic account of #[em de] and #[em par] (#[a(href="/assets/pdf/ail2022.pdf") handout]).
+				tr
+					td 2020
+					td Jan 10, #[a(href="https://sites.google.com/view/nl-fp-day-2020/home", title="Dutch Functional Programming Day") NL-FP day]
+					td With John van Groningen and Rinus Plasmeijer. Lazy interworking of compiled and interpreted code.
+				tr
+					td 2019
+					td Sep 27, #[a(href="https://web.archive.org/web/20201201105043/http://2019.iflconference.org/", title="Implementation and application of Functional Languages") IFL31]
+					td By Rinus Plasmeijer, with John van Groningen. Lazy interworking of compiled and interpreted code for sandboxing and distributed systems.
+				tr
+					td 2018
+					td Jan 26, #[a(href="http://clin28.cls.ru.nl/", title="Computational Linguistics in the Netherlands") CLIN28]
+					td Combining grammatical features for dating texts in small-corpus languages (#[a(href="http://clin28.cls.ru.nl/#abstract-42") abstract & slides]).
+				tr
+					td
+					td Jan 5, #[a(href="http://clean.cs.ru.nl/NL-FP_dag_2018", title="Dutch Functional Programming Day") NL-FP day]
+					td #[a(href="https://cloogle.org") Cloogle]: a programming language search engine and its applications (#[a(href="https://clean.cs.ru.nl/NL-FP_dag_2018#Camil_Staps_-_Cloogle:_a_programming_language_search_engine_and_its_applications") abstract & slides]).
 
-	section#projects
-		h2 Software projects
-		table.main_table
-			tr
-				td: a(href="https://gitlab.com/camilstaps/mbqs") Məḇaqqēš
-				td A spreadsheet application for scholars of the Hebrew Bible and Biblical Hebrew.
-			tr
-				td: a(href="https://hebrewtools.org") HebrewTools
-				td Several web applications for Biblical Hebrew education (#[a(href="https://github.com/HebrewTools") GitHub]).
-			tr
-				td: a(href="https://clean-and-itasks.gitlab.io/nitrile") Nitrile
-				td A package manager for the functional programming language #[a(href="https://clean-lang.org") Clean].
-			tr
-				td: a(href="https://cloogle.org") Cloogle
-				td A search engine for #[a(href="https://clean-lang.org") Clean] code (#[a(href="https://gitlab.com/cloogle/cloogle-web") GitLab]).
+		section#projects
+			h2 Software projects
+			table.main_table
+				tr
+					td: a(href="https://gitlab.com/camilstaps/mbqs") Məḇaqqēš
+					td A spreadsheet application for scholars of the Hebrew Bible and Biblical Hebrew.
+				tr
+					td: a(href="https://hebrewtools.org") HebrewTools
+					td Several web applications for Biblical Hebrew education (#[a(href="https://github.com/HebrewTools") GitHub]).
+				tr
+					td: a(href="https://clean-and-itasks.gitlab.io/nitrile") Nitrile
+					td A package manager for the functional programming language #[a(href="https://clean-lang.org") Clean].
+				tr
+					td: a(href="https://cloogle.org") Cloogle
+					td A search engine for #[a(href="https://clean-lang.org") Clean] code (#[a(href="https://gitlab.com/cloogle/cloogle-web") GitLab]).
 
-		p Find more on #[a(href="https://gitlab.com/camilstaps") GitLab], #[a(href="https://github.com/camilstaps") GitHub], and #[a(href="https://git.camilstaps.nl/") git.camilstaps.nl].
+			p Find more on #[a(href="https://gitlab.com/camilstaps") GitLab], #[a(href="https://github.com/camilstaps") GitHub], and #[a(href="https://git.camilstaps.nl/") git.camilstaps.nl].
 
-	section#reading-group
-		h2 Biblical Hebrew reading group
-		p.
-			I'm running a weekly #[a(href='/hebrew-reading-group.html') online reading group in Biblical Hebrew], open to new members.
+		section#reading-group
+			h2 Biblical Hebrew reading group
+			p.
+				I'm running a weekly #[a(href='/hebrew-reading-group.html') online reading group in Biblical Hebrew], open to new members.
 
-	section#grants
-		h2 Grants
-		table.main_table
-			tr
-				td 2019–2024
-				td #[a(href="https://www.nwo.nl/projecten/pgw19015-0") NWO Promoties in de Geesteswetenschappen], €249K (covering my PhD project; applied for by Holger Gzella; grant no. PGW.19.015).
+		section#grants
+			h2 Grants
+			table.main_table
+				tr
+					td 2019–2024
+					td #[a(href="https://www.nwo.nl/projecten/pgw19015-0") NWO Promoties in de Geesteswetenschappen], €249K (covering my PhD project; applied for by Holger Gzella; grant no. PGW.19.015).
 
-	section#teaching
-		h2 Teaching
-		table.main_table
-			tr
-				td 2022–2023
-				td Hebrew I–II, Radboud University Nijmegen (10 ECTS).
-			tr
-				td 2021–2022
-				td Hebrew I–II, Radboud University Nijmegen (10 ECTS).
-			tr
-				td 2020–2021
-				td Hebrew II, Radboud University Nijmegen (5 ECTS).
-			tr
-				td
-				td Hebrew I–III, Vrije Universiteit Amsterdam (15 ECTS).
-			tr
-				td 2015–2019
-				td.
-					Student assistant for various courses in computing science, Radboud University Nijmegen.
-					See under Employment for a list of courses.
+		section#teaching
+			h2 Teaching
+			table.main_table
+				tr
+					td 2022–2023
+					td Hebrew I–II, Radboud University Nijmegen (10 ECTS).
+				tr
+					td 2021–2022
+					td Hebrew I–II, Radboud University Nijmegen (10 ECTS).
+				tr
+					td 2020–2021
+					td Hebrew II, Radboud University Nijmegen (5 ECTS).
+				tr
+					td
+					td Hebrew I–III, Vrije Universiteit Amsterdam (15 ECTS).
+				tr
+					td 2015–2019
+					td.
+						Student assistant for various courses in computing science, Radboud University Nijmegen.
+						See under Employment for a list of courses.
 
-	section#employment
-		h2 Employment
-		table.main_table
-			tr
-				td Sep. 2019–Apr 2024
-				td
-					| PhD candidate, Leiden University & Radboud University Nijmegen.
-					br
-					| Supervised by #[a(href="https://www.rooryck.org/") Johan Rooryck] and #[a(href="https://radboud.academia.edu/ellenvanwolde") Ellen van Wolde].
-			tr
-				td Feb. 2023–Jun. 2023
-				td Lecturer, Radboud University Nijmegen.
-			tr
-				td Sep. 2019–Aug. 2021
-				td Scientific programmer / software architect, #[a(href="https://top-software.nl") TOP Software].
-			tr
-				td Feb. 2021–Jul. 2021
-				td Lecturer, Vrije Universiteit Amsterdam.
-			tr
-				td Sep. 2015–Aug. 2019
-				td
-					details
-						summary(style='cursor:pointer;') Student assistant, #[a(href="https://www.ru.nl") Radboud University Nijmegen] (click for an overview of activities).
+		section#employment
+			h2 Employment
+			table.main_table
+				tr
+					td Sep. 2019–Apr 2024
+					td
+						| PhD candidate, Leiden University & Radboud University Nijmegen.
+						br
+						| Supervised by #[a(href="https://www.rooryck.org/") Johan Rooryck] and #[a(href="https://radboud.academia.edu/ellenvanwolde") Ellen van Wolde].
+				tr
+					td Feb. 2023–Jun. 2023
+					td Lecturer, Radboud University Nijmegen.
+				tr
+					td Sep. 2019–Aug. 2021
+					td Scientific programmer / software architect, #[a(href="https://top-software.nl") TOP Software].
+				tr
+					td Feb. 2021–Jul. 2021
+					td Lecturer, Vrije Universiteit Amsterdam.
+				tr
+					td Sep. 2015–Aug. 2019
+					td
+						details
+							summary(style='cursor:pointer;') Student assistant, #[a(href="https://www.ru.nl") Radboud University Nijmegen] (click for an overview of activities).
 
-						mixin saItem(guide, name)
-							| #[a(href=guide)= name], 
+							mixin saItem(guide, name)
+								| #[a(href=guide)= name], 
 
-						mixin lastSaItem(guide, name)
-							a(href=guide)= name
+							mixin lastSaItem(guide, name)
+								a(href=guide)= name
 
-						p 2018–19: work on the #[a(href="http://clean.cs.ru.nl/Clean") Clean] ecosystem
+							p 2018–19: work on the #[a(href="http://clean.cs.ru.nl/Clean") Clean] ecosystem
 
-						p
-							| 2017–18: 
-							+saItem("https://sis.ru.nl/osiris-student/OnderwijsCatalogusSelect.do?selectie=cursus&collegejaar=2017&cursus=NWI-IBC016", "Combinatorics")
-							+lastSaItem("https://sis.ru.nl/osiris-student/OnderwijsCatalogusSelect.do?selectie=cursus&collegejaar=2017&cursus=NWI-IBC015", "Functional Programming for AI")
+							p
+								| 2017–18: 
+								+saItem("https://sis.ru.nl/osiris-student/OnderwijsCatalogusSelect.do?selectie=cursus&collegejaar=2017&cursus=NWI-IBC016", "Combinatorics")
+								+lastSaItem("https://sis.ru.nl/osiris-student/OnderwijsCatalogusSelect.do?selectie=cursus&collegejaar=2017&cursus=NWI-IBC015", "Functional Programming for AI")
 
-						p
-							| 2016–17: 
-							+saItem("https://studiegids.science.ru.nl/2016/science/prospectus/inf_ba/course/40559/", "Algorithms and Data Structures")
-							+saItem("https://studiegids.science.ru.nl/2016/science/course/40511/", "Combinatorics")
-							+saItem("https://studiegids.science.ru.nl/2016/en/socsci/course/41452/", "Functional Programming for AI")
-							+saItem("https://www.studiegids.science.ru.nl/2016/science/prospectus/inf_ba/course/40568/", "Functional Programming 1")
-							+saItem("https://studiegids.science.ru.nl/2016/en/science/course/40564/", "Introduction to Cryptography")
-							+lastSaItem("https://studiegids.science.ru.nl/2016/science/prospectus/inf_ba/course/40560/", "Operating Systems")
-						p
-							| 2015–16: 
-							+saItem("https://cs.ru.nl/~hubbers/courses/co_1516/", "Combinatorics")
-							+saItem("https://studiegids.science.ru.nl/2015/science/prospectus/inf_ba/course/37072/", "Functional Programming 1")
-							+saItem("https://studiegids.science.ru.nl/2015/course/37073/", "Functional Programming 2")
-							+saItem("https://studiegids.science.ru.nl/2015/science/prospectus/inf_ba/course/37067/", "Introduction to Cryptography")
-							+lastSaItem("https://cs.ru.nl/~hubbers/courses/ms_1516/", "Mathematical Structures")
+							p
+								| 2016–17: 
+								+saItem("https://studiegids.science.ru.nl/2016/science/prospectus/inf_ba/course/40559/", "Algorithms and Data Structures")
+								+saItem("https://studiegids.science.ru.nl/2016/science/course/40511/", "Combinatorics")
+								+saItem("https://studiegids.science.ru.nl/2016/en/socsci/course/41452/", "Functional Programming for AI")
+								+saItem("https://www.studiegids.science.ru.nl/2016/science/prospectus/inf_ba/course/40568/", "Functional Programming 1")
+								+saItem("https://studiegids.science.ru.nl/2016/en/science/course/40564/", "Introduction to Cryptography")
+								+lastSaItem("https://studiegids.science.ru.nl/2016/science/prospectus/inf_ba/course/40560/", "Operating Systems")
+							p
+								| 2015–16: 
+								+saItem("https://cs.ru.nl/~hubbers/courses/co_1516/", "Combinatorics")
+								+saItem("https://studiegids.science.ru.nl/2015/science/prospectus/inf_ba/course/37072/", "Functional Programming 1")
+								+saItem("https://studiegids.science.ru.nl/2015/course/37073/", "Functional Programming 2")
+								+saItem("https://studiegids.science.ru.nl/2015/science/prospectus/inf_ba/course/37067/", "Introduction to Cryptography")
+								+lastSaItem("https://cs.ru.nl/~hubbers/courses/ms_1516/", "Mathematical Structures")
 
-			tr
-				td May 2013–Mar. 2019
-				td Owner of ViviSoft.
+				tr
+					td May 2013–Mar. 2019
+					td Owner of ViviSoft.
 
-	section#education
-		h2 Education
-		table.main_table
-			tr
-				td 2017–2019
-				td
-					| Research MA. #[a(href="https://www.universiteitleiden.nl/en/education/study-programmes/master/classics-and-ancient-civilizations-research/hebrew-and-aramaic-studies-research") Hebrew and Aramaic Studies], Leiden University
-					| (#[abbr(title="A weighted average of more than 8/10 points, and a thesis graded with more than 8/10 points") #[em cum laude]]).
-			tr
-				td 2017–2019
-				td
-					| MSc. #[a(href="https://www.ru.nl/english/education/masters/software-science/") Software Science], Radboud University Nijmegen
-					| (#[abbr(title="A weighted average of more than 9/10 points") #[em summa cum laude]]).
-			tr
-				td 2014–2017
-				td
-					| BSc. #[a(href="https://www.ru.nl/opleidingen/bachelor/computing-science/") Computing Science], Radboud University Nijmegen
-					| (#[abbr(title="A weighted average of more than 8/10 points") #[em cum laude]]).
+		section#education
+			h2 Education
+			table.main_table
+				tr
+					td 2017–2019
+					td
+						| Research MA. #[a(href="https://www.universiteitleiden.nl/en/education/study-programmes/master/classics-and-ancient-civilizations-research/hebrew-and-aramaic-studies-research") Hebrew and Aramaic Studies], Leiden University
+						| (#[abbr(title="A weighted average of more than 8/10 points, and a thesis graded with more than 8/10 points") #[em cum laude]]).
+				tr
+					td 2017–2019
+					td
+						| MSc. #[a(href="https://www.ru.nl/english/education/masters/software-science/") Software Science], Radboud University Nijmegen
+						| (#[abbr(title="A weighted average of more than 9/10 points") #[em summa cum laude]]).
+				tr
+					td 2014–2017
+					td
+						| BSc. #[a(href="https://www.ru.nl/opleidingen/bachelor/computing-science/") Computing Science], Radboud University Nijmegen
+						| (#[abbr(title="A weighted average of more than 8/10 points") #[em cum laude]]).
diff --git a/resources/sass/style.scss b/resources/sass/style.scss
index 227093c..e313315 100644
--- a/resources/sass/style.scss
+++ b/resources/sass/style.scss
@@ -28,22 +28,57 @@ body {
 	padding-top: 1em;
 }
 
+#sticky-nav li > a {
+	display: inline-block;
+}
+
+@media (max-width: 1269px) {
+	/* Navigation in a sticky header */
+	#sticky-nav {
+		background: rgba(255, 255, 255, 0.9);
+		border-bottom: 1px solid #eee;
+		padding-bottom: 1em;
+		position: sticky;
+		top: 0;
+	}
+
+	/* Offset # links because of sticky header:
+	 * https://stackoverflow.com/a/64998338 */
+	:target:before {
+		content: '';
+		display: block;
+		height: 150px;
+		margin: -150px 0 0;
+	}
+}
+
 @media (min-width: 1270px) {
-	/* 970px is width of .container; 200px is width of #sticky-nav. This places
-	 * the nav buttons to the left of the content. */
+	/* Navigation in a sticky sidebar. The sidebar is to the left of the
+	 * content, below the profile image, but sticks to the top of the page when
+	 * scrolling down. */
 	#sticky-nav {
-		left: calc(50% - 970px/2 - 150px);
-		position: fixed;
+		display: table-cell;
+		/* 970px is width of .container; 200px is width of #sticky-nav. This
+		 * places the nav buttons to the left of the content. */
+		left: calc(50% - 970px/2 - 160px);
+		/* 216px is the height of the profile image. */
+		padding-top: calc(216px + 2em);
 		text-align: right;
-		width: 150px;
+		width: 160px;
+	}
+
+	#sticky-nav ul {
+		position: sticky;
+		top: 1em;
 	}
 
 	#sticky-nav li {
 		float: none;
 	}
 
-	#sticky-nav li > a {
-		display: inline-block;
+	#content {
+		display: table-cell;
+		vertical-align: top;
 	}
 }
 
-- 
cgit v1.2.3