/* A stylesheet that mimics the output of Sitecore as seen on e.g. https://space.dtu.dk. */
:root {
    --color-corporate-red: #900;
    --color-corporate-red--dark: maroon;
    --color-bright-blue: #2f3eea;
    --color-bright-blue--dark: #1829e8;
    --color-dark-blue: #030f4f;
    --color-dark-blue--dark: #020a36;
    --color-purple: #79238e;
    --color-purple--dark: #681e7a;
    --color-dark-green: #008835;
    --color-dark-green--dark: #006f2b;
    --color-bright-green: #1fd082;
    --color-bright-green--dark: #1cba74;
    --color-yellow: #f6d04d;
    --color-yellow--dark: #f5ca35;
    --color-orange: #fc7634;
    --color-orange--dark: #fc651b;
    --color-bright-red: #e5242e;
    --color-bright-red--dark: #d61923;
    --color-pink: #f7bbb1;
    --color-pink--dark: #f5a79a;
    --color-gray: #dadada;
    --color-gray--dark: #cdcdcd;
    --color-black: #000;
    --color-white: #fff;
}

:root {
    --color-black: #262626;
    --color-black--dark: #191919;
    --color-theme-base: var(--color-corporate-red);
    --color-theme-dark: var(--color-corporate-red--dark);
    --color-theme-text-positive: var(--color-corporate-red);
    --color-theme-text-negative: var(--color-white);
    --font-family--primary: "neo-sans",Arial;
    --font-family--secondary: Arial,sans-serif;
    --font-weight--light: 300;
    --font-weight--regular: 400;
    --font-weight--medium: 500;
    --font-weight--bold: 700;
    --font-weight--black: 900;
    --font-weight--ultra: 950;
    --line-height--base: 1.5;
    --line-height--xl: 2;
    --line-height--lg: 1.6;
    --line-height--md: 1.4;
    --line-height--sm: 1.2;
    --line-height--xs: 1.1;
    --line-height--heading: var(--line-height--sm);
    --font-size--default: clamp(1.5rem,2vw,1.6rem);
    --font-size--xxs: 1rem;
    --font-size--xs: 1.2rem;
    --font-size--sm2: 1.4rem;
    --font-size--sm: 1.9rem;
    --font-size--md: 2.2rem;
    --font-size--lg: 3.5rem;
    --font-size--xl: 4.5rem;
    --font-size--button: 1.3rem;
    --font-size--link-tertiary: 1.3rem;
    --font-size--link-lg: 1.8rem;
    --font-size--link-sm: 1.48rem;
    --font-size--link-xs: 1.3rem;
    --font-size--link-back: 1.1rem;
    --font-size--paragraph: var(--font-size--default);
    --font-size--paragraph-lead: clamp(1.7rem,2vw,var(--font-size--sm));
    --font-size--describer: 1.4rem;
    --font-size--kicker: var(--font-size--xs);
    --font-size--manchet: clamp(1.7rem,2vw,var(--font-size--sm));
    --font-size--hero-manchet: var(--font-size--md);
    --font-size--level-1: clamp(calc(0.8*var(--font-size--xl)),3vw,var(--font-size--xl));
    --font-size--level-2: clamp(calc(0.8*var(--font-size--lg)),2vw,var(--font-size--lg));
    --font-size--level-3: clamp(calc(0.9*var(--font-size--md)),2vw,var(--font-size--md));
    --font-size--level-4: clamp(calc(0.9*var(--font-size--sm)),2vw,var(--font-size--sm));
    --font-size--level-5: calc(var(--font-size--default));
    --font-size--level-6: calc(var(--font-size--default)/1.3);
    --font-size--display: clamp(3.2rem,5.5vw,6rem);
    --input-font-size: var(--font-size--default);
    --input-font-size--lg: 1.8rem;
    --input-font-weight: var(--font-weight--regular);
    --input-line-height: var(--line-height--sm);
    --label-font-size: var(--font-size--describer);
    --label-font-weight: var(--font-weight--medium);
    --font-size--institute-heading: 1.9rem;
    --font-size--institute-sub-heading: 1.7rem;
    --letter-spacing--xs: 0.05rem;
    --letter-spacing--sm: 0.1rem;
    --letter-spacing--md: 0.15rem;
    --letter-spacing--lg: 0.2rem;
    --breadcrumbs-font-size: 1.1rem;
    --breadcrumbs-text-transform: uppercase;
    --breadcrumbs-line-height: var(--line-height--sm);
    --share-font-size: 1.1rem;
    --share-text-transform: uppercase;
    --share-line-height: var(--line-height--sm);
    --notice-bar-heading-font-size: 1.8rem;
    --notice-bar-heading-font-weight: var(--font-weight--medium);
    --primary-nav-font-size: 1.8rem;
    --primary-nav-line-height: var(--line-height--sm);
    --banner-font-size: 1.5rem;
    --utility-nav-font-size: 1.4rem;
    --utility-nav-line-height: var(--line-height--sm);
    --topbar-font-size: 1.1rem;
    --topbar-text-transform: uppercase;
    --topbar-line-height: var(--line-height--sm);
    --topbar-font-weight: var(--font-weight--bold);
    --font-size--footer: 1.5rem;
    --z-index--skiptomain: 1000;
    --z-index--modal: 950;
    --z-index--notice-bar: 701;
    --z-index--header: 700;
    --z-index--top-bar-toggle: 600;
    --z-index--dropdown: 500;
    --z-index--mega-nav: 200;
    --z-index--overlay: 100;
    --z-index--banner-top-bar: 2;
    --z-index--video-player-button: 1;
    --z-index--search-bar: -1;
    /* from @charset line */
    --border--gray: var(--border-width--xs) solid var(--color-alto);
    --border--primary: var(--border-width--xs) solid var(--color-theme-base);
    --border-thin-gray: var(--border-width--xs) var(--color-alto) solid;
    --color-constrast--md: hsla(0,0%,100%,0.25);
    --color-constrast--dark: hsla(0,0%,100%,0.75);
    --color-alto: #dadada;
    --color-wild-sand: #f4f4f4;
    --color-mine-shaft: #333;
    --color-light-gray: #f1f1f1;
    --color-medium-gray: #767676;
    --color-dark-gray: #515151;
    --color-button-ripple: var(--color-constrast--md);
    --input-bg: transparent;
    --input-color: var(--color-black);
    --input-placeholder: var(--color-medium-gray);
    --card-link-hover-color: var(--color-medium-gray);
    --navigation-color: var(--color-black);
    --accordion--bg-color: var(--color-white);
    --accordion-text-color: var(--color-mine-shaft);
    --accordion-border-color: #d2d2d2;
    --mega-nav-bg: hsla(0,0%,100%,0.98);
    --mega-nav-color: var(--color-black);
    --mega-nav-border-color: hsla(0,0%,85.5%,0.5);
    --notice-bar-bg: var(--color-yellow);
    --notice-bar-color: var(--color-black);
    --search-bar-bg: hsla(0,0%,100%,0.97);
    --search-bar-border-bottom-color: var(--color-light-gray);
    --top-bar-bg: var(--color-white);
    --top-bar-color: var(--color-black);
    --top-bar-border-color: var(--color-light-gray);
    --color-carousel-bg: var(--color-mine-shaft);
    --logo-text-color: var(--color-black);
    --card-background: var(--color-light-gray);
    --dialog-bg: hsla(0,0%,100%,0.9);
    --container-width--sm: 70rem;
    --container-width--md: 144rem;
    --container-spacing--sm: 4rem;
    --container-spacing--md: 6rem;
    --container-spacing--lg: 10rem;
    --grid-gutter: clamp(2rem,4vw,4rem);
    --grid-row-gap: clamp(2rem,4vw,4rem);
    --grid-gutter--sm: 2rem;
    --link-list-column-count: 2;
    --position--badge-offset: -0.6rem;
    --shadow--md: 0rem 0rem 1rem var(--color-mine-shaft);
    --icon-size--xs: 1.2rem;
    --icon-size--sm: 1.5rem;
    --icon-size--md: 2rem;
    --icon-size--lg: 4rem;
    --border-width--xs: thin;
    --border-width--sm: 0.15rem;
    --border-width--md: 0.2rem;
    --border-width--lg: 0.4rem;
    --border-radius--sm: 0.3rem;
    --sizes-button-mw: 18rem;
    --hamburger-width: 20px;
    --hamburger-height: 16px;
    --hamburger-bar-height: 2px;
    --input-underline-border-size: 0.2rem;
    --input-underline-border-size--lg: 0.4rem;
    --input-underline-padding: 0 0 1rem;
    --input-required-size: 1rem;
    --input-required-position: 1rem;
    --input-required-padding-right: 2.5rem;
    --input-file-vertical-padding: 0.2rem;
    --sizes--social-link-width: 10rem;
    --header-search-icon-size: 1.8rem;
    --sizes-footer-logo-text: 12rem;
    --utility-search-icon-size: 1.8rem;
    --mega-menu-max-width: 80rem;
    --search-bar-max-width: 70rem;
    --search-bar-icon-size: 2.4rem;
    --topbar-hamburger-width: 1.2rem;
    --topbar-hamburger-height: 1rem;
    --badge-padding: 0.8rem 0.9rem 0.7rem;
    --modal-width: 80rem;
    --link-list-icon-size: 1.5rem;
    --news-list-xs-image-size: 5.5rem;
    --news-list-sm-image-size: 9.5rem;
    --news-list-lg-image-size: 20rem;
    --rich-text-padding-left: 1.6rem;
    --atoms-select-chevron-size: 1.2rem;
    --share-icon-size: 2.5rem;
    --share-icon-padding: 0.4rem;
    --breadcrumbs-item-padding: 4rem;
    --breadcrumbs-label-padding: 0.75rem;
    --breadcrumbs-chevron-width: 0.5rem;
    --breadcrumbs-chevron-height: 0.8rem;
    --video-player-modal-width: 80rem;
    --theme-list-image-width: 15rem;
    --theme-list-icon-size: 2rem;
    --play-button-size: 5rem;
    --play-button-size--large: 9.7rem;
    --play-button-border-width: 1.6rem;
    --play-button-border-width--secondary: 0.8rem;
    --play-button-offset: 0.3rem;
    --play-button-border-width--large: 3rem;
    --play-button-border-secondary--large: 1.5rem;
    --play-button-offset--large: 0.5rem;
    --spacing--base: 1rem;
    --spacing--none: 0;
    --spacing--2xs: calc(0.5*var(--spacing--base));
    --spacing--xs: calc(1*var(--spacing--base));
    --spacing--sm: calc(2*var(--spacing--base));
    --spacing--md: calc(3*var(--spacing--base));
    --spacing--lg: calc(4*var(--spacing--base));
    --spacing--xl: calc(8*var(--spacing--base));
    --offset-spacing: 0rem;
    --site-padding: 2rem;
    --global-spacer-width: 3.2rem;
    --padding-button: 3rem;
    --paragraph-margin: var(--spacing--xs);
    --paragraph-lead-margin: var(--spacing--base);
    --paragraph-margin-rte: 1.5rem;
    --underline-padding-hover: 0.2rem;
    --molecule-input-label-margin: 0.5rem;
    --input-search-padding: 7rem 20rem;
    --blurp-card-content-margin: 2.2rem;
    --blurp-card-link-margin: 2.5rem;
    --blurp-card-wide-content-margin: 1rem 4rem;
    --full-width-min-height: 61rem;
    --full-width-link-margin: 6rem;
    --full-width-text-margin: 7rem;
    --full-width-header-margin: 16.5rem;
    --full-width-header-padding: 3rem;
    --full-width-header-max-width: 95rem;
    --full-width-heading-max-width: 100rem;
    --mega-nav-padding-y: 3rem;
    --mega-nav-item-padding-a: 1.6rem 0 1.3rem;
    --notice-bar-padding-y: 1.5rem;
    --notice-bar-item-padding-x: 2rem;
    --notice-bar-item-margin-bottom: 0.5rem;
    --primary-nav-item-padding-x: 1.6rem;
    --calendar-padding: 5rem;
    --news-padding: 5rem;
    --search-bar-padding-y: 3rem;
    --table-cell-padding: 1rem 1.5rem;
    --two-spot-margin-vertical: 11.6rem;
    --two-spot-margin-horizontal-lg: 13.6rem;
    --two-spot-rich-text-margin: 5rem;
    --utility-nav-item-padding-x: 0.8rem;
    --spacing-refactored-link-list: 3rem;
    --spacing--footer-top: 20rem;
    --spacing--footer-logo-bottom: 3rem;
    --spacing--main-bottom: 3rem;
    --header-item-gap: 3.2rem;
    --header-item-gap--lg: 5rem;
    --header-item-gap--sm: 2.4rem;
    --header-item-gap--xs: 0.5rem;
    --header-padding: 1.6rem;
    /* anim */
    --badge-size--md: 4rem;
    --transition-duration--xs: 0.1s;
    --transition-duration--sm: 0.2s;
    --transition-duration--md: 0.3s;
    --transition-duration--lg: 0.4s;
    --transition-duration--xl: 0.6s;
    --transition-duration--default: var(--transition-duration);
    --transition-timing--default: var(--ease-out-quart);
    --transition-duration--loader: 2.5s;
    --ease-in-quad: cubic-bezier(0.55,0.085,0.68,0.53);
    --ease-in-cubic: cubic-bezier(0.55,0.055,0.675,0.19);
    --ease-in-quart: cubic-bezier(0.895,0.03,0.685,0.22);
    --ease-in-quint: cubic-bezier(0.755,0.05,0.855,0.06);
    --ease-in-expo: cubic-bezier(0.95,0.05,0.795,0.035);
    --ease-in-circ: cubic-bezier(0.6,0.04,0.98,0.335);
    --ease-out-quad: cubic-bezier(0.25,0.46,0.45,0.94);
    --ease-out-cubic: cubic-bezier(0.215,0.61,0.355,1);
    --ease-out-quart: cubic-bezier(0.165,0.84,0.44,1);
    --ease-out-quint: cubic-bezier(0.23,1,0.32,1);
    --ease-out-expo: cubic-bezier(0.19,1,0.22,1);
    --ease-out-circ: cubic-bezier(0.075,0.82,0.165,1);
    --ease-in-out-quad: cubic-bezier(0.455,0.03,0.515,0.955);
    --ease-in-out-cubic: cubic-bezier(0.645,0.045,0.355,1);
    --ease-in-out-quart: cubic-bezier(0.77,0,0.175,1);
    --ease-in-out-quint: cubic-bezier(0.86,0,0.07,1);
    --ease-in-out-expo: cubic-bezier(1,0,0,1);
    --ease-in-out-circ: cubic-bezier(0.785,0.135,0.15,0.86);
}

html {
    font-size: 62.5%; /* governs size of rem unit */
}

body {
    margin: 0;
    font-family: var(--font-family--primary);
}

/* static page setup */

header {
    border-top: 5px solid var(--color-theme-base);
    border-bottom: thin solid var(--color-light-gray);
    background-color: var(--color-white);
}
header .inner {
    display: grid;
    grid-template-areas:
    "institute utility logo"
    "navigation navigation navigation";
    grid-template-columns: 50rem auto 4rem;
    gap: 2.4rem 5rem;
    padding-top: calc(10px*var(--header-multiplier, 1) + var(--header-padding));
    padding-bottom: calc(4px*var(--header-multiplier, 1) + var(--header-padding));
}
header .header-item {
    position: relative;
    display: inline-grid;
    align-self: center;
}

header .institute {
    display: block;
    grid-area: institute;
    justify-self: start;
    align-self: start;
}
header .institute > a {
    color: var(--color-theme-text-positive);
    text-decoration: none;
}
header .institute-heading {
    font-size: var(--font-size--institute-heading);
    letter-spacing: var(--letter-spacing--xs);
    font-weight: var(--font-weight--bold);
    transition: font-size var(--transition-duration--xs) ease;
}
header .institute-sub-heading {
    font-size: var(--font-size--institute-sub-heading);
    letter-spacing: var(--letter-spacing--xs);
}

header .identity {
    grid-area: logo;
    justify-self: start;
    align-self: start;
}
header .identity > a {
    width: calc(1rem*var(--header-multiplier, 1) + 3rem);
    height: calc(1.7rem*var(--header-multiplier, 1) + 4.3rem);
    color: var(--color-theme-text-positive);
    text-decoration: none;
    transition: width,height 0 ease;
}
header .identity svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: var(--color-theme-base);
}

header .navigation {
    grid-area: navigation;
    justify-self: start;
    align-self: start;
}
header .navigation > nav {
    font-size: calc(var(--primary-nav-font-size)*0.05*var(--header-multiplier, 1) + var(--primary-nav-font-size)*0.95);
    line-height: var(--primary-nav-line-height);
}
header .navigation ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 0 calc(var(--primary-nav-item-padding-x)*-1);
    white-space: nowrap;
    list-style: none;
    padding: 0;
}
header .navigation li {
    padding: 0 var(--primary-nav-item-padding-x);
    line-height: 1;
}
header .navigation a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    color: var(--navigation-color);
    cursor: pointer;
    transition: color var(--transition-duration--sm) var(--transition-timing--default);
}
header .navigation a:before {
    content: "";
    position: absolute;
    width: calc(100% + 16px);
    height: calc(100% + 32px);
    top: 50%;
    left: 50%;
    transform: translate3d(-50%,-50%,0);
}
.navigation .line {
    position: absolute;
    bottom: calc((0.4rem*var(--header-multiplier, 1) + 1.7rem)*-1);
    height: 4px;
    background-color: var(--color-theme-base);
    transition: left var(--transition-duration--sm);
}


header .utility {
    position: static;
    right: var(--site-padding);
    grid-area: utility;
    justify-self: end;
    align-self: start;
}
header .utility > nav {
    font-size: var(--utility-nav-font-size);
    line-height: var(--utility-nav-line-height);
}
header .utility ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 calc(var(--utility-nav-item-padding-x)*-1);
    white-space: nowrap;
    list-style: none;
    padding: 0;
}
header .utility li {
    padding: 0 1.3rem;
    line-height: 1;
}
header .utility a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    color: #000;
    color: var(--navigation-color);
    cursor: pointer;
    transition: color .2s cubic-bezier(.165,.84,.44,1);
    transition: color var(--transition-duration--sm) var(--transition-timing--default);
}

footer {
    color: var(--color-theme-text-negative);
    background: var(--color-theme-base);
}
footer div.badge {
    margin-bottom: var(--spacing--sm);
    transform: translateX(var(--position--badge-offset));
}
footer div.rich-text {
    font-size: var(--font-size--footer);
    line-height: var(--line-height--lg);
    color: var(--color-theme-text-negative);
}

footer > .main {
    grid-template-areas:
    "institute location links";
    padding: var(--spacing--xl) 0 var(--spacing--lg) 0;
    row-gap: 6rem;
}
footer .institute {
    grid-area: institute;
    grid-column-end: span 3;
    display: flex;
    flex-direction: column;
}
footer .institute > span {
    width: var(--icon-size--lg);
    margin-bottom: var(--spacing--footer-logo-bottom);
    margin-right: var(--spacing--footer-logo-bottom);
}
footer .institute > span > svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: currentColor;
}
footer .institute > div {
    font-family: var(--font-family--primary);
    font-weight: var(--font-weight--bold);
    font-size: var(--font-size--describer);
    letter-spacing: var(--letter-spacing--xs);
    line-height: var(--line-height--lg);
}
footer .institute-sub-heading {
    font-weight: var(--font-weight--medium);
}

footer .location {
    grid-area: location;
    grid-column-end: span 3;
    grid-column-start: 4;
}
footer .links {
    grid-area: links;
    grid-column-end: span 6;
    grid-column-start: 7;
}
footer .links > ul.link-list {
    column-count: 2;
    column-gap: var(--grid-gutter);
    margin-bottom: var(--spacing--sm);
}
footer .links a {
    color: var(--color-theme-text-negative);
    font-size: var(--font-size--link-sm);
}

footer > .social {
    background-color: var(--color-theme-dark);
    text-align: center;
    overflow: hidden;
    padding: var(--spacing--sm) 0;
    display: flex;
    flex-direction: row;
    justify-content: center;
}
footer > .social a {
    margin: calc(var(--spacing--md)*0.5) var(--spacing--md);
    min-width: 5rem;
    text-align: center;
    font-family: var(--font-family--primary);
    font-size: var(--font-size--link-tertiary);
    font-weight: var(--font-weight--bold);
    letter-spacing: var(--letter-spacing--xs);
    text-transform: uppercase;
    text-decoration: none;
    display: inline-block;
    color: var(--color-theme-text-negative)
}
footer > .social a:after {
    content: "";
    display: block;
    height: var(--border-width--sm);
    background-color: var(--color-theme-text-negative);
    width: 100%;
    margin-top: .1rem;
    transform-origin: 0 center;
}

footer > .service {
    text-align: center;
    overflow: hidden;
    padding: var(--spacing--md) 0;
    display: flex;
    flex-direction: row;
    justify-content: center;
}
footer > .service a {
    display: inlne-block;
    margin: calc(var(--spacing--xs)*0.5) var(--spacing--xs);
    font-size: var(--font-size--link-xs);
    color: var(--color-theme-text-negative);
    text-decoration: underline;
}

/* setup main in the page flow, but no internal styling */


main {
    margin-top: var(--container-spacing--sm);
    margin-bottom: var(--container-spacing--sm);
    padding-left: var(--site-padding);
    padding-right: var(--site-padding);
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

/* reusable elements with classes */


section {
    display: block;
    margin-top: 6rem;
    margin-bottom: 6rem;
}


div.container {
    /* outer spacing */
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: calc(var(--container-width--md) + var(--site-padding)*2);
    padding-left: var(--site-padding);
    padding-right: var(--site-padding);
}
div.grid {
    /* inner grid */
    display: grid;
    grid-row-gap: var(--grid-row-gap);
    /* height: 100%; */
    grid-column-gap: var(--grid-gutter);
    grid-template-columns: repeat(12,1fr);
}
div.badge {
    display: inline-block;
    line-height: var(--line-height--sm);
    padding: var(--badge-padding);
    background-color: var(--color-theme-base);
    color: var(--color-theme-text-negative);
    border: var(--border-width--xs) solid var(--color-theme-base);
}
span.logo {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
}
p.kicker {
    text-transform: uppercase;
    font-size: var(--font-size--kicker);
    font-weight: var(--font-weight--bold);
    letter-spacing: var(--letter-spacing--sm);
}
div.badge p.kicker {
    color: inherit;
    line-height: inherit;
    margin: 0;
}
.is-active {
    color: var(--color-theme-text-positive)!important;
}

.rich-text {
    width: 100%;
    font-family: var(--font-family--secondary);
    font-size: var(--font-size--paragraph);
    line-height: var(--line-height--lg);
}
.rich-text > :first-child { margin-top: 0; }
.rich-text p { margin-bottom: var(--spacing--sm); }
.rich-text h1, .rich-text h2, .rich-text h3,
.rich-text h4, .rich-text h5, .rich-text h6 {
    font-family: var(--font-family--primary);
    font-weight: var(--font-weight--regular);
    line-height: var(--line-height--heading);
    margin: 0;
    word-break: break-word;
}
.rich-text a:hover, .rich-text a:active {
    background-color: var(--color-theme-base);
    color: var(--color-theme-text-negative);
}
.heading-display {
    font-size: var(--font-size--display);
    font-weight: var(--font-weight--bold);
    line-height: var(--line-height--xs);
    text-transform: uppercase;
}

p.lede {
    font-family: var(--font-family--primary);
    font-size: var(--font-size--manchet);
    line-height: var(--line-height--lg);
    margin-bottom: 0;
}
.border-bottom--gray {
    border-bottom: var(--border--gray);
}
.margin-top--2xs { margin-top: var(--spacing--2xs); }
.margin-top--xs { margin-top: var(--spacing--xs); }
.margin-top--sm { margin-top: var(--spacing--sm); }
.margin-top--md { margin-top: var(--spacing--md); }
.margin-top--lg { margin-top: var(--spacing--lg); }
.margin-bottom--sm { margin-bottom: var(--spacing--sm); }
.margin-bottom--md { margin-bottom: var(--spacing--md); }
.margin-bottom--lg { margin-bottom: var(--spacing--lg); }

.link-list { height: 100%; }
div.link-list { 
    padding: var(--grid-gutter);
    background-color: var(--color-theme-base);
}
div.link-list > h1, div.link-list > h2, div.link-list > h3,
div.link-list > h4, div.link-list > h5, div.link-list > h6,
div.link-list > p {
    color: var(--color-theme-text-negative);
}
ul.link-list {
    /* margin-top: 0; */
    padding-left: 1.5rem;
    overflow: hidden;
}
.link-list li { margin-bottom: var(--spacing--sm); }
div.link-list li:nth-last-of-type(1) { margin-bottom: 0; }
.link-list a { 
    display: inline-flex; align-items: unset;
    color: var(--color-theme-text-negative);
    font-size: var(--font-size--link-sm); }
.link-list a:before {
    content: "";
    display: block;
    width: var(--link-list-icon-size);
    height: var(--link-list-icon-size);
    background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 15.74 11.031" fill="white" id="icon-arrow-right" xmlns="http://www.w3.org/2000/svg"><path d="M10.224 0l-.848.849 4.067 4.067H0v1.2h13.443l-4.067 4.067.848.848 5.516-5.515L10.224 0z"></path></svg>');
    background-repeat: no-repeat;
    position: relative;
    left: -12px;
    top: 4px;
    transition: transform var(--transition-duration--xs) ease;
}

.factbox {
    background-color: var(--color-wild-sand);
    border-top: var(--border-width--xs) solid var(--color-theme-base);
    padding: var(--grid-gutter);
}
.factbox .rich-text {
    font-family: var(--font-family--primary);
}

.btn {
    font-family: neo-sans,Arial;
    font-family: var(--font-family--primary);
    font-size: var(--font-size--button);
    font-weight: var(--font-weight--bold);
    letter-spacing: var(--letter-spacing--md);
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    background-color: var(--color-theme-base);
    border-radius: var(--border-radius--sm);
    border: var(--border-width--md) solid var(--color-theme-base);
    color: var(--color-theme-text-negative);
    cursor: pointer;
    display: inline-block;
    min-width: var(--sizes-button-mw);
    outline: none;
    padding: calc(0.6*var(--padding-button)) var(--padding-button);
    position: relative;
    transition: var(--transition-duration--xs) background-color ease,var(--transition-duration--xs) color ease,var(--transition-duration--xs) border-color ease;
}
.btn:active, .btn:focus, .btn:hover {
    border-color: var(--color-theme-dark);
    background-color: var(--color-theme-dark);
}
.btn.secondary {
    background-color: transparent;
    color: var(--color-theme-text-positive);
}
.btn.secondary:focus, .btn.secondary:hover {
    border-color: var(--color-theme-base);
    background-color: var(--color-theme-base);
    color: var(--color-theme-text-negative);
}
.btn.secondary:active  {
    border-color: var(--color-theme-dark);
    background-color: var(--color-theme-dark);
    color: var(--color-theme-text-negative);
}
a.btn:active, a.btn:focus, a.btn:hover {
    text-decoration: none;
}

div.span-2  { grid-column-end: span 2; }
div.span-3  { grid-column-end: span 3; }
div.span-4  { grid-column-end: span 4; }
div.span-6, div.span-half  { grid-column-end: span 6; }
div.span-8  { grid-column-end: span 8; }
div.span-10 { grid-column-end: span 10; }
div.span-12, div.span-full { grid-column-end: span 12; }

/* general rules */

html {
    box-sizing: border-box
}

*,:after,:before {
    box-sizing: inherit
}

ol,ul {
    margin: 0;
    padding: 0
}

ol li,ul li {
    list-style-type: none
}

a {
    font-family: inherit;
    background-color: transparent;
    border: 0;
    color: var(--color-black);
    cursor: pointer;
    outline: transparent;
    padding: 0;
    text-decoration: none;
    transition: color var(--transition-duration--xs);
}
a:hover, a:active {
    text-decoration: underline;
}

h1,h2,h3,h4,h5,h6,p {
    margin: 0
}

h1,h2,h3,h4,h5,h6 {
    font-weight: var(--font-weight--bold)
}
h1 {
    font-size: var(--font-size--level-1);
    line-height: var(--line-height--xs);
}
h2 { 
    font-size: var(--font-size--level-2);
    line-height: var(--line-height--xs);
}
h3 { 
    font-size: var(--font-size--level-3);
    line-height: var(--line-height--sm);
}
h4 { 
    font-size: var(--font-size--level-4);
    line-height: var(--line-height--sm);
}
h5 { 
    font-size: var(--font-size--level-5);
    line-height: var(--line-height--sm);
}
h6 {
    font-size: var(--font-size--level-6);
    line-height: var(--line-height--md);
}

table {
    width: 100%;
    overflow-x: auto;
    text-align: left;
    border-collapse: collapse
}

table td,table th {
    padding: var(--table-cell-padding);
    border: var(--border-width--xs) solid var(--color-alto);
}
thead td {
    font-size: var(--font-size--manchet);
    font-weight: var(--font-weight--bold);
}

/* mobile overrides */

@media only screen and (max-width: 63.9375rem) {
    header .identity {
        display: none;
    }
    header .navigation {
        position: absolute;
        left: -999999px;
    }
    header .utility {
        display: none;
    }

    footer > .main {
        grid-template-areas: none;
    }
    footer .institute {
        grid-area: unset;
        grid-column-end: span 12;
        grid-column-start: unset;
        flex-direction: unset;
    }
    footer .location {
        grid-area: unset;
        grid-column-end: span 12;
        grid-column-start: unset;
    }
    footer div.rich-text {
        margin-top: calc(-1*var(--spacing--sm));
    }
    footer .links {
        grid-area: unset;
        grid-column-end: span 12;
        grid-column-start: unset;
    }

    footer > .service {
        flex-direction: column;
    }

    div.span-2  { grid-column-end: span 12; }
    div.span-3  { grid-column-end: span 12; }
    div.span-4  { grid-column-end: span 12; }
    div.span-6, div.span-half  { grid-column-end: span 12; }
    div.span-8  { grid-column-end: span 12; }
    div.span-10 { grid-column-end: span 12; }
    div.span-12, div.span-full { grid-column-end: span 12; }
}