:root {
    --primary:182,31,43;
    --secondary:111,111,111;
    --tertiary:0,0,0;
    --light-grey:247,247,247;
    --dark-grey:30,30,30;
    --logoMaxHeight:110px;
    --logoPadding:10px;
    --smallLogoPadding:5px;
    --maxHeight:calc(var(--logoMaxHeight) + calc(var(--logoPadding) * 2));
    --navLinkHeight:70px;
    --imgMaxHeight:auto;
    --imgWidth:100%;
    --dividerMarginTop:30px;
    --dividerMarginBottom:30px;
    --lineWidth:100%;
    --bs-gutter-x:1.5rem;
    --padding:1rem;
    --iconMaxHeight:140px;
    --h1:1.75rem;
    --h3:1.25rem;
    --h4:1.125rem;
}

html, body {font-family: 'Open Sans', sans-serif;font-size:100%;background-color:#1E1E1E;color:white;}
main {transition:.5s padding-top ease;}
.noscroll {overflow:hidden;}
h1 {font-family: 'Tilt Warp', sans-serif;font-size:var(--h1);font-weight:400;color:rgb(var(--primary));text-transform:uppercase;}
h2 {font-family: 'Tilt Warp', sans-serif;font-size:var(--h1);font-weight:400;margin-top:0;}
h3 {font-family: 'Tilt Warp', sans-serif;font-size:var(--h3);font-weight:400;}
h3.primary {font-size:0.8rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;}
.banner.ref h3.primary {font-size:calc(var(--h1) * 0.4);}
h4 {font-family: 'Open Sans', sans-serif;font-size:var(--h4);font-weight:700;}
h1.header, h2.header {font-size:calc(var(--h1) * 1.15);}
/*.header-col {margin-top:1.5rem;}*/
div.container:first-of-type .header-col {margin-top:0;}
.header {/*margin-bottom:1.5rem;*/margin-bottom:0;font-weight:700;}
.header-icon {max-height:var(--iconMaxHeight);}
/*.header-icon {color:rgb(var(--primary));}
.header-icon > i {font-size:2rem;margin-bottom:.75rem;}*/
.center {text-align: center;}
p {font-size:1rem;line-height:1.7;}
.bigger {font-size:1.2em;}
p:last-child {margin-bottom:0;}
hr {width: 100px;color: black;border-top: 1px solid black;display:inline-block;margin-bottom:1.5rem;margin-top:0;opacity:1;}
.divider {display:block;margin-top:var(--dividerMarginTop);margin-bottom:var(--dividerMarginBottom);line-height:0;}
.divider hr {margin:0;width:var(--lineWidth);}
img.icon {max-width: 65px;}
a {color:rgb(var(--primary));text-decoration:none;}
a:hover, a:active, a:focus {color:rgb(var(--primary));filter:brightness(.8);text-decoration:none;}
p a {display:inline-block;}
p a::after {content:'';display:block;background:rgb(var(--primary));width:0;height:1px;transition:width .3s linear;}
p a:hover::after {width:100%;}

.primary {color: rgb(var(--primary));}
.secondary {color: rgb(var(--secondary));}
.tertiary {color: rgb(var(--tertiary));}
h1.black {color: #000000;}
h1.white {color: #ffffff;}

.row {margin-bottom:15px;}
.no-pad .row {margin-bottom:0;}
.container:last-child .row, .container-fluid:last-child .row, .ghost-link:last-child {margin-bottom:0;}

/*** Nav ***/
.main-nav {position:fixed;top:0;bottom:100%;width:100%;z-index:1001;transition:all .3s linear;}
.brand {position:absolute;z-index:3;height:65px;}
.brand-wrap {height:100%;display:block;padding:.5rem 1rem;}
.brand-logo {object-fit:contain;height:100%;width:auto;}
.nav-collapse {position:absolute;top:0;bottom:100%;width:100%;z-index:1;background:#1E1E1E;color:white;overflow-y:scroll;transition:bottom .3s linear;}
.main-nav.open, .open .nav-collapse {bottom:0;}
.main-nav ul {margin:0;padding:80px 60px 30px 60px;display:flex;flex-direction:column;text-align:center;}
.main-nav ul li {list-style-type:none;padding:0;}
.main-nav li a {color:white;text-decoration:none;line-height:2.5rem;font-weight:600;-webkit-font-smoothing:antialiased;}
.main-nav li a:hover, .main-nav li a:active {color:rgb(var(--primary));}
/*.main-nav .sub {position:relative;}
.main-nav .dropdown {visibility:hidden;opacity:0;position:absolute;}
.main-nav .dropdown {flex-direction:column;}*/

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

/*** Toggle ***/
.toggle {position: absolute;z-index: 999;display: inline-block;width: 50px;height: 39px;cursor: pointer;right:16px;top:16px;padding:10px;font-size:14px;line-height:15px;text-align:left;color:#fff;font-weight:400;transition-duration: 0s;transition-delay: .1s;}
.open .toggle {color:#333;transition-duration: 0s;transition-delay: .1s;}
.toggle .cross {float:right;transition-duration: 0s;transition-delay: .1s;}
.toggle .cross span:before, .toggle .cross span:after {transition-property:margin,-webkit-transform,background-color;transition-property:margin,transform,background-color;transition-duration:.1s,.1s,.5s;transition-delay:.1s,0,0;}
.open .toggle .cross span {background-color: transparent;transition-delay: .1s;}
.open .toggle .cross span:before {margin-top: 0;-webkit-transform: rotate(45deg);-ms-transform: rotate(45deg);transform: rotate(45deg);transition-delay: 0,  .1s;background-color: #fff;}
.open .toggle .cross span:after {margin-top: 0;-webkit-transform: rotate(-45deg);-ms-transform: rotate(-45deg);transform: rotate(-45deg);transition-delay: 0,  .1s;background-color: #fff;}
.toggle .cross span {margin: 0 auto;position: relative;z-index: 999;top: 8px;width: 30px;height: 2px;background-color: #fff;display: block;transition-property:background-color;transition-duration:.5s;transition-delay:0;}
.toggle .cross span:before,.toggle .cross span:after {position: absolute;content: '';width: 30px;height: 2px;background-color: #fff;display: block;}
.toggle .cross span:before {margin-top: -8px;}
.toggle .cross span:after {margin-top: 8px;}

/*** Banner ***/
.banner {height:300px;overflow:hidden;position:sticky;top:0;text-align:center;color:white;background-position:center center;background-size:cover;background-repeat:no-repeat;}
.banner.mini {height:200px;}
.banner.small {height:300px;}
.banner.big {height:450px;}
.banner.overtake {height:100vh;}

.overlay {background:rgb(var(--primary));opacity: 0.4;width: 100%;height: 100%;display: block;z-index: 0;position: absolute;top: 0px;left: 0px;}
.darken {background:#000 !important;}
.d01 {opacity:.1;}
.d02 {opacity:.2;}
.d03 {opacity:.3;}
.d04 {opacity:.4;}
.d05 {opacity:.5;}
.d06 {opacity:.6;}
.d07 {opacity:.7;}
.d08 {opacity:.8;}
.d09 {opacity:.9;}
.d10 {opacity:1;}
.b00 {filter:brightness(0);}
.b01 {filter:brightness(0.1);}
.b02 {filter:brightness(0.2);}
.b03 {filter:brightness(0.3);}
.b04 {filter:brightness(0.4);}
.b05 {filter:brightness(0.5);}
.b06 {filter:brightness(0.6);}
.b07 {filter:brightness(0.7);}
.b08 {filter:brightness(0.8);}
.b09 {filter:brightness(0.9);}
.b10 {filter:brightness(1);}
.b11 {filter:brightness(1.1);}
.b12 {filter:brightness(1.2);}
.b13 {filter:brightness(1.3);}
.b14 {filter:brightness(1.4);}
.b15 {filter:brightness(1.5);}
.b16 {filter:brightness(1.6);}
.b17 {filter:brightness(1.7);}
.b18 {filter:brightness(1.8);}
.b19 {filter:brightness(1.9);}
.b20 {filter:brightness(2);}
.banner-video-image {position:absolute;top:0;right:0;bottom:0;left:0;background-position:center center;background-size:cover;background-repeat:no-repeat;}
.banner-video {display:none;position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;overflow:hidden;transform:translate(-50%,-50%);width:100%;height:auto;object-fit:cover;}
.banner-content {position:absolute;inset:0;z-index: 100;display:flex;flex-direction:column;justify-content:flex-end;text-align:left;padding:calc(var(--padding) + calc(var(--bs-gutter-x) * .5));}
.to-le {justify-content:flex-start;right:auto;}
.to-ri {justify-content:flex-start;text-align:right;left:auto;}
.ce {justify-content:center;text-align:center;margin-inline:auto;}
.bo-le {justify-content:flex-end;right:auto;}
.bo-ri {justify-content:flex-end;text-align:right;left:auto;}
.banner h1 {font-size: calc(var(--h1) * 1.45);font-weight: 700;}
.banner h4 {font-weight:400;}
.banner-content h1, .banner-content p {color:inherit;}
.banner-content p {font-size:calc(var(--h1) * 0.6);}
.banner-image {width:100%;height:100%;object-fit:cover;object-position:center center;}
.default-o::after {content:'';position:absolute;inset:0;z-index:0;background: linear-gradient(72.44deg, rgba(30, 30, 30, 0.8) 0%, rgba(0, 0, 0, 0) 100%), linear-gradient(107.56deg, rgba(30, 30, 30, 0.4) 0%, rgba(0, 0, 0, 0) 100%);}
.banner-content .links {flex-direction:row;flex-wrap:wrap;}
.banner-content .ghost-link {margin-bottom:.5rem;margin-right:.5rem;white-space:nowrap;}


/*** Content sections ***/
.content .container {position:relative;}
.content {padding:var(--padding);}
section:not(:first-child) {position:sticky;border-top:1px solid rgb(var(--secondary));}
section.nl {border-top:0;}
span.anchor {position:absolute;top:-70px;}
.no-pad-top {padding-top:0 !important;}
.no-pad-bot {padding-bottom:0 !important;}
.half-pad-top {padding-top:2.5rem !important;}
.half-pad-bot {padding-bottom:2.5rem !important;}
.bg-image {background-size:cover;background-position:center center;background-repeat:no-repeat;}
.bg-image .col-*:not(.column) {color:white;}
.bg-image .col-*:not(.column) hr {border-color:white;}
.white-bg {background-color:white;}
.light-grey-bg {background-color:rgb(var(--light-grey));}
.dark-grey-bg {background-color:rgba(var(--dark-grey));}
.primary-bg {background-color:rgb(var(--primary));}
.primary-bg .primary {color:white;}
.secondary-bg {background-color:rgb(var(--secondary));}
.tertiary-bg {background-color:rgb(var(--tertiary));}
.content.white-text-some,.content.white-text-all {color:white;}
.white-text-all h1, .white-text-all .primary, .white-text-all .consent label{color:white;}
/*.white-text-all a {color:white;text-decoration:underline;}*/
.white-text-all hr, .white-text-some hr {border-color:white;}
/*.white-text-all a:hover,.white-text-all a:active,.white-text-all a:focus {color:white;filter:brightness(.8);text-decoration:underline;}*/
.content ul:last-child {margin-bottom:0;}
section.content:not(:has(div)) {padding:0 !important;}


/*** Sticky sections ***/
.sticky-content {position:sticky;top:var(--padding);padding-bottom:calc(var(--padding) * .5);}
.sticky-content h1, .sticky-content h2 {max-width:100%;word-wrap:break-word;}

/*** References ***/
.category-select {margin-bottom:calc(var(--padding) * .5);}
.category-select a {transition:all .3s linear;cursor:pointer;font-weight:600;}
.category-select a.selected {color:white;transition:all .3s linear;}
.ref-con {align-items:center;justify-content:center;}
.ref-con-pic {padding-left:0;padding-right:0;border-radius:100%;overflow:hidden;}
.ref-con-pic img {max-width:100%;width:100%;height:auto;}
.ref-con-text {text-align:center;margin-top:2rem;}

/*** Links / Ghost-links ***/
.links {display:inline-flex;flex-direction:column;}
.links:last-child {margin-top:.5rem;}
.ghost-link.primary {color:rgb(var(--primary));border-color:rgb(var(--primary));background:linear-gradient(to left, transparent 50%, rgb(var(--primary)) 50%);fill:rgb(var(--primary));}
.ghost-link.secondary {color:rgb(var(--secondary));border-color:rgb(var(--secondary));background:linear-gradient(to left, transparent 50%, rgb(var(--secondary)) 50%);fill:rgb(var(--secondary));}
.ghost-link.black {color:black;border-color:black;background:linear-gradient(to left, transparent 50%, black 50%);fill:black;}
.ghost-link.white {color:white;border-color:white;background:linear-gradient(to left, transparent 50%, white 50%);fill:white;}
.ghost-link.reversed.primary {color:white;border-color:rgb(var(--primary));background:linear-gradient(to left, rgb(var(--primary)) 50%, transparent 50%);fill:white;}
.ghost-link.reversed.secondary {color:white;border-color:rgb(var(--secondary));background:linear-gradient(to left, rgb(var(--secondary)) 50%, transparent 50%);fill:white;}
.ghost-link.reversed.black {color:white;border-color:black;background:linear-gradient(to left, black 50%, transparent 50%);fill:white;}
.ghost-link.reversed.white {color:black;border-color:white;background:linear-gradient(to left, white 50%, transparent 50%);fill:black;}
a.ghost-link {text-decoration:none;padding:.75rem 1.25rem .75rem 1.25rem;margin-bottom:.5rem;border-width:2px;border-style:solid;display:inline-block;transition:background-position .3s ease .25s, color .3s ease .25s, fill .3s ease .25s;position:relative;text-align:left;}
.ghost-link.primary, .ghost-link.secondary, .ghost-link.black, .ghost-link.white, .ghost-link.reversed.primary, .ghost-link.reversed.secondary, .ghost-link.reversed.black, .ghost-link.reversed.white {background-size:207% 100%;background-position:right bottom;background-repeat:no-repeat;}
a.ghost-link:hover, a.ghost-link:active, a.ghost-link:focus {color:white;background-position:left bottom;transition:background-position .3s ease, color .3s ease, fill .3s ease;text-decoration:none;fill:white;filter:brightness(1);}
a.ghost-link.white:hover, a.ghost-link.white:active, a.ghost-link.white:focus {color:black;fill:black;}
.ghost-link svg {position:absolute;right:.5rem;top:50%;transform:translateY(-50%);height:1rem;}
.ghost-link svg * {fill:inherit;}

a.ghost-link.reversed.primary:hover, a.ghost-link.reversed.primary:active, a.ghost-link.reversed.primary:focus {color:rgb(var(--primary));fill:rgb(var(--primary));background-position:left bottom;transition:background-position .3s ease, color .3s ease, fill .3s ease;text-decoration:none;}
a.ghost-link.reversed.secondary:hover, a.ghost-link.reversed.secondary:active, a.ghost-link.reversed.secondary:focus {color:rgb(var(--secondary));fill:rgb(var(--secondary));background-position:left bottom;transition:background-position .3s ease, color .3s ease, fill .3s ease;text-decoration:none;}
a.ghost-link.reversed.black:hover, a.ghost-link.reversed.black:active, a.ghost-link.reversed.black:focus {color:black;fill:black;background-position:left bottom;transition:background-position .3s ease, color .3s ease, fill .3s ease;text-decoration:none;}
a.ghost-link.reversed.white:hover, a.ghost-link.reversed.white:active, a.ghost-link.reversed.white:focus {color:white;fill:white;background-position:left bottom;transition:background-position .3s ease, color .3s ease, fill .3s ease;text-decoration:none;}
a.ghost-link.align-self-center {width:auto;}

/*** Grid content ***/
.gridcontent .header-col {padding-bottom:calc(var(--padding) * .25);}
.gridcontent.windows {margin:calc(var(--padding) * -1);}
.grid-content {margin-left:0;margin-right:0;justify-content:center;margin-bottom:0;}
.grid-image {background-size:cover;background-position:center center;background-repeat:no-repeat;min-height:200px;/*overflow:hidden;*/padding-left:0;padding-right:0;}
.grid-image img {width:100%;height:100%;object-fit:cover;}

.grid-image-double {position:relative;width:100%;height:100%;}
.grid-image-double img.double-img {width:70%;height:70%;position:absolute;-webkit-box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);-moz-box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);}
.grid-image-double img.double-img:first-child {top:0;left:0;}
.grid-image-double img.double-img:last-child {bottom:0;right:0;}
.right .grid-content:nth-child(even) .grid-image-double img.double-img:first-child, .left .grid-content:nth-child(odd) .grid-image-double img.double-img:first-child {left:auto;right:0;}
.right .grid-content:nth-child(even) .grid-image-double img.double-img:last-child, .left .grid-content:nth-child(odd) .grid-image-double img.double-img:last-child {left:0;right:auto;}

.grid-image-wrap {position:relative;width:100%;height:100%;}
img.grid-imgs {
  --box-a:calc(var(--box-n) - 1);
  --box-s:calc(100% / var(--box-a));
  --box-start:calc(var(--box-s) / 2);
  --box-move:calc(calc(var(--box-s) / var(--box-a)) * calc(var(--box-a) - 1));
  width:var(--box-s);
  height:var(--box-s);
  position:absolute;
  -webkit-box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);-moz-box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);
}
img.grid-imgs:first-child {top:0;left:0;}
img.grid-imgs:last-child {bottom:0;right:0;}
img.grid-imgs:not(:first-child):not(:last-child){transform:translate(-50%,-50%);}
img.grid-imgs:nth-child(2):not(:last-child) {top:calc(var(--box-start) + var(--box-move));left:calc(var(--box-start) + var(--box-move));}
img.grid-imgs:nth-child(3):not(:last-child) {top:calc(var(--box-start) + calc(var(--box-move) * 2));left:calc(var(--box-start) + calc(var(--box-move) * 2));}
img.grid-imgs:nth-child(4):not(:last-child) {top:calc(var(--box-start) + calc(var(--box-move) * 3));left:calc(var(--box-start) + calc(var(--box-move) * 3));}
img.grid-imgs:nth-child(5):not(:last-child) {top:calc(var(--box-start) + calc(var(--box-move) * 4));left:calc(var(--box-start) + calc(var(--box-move) * 4));}
img.grid-imgs:nth-child(6):not(:last-child) {top:calc(var(--box-start) + calc(var(--box-move) * 5));left:calc(var(--box-start) + calc(var(--box-move) * 5));}

.right .grid-content:nth-child(even) img.grid-imgs:first-child, .left .grid-content:nth-child(odd) img.grid-imgs:first-child {left:auto;right:0;}
.right .grid-content:nth-child(even) img.grid-imgs:last-child, .left .grid-content:nth-child(odd) img.grid-imgs:last-child {left:0;right:auto;}
.right .grid-content:nth-child(even) img.grid-imgs:not(:first-child):not(:last-child), .left .grid-content:nth-child(odd) img.grid-imgs:not(:first-child):not(:last-child) {transform:translate(50%,-50%);}
.right .grid-content:nth-child(even) img.grid-imgs:nth-child(2):not(:last-child), .left .grid-content:nth-child(odd) img.grid-imgs:nth-child(2):not(:last-child) {left:auto;top:calc(var(--box-start) + var(--box-move));right:calc(var(--box-start) + var(--box-move));}
.right .grid-content:nth-child(even) img.grid-imgs:nth-child(3):not(:last-child), .left .grid-content:nth-child(odd) img.grid-imgs:nth-child(3):not(:last-child) {left:auto;top:calc(var(--box-start) + calc(var(--box-move) * 2));right:calc(var(--box-start) + calc(var(--box-move) * 2));}
.right .grid-content:nth-child(even) img.grid-imgs:nth-child(4):not(:last-child), .left .grid-content:nth-child(odd) img.grid-imgs:nth-child(4):not(:last-child) {left:auto;top:calc(var(--box-start) + calc(var(--box-move) * 3));right:calc(var(--box-start) + calc(var(--box-move) * 3));}
.right .grid-content:nth-child(even) img.grid-imgs:nth-child(5):not(:last-child), .left .grid-content:nth-child(odd) img.grid-imgs:nth-child(5):not(:last-child) {left:auto;top:calc(var(--box-start) + calc(var(--box-move) * 4));right:calc(var(--box-start) + calc(var(--box-move) * 4));}
.right .grid-content:nth-child(even) img.grid-imgs:nth-child(6):not(:last-child), .left .grid-content:nth-child(odd) img.grid-imgs:nth-child(6):not(:last-child) {left:auto;top:calc(var(--box-start) + calc(var(--box-move) * 5));right:calc(var(--box-start) + calc(var(--box-move) * 5));}

.grid-video .ratio {height:100%;}
.vimeo-video {background-color:black;}
.grid-content-inner {padding:3rem 0;display:flex;justify-content:center;justify-items:center;}
.grid-content-inner h2 {overflow-wrap:break-word;hyphens:auto;}
.grid-text {width:90%;}

/*** Skills ***/
h2.header {text-transform:uppercase;display:inline-block;}
h2.header hr {display:block;width:100%;margin-top:3rem;margin-bottom:0rem;border:none;border-top:3px solid rgb(var(--secondary));}
.skills-header h2, .skills-header h3 {margin-bottom:3rem;}
.header-col {padding-bottom:calc(var(--padding) * .5);}
.skills-header {position:sticky;top:var(--padding);padding-bottom:calc(var(--padding) * .5);}
.skill {text-align:center;padding:3rem 2rem;position:relative;transition:background .3s linear;}
.skill:hover {background:rgba(0,0,0,0.2);}
.skill h3 {font-size:calc(var(--h3) * 0.85);hyphens:auto;}
.skill-icon-wrap {margin-bottom:1.5rem;}
.skill-icon {max-height:var(--iconMaxHeight);}
a.skill-link {color:rgb(var(--primary));text-decoration:none;}
a.skill-link:hover, a.skill-link:active {color:rgb(var(--primary));filter:none;}
a.skill-link::before {content:'';position:absolute;inset:0;z-index:1;}

.skill::after, .skill::before{content: '';position: absolute;inset:-1px 0 0 -1px;transition: all 0.5s;}
.skill::after{border-right: 1px solid rgb(var(--secondary));border-left: 1px solid rgb(var(--secondary));transform: scale(1, 0);}
.skill::before{border-top: 1px solid rgb(var(--secondary));border-bottom: 1px solid rgb(var(--secondary));transform: scale(0, 1);}

.other-skills {padding-top:var(--padding);border-top:1px solid rgb(var(--secondary));}

/*** Data ***/
.data {width:100%;display:flex;flex-direction:column;padding-top:3rem;padding-bottom:3rem;}
.data.half-pad-top {padding-top:1.5rem !important;}
.data.half-pad-bot {padding-bottom:1.5rem !important;}
.grid-text .data {padding-top:0;padding-bottom:0;}
.data-input {display:flex;flex-direction:row;border-top:1px solid black;padding-top:.6rem;padding-bottom:.6rem;}
.data-input:last-child {border-bottom:1px solid black;}
.input-text {flex:1;text-align:left;}
.input-data {text-align:right;}
.input-description {font-style:italic;display:block;}
.data-table {width:100%;border-spacing:0;}
.data-table tbody {vertical-align:top;}
.data-table tr {border-top:1px solid black;}
.data-table tr:last-child {border-bottom:1px solid black;}
.data-table tr td, .data-table tr th {text-align:left;padding-top:.6rem;padding-bottom:.6rem;}
.data-table tr td ~ td, .data-table tr th ~ th {text-align:right;}

/*** Columns ***/
.column:not(:last-child) {margin-bottom:2rem;}
.column:not(.none) {padding:3rem;-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;-moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;}
.column.white {background-color:white;}
.column.light-grey {background-color:rgb(var(--light-grey));}
.column.dark-grey {background-color:rgba(var(--dark-grey));}
.column.primary {background-color:rgb(var(--primary));color:white;}
.primary hr {border-color:white;}
.bg-image .column.none {color:white;}
.bg-image .column.none hr, .bg-image .column.primary hr {border-color:white;}
.column.primary .primary {color:white;}
.column.bg-color:not(:last-child) {margin-bottom:0;}

/*** Images ***/
.no-pad-top div[class^="container"]:first-child .row {margin-top:0;}
.no-pad-bot div[class^="container"]:last-child .pic, .no-pad-bot div[class^="container"]:last-child .row {margin-bottom:0;}
.pics-full {margin-top:3rem;}
.pic {margin-top:1rem;margin-bottom:1rem;display:flex;justify-content:center;}
.pics-full .pic {margin-top:0;padding-left:0;padding-right:0;}
.pic img {max-width:100%;width:var(--imgWidth);height:var(--imgMaxHeight);}

/*** Persons ***/
.person {margin-top:2rem;}
.person-image img {max-width:100%;width:100%;height:auto;}
.person-text {padding:.5rem;margin-top:1rem;}
.person a {word-break:break-word;}

/*** Videos ***/
.videos {padding-top:2rem;overflow:hidden;transition:height .3s ease;}
.video {text-align:left;padding-bottom:1.5rem;}
.video p {margin-top:1rem;margin-bottom:.5rem;}
.videos-more {text-align:left;margin-top:1.5rem;display:block;cursor:pointer;}
.videos-more svg {margin-left:.5rem;height:1rem;-webkit-transform: rotate(90deg);-moz-transform: rotate(90deg);-o-transform: rotate(90deg);-ms-transform: rotate(90deg);transform: rotate(90deg);}

/*** Map ***/
.map {position:relative;min-height:300px;}
.map iframe {position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;}
.map-text {align-self:center;padding-top:1.5rem;}

/*** Search page ***/
.search-bar {width:100%;background-color:rgb(var(--primary));padding:1px 1px 1px 1px;margin-bottom:1rem;line-height:40px;}
.search-bar form {display:flex;}
.search-bar .search-input {width:auto;flex-grow:1;padding:0 1rem;}
.search-bar .search-button {padding:0 1rem;}
.search-results ul, .search-results li {margin:0;padding:0;list-style-type:none;}
.search-results li {font-size:1rem;padding:.25rem 0;}

/*** Features ***/
.feature .date {font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;padding-bottom:.5rem;display:block;}
.feature-inner {display:flex;flex-direction:column;padding-bottom:3rem;}
.feature-image {background-size:cover;background-position:center center;background-repeat:no-repeat;}
.feature-image {width:100%;height:400px;}
.feature-image img {object-fit:cover;width:100%;height:100%;}
.feature-text {width:100%;display:flex;align-items:center;}
.feature-text-inner {padding:1.5rem .5rem .5rem .5rem;}
.feature-text-inner h3 {margin-bottom:1rem;}
.feature-text-wrap {padding-bottom:1rem;}
.features.columns {display:flex;justify-content:center;}
.features.columns .feature-image {width:100%;min-height:260px;}
.features.columns .feature-inner {flex-direction:column;height:100%;}
.features.columns .feature-text {width:100%;flex:auto;}
.features.columns .feature-text-inner {width:100%;margin-left:0;padding:1.5rem .5rem .5rem .5rem;height:100%;display:flex;flex-direction:column;}
.features.columns .feature-text-inner .ghost-link {margin-top:auto;}
.features.cards .feature-card-link {position:relative;width:100%;display:flex;color:white;overflow:hidden;}
.features.cards .feature-card-link:hover, .features.cards .feature-card-link:active, .features.cards .feature-card-link:focus {filter:brightness(1);}
.features.cards .feature-image {position:relative;width:100%;z-index:0;height:400px;transition:transform 1.5s linear;}
.features.cards .feature-card-link:hover .feature-image, .features.cards .feature-card-link:active .feature-image, .features.cards .feature-card-link:focus .feature-image {transform:scale(120%);transition:transform 3s linear;}
.features.cards .feature-image:after {position:absolute;top:0;left:0;width:100%;height:100%;content:'';background:rgb(var(--primary));background:linear-gradient(180deg, rgba(30, 30, 30, 0.1) 0%, rgba(30, 30, 30, 0.8) 100%);opacity: 0.75;z-index:1;transition:all .5s ease;}
.features.cards .feature-card-link:hover .feature-image:after, .features.cards .feature-card-link:active .feature-image:after, .features.cards .feature-card-link:focus .feature-image:after {opacity: 1;}
.features.cards .feature-text {position:absolute;bottom:0;left:0;width:100%;z-index:2;}
.features.cards .feature-text-inner {width:100%;margin:0;padding:0 1.5rem 0 1.5rem;}
.features.cards .feature-text-inner h3 {margin-bottom:.5rem;}
.features.cards .feature-text-wrap p {max-height:calc(2rem*1.7);overflow:hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
.gridcontent.windows.gridfeature:not(:first-child) {margin-top:0;margin-bottom:0;}

/*** Horizontal ***/
.horizontal {position:relative;}
.horizontal {margin-left:calc(var(--padding) * -1);margin-right:calc(var(--padding) * -1);}
.horizontal-inner {display:flex;flex-wrap:nowrap;overscroll-behavior: none;overflow-x:hidden;}
.horizontal-item {flex:0 0 auto;width:calc(100vw / 1.5);height:calc(100vh / 1.75);position:relative;overflow:hidden;}
.horizontal-item {max-height:calc(100vh - var(--padding) - calc(calc(var(--h1) * 1.15) * 1.2) - calc(var(--padding) * .5) - 3rem - 25px);}
.horizontal-image {width:100%;height:100%;object-position:center center;object-fit:cover;transition:transform 1.5s linear;}
.horizontal-content {position:absolute;inset:0;padding:10%;padding-bottom:5%;display:flex;flex-direction:column;justify-content:flex-end;transition:all .3s linear;opacity:0;}
.horizontal-item:hover .horizontal-image {transform:scale(120%);transition:transform 3s linear;}
.horizontal-item:hover .horizontal-content, .horizontal-item.highlighted .horizontal-content {background:linear-gradient(180deg, rgba(30, 30, 30, 0.1) 0%, rgba(30, 30, 30, 0.8) 100%);opacity:1;padding-bottom:10%;}
.horizontal a {text-decoration:none;color:rgb(var(--primary));}
.horizontal a:hover, .horizontal a:active {color:rgb(var(--primary));filter:none;text-decoration:none;}
.horizontal a::before {content:'';position:absolute;inset:0;z-index:1;}

/*** Formular ***/
.formular {text-align:left;}
.form-group {margin-bottom:1.25rem;position:relative;}
.form-group .row {margin-bottom:0;}
.form-group:not(.consent):not(.custom) {background:#fff;border-radius:0;border:1px solid rgb(var(--primary));}
.form-group:not(.consent):not(.custom) label {position:absolute;top:1.1rem;left:1.25rem;font-size:1rem;color:rgb(119,119,119);font-weight:300;}
.custom-group {display:inline-block;position:relative;padding-right:1.5rem;width:100%;}
.custom-label {padding-left:2rem;}
.custom-control {position:static;}
.form-control, .form-control:focus {border:0;background:transparent;}
.form-control {font-size:1rem;padding:1.4rem 1.25rem 0.8rem;height:auto;font-weight:300;}
.dropdown-control {-webkit-appearance:none;-moz-appearance:none;appearance: none;}
.form-group.dropdown:after {font-family:"Font Awesome 5 Free";content:"\f107";position:absolute;top:1.2rem;right:1.25rem;bottom:0.8rem;pointer-events: none;font-weight:900;}
.form-group:not(.consent):not(.radio-buttons) .form-control ~ label:not(.error) {transition-property:top, font-size, color, font-weight;transition-duration:.1s;transition-timing-function:linear;}
.form-group:not(.consent):not(.radio-buttons) .form-control:not(:placeholder-shown) ~ label:not(.error), .form-group:not(.consent):not(.radio-buttons) .form-control:focus ~ label:not(.error) {font-size:.7rem;color:rgb(var(--primary));top:0.5rem;font-weight:400;}
input[type="checkbox"], input[type="checkbox"] {padding:0;}
.form-group input[type="checkbox"] {-webkit-appearance:none;-moz-appearance:none;appearance: none;width:1.2rem;height:1.2rem;top:2px;border:2px solid rgb(var(--primary));margin:0 15px -5px 0;border-radius:0;position:absolute;left:0;}
.form-group input[type="checkbox"]:checked {background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><path d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z' fill='%23fff'/></svg>");background-position: center center;background-repeat: no-repeat;background-size: 80%;}
.consent label {width:100%;color:rgb(85,85,85);font-weight:300;padding-left:2rem;}
.form-group label.error, .form-group:not(.consent):not(.radio-buttons) label.error {color:#cc0000;position:absolute;left:auto;right:1.25rem;font-size:.8rem;top:1.5rem;font-weight:400;}
.form-group.consent label.error {position:static;float:left;font-size:1rem;}
.form-group.radio-buttons label.error {top:0;line-height:2;}
.form-label {margin-bottom:0.25rem;}
.formular h4 {margin-top:2.5rem;margin-bottom:1.5rem;}
.btn.ghost-link {padding:.75rem 1.25rem .75rem 1.25rem;border-radius:0;transition:filter .3s linear;}
.btn.ghost-link:hover {filter:brightness(.8);}


/*** Nyhedsbrev ***/
.newsletter {padding-top:1rem;padding-bottom:3rem;transition:padding .5s linear;background-color:rgb(var(--light-grey));}
.newsletter .form-control {margin-bottom:0;}
.newsletter .highlighted-link {margin:0 0 1rem 0;padding:1.1rem 2.5rem;}
.newsletter-legal {font-size:0.75em;}
.newsletter .consent label {color:inherit;text-shadow:none;}
.newsletter .form-group input[type="checkbox"] {border:2px solid #116c75;}
/*.form-group input[type="checkbox"]:checked {background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><path d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z' fill='rgb("+var(--primary)+")'/></svg>");background-position: center center;background-repeat: no-repeat;background-size: 80%;}*/
.form-group.input-group {text-align:left;}
.form-group.input-group .checkbox-header {width:100%;}
.form-group.input-group ul {list-style-type:none;margin:0;padding:0;display:flex;flex-direction:row;}
.form-group.input-group li {position:relative;margin-right:1rem;}
.form-group.input-group label:not(.error) {text-shadow:none;color:black;padding-left:1.6rem;}
.form-group.input-group label.error {text-shadow:none;padding-left:0;}
.form-group.input-group input[type="checkbox"] {border:2px solid rgb(var(--primary));width:1.2rem;height:1.2rem;top:2px;}

/*** Footer ***/
footer {border-top:1px solid rgb(var(--secondary));}
footer .bg-image {background-position:center left;}
footer a, footer .white-text-all a {text-decoration:none;}
.social-icons a {position:relative;display:inline-block;width:2.2rem;height:2.2rem;border:1px solid rgb(var(--primary));font-size:1.25rem;margin-left:.5rem;transition:background-color .3s ease, color .3s ease;text-decoration:none;}
.social-icons a:first-child {margin-left:0;}
.social-icons a i {position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
.social-icons a:hover, .social-icons a:active, .social-icons a:focus {background-color:rgb(var(--primary));color:black;}
.footer-links {font-size:.75rem;text-align:right;position:relative;}
.footer-links::before {content:"";position:absolute;inset:0;background-color:rgba(0,0,0,0.3);}
.footer-links .col-12 {padding:.5rem;z-index:1;position:relative;}
.footer-links a {color:white;text-decoration:none;}
.footer-links.flb a {color:#222;}
.footer-links a:not(:first-child):before {content:' | ';}
.footer-small-links {background-color:rgb(var(--tertiary));}

.cookieconsent-optout-marketing {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;}
@media (min-width:768px)
{
    :root {
        --padding:2rem;
    }
    .banner-video {display:block;}
    .grid-image {min-height:350px;}
    .lines-between .skill:nth-child(odd)::after {border-left-color:transparent;transform:scale(1,0.4);}
    .lines-between .skill:nth-child(even)::after {border-color:transparent;}
    
    .lines-between .skill:first-child:nth-last-child(n + 3)::before,
    .lines-between .skill:first-child:nth-last-child(n + 3) ~ .skill::before {border-top-color:transparent;transform:scale(0.4,1);}
    .lines-between .skill:first-child:nth-last-child(even) ~ .skill:nth-last-child(2)::before {border-bottom-color:transparent;}
    
    .lines-between .skill:last-child::after, .lines-between .skill:last-child::before {border-color:transparent;}
    
    .lines-between .skill:hover::after, .lines-between .skill:hover::before {
        border-color:rgb(var(--secondary)) !important;
        transform: scale(1, 1) !important;
    }
    .ref-con-text {text-align:left;margin-top:0;}
    /*.lines-between .skill:not(:last-child)::after {content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:block;width:50%;height:1px;background:rgb(var(--secondary));}
    .lines-between .skill:nth-child(odd):not(:last-child)::before {content:'';position:absolute;right:0;top:50%;transform:translateY(-50%);display:block;width:1px;height:50%;background:rgb(var(--secondary));}*/
}
@media (max-width:991px)
{
    .main-nav li a {display:block;}
    .content, .banner-content {padding:calc(calc(var(--padding) + calc(var(--bs-gutter-x) * .5)) * 2) calc(var(--padding) + calc(var(--bs-gutter-x) * .5));}
}
@media (max-width:991px) and (orientation: landscape)
{
    .banner.big {min-height:calc(100vh - 100px);}
}

@media (min-width:992px)
{
    :root {
        --padding:5rem;
        --h1:2rem;
        --h3:1.375rem;
    }
    main {padding-top:0;}
    .main-nav {top:30px;bottom:auto;padding:0 40px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;}
    .brand {position:static;height:75px;}
    .brand-wrap {padding:0;}
    .nav-collapse {position:static;background:none;}
    .main-nav ul {display:flex;flex-direction:row;justify-content:flex-end;align-items:center;padding:0;gap:2rem;}
    .nav-lang {margin-left:30px;}
    .toggle {display:none;}
    
    
    .banner.mini {height:270px;}
    .banner, .banner.small {height:450px;}
    .banner.big {height:630px;}
    .banner-content {max-width:80%;}
    
    .banner h1 {font-size:calc(var(--h1) * 1.75);}
    .half-pad-top {padding-top:4.5rem !important;}
    .half-pad-bot {padding-bottom:4.5rem !important;}
    /*.gridcontent.windows {margin-top:-9rem;margin-bottom:-9rem;}*/
	.grid-content-inner {padding:5rem 0;display:flex;justify-content:flex-start;}
    
    .grid-content:nth-child(even) .grid-image, .right .grid-content:nth-child(odd) .grid-image {order:2;}
    .windows .grid-content:nth-child(even) .grid-content-inner, .windows .right .grid-content:nth-child(odd) .grid-content-inner {justify-content:flex-end;}
    .right .grid-content:nth-child(even) .grid-image {order:initial;}
    .windows .right .grid-content:nth-child(even) .grid-content-inner {justify-content:flex-start;}
    
    .overlapping .grid-content:nth-child(odd) .grid-content-inner, .overlapping .right .grid-content:nth-child(even) .grid-content-inner {justify-content:flex-end;}
    .overlapping .right .grid-content:nth-child(odd) .grid-content-inner {justify-content:flex-start;}

    .grid-text {align-self:center;}
    .grid-image {min-height:450px;}
    .overlapping .grid-content:not(:first-child) {margin-top:-50px;}
    .overlapping .grid-content:not(:first-child) .grid-content-inner {padding-top:calc(5rem + 90px);}
    .overlapping .grid-content:not(:last-child) .grid-content-inner {padding-bottom:calc(5rem + 90px);}
    .overlapping .grid-image:not(.multiple) {-webkit-box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);-moz-box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);box-shadow: 0px 0px 40px 20px rgba(var(--primary), .25);}
    .windows .grid-content-inner {padding-left:6rem;padding-right:6rem;}
    .windows .grid-text {width:100%;}
    
    .horizontal-item {width:calc(100vw / 2);}
    
    .map-text {padding-left:5rem;padding-top:0;}

    .column {margin-bottom:3.5rem;}
    
    .feature-inner {flex-direction:row;}
    .feature-image {width:50%;min-height:400px;}
    .feature-text {width:50%;}
    .feature-text-inner {width:90%;margin-left:10%;padding:0;}
    footer p {font-size:1rem;}
    footer .addresses .row, footer .footer-links .row {margin-bottom:0;}
    footer .address {margin-bottom:0;}
}

@media (min-width:1200px)
{
    :root {
        --padding:7.5rem;
        --h1:2.75rem;
        --h3:1.875rem;
    }
    
    .grid-image {min-height:550px;}
    .grid-text {width:80%;}
    .windows .grid-text {width:80%;}
    .skills-content {padding-top:100px;}
    .ref-con-text {padding-left:calc(var(--padding) * .5);padding-right:calc(var(--padding) * .5);}
    .nonsticky-content {padding:100px calc(var(--padding) * .5) 0 calc(var(--padding) * .5);}
    .horizontal-item {width:calc(100vw / 3);}
}