@charset "UTF-8";

:root {
	--color-black: 0,0,0;
    --color-grey-80: 204,204,204;
    --color-grey-94: 239,239,239;
	--color-gold-light: 231,205,105;
    --color-gold: 204,159,62;
    --color-footer: 232,205,107;
	--color-white: 255,255,255;
	--color-deep-purple: 25,15,28;
	--color-light-purple: 117,59,128;
	--color-purple: 50,15,55;
	--transition-duration-bt: 0.4s;
	--transition-timing-linear: linear;
	--transition-timing-ease-out: cubic-bezier(0,0.6,0.4,1);
	--transition-timing-ease-in-out: cubic-bezier(0.6,0,0.4,1);
	/*--transition-timing-ease-in-out: cubic-bezier(0.25, 0.25, 0.25, 1);*/
}

html {
	height: 100%;
    font-family: source-sans-pro, sans-serif;
    font-size: 62.5%;
}

body {
	width: 100%;
	height: 100%;
    background: rgb(var(--color-purple));
	overflow-y: scroll;
}

body.noscroll,
body.show-nav {
	overflow: hidden;
}

* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
}

img, iframe, video {
	display: block;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, hr, p, blockquote, pre, a, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figure, figcaption, hgroup, menu, footer, header, nav, button, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: none;
}

ul, li {
	list-style: none;
}

a {
	color: inherit;
	text-decoration: none;
}

h1, h2, h3, h4, h5 {
	font-weight: normal;
}

button {
	background: none;
	border-radius: 0;
	cursor: pointer;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0
}

*:focus {
    outline: 0;
}


/*************************************
	Header
 *************************************/


header {
	/*display: none;*/
}

header {
	display: block;
    position: absolute;
	width: 100%;
	left: 0px;
	top: 0px;
    background: rgb(var(--color-blue));
    transition: transform 0.6s;
    z-index: 1000;
}

header nav,
header > div {
    position: relative;
	font-size: max(min(18px, (18 / 375) * 100vw), (24 / 1920) * 100vw);
	line-height: 1em;
    padding: 1em 0;
}

header nav ul {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    align-items: flex-end;
	column-gap: 1.5em;
	font-size: max(min(16px, (16 / 375) * 100vw), (21 / 1920) * 100vw);
    padding-right: calc((87 / 1920) * 100vw);
}

header nav li {
    display: block;
    position: relative;
    min-height: 0vh;
    color: rgb(var(--color-white));
    font-weight: 300;
	font-size: max(min(16px, (16 / 375) * 100vw), (21 / 1920) * 100vw);
    line-height: 1em;
    text-transform: uppercase;
}

header nav li.lang a {
    /*position: absolute;
    transform: translateX(-50%);*/
}

/*header nav li a:has(i) {
	display: inline-flex;
	column-gap: 0.25em;

}*/

header nav li a i {
	/*font-size: 1.5em;
	line-height: 0.6667em;*/
	margin-right: 0.25em;
}

/*header nav li + li {
    margin-left: 2em;
}*/


/*************************************
	Sections
 *************************************/


.container {
	display: flex;
	flex-direction: column;
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 100%;
}

main {
	flex: 1 0 auto;
	display: block;
	position: relative;
	transition: transform 1.2s var(--transition-timing-ease-in-out);
    z-index: 100;
}

section {
	display: block;
	position: relative;
	width: 100%;
 	opacity: 1;
	transition: opacity 0.6s var(--transition-timing-linear);
}

strong {
    font-weight: 700;
}

p:last-child {
	margin-bottom: 0 !important;
}

.text-transform-uppercase {
	text-transform: uppercase;
}

.white-space-nowrap {
	white-space: nowrap;
}

.color-white {
    color: rgb(var(--color-white));
}

.color-gold {
    color: rgb(var(--color-gold));
}

.grecaptcha-badge { 
    visibility: hidden;
}


/*************************************
	Section banner
 *************************************/


section.banner {
	background: rgb(var(--color-purple));
	color: rgb(var(--color-gold));
	text-align: center;
	text-transform: uppercase;
}

section.banner h1,
section.banner h2 {
	font-weight: 300;
	font-size: max(min(18px, (18 / 375) * 100vw), (24 / 1920) * 100vw);
	letter-spacing: 0.2em;
	line-height: 1em;
    padding: 1em;
}

section.banner h2 {
    background-image: linear-gradient(90deg, rgba(var(--color-gold-light),1), rgba(var(--color-gold),1));
	color: rgb(var(--color-white));
	font-weight: 700;
}


/*************************************
	Section header
 *************************************/


section.header div.occupation,
section.header div.logo {
	display: flex;
	align-items: center;
	position: absolute;
	height: 100%;
	top: 0;
	opacity: 0;
	z-index: 10;
}

section.header.show div.occupation,
section.header.show div.logo {
	opacity: 1;
	transition: opacity 0.4s linear;
}

section.header div.occupation:before,
section.header div.logo:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	z-index: -1;
}

section.header div.occupation:before {
	left: 0;
    background-image: linear-gradient(90deg, rgba(var(--color-deep-purple),0.5) 25%, rgba(var(--color-deep-purple),0));
}

section.header div.logo:before {
	right: 0;
    background-image: linear-gradient(90deg, rgba(var(--color-deep-purple),0), rgba(var(--color-deep-purple),0.5) 75%);
}

section.header div.occupation {
	left: 0;
	padding-right: calc((100 / 1920) * 100vw);
}

section.header div.occupation img {
	width: calc((172 / 1920) * 100vw);
	height: auto;
}

section.header div.logo {
	right: 0;
	padding-left: calc((100 / 1920) * 100vw);
}

section.header div.logo img {
	width: calc((330 / 1920) * 100vw);
	height: auto;
}

section.header div.occupation img,
section.header div.logo img {
	opacity: 0;
	transform: scale(1.1);
}

section.header.show div.occupation img,
section.header.show div.logo img {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.6s linear, transform 1.2s cubic-bezier(0.25,0.25,0.25,1);
	transition-delay: 0.4s;
}

section.header .slogan {
	position: absolute;
	left: calc((160 / 1920) * 100vw);
	bottom: calc((160 / 1920) * 100vw);
	z-index: 10;
}

section.header .slogan h2 {
	color: rgb(var(--color-white));
	/*font-family: ivyjournal, sans-serif;*/
	font-weight: 400;
	font-size: max(min(54px, (32 / 375) * 100vw), (72 / 1920) * 100vw);
    letter-spacing: 0.05em;
	line-height: 1.0556em;
	text-transform: uppercase;
	opacity: 0;
	transform: translateY(1.0556em);
		
	mask-image: 
		linear-gradient(rgba(255,0,0,1), rgba(255,0,0,1)),
		linear-gradient(90deg, rgba(0,255,0,0) 33%, rgba(0,255,0,0.5), rgba(0,255,0,1) 66%);
	mask-position: 
		left top,
		left 100%;
	mask-repeat: no-repeat;
	mask-size: 
		100% 50%,
		300% 50%;

	padding: 0.1em;
}

section.header.show .slogan h2 {
	mask-position: 
		left top,
		100% 100%;
	opacity: 1;
	transform: translateY(0);
	transition: opacity 0.4s linear, transform 0.6s cubic-bezier(0.25,0.25,0.25,1), mask-position 0.6s cubic-bezier(0.25,0.25,0.25,1);
	transition-delay: 0.9s, 0.8s, 1.2s;
}


/*************************************
	Section registration
 *************************************/


section.registration {
	--dly-section: 0.4s;
	/*background-image: 
		url("../images/pattern.svg"),
		radial-gradient(rgba(var(--color-light-purple),0.5), rgb(var(--color-purple)));
	background-attachment: 
		fixed,
		scroll;
	background-position: center center;
	background-repeat: repeat;*/
	background: rgb(var(--color-purple));
	color: rgb(var(--color-white));
	/*opacity: 0;*/
	z-index: 20;
}

/*section.registration.show {
	opacity: 1;
	transition: opacity 0.4s linear;
}*/

section.registration > div {
	display: grid;
	grid-template-columns: auto calc((650 / 1920) * 100vw);
    grid-template-rows: auto 1fr;
	grid-column-gap: calc((120 / 1920) * 100vw);
	padding: calc((120 / 1920) * 100vw);
}

section.registration h3 {
	font-weight: 700;
	font-size: max(24px, (32 / 1920) * 100vw);
	line-height: 1.2em;
	text-transform: uppercase;
}

section.registration p {
	font-weight: 400;
	font-size: max(16px, (22 / 1920) * 100vw);
	line-height: 1.2em;
	opacity: 0;
}

section.registration * + p {
	margin-top: 1.2em;
}

section.registration.show p {
	opacity: 1;
	transition: opacity 0.4s linear;
	transition-delay: calc(var(--dly-section) + var(--transition-delay-3));
}

section.registration .presentation {
	position: relative;
}

section.registration .presentation h2,
section.registration .presentation p {
	padding: 0 calc((40 / 1920) * 100vw);
}

.form-container {
    grid-column: 2 / 3;
    grid-row: 1 / span 2;
	display: block;
	position: relative;
	width: 100%;
    color: rgb(var(--color-purple));
	margin: calc(((-120 - 165) / 1920) * 100vw) 0;
	padding: calc((165 / 1920) * 100vw) calc((60 / 1920) * 100vw);
	padding-bottom: calc((60 / 1920) * 100vw);
	z-index: 1;
}

.form-container:before,
.form-container:after {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
}
	
.form-container:before {
	--poly-t: calc(((165 + 12) / 1920) * 100vw);
	--poly-b: calc(100% - (((165 + 12) / 1920) * 100vw));
	--poly-w: 2px;
	--poly-f: calc(var(--poly-w) * 1.125);
	width: calc(100% + 48px);
	height: calc(100% + 48px);
	left: -24px;
	top: -24px;
	background: rgb(var(--color-gold));
	clip-path: polygon(
		0 var(--poly-t), 
		50% 0, 
		100% var(--poly-t), 
		100% var(--poly-b), 
		50% 100%, 
		0 var(--poly-b),
		0 var(--poly-t),
		var(--poly-w) calc(var(--poly-t) + (var(--poly-f) * 0.5)),
		var(--poly-w) calc(var(--poly-b) - (var(--poly-f) * 0.5)),
		50% calc(100% - var(--poly-f)),
		calc(100% - var(--poly-w)) calc(var(--poly-b) - (var(--poly-f) * 0.5)),
		calc(100% - var(--poly-w)) calc(var(--poly-t) + (var(--poly-f) * 0.5)),
		50% var(--poly-f),
		var(--poly-w) calc(var(--poly-t) + (var(--poly-f) * 0.5))
	);
}

.form-container:after {
	--poly-t: calc((165 / 1920) * 100vw);
	--poly-b: calc(100% - ((165 / 1920) * 100vw));
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgb(var(--color-white));
	clip-path: polygon(0 var(--poly-t), 50% 0, 100% var(--poly-t), 100% var(--poly-b), 50% 100%, 0 var(--poly-b));
}

.form-container h3 {
	display: block;
	mask-image: linear-gradient(rgba(255,0,0,1) 50%, rgba(255,0,0,0));
	mask-position: left 200%;
	mask-repeat: no-repeat;
	mask-size: 100% 200%;
	transform: translateY(1.2em);
}

section.registration.show .form-container.show h3 {
	mask-position: left 0;
	transform: translateY(0);
	transition: mask-position 1.2s cubic-bezier(0.25,0.25,0.25,1), transform 0.6s cubic-bezier(0.25,0.25,0.25,1);
	transition-delay: calc(var(--dly-section) + var(--transition-delay-3));
}

section.registration.show .form-container.hide p {
	opacity: 0;
	transition: opacity 0s linear;
	transition-delay: 0;
}

form {
	display: flex;
	flex-direction: column;
	row-gap: calc((30 / 1920) * 100vw);
	position: relative;
	font-size: 0px;
	margin-top: calc((50 / 1920) * 100vw);
}

form input, 
form textarea,
form label,
form button[type="submit"],
.takk p {
    display: block;
    position: relative;
    min-height: 0vh;
    color: rgb(var(--color-purple));
    font-family: source-sans-pro, sans-serif;
    font-weight: 300;
    font-size: max(16px, (22 / 1920) * 100vw);
    line-height: 1.2em;
    margin: 0;
}

form input, 
form textarea,
form label:not(.checkbox) span {
    padding: 0.4em;
}

form input, 
form textarea {
    width: 100%;
    background: rgba(var(--color-grey-94),1);
    border: none;
    border-radius: 0;
    -webkit-appearance: none;
	appearance: none;
}

form textarea {
	min-height: 2.0em;
    line-height: 1.2em;
    transition: min-height 0.4s var(--transition-timing-ease-in-out);
}

form textarea.focus-in {
    min-height: 5.6em;
}

form label {
    position: relative;
	opacity: 0;
	overflow: hidden;
}

section.registration.show .form-container.show form label {
	opacity: 1;
	transition: opacity 0.4s linear, padding 0.4s var(--transition-timing-ease-in-out);
	transition-delay: calc(var(--dly-section) + var(--transition-delay-3) + var(--transition-delay-4));
}

form label[for="first_name"],
form label[for="last_name"] {
    grid-column-start: auto;
    grid-column-end: span 1;
}

section.registration.show .form-container.show form label.focus-in {
    padding-top: 1.6em;
}

section.registration.show .form-container.show form label.focus-in,
section.registration.show .form-container.show form label.focus-out {
	transition-delay: 0s;
}

form label:not(.checkbox):has(input) span,
form label:not(.checkbox):has(textarea) span {
    text-transform: uppercase;
	opacity: 0;
	transform: translateY(100%);
	z-index: 10;
}

section.registration.show .form-container.show form label:not(.checkbox):has(input) span,
section.registration.show .form-container.show form label:not(.checkbox):has(textarea) span {
    position: absolute;
	opacity: 1;
	transform: translateY(0);
    transform-origin: left bottom;
	transition: opacity 0.2s linear, transform 0.4s var(--transition-timing-ease-in-out);
	transition-delay: calc(var(--dly-section) + var(--transition-delay-3) + var(--transition-delay-4) + 0.4s + 0.2s), calc(var(--dly-section) + var(--transition-delay-3) + var(--transition-delay-4) + 0.4s);
}

/*form label.focus-in span {*/
section.registration.show .form-container.show form label:not(.checkbox):has(input).focus-in span,
section.registration.show .form-container.show form label:not(.checkbox):has(textarea).focus-in span {
	transform: scale(0.8) translateY(-120%);
    transition: transform 0.4s 0.2s var(--transition-timing-ease-in-out);
}

section.registration.show .form-container.show form label:not(.checkbox):has(input).focus-out span,
section.registration.show .form-container.show form label:not(.checkbox):has(textarea).focus-out span {
    transition-delay: 0s;
}

form label.checkbox {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-gap: 1em;
    align-items: center;
    text-transform: none;
    padding: 0;
    transform: none;
}

form input[type="checkbox"] {
    align-self: start;
	width: auto;
	height: auto;
	-webkit-appearance: none;
	appearance: none;
	border: none;
	font-size: 0;
	margin: 0;
	padding: 0;
}

form input[type="checkbox"]:before {
    content: "\f00c";
    display: block;
    width: 2em;
    height: 2em;
    min-height: 0vh;
    background: transparent;
    color: rgba(var(--color-purple), 0);
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: max(16px, (22 / 1920) * 100vw);
    line-height: 2em;
    text-align: center;
    transition: color 0.4s linear;
}

form input[type="checkbox"]:checked:before {
    color: rgba(var(--color-purple), 1);
}

form label.checkbox.consent {
	border-top: solid 1px rgb(var(--color-grey-80));
	padding-top: calc((30 / 1920) * 100vw);
}

form button[type="submit"] {
    place-self: center;
	font-weight: 400;
    font-size: max(18px, (24 / 1920) * 100vw);
	padding: 0.6em 1.2em;
	opacity: 0;
}

section.registration.show .form-container.show form button[type="submit"] {
    opacity: 1;
    transition: opacity 0.4s linear;
	transition-delay: calc(var(--dly-section) + var(--transition-delay-3) + var(--transition-delay-4) + 0.4s);
}

form input:-webkit-autofill,
form input:-webkit-autofill:hover, 
form input:-webkit-autofill:focus, 
form input:-webkit-autofill:active {
    -webkit-text-fill-color: rgb(var(--color-dark-grey));
	-webkit-box-shadow: 0 0 0 30px rgba(var(--color-gold),0.25) inset !important;
	box-shadow: 0 0 0 30px rgba(var(--color-gold),0.25) inset !important;
}

.interest {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-row-gap: calc((15 / 1920) * 100vw);
}

.bt {
	display: inline-block;
	position: relative;
	background-image: linear-gradient(rgb(var(--color-gold-light)), rgb(var(--color-gold)));
	color: rgb(var(--color-purple));
	text-transform: uppercase;
	padding: 1.1667em 2.8333em;
	transition: background-color 0s var(--transition-timing-linear), color 0s var(--transition-timing-linear);
	clip-path: polygon(1.0rem 0, calc(100% - 1.0rem) 0, 100% 50%, calc(100% - 1.0rem) 100%, 1.0rem 100%, 0 50%);
	margin-left: -1.0rem;
}

.bt:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-image: linear-gradient(135deg, rgba(var(--color-white), 0), rgba(var(--color-white), 0.5), rgba(var(--color-white), 0));
	transform: translateX(-100%);
}

.bt:hover:after {
	transform: translateX(100%);
	transition: transform 0.6s var(--transition-timing-ease-in-out);
}

p.recaptcha-legal {
	text-align: center;
	padding: 0 calc((80 / 1920) * 100vw);
}

p.recaptcha-legal small {
    font-weight: 300;
    line-height: 1.2em;
}

@keyframes kf-registration-in {
    0% {
        transform: scale(0.01);
    }
    50% {
        transform: scale(1, 0.01);
    }
    100% {
        transform: scale(1,1);
    }
}

input.error {
	color: #FF0000;
    background: #f2bebe;
}

form p {
    grid-column: 1 / -1;
	opacity: 0;
}

section.registration.show .form-container.show form p {
	opacity: 0.5;
	transition: opacity 0.6s linear;
    transition-delay: 2.2s;
}

form p:not(:last-child) a {
	white-space: nowrap;
}

.takk {
	display: block;
	position: relative;
	animation: kf-fade-in 0.4s linear both;
	margin-top: calc((50 / 1920) * 100vw);
}

section.map picture {
	display: block;
	position: relative;
	width: 100vw;
	height: calc((1010 / 1920) * 100vw);
}

section.map img {
	width: 100%;
	height: auto;
	object-fit: cover;	
}


/*************************************
	Footer
 *************************************/


.floating-cta {
	position: sticky;
	bottom: 0;
    background: rgb(var(--color-purple));
	background-image: linear-gradient(rgba(var(--color-black),0.15), rgba(var(--color-black),0) 75%);
	box-shadow: 0 0 20px rgba(var(--color-white),0.1);
    text-align: center;
	z-index: 1100;
}


/*section.banner {
	background: rgb(var(--color-purple));
	color: rgb(var(--color-gold));
	text-align: center;
	text-transform: uppercase;
}

section.banner h1,
section.banner h2 {
	font-weight: 300;
	font-size: max(min(18px, (18 / 375) * 100vw), (24 / 1920) * 100vw);
	letter-spacing: 0.2em;
	line-height: 1em;
    padding: 1em;
}*/


.floating-cta a.bt {
	display: inline-flex;
	column-gap: 0.25em;
	font-weight: 400;
    font-size: max(18px, (24 / 1920) * 100vw);
	line-height: 1em;
	margin: 1em 0;
	padding: 0.6em 1.2em;
}

.floating-cta a.bt i {
	font-size: 1.5em;
	line-height: 0.6667em;
}

footer {
	--dly-section: 0.4s;
	position: relative;
    width: 100%;
    color: rgb(var(--color-white));
    font-weight: 300;
    font-size: 16px;
    line-height: 1.2em;
    padding: calc((130 / 1920) * 100vw) calc((165 / 1920) * 100vw);
}

footer:before,
footer:after {
	content: "";
	display: block;
	position: absolute;
    width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: -1;
}

footer:before {
	background: rgb(var(--color-purple));
}

footer:after {
	background: rgb(var(--color-purple)) url("../images/bckg-footer.jpg") center center no-repeat;
	background-size: cover;
	opacity: 0;
}

footer.show:after {
	opacity: 1;
	transition: opacity 0.4s linear;
}

footer > div {	
	display: grid;
	grid-template-columns: auto 1fr;
	grid-column-gap: calc((100 / 1920) * 100vw);
}

footer .logo {
	grid-row-end: span 2;
}

footer .logo img {
	width: calc((237 / 1920) * 100vw);
}

footer .pavillon {
	padding-top: 1.25em;
}

.logo-brivia {
	width: auto;
	height: calc((78 / 1920) * 100vw);
}

.logo-ipsofacto {
	width: auto;
	height: calc((59 / 1920) * 100vw);
}

footer div.partners {
    display: flex;
	align-items: center;
    grid-column-gap: calc((60 / 1920) * 100vw);
    padding: calc((50 / 1920) * 100vw) 0;
}

footer .copyright {
	grid-column-start: 2;
}

footer .logo,
footer .pavillon,
footer .partners,
footer .copyright {
	opacity: 0;
}

footer.show .logo,
footer.show .pavillon,
footer.show .partners,
footer.show .copyright {
	opacity: 1;
	transition: opacity 0.4s linear;
	transition-delay: calc(var(--dly-section) + var(--transition-delay-2));
}

@keyframes kf-fade-in {
    0%   {opacity: 0;}
    100%  {opacity: 1;}
}

.mobile {
    display: none;
}

@media screen and (max-width: 767px) {
    .desktop {
        display: none;
    }
    
    .mobile {
        display: block;
    }
    
    header nav {
        margin-top: 6em;
    }
    
    header nav ul {
        padding-right: calc((33 / 375) * 100vw);
    }
    
    section.header div.occupation,
    section.header div.logo {
        height: calc(100% - (((50 / 375) * 100vw) + 24px));
    }
    
    section.header div.occupation:before,
    section.header div.logo:before {
        height: calc(100% + (((50 / 375) * 100vw) + 24px));
    }
    
    section.header div.occupation img {
        width: calc((172 / 375) * 100vw);
    }
    
    section.header div.logo img {
        width: calc((128 / 375) * 100vw);
    }
    
    section.header .slogan {
        bottom: calc(((50 / 375) * 100vw) + 24px);
    }
    
    section.registration > div {
        grid-template-columns: auto;
        grid-template-rows: auto;
        padding: calc((20 / 375) * 100vw);
    }
    
    .form-container {
        grid-column: auto;
        grid-row: auto;
        width: 100vw;
        clip-path: polygon(0 25vw, 50% 0, 100% 25vw, 100% calc(100% - 25vw), 50% 100%, 0 calc(100% - 25vw));
        margin: 0 calc((-20 / 375) * 100vw);
        margin-bottom: calc(-25vw - ((20 / 375) * 100vw));
        padding: calc(25vw + ((20 / 375) * 100vw)) calc((20 / 375) * 100vw);
        padding-bottom: 25vw;
    }
    
    form {
        row-gap: calc((30 / 375) * 100vw);
        margin-top: calc((30 / 375) * 100vw);
    }
    
    form label.checkbox.consent {
        padding-top: calc((30 / 375) * 100vw);
    }
    
    .interest {
        grid-template-columns: auto;
        grid-row-gap: calc((15 / 375) * 100vw);
    }
    
    .takk {
        margin-top: calc((30 / 375) * 100vw);
    }
	
	section.map picture {
		height: calc((630 / 375) * 100vw);
	}

    footer {
        /*background-image: url("../images/bckg-footer-mobile.jpg");*/
        padding: calc((50 / 375) * 100vw) calc((20 / 375) * 100vw);
    }
	
	footer:after {
        background-image: url("../images/bckg-footer-mobile.jpg");
	}
    
    footer > div {	
        grid-template-columns: auto;
        grid-column-gap: 0;
        grid-row-gap: calc((50 / 375) * 100vw);
    }

    footer .logo {
        grid-row-end: auto;
    }

    footer .logo img {
        width: calc((237 / 375) * 100vw);
    }

    footer .pavillon {
        padding-top: 0;
    }

    .logo-brivia {
        height: calc((78 / 375) * 100vw);
    }

    .logo-ipsofacto {
        height: calc((59 / 375) * 100vw);
    }

    footer div.partners {
        grid-column-gap: calc((60 / 375) * 100vw);
        padding: 0;
    }

    footer .copyright {
        grid-column-start: auto;
    }
}