@charset "UTF-8";

:root {
--color1: #fff;
--color2: #000;
--hilight: #ff962e;
--color-environment: rgb(86,214,44);
--color-geopolitics: rgb(122,77,43);
--color-standards: rgb(71,144,255);
--basefontsize: 19px;
}
@font-face {
font-family: 'SourceSans3';
font-style:  normal;
src: url(//www.criticalinfralab.net/wp-content/themes/infralab/fonts/SourceSans3-VariableFont_wght.ttf) format("truetype");
}
@font-face {
font-family: 'SourceSans3Italic';
font-style:  normal;
src: url(//www.criticalinfralab.net/wp-content/themes/infralab/fonts/SourceSans3-Italic-VariableFont_wght.ttf) format("truetype");
}
@font-face {
font-family: 'SourceCodePro';
font-style:  normal;
src: url(//www.criticalinfralab.net/wp-content/themes/infralab/fonts/SourceCodePro-VariableFont_wght.ttf) format("truetype");
}
::selection {
background: var(--color2);
color: var(--color1);
}
* {
margin: 0;
padding: 0;
}
body {
color: var(--color2);
font-size: var(--basefontsize);
font-family: "SourceSans3", sans-serif;
font-variation-settings: "wght" 400;
line-height: 153%;
font-smoothing: antialiased;
font-kerning: normal;
font-variant: common-ligatures tabular-nums;
font-optical-sizing: auto;
overflow-x: hidden;
color: var(--color2);
shape-rendering: geometricPrecision;
text-rendering: optimizeLegibility;
text-transform: lowercase;
}
body.saturated {
background: var(--hilight);
}
body.desaturated {
background: #bdb8b8;
}
@media (prefers-color-scheme: dark) {
body {
background: #bdb8b8;
}
#header #eyecare {
display: none;
}
}
b, strong, h1, h2, h3, h4, h5 {
font-style: normal;
font-weight: normal;
}
i, em, blockquote {
font-family: "SourceSans3Italic";
font-style: normal;
}
b, strong,
.section-content h4 {
font-variation-settings: "wght" 600;
}
code, pre,
.site-description,
.section-title,
.button.more {
font-family: "SourceCodePro";
}
img {
border: none;
max-width: 100%;
height: auto;
}
hr {
visibility: hidden;
clear: both;
}
a {
color: var(--color2);
text-decoration: none;
}
.site-description a,
.item-content a,
.section#section-people-and-governance h4.active,
.section#section-people-and-governance h4:hover,
.section#section-people-and-governance a:hover {
text-decoration: underline;
}
.hidden {
display: none;
}
.navigation, .pagination {
padding-top: 1em;
border-top: 1px solid var(--color2);
}
.navigation {
display: flex;
justify-content: space-between;
}
.navigation .previous a:before,
.navigation .next a:after {
content: "→";
padding-left: .25em;
}
.navigation .previous a:before {
transform: rotate(180deg) translateY(-3px);
display: inline-block;
}
.button,
.pagination .next {
background: var(--color1);
border: 1px solid var(--color2);
color: var(--color2);
padding: .25em .75em;
font-variation-settings: "wght" 500;
font-size: calc(var(--basefontsize)*0.9);
letter-spacing: 0.02em;
cursor: pointer;
transition: 0.5s ease-in-out;
} .button.reveal {
display: inline-block;
margin-top: -1px;
}
.alignright {
float: right; }
.alignleft {
float: left; }
.aligncenter {
margin: auto;
display: block;
text-align: center;
}
.clear {
clear: both;
}
.screen-reader-text {
display: none;
}
#header {
padding-top: 3em;
}
#header, #container, #footer {
width: 90vw;
margin: auto;
max-width: 1200px;
}
#header .site-title {
background: url(//www.criticalinfralab.net/wp-content/themes/infralab/images/logo-criticalinfralab.svg) no-repeat;
background: url(//www.criticalinfralab.net/wp-content/themes/infralab/images/logo-criticalinfralab-noantenna.svg) no-repeat;
background-position: top left;
background-size: contain;
display: block;
text-indent: -10000px;
width: 280px;
height: 100px;
margin-top: 100px;
margin-bottom: .75em;
}
#header .site-title a {
display: block;
width: 100%;
height: 100%;
}
#header #antenna {
transform: rotate(45deg) scale(0.6);
position: absolute;
top: 1.2em;
left: 90px;
} 
#header #eyecare {
position: absolute;
top: 1em;
right: 0;
}
.go-home {
font-variation-settings: "wght" 600;
width: 30px;
margin-left: .25em;
}
#canvas {
position: absolute;
height: 100%;
top: 0;
left: 0;
z-index: 1;
}
.desaturate #canvas {
opacity: 0.4;
}
#header, #content {
position: relative;
z-index: 2;
}
.site-description { font-size: calc(var(--basefontsize)*0.88);
line-height: 135%;
}
#footer {
margin-top: 3em;
padding-bottom: 1.5em;
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
grid-gap: 1em;
align-items: center;
}
#footer img {
max-height: 55px;
}
.section {
margin-top: 3em;
}
.section-title,
.button.more {
font-size: calc(var(--basefontsize)*0.85);
color: var(--color1);
background: var(--color2);
display: inline-flex;
padding: .25em .75em;
letter-spacing: 0.02em;
}
.section-title a,
.button.more {
color: var(--color1);
text-decoration: none !important;
}
.section-content {
border-top: 1px solid var(--color2);
border-bottom: 1px solid var(--color2);
}
.home .section#section-activities,
.home .button.more {
margin: 0;
float: right;
}
.section#section-activities .section-content {
border-bottom: none;
}
.item {
border-top: 1px solid var(--color2);
padding: .5em;
display: block;
transition: 0.5s ease-in-out;
}
.section-content .item:first-child,
.section-content:has(h1) {
border-top: none;
} .section-content .item:before {
content: " ";
width: 25px;
height: 25px;
border-radius: 50%;
float: right;
margin-left: 50px;
margin-bottom: .5em;
}
.section-content .keyword-environment:before {
background: var(--color-environment);
}
.section-content .keyword-geopolitics:before {
background: var(--color-geopolitics);
}
.section-content .keyword-standards:before {
background: var(--color-standards);
}
.section-content .keyword-geopolitics-standards:before {
background: var(--color-standards);
box-shadow: -10px 0 0 var(--color-geopolitics);
}
.section-content .keyword-environment-geopolitics:before {
background: var(--color-environment);
box-shadow: -10px 0 0 var(--color-geopolitics);
}
.section-content .keyword-environment-standards:before {
background: var(--color-environment);
box-shadow: -10px 0 0 var(--color-standards);
}
.section-content .keyword-environment-geopolitics-standards:before {
background: var(--color-standards);
box-shadow: -10px 0 0 var(--color-environment), -20px 0 0 var(--color-geopolitics);
}
.item:focus,
.item:hover {
background: var(--color1);
}
.section#section-publications .section-content p:not(.missing-link), .section#section-people-and-governance h4 {
cursor: pointer;
}
.section#section-activities .item-title .category {
margin-right: .25em;
font-variation-settings: "wght" 400;
}
.item .item-title:after,
.section#section-people-and-governance a[href*="//"]:not([href*="criticalinfralab.net"]):after {
content: "→";
padding-left: .25em;
font-variation-settings: "wght" 600;
margin-right: -25px;
display: inline-flex;
} .item:not(.external-link) .item-title:after,
.section#section-people-and-governance h4:after {
content: "→";
transform: rotate(90deg) translateX(-.35em);
display: inline-block;
padding-left: .75em;
margin-right: -25px;
}
.item:not(.empty-content) .item-title {
cursor: pointer;
font-size: var(--basefontsize);
}
.item .permalink {
display: block;
margin-bottom: var(--basefontsize);
}
.item-title .date {
font-variation-settings: "wght" 400;
}
.item-title .title {
font-variation-settings: "wght" 600;
}
.item-content {
padding: 1em 0 0.5em;
text-wrap: pretty;
}
.item-content ul,
.item-content ol {
margin-left: 1em;
}
.item-content blockquote,
.item-content code,
.item-content pre,
.item-content ul,
.item-content ol,
.item-content p:not(:last-child) {
margin-bottom: 1em;
}
.item-content ul {
list-style: none;
}
.item-content li:before {
content: "–";
content: "→";
margin-right: 0.4em;
margin-left: -0.85em;
} .section#section-people-and-governance h3 {
font-size: var(--basefontsize);
font-variation-settings: "wght" 400;
}
.section#section-people-and-governance h3,
.section#section-people-and-governance ul {
display: inline;
}
.section#section-people-and-governance h4 {
margin-right: 1.5em;
display: inline-block;
}
.section#section-people-and-governance li {
display: inline;
list-style: none;
margin-right: .75em;
padding-right: 20px;
font-variation-settings: "wght" 600;
} .wp-block-columns:not(is-not-stacked-on-mobile) {
display: flex;
}
.wp-block-columns .wp-block-column {
padding: 0 0.25 0.5em;
}
.wp-block-columns .wp-block-column:not(is-not-stacked-on-mobile) {
padding: 0 0 0.5em;
}
.wp-block-columns .wp-block-column:first-child {
padding: 0;
}
.wp-block-gallery {
display: grid;
}
.wp-block-gallery.columns-2, .wp-block-gallery.columns-default {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.wp-block-gallery.columns-3 {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.wp-block-gallery.columns-4 {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
.wp-block-gallery.columns-5 {
grid-template-columns: repeat(5, minmax(0, 1fr));
}
.wp-block-gallery.columns-6 {
grid-template-columns: repeat(6, minmax(0, 1fr));
}
.wp-block-gallery.columns-7 {
grid-template-columns: repeat(7, minmax(0, 1fr));
}
@media (min-width: 600px) {
.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
width: 100%;
padding-right: 1em;
box-sizing: border-box;
}
} .single .item,
.category .item,
.page-template-default .item:hover,
.page-template-page_preview .item {
background: var(--color1);
}
.single .item-title,
.page-template-page_preview .item-title {
line-height: 145%;
font-size: var(--basefontsize);
font-variation-settings: "wght" 600;
} @media (min-width: 600px) {
#header .site-title {
width: 400px;
height: 140px;
margin-top: 150px;
margin-bottom: 2em;
}
#header #antenna {
transform: rotate(45deg) scale(0.65);
left: 160px;
top: 4em;
}
.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
width: 100%  !important;
padding-right: 1em;
box-sizing: border-box;
}
.wp-block-gallery.sponsors figure.wp-block-image {
justify-content: left !important;
flex-direction: row !important;
}
}
@media all and (min-width: 801px) {
#header, #container, #footer {
width: 75vw;
}
#header .site-title {
height: 250px;
width: 700px;
}
#header #antenna {
left: 320px;
transform: rotate(45deg) scale(1);
}
.item-content {
padding-top: 1em;
}
#footer {
grid-template-columns: repeat(7, minmax(0, 1fr));
}
}