:root { 
  --white: #FFF; 
  --cream: #f4f1ed;
  --body-text-colour: #1e1e1e; 
  --primary-colour: #1c434b; /* DARK TEAL */ 
  --secondary-colour: #43acc1; /* LIGHT TEAL */
}

*, *:before, *:after { -moz-box-sizing: inherit; box-sizing: inherit; outline: none; -webkit-tap-highlight-color: rgba(255, 255, 255, 0);  text-rendering: auto; -webkit-font-smoothing: antialiased; }
html { box-sizing: border-box; margin: auto; overflow-x: hidden; scroll-behavior: smooth; }
body { font-family: "aktiv-grotesk", sans-serif; font-style: normal; font-size: 16px; font-stretch: normal; font-style: normal; line-height: 1.25; letter-spacing: normal; color: var(--body-text-colour); position: relative; box-sizing: border-box; margin: 0; background: var(--cream); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; }
section, header, footer { display: block; width: 100% }
h1, .h1 { font-weight: 400; font-size: 80px; line-height: 1; }
h2, .h2 { font-weight: 400; font-size: 64px; line-height: 1; }
h3, .h3 { font-weight: 400; font-size: 48px; line-height: 1; }
h4, .h4, .intro { font-weight: 400; font-size: 40px; line-height: 1; }
h5, .h5 { font-weight: 500; font-size: 32px; line-height: 1; }
h6, .h6 { font-weight: 600; font-size: 24px; line-height: 1; }
p { font-style: normal; font-size: 16px; font-stretch: normal; font-style: normal; line-height: 1.25; letter-spacing: normal }
h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child, p:first-child { margin-top: 0 }
a { text-decoration: none; color: var(--primary-colour); transition: all 0.25s ease-in-out; }
a:hover { color: var(--primary-colour) }
strong, b { font-style: normal; font-weight: 600; }
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong, .h1 strong, .h2 strong, .h3 strong, .h4 strong, .h5 strong, .h6 strong, .semibold { font-weight: 600; }
img, iframe { max-width: 100%; height: auto; }
input[type=submit], input[type=text], input[type='email'], input[type='search'], textarea, select, button { -webkit-appearance: none; -moz-appearance: none; box-shadow: none !important; font-style: normal; font-weight: 500; font-size: 16px; font-stretch: normal; font-style: normal; line-height: 1.25; letter-spacing: normal }
input[type=submit] { cursor: pointer; transition: all 0.50s ease-in-out }
input[type=text] { background: transparent; padding: 10px 30px; margin: 0 25px 0 0 }
input[type=text]::-webkit-input-placeholder { color: rgba(0, 0, 0, 0.75) }
select::-ms-expand { display: none }
#width-check { z-index: 0; }
@media (max-width:1024px) {
  #width-check { z-index: 1; }
}

/* BUTTONS */
button, .button-primary, .button { cursor: pointer; padding: 16px 24px; border: 0; display: inline-flex; justify-content: space-between; align-items: center; background-color: var(--primary-colour); color: var(--white); font-weight: 600; font-size: 16px; line-height: 1.5; transition: all 0.25s ease-in-out; }
button:hover, .button-primary:hover, .button:hover { background-color: var(--secondary-colour); color: var(--white) }
button::after, .button-primary::after, .button::after { content: "\f061"; font-family: "Font Awesome 7 Pro"; color: var(--secondary-colour); font-weight: 300; line-height: 1; display: inline-block; margin-left: 48px; transition: all 0.25s ease-in-out; }
button:hover::after, .button-primary:hover::after, .button:hover::after { color: var(--white); }
.button-inverse { cursor: pointer; padding: 16px 24px; border: 0; display: inline-flex; justify-content: space-between; align-items: center; background-color: var(--white); color: var(--primary-colour); font-weight: 600; font-size: 16px; line-height: 1.5; transition: all 0.25s ease-in-out; }
.button-inverse:hover { background-color: var(--secondary-colour); color: var(--white) }
.button-inverse::after { content: "\f061"; font-family: "Font Awesome 7 Pro"; color: var(--secondary-colour); font-weight: 300; line-height: 1; display: inline-block; margin-left: 48px; transition: all 0.25s ease-in-out; }
.button-inverse:hover::after { color: var(--white); }
.top-right { position: absolute; top:0; right:60px; }
@media (max-width:1024px) {
  .top-right { position: relative; top:auto; right:auto; }
}


.container { margin: 0 auto; position: relative; max-width: 1800px; padding-left: 60px; padding-right: 60px; }
.flex-container { display: flex; }
@media (max-width:1024px) {
  .container { padding-left: 20px; padding-right: 20px; }
}
.pdf::after { content: "\f1c1" }
.white { color: var(--white) }
.clear { clear: both }
.center { text-align: center }
.right { text-align: right }
.overflow { width: 100%; overflow-x: auto }
.caption, .small { font-size: 14px; }
.large { font-size: 20px; }
table { border-collapse: collapse }
table tr { border-bottom: 1px solid #6a6a6a }
table th { padding: 20px 0 20px 24px; text-align: left; white-space: nowrap; font-style: normal; font-weight: 700; font-size: 16px; font-stretch: normal; font-style: normal; line-height: 1.5; letter-spacing: normal }
table td { padding: 12px 0 12px 24px; text-align: left }
table td:last-child, table th:last-child { padding-right: 24px }
table th { background-color: #e1e0e3 }
@media (max-width:1024px) {
  h1, .h1 { font-size: 56px; }
  h2, .h2 { font-size: 48px; }
  h3, .h3 { font-size: 40px; }
  h4, .h4, .intro { font-size: 32px; }
  h5, .h5 { font-size: 24px; }
  h6, .h6 { font-size: 20px; }
  .large { font-size: 18px; }
  table th { font-style: normal; font-weight: 700; font-size: 14px; font-stretch: normal; font-style: normal; line-height: 1.43; letter-spacing: normal }
}
p.instruction { font-size: 12px; line-height: 16px; color: rgba(51, 63, 72, 0.75); margin: 4px 0; opacity: 0; pointer-events: none }
p.instruction.show { opacity: 1; pointer-events: all }
.screen-reader-text { display: none; }
.grecaptcha-badge { display: none !important }
.grecaptcha-badge.show { display: block !important; visibility: visible !important }
.transition { animation-duration: 1s; animation-fill-mode: both; opacity: 0; /*position: relative;*/ visibility: hidden }
.fadeIn { animation-name: fadeIn; transition: all 0.8s ease 0s }
.fadeInRight { animation-name: fadeInRight; transition: all 0.8s ease 0s }
.fadeInLeft { animation-name: fadeInLeft; transition: all 0.8s ease 0s }
.fadeInUp { animation-name: fadeInUp; transition: all 0.8s ease 0s }

.pt-12x { padding-top: 96px }
.pb-12x { padding-bottom: 96px }
.ptb-12x { padding-top: 96px; padding-bottom: 96px }
.pt-11x { padding-top: 88px }
.pb-11x { padding-bottom: 88px }
.ptb-11x { padding-top: 88px; padding-bottom: 88px }
.pt-10x { padding-top: 80px; }
.pb-10x { padding-bottom: 80px; }
.ptb-10x { padding-top: 80px;  padding-bottom: 80px; }
.pt-9x { padding-top: 72px }
.pb-9x { padding-bottom: 72px }
.ptb-9x { padding-top: 72px; padding-bottom: 72px }
.pt-8x { padding-top: 64px }
.pb-8x { padding-bottom: 64px }
.ptb-8x { padding-top: 64px; padding-bottom: 64px }
.pt-7x { padding-top: 56px }
.pb-7x { padding-bottom: 56px }
.ptb-7x { padding-top: 56px; padding-bottom: 56px }
.pt-6x { padding-top: 48px }
.pb-6x { padding-bottom: 48px }
.ptb-6x { padding-top: 48px; padding-bottom: 48px }
.pt-5x { padding-top: 40px }
.pb-5x { padding-bottom: 40px }
.ptb-5x { padding-top: 40px; padding-bottom: 40px }
.pt-4x { padding-top: 32px }
.pb-4x { padding-bottom: 32px }
.ptb-4x { padding-top: 32px; padding-bottom: 32px }
.mt-12x { margin-top: 96px; }
.mt-10x { margin-top: 80px; }
.mt-9x { margin-top: 72px; }
.mt-8x { margin-top: 64px; }
.mt-4x { margin-top: 32px; }
@media (max-width:1024px) {
  .md-pt-12x { padding-top: 96px }
  .md-pb-12x { padding-bottom: 96px }
  .md-ptb-12x { padding-top: 96px; padding-bottom: 96px }
  .md-pt-11x { padding-top: 88px }
  .md-pb-11x { padding-bottom: 88px }
  .md-ptb-11x { padding-top: 88px; padding-bottom: 88px }
  .md-pt-10x { padding-top: 80px; }
  .md-pb-10x { padding-bottom: 80px; }
  .md-ptb-10x { padding-top: 80px;  padding-bottom: 80px; }
  .md-pt-9x { padding-top: 72px }
  .md-pb-9x { padding-bottom: 72px }
  .md-ptb-9x { padding-top: 72px; padding-bottom: 72px }
  .md-pt-8x { padding-top: 64px }
  .md-pb-8x { padding-bottom: 64px }
  .md-ptb-8x { padding-top: 64px; padding-bottom: 64px }
  .md-pt-7x { padding-top: 56px }
  .md-pb-7x { padding-bottom: 56px }
  .md-ptb-7x { padding-top: 56px; padding-bottom: 56px }
  .md-pt-6x { padding-top: 48px }
  .md-pb-6x { padding-bottom: 48px }
  .md-ptb-6x { padding-top: 48px; padding-bottom: 48px }
  .md-pt-5x { padding-top: 40px }
  .md-pb-5x { padding-bottom: 40px }
  .md-ptb-5x { padding-top: 40px; padding-bottom: 40px }
  .md-pt-4x { padding-top: 32px }
  .md-pb-4x { padding-bottom: 32px }
  .md-ptb-4x { padding-top: 32px; padding-bottom: 32px }
  .md-mt-12x { margin-top: 96px; }
  .md-mt-10x { margin-top: 80px; }
  .md-mt-9x { margin-top: 72px; }
  .md-mt-8x { margin-top: 64px; }
  .md-mt-4x { margin-top: 32px; }
}
@media (max-width:768px) {
  .sm-pt-12x { padding-top: 96px }
  .sm-pb-12x { padding-bottom: 96px }
  .sm-ptb-12x { padding-top: 96px; padding-bottom: 96px }
  .sm-pt-11x { padding-top: 88px }
  .sm-pb-11x { padding-bottom: 88px }
  .sm-ptb-11x { padding-top: 88px; padding-bottom: 88px }
  .sm-pt-10x { padding-top: 80px; }
  .sm-pb-10x { padding-bottom: 80px; }
  .sm-ptb-10x { padding-top: 80px;  padding-bottom: 80px; }
  .sm-pt-9x { padding-top: 72px }
  .sm-pb-9x { padding-bottom: 72px }
  .sm-ptb-9x { padding-top: 72px; padding-bottom: 72px }
  .sm-pt-8x { padding-top: 64px }
  .sm-pb-8x { padding-bottom: 64px }
  .sm-ptb-8x { padding-top: 64px; padding-bottom: 64px }
  .sm-pt-7x { padding-top: 56px }
  .sm-pb-7x { padding-bottom: 56px }
  .sm-ptb-7x { padding-top: 56px; padding-bottom: 56px }
  .sm-pt-6x { padding-top: 48px }
  .sm-pb-6x { padding-bottom: 48px }
  .sm-ptb-6x { padding-top: 48px; padding-bottom: 48px }
  .sm-pt-5x { padding-top: 40px }
  .sm-pb-5x { padding-bottom: 40px }
  .sm-ptb-5x { padding-top: 40px; padding-bottom: 40px }
  .sm-pt-4x { padding-top: 32px }
  .sm-pb-4x { padding-bottom: 32px }
  .sm-ptb-4x { padding-top: 32px; padding-bottom: 32px }
  .sm-mt-12x { margin-top: 96px; }
  .sm-mt-10x { margin-top: 80px; }
  .sm-mt-9x { margin-top: 72px; }
  .sm-mt-8x { margin-top: 64px; }
  .sm-mt-4x { margin-top: 32px; }
}
.aic { -webkit-align-items: center; align-items: center; }
.aifs { -webkit-align-items: flex-start; align-items: flex-start; }
.aife { -webkit-align-items: flex-end; align-items: flex-end; }
.jcc { -webkit-justify-content: center; justify-content: center; }
.jcsb { -webkit-justify-content: space-between; justify-content: space-between; }
.ttu { text-transform: uppercase; }


/* GRID */
.grid { display: grid; grid-template-columns: repeat(12, 1fr); grid-template-rows: auto; column-gap: 20px; }
.grid-collapse { display: grid; grid-template-columns: repeat(12, 1fr); grid-template-rows: auto; }
.cols-2 { grid-column: span 2 }
.cols-3 { grid-column: span 3 }
.cols-4 { grid-column: span 4 }
.cols-5 { grid-column: span 5 }
.cols-6 { grid-column: span 6 }
.cols-7 { grid-column: span 7 }
.cols-8 { grid-column: span 8 }
.cols-9 { grid-column: span 9 }
.cols-10 { grid-column: span 10 }
.cols-11 { grid-column: span 11 }
.cols-12 { grid-column: span 12 }
@media (max-width:1600px) {
  .xxl-cols-2 { grid-column: span 2 }
  .xxl-cols-3 { grid-column: span 3 }
  .xxl-cols-4 { grid-column: span 4 }
  .xxl-cols-5 { grid-column: span 5 }
  .xxl-cols-6 { grid-column: span 6 }
  .xxl-cols-7 { grid-column: span 7 }
  .xxl-cols-8 { grid-column: span 8 }
  .xxl-cols-9 { grid-column: span 9 }
  .xxl-cols-10 { grid-column: span 10 }
  .xxl-cols-11 { grid-column: span 11 }
  .xxl-cols-12 { grid-column: span 12 }
}
@media (max-width:1440px) {
  .xl-cols-2 { grid-column: span 2 }
  .xl-cols-3 { grid-column: span 3 }
  .xl-cols-4 { grid-column: span 4 }
  .xl-cols-5 { grid-column: span 5 }
  .xl-cols-6 { grid-column: span 6 }
  .xl-cols-7 { grid-column: span 7 }
  .xl-cols-8 { grid-column: span 8 }
  .xl-cols-9 { grid-column: span 9 }
  .xl-cols-10 { grid-column: span 10 }
  .xl-cols-11 { grid-column: span 11 }
  .xl-cols-12 { grid-column: span 12 }
}
@media (max-width:1280px) {
  .lg-cols-2 { grid-column: span 2 }
  .lg-cols-3 { grid-column: span 3 }
  .lg-cols-4 { grid-column: span 4 }
  .lg-cols-5 { grid-column: span 5 }
  .lg-cols-6 { grid-column: span 6 }
  .lg-cols-7 { grid-column: span 7 }
  .lg-cols-8 { grid-column: span 8 }
  .lg-cols-9 { grid-column: span 9 }
  .lg-cols-10 { grid-column: span 10 }
  .lg-cols-11 { grid-column: span 11 }
  .lg-cols-12 { grid-column: span 12 }
}
@media (max-width:1024px) {
  .md-cols-2 { grid-column: span 2 }
  .md-cols-3 { grid-column: span 3 }
  .md-cols-4 { grid-column: span 4 }
  .md-cols-5 { grid-column: span 5 }
  .md-cols-6 { grid-column: span 6 }
  .md-cols-7 { grid-column: span 7 }
  .md-cols-8 { grid-column: span 8 }
  .md-cols-9 { grid-column: span 9 }
  .md-cols-10 { grid-column: span 10 }
  .md-cols-11 { grid-column: span 11 }
  .md-cols-12 { grid-column: span 12 }
}
@media (max-width:768px) {
  .sm-cols-0 { display: none; }
  .sm-cols-2 { grid-column: span 2 }
  .sm-cols-3 { grid-column: span 3 }
  .sm-cols-4 { grid-column: span 4 }
  .sm-cols-5 { grid-column: span 5 }
  .sm-cols-6 { grid-column: span 6 }
  .sm-cols-7 { grid-column: span 7 }
  .sm-cols-8 { grid-column: span 8 }
  .sm-cols-9 { grid-column: span 9 }
  .sm-cols-10 { grid-column: span 10 }
  .sm-cols-11 { grid-column: span 11 }
  .sm-cols-12 { grid-column: span 12 }
}
@media (max-width:480px) {
  .xs-cols-2 { grid-column: span 2 }
  .xs-cols-3 { grid-column: span 3 }
  .xs-cols-4 { grid-column: span 4 }
  .xs-cols-5 { grid-column: span 5 }
  .xs-cols-6 { grid-column: span 6 }
  .xs-cols-7 { grid-column: span 7 }
  .xs-cols-8 { grid-column: span 8 }
  .xs-cols-9 { grid-column: span 9 }
  .xs-cols-10 { grid-column: span 10 }
  .xs-cols-11 { grid-column: span 11 }
  .xs-cols-12 { grid-column: span 12 }
}

/* HEADER */
header.desktop { position: fixed; left: 0; top: 0; right: 0; width: 100%; z-index: 99; }
header.desktop .top { background-color: var(--primary-colour); height: 28px; transition: all 0.25s ease-in-out; }
header.desktop .top .container { align-items: center; justify-content: space-between; height: 100%; }
header.desktop .top div { color: var(--white); font-style: normal; font-weight: 700; font-size: 12px; font-stretch: normal; font-style: normal; line-height: 1.33; letter-spacing: normal }
header.desktop .top .stock-quote { color: var(--white); }
header.desktop .top .stock-quote span { margin-left: 16px; margin-right: 24px; position: relative; }
header.desktop .top .stock-quote span:after { display: none; content: "\f2ec"; font-family: "Font Awesome 7 Pro"; color: var(--white); padding-left: 10px; font-size: 9px; position: relative; }
header.desktop .top .stock-quote span.up:after { display: inline-block; top:-1px; }
header.desktop .top .stock-quote span.down:after { display: inline-block; transform: rotate(180deg); top: -2px; left: 8px; }
header.desktop .bottom { transition: all 0.25s ease-in-out; background-color: rgba(244,241,237,0); border-top: 1px solid rgba(244,241,237,0.5); border-bottom: 1px solid rgba(244,241,237,0.5); }
header.desktop .bottom .container { align-items: center; justify-content: flex-end; }
header.desktop .bottom .logo { margin: 28px auto 24px 0; transition: all 0.25s ease-in-out; height: 33px; }
header.desktop .bottom .logo:hover { opacity: 0.65; }
header.desktop .bottom .logo path { transition: all 0.25s ease-in-out; }
header.desktop .bottom nav ul { list-style: none; padding: 0; margin: 0; }
header.desktop .bottom nav > ul > li { display: inline-block; padding: 0; position: relative; }
header.desktop .bottom nav > ul > li a { font-weight: 400; font-size: 16px; line-height: 1.5; color: var(--cream); display: block; padding: 30px 16px; position: relative; z-index: 10; }
header.desktop .bottom nav > ul > li:hover > a { color: var(--secondary-colour); }
header.desktop .bottom nav > ul > li > a[title="Our Portfolio"] + ul { min-width: 260px; }
header.desktop .bottom nav > ul ul li { position: relative; padding: 0;  }
header.desktop .bottom nav > ul ul li a { display: block; padding: 14px 8px; font-style: normal; font-weight: 400; font-size: 16px; font-stretch: normal; font-style: normal; line-height: 1.25; letter-spacing: normal; transition: all 0.25s ease-in-out; color: var(--primary-colour) }
header.desktop .bottom nav > ul ul li a[title="Operations"], header.desktop .bottom nav > ul ul li a[title="Projects"] { pointer-events: none; cursor:text; color: var(--primary-colour); font-weight: 600; padding-left: 8px; padding-bottom: 4px; }
header.desktop .bottom nav > ul ul li a:hover { color: #FFF; background-color: var(--secondary-colour); }
header.desktop .bottom nav > ul > li > ul { top:calc(100% + 1px); left: 8px; z-index: 9; pointer-events: none; opacity: 0; visibility: hidden; background: var(--cream); min-width: 250px; position: absolute; transition: visibility 0s linear 0.1s, opacity 0.3s linear, translate 0.25s linear; border-top:2px solid var(--secondary-colour); box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px; }
header.desktop .bottom nav > ul > li > ul > li { border-bottom: 1px solid rgba(28,67,75,0.25); }
header.desktop .bottom nav > ul > li > ul > li:last-of-type { border-bottom:none; }
header.desktop .bottom nav > ul > li:hover > ul { pointer-events: auto; opacity: 1; visibility: visible; transition-delay: 0s, 0s, 0.3s;  }
header.desktop .bottom nav > ul > li > ul > li > ul > li a { padding:14px 8px 14px 16px; border-bottom: 1px solid rgba(28,67,75,0.25);  }
header.desktop .bottom nav > ul > li > ul > li > ul > li:last-of-type a { border-bottom:none; }
header.desktop.scrolled .top { position: relative; opacity: 0; height: 0; }
header.desktop.scrolled .bottom { border-bottom:none; }
header.desktop.scrolled .bottom .logo { margin: 12px auto 12px 0; }
header.desktop.scrolled .bottom nav > ul > li > a { padding: 20px 16px; }
header.desktop.scrolled .bottom nav > ul > li > ul { top:100%; }
header.desktop .search-icon { margin-left: 16px; }
header.desktop .search-icon a { color: var(--cream); cursor: pointer; transition: all 0.25s ease-in-out; }
header.desktop .search-icon a:hover { opacity: 0.7; }
header.desktop:hover, header.desktop.scrolled {color: var(--primary-colour); }
header.desktop:hover .bottom, header.desktop.scrolled .bottom { background-color: var(--cream); color: var(--primary-colour); box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px; }
header.desktop:hover .bottom .logo path, header.desktop.scrolled .bottom .logo path { fill: var(--primary-colour); }
header.desktop:hover .bottom nav > ul > li a, header.desktop.scrolled .bottom nav > ul > li a { color: var(--primary-colour); }
header.desktop:hover .bottom nav > ul > li:hover > a, header.desktop.scrolled .bottom nav > ul > li:hover > a { color: var(--secondary-colour); }
header.desktop:hover .search-icon a, header.desktop.scrolled .search-icon a { color: var(--primary-colour); }


header.mobile { display: none; position: fixed; left: 0; top: 0; width: 100%; z-index: 1000 }
header.mobile > .top { position: relative; z-index: 9; display: flex; justify-content: space-between; padding: 8px 20px; width: 100%; height: 64px; align-items: center; }
header.mobile > .top .hamburger { width: 33px; cursor: pointer; overflow: hidden }
header.mobile > .top .hamburger span { width: 100%; height: 1px; background-color: var(--cream); margin-bottom: 7px; display: block; transition: all 0.25s ease-in-out; }
header.mobile > .top .hamburger span:last-of-type { margin-bottom: 0 }
header.mobile > .top .logo a { display: block; line-height: 0; }
header.mobile > .top .logo svg { height: 27px; width:207px; transition: all 0.25s ease-in-out; }
header.mobile.scrolled > .top, header.mobile.open > .top { background-color: var(--cream); }
header.mobile.scrolled > .top .hamburger span, header.mobile.open > .top .hamburger span { background-color: var(--primary-colour); }
header.mobile.scrolled > .top .logo svg path, header.mobile.open > .top .logo svg path { fill: var(--primary-colour); }
header.mobile nav { display: none; width: 100%; height: calc(100vh - 64px); height: calc(100dvh - 64px); overflow-y: auto; background-color: var(--cream) }
header.mobile nav ul { list-style: none; padding: 0; margin: 0 }
header.mobile nav > ul { position: relative; z-index: 2; padding-top: 24px; padding-bottom: 40px; background-color: var(--cream) }
header.mobile nav > ul > li { position: relative }
header.mobile nav > ul > li a { font-style: normal; font-weight: 500; font-size: 24px; font-stretch: normal; font-style: normal; line-height: 1.25; letter-spacing: normal; color: var(--primary-colour); display: block; margin: 0 20px; padding: 8px 0; position: relative }
header.mobile nav > ul > li > ul { display: none; background-color: #FFF; padding:8px 0; }
header.mobile nav > ul > li > ul a { display: block; padding: 8px 20px; margin: 0; font-style: normal; font-weight: 600; font-size: 18px; font-stretch: normal; font-style: normal; line-height: 1.18; letter-spacing: normal; transition: all 0.25s ease-in-out }
header.mobile nav > ul > li > ul ul li a { padding: 4px 32px 8px 32px; font-weight: 600 }
header.mobile nav > ul > li > ul a[title="Operations"], header.mobile nav > ul > li > ul a[title="Projects"] { pointer-events: none; cursor:text; color: var(--body-text-colour); font-weight: 600; }
header.mobile nav > ul > li.has-children > a:after { content: "\f067"; right: 0; position: absolute; font-family: "Font Awesome 7 Pro"; font-weight: 400; line-height: 1; display: inline-block; text-rendering: auto; -webkit-font-smoothing: antialiased; font-size: 24px; line-height: 40px }
header.mobile nav > ul > li.has-children.active > a:after { content: "\f068" }
header.mobile nav .footer { width: 100%; padding: 24px 20px; font-size: 13px; font-weight: 500; position: absolute; z-index: 0; bottom: 0; left: 0; right: 0; opacity: 0; transition: all 0.25s ease-in-out; }
header.mobile nav .search a { color: var(--primary-colour) }
header.mobile nav .social { margin-top: 8px }
header.mobile nav .social a { color: var(--primary-colour); margin-right: 24px }
header.mobile nav .stock-quote { color: var(--primary-colour); justify-content: space-between; margin: 16px 0px }
header.mobile.open .top { background-color: var(--cream) }
header.mobile.open .hamburger { height: 28px }
header.mobile.open .hamburger span { background-color: var(--primary-colour); }
header.mobile.open .hamburger span:nth-child(1) { margin-left: 50px }
header.mobile.open .hamburger span:nth-child(2) { transform: translate(0px, 4px) rotate(45deg); border-radius: 2px }
header.mobile.open .hamburger span:nth-child(3) { transform: translate(0px, -4px) rotate(-45deg); border-radius: 2px }
header.mobile.open nav .footer { opacity: 1 }
header.mobile .search { position: relative }
header.mobile .search .search-icon { width: 32px; flex-shrink: 0; color: var(--cream); }
header.mobile .search-form { position: relative; width: 56px; height: 40px }
header.mobile .search-form input { border-radius: 8px; padding: 4px }
header.mobile .search-form input[type="submit"] { padding: 4px 8px; position: absolute; top: 2px; right: 2px; height: 36px }
header.mobile #mobile_search_toggle { position: absolute; left: 0; width: 24px; height: 24px; opacity: 0 }
header.mobile #mobile_search_toggle:checked ~ .search-form { visibility: visible; width: 100% }
nav:has(~ .search #search_toggle:checked) { opacity: 0; transition: opacity 0.25s ease }

@media (max-width:1200px) {
  header.desktop .bottom .logo, header.desktop .bottom .logo svg { height: 27px; width:207px; }
  header.desktop .bottom nav > ul > li a { padding: 20px 10px; }
  header.desktop .search-icon { margin-left: 10px; }
}
@media screen and (max-width:1024px) {
  header.desktop { display: none !important }
  header.mobile { display: block !important }
}

/* HERO */
#hero { position: relative; width: 100%; z-index: 5; }
#hero #curve-left { width: 600px; height: 600px; position:absolute; left:0; top:25%; transform: scaleX(-1); z-index: 1; pointer-events: none;}
#hero #curve-right { width: 600px; height: 600px; position:absolute; right:0;  top:5%; z-index: 1; pointer-events: none; }
#hero .background { height: 100vh; background-repeat: no-repeat; background-position: center right; background-size: cover; background-color: var(--primary-colour); color: var(--white); }
#hero .background > .flex-container { -webkit-align-items: flex-end; align-items: flex-end; height: 100%; font-size: 14px; }
#hero .background > .flex-container h1 { margin-top: 40px; margin-bottom: 32px; }
#hero .background > .flex-container .text { position: relative; width: 100%; padding-top: 100px; padding-bottom: 48px; }
#hero .background > .flex-container .investor-bar { margin-top: 64px; background-color: var(--white); color: var(--primary-colour); padding: 0 16px; position: relative; z-index:15 }
#hero .background > .flex-container .investor-bar .presentation { border-right: 1px solid rgba(28,67,75,0.25); padding-top: 16px; padding-bottom: 16px; }
#hero .background > .flex-container .investor-bar .presentation .image { margin-right: 24px; height:100px; display: flex;-webkit-align-items: center; align-items: center; }
#hero .background > .flex-container .investor-bar .presentation .image img { max-height: 100px; width:100%; }
#hero .background > .flex-container .investor-bar .presentation .title { font-size: 24px; font-weight: 600; margin-bottom: 8px; }
#hero .background > .flex-container .investor-bar .presentation .link a { color: var(--primary-colour); font-size: 14px; font-weight: 600; text-transform: uppercase; text-decoration: underline; }
#hero .background > .flex-container .investor-bar .presentation .link a:after { content: "\f061"; font-family: "Font Awesome 7 Pro"; color: var(--secondary-colour); display: inline-block;  padding-left: 12px; text-decoration: none;   }
#hero .background > .flex-container .investor-bar .stock-quote { padding:32px 16px 32px 32px; }
#hero .background > .flex-container .investor-bar .stock-quote  .flex-container > * { flex-basis:50%; margin-right: 0; }
#hero .background > .flex-container .investor-bar .stock-quote > .flex-container > * { margin-right: 56px; }
#hero .background > .flex-container .investor-bar .stock-quote > .flex-container .nasdaq { margin-right: 0; }
#hero .background > .flex-container .investor-bar .stock-quote .exchange { font-size: 14px; font-weight: 500; margin-bottom: 8px;  }
#hero .background > .flex-container .investor-bar .stock-quote .symbol { font-size: 32px; font-weight: 500; line-height: 0; }
#hero .background > .flex-container .investor-bar .stock-quote .data { font-size: 12px; line-height: 1.6; }
#hero .background { background-image: url(../../../../_resources/hero/home.jpg); background-position: center top; }

@media (max-width:1024px) {
  #hero .background { height: 710px; padding-top: 64px; }
  #hero .background > .flex-container .investor-bar .presentation { border-right:none; border-bottom: 1px solid rgba(28,67,75,0.25); padding-bottom: 0; }
}
@media (max-width:768px) {
  #hero #curve-left { left:-100px; width: 400px; height: 400px;}
  #hero #curve-right { right:-100px; width: 400px; height: 400px;}
  #hero .background { height: 710px; padding-top: 64px; /*background-image: url(../../../../_resources/hero/home_mobile.jpg);*/ }
  #hero .background > .flex-container .investor-bar { position: absolute; bottom:-325px; width: 100%; }
  #hero .background > .flex-container .investor-bar .presentation { border-bottom: none; }
  #hero .background > .flex-container .investor-bar .presentation .title { font-size: 20px; }
  #hero .background > .flex-container .investor-bar .stock-quote { padding:16px 0; }
  #hero .background > .flex-container .investor-bar .stock-quote > .flex-container { display: block; }
  #hero .background > .flex-container .investor-bar .stock-quote > .flex-container > * { border-top: 1px solid rgba(28,67,75,0.5); padding:16px; margin-right: 0; }
  #hero .background > .flex-container .investor-bar .stock-quote > .flex-container .stock-summary { -webkit-justify-content: space-between; justify-content: space-between; }
  #hero .background > .flex-container .investor-bar .stock-quote > .flex-container .stock-summary > * { margin-right: 0; }
}
@media (max-width:500px) {
  #hero .background { background-position: 57% center; }
}

section#quick-links .grid > * { background-color: var(--white); }
section#quick-links .grid > * a { padding: 24px 16px; height:184px; color:var(--primary-colour); border-top: 1px solid rgba(28,67,75,0.5); display: flex; flex-direction:column; -webkit-justify-content: space-between; justify-content: space-between; font-size: 24px; }
section#quick-links .grid > * a:before { content:"\f15b"; font-family: "Font Awesome 7 Pro"; color:var(--primary-colour); display: flex; -webkit-align-items: center; align-items: center;-webkit-justify-content: center; justify-content: center; font-size: 18px; width: 40px; height: 40px; background-color: var(--cream); border-radius:50%; }
section#quick-links .grid > *.about a:before { content:"\e007"; font-family: "Font Awesome Kit"; }
section#quick-links .grid > *.news a:before { content:"\f1ea"; }
section#quick-links .grid > *.locations a:before { content:"\f3c5"; }


section#quick-links .grid > * a:hover { color: var(--white); background-color: var(--secondary-colour); }
@media (max-width:768px) {
  section#quick-links { padding-top: 370px; }
  section#quick-links .grid > * { margin-top: 8px; }
  section#quick-links .grid > * a { flex-direction:row-reverse; -webkit-align-items: center; align-items: center; height: auto; padding:24px 16px; }
}

section#about { background-color:var(--primary-colour); color: var(--white); position: relative; }
section#about  #about-curve-left { width: 600px; height: 600px; position:absolute; left:0; top:250px; transform: scaleX(-1); }
section#about .content > p { line-height: 1.5; }
section#about .content > p:last-of-type { margin-top: 40px; }
section#about .content table { margin-bottom: 80px; }
section#about .content table tr { border-top: 1px solid var(--secondary-colour); border-bottom:none; }
section#about .content table tr td { padding:12px 0; }
section#about .content table tr td:first-of-type { font-size: 14px; }
section#about .content table tr td:last-of-type { font-size: 24px; text-align: right; font-weight: 400; }
section#about .at-a-glance .small { margin-bottom: 40px; }
section#about .at-a-glance .large { font-size: 80px; margin-bottom: 32px; }
section#about .at-a-glance .grid > * { border-left: 1px solid rgba(67,172,193,0.5); padding:0 24px; }/*
section#about .at-a-glance .grid > *:nth-of-type(2) .large { font-size: 32px; display: flex; -webkit-align-items: center; align-items: center; }
section#about .at-a-glance .grid > *:nth-of-type(2) .large span { font-size: 80px; margin-right: 8px; }*/
section#about .image { width: calc(100vw - ((100vw - 1680px) / 2)); }

@media (max-width:1800px) {
  section#about .image { width: calc(100vw - 60px); }
}

@media (max-width:1400px) {
  section#about .at-a-glance .large { font-size: 48px; }
}
@media (max-width:1200px) {
  #about-curve-left { display: none; }
}
@media (max-width:1024px) {
  section#about .at-a-glance .large, section#about .at-a-glance .grid > *:nth-of-type(2) .large span { font-size: 56px; }
  section#about .image { width: calc(100vw - 20px); }
}
@media (max-width:768px) {
  section#about .content table tr td:last-of-type { font-size: 20px; }
  section#about .at-a-glance .grid > * { margin-bottom: 16px; }
  section#about .at-a-glance .large { margin-top: 0; margin-bottom: 0; }
  section#about .at-a-glance .grid > * > p:last-of-type { margin-top: 8px; margin-bottom: 0; }
}

section#quarterly-dashboard .details { background-color: var(--white); padding:56px 40px; }
section#quarterly-dashboard .details .image { -webkit-flex-basis: calc(100% - 350px); flex-basis: calc(100% - 350px); padding-right: 56px; }
section#quarterly-dashboard .details .image img { object-fit: cover; position: relative; height: 100%; object-position: right; }
section#quarterly-dashboard .details .content { -webkit-flex-basis: 350px; flex-basis: 350px; }
section#quarterly-dashboard .details .content p { margin-top: 8px; margin-bottom: 8px; }
section#quarterly-dashboard .details .content h6, section#quarterly-dashboard .details .content .h6 { font-weight: 400; margin-bottom: 32px; }
section#quarterly-dashboard .details .content .button { width: 100%; padding:24px; }
@media (max-width:1024px) {
  section#quarterly-dashboard .details > .flex-container { display: block; }
  section#quarterly-dashboard .details .image { padding-right: 0; margin-bottom: 24px; }
}
@media (max-width:768px) {
section#quarterly-dashboard .details { padding:32px 16px; }
}

section#locations { background-color: var(--white); }
section#locations .project-card { background-color: var(--cream); color: var(--body-text-colour); }
section#locations .project-card .image { background-image: url("../../../../_resources/portfolio/project_card_candelaria.jpg"); background-repeat: no-repeat; background-size:cover; background-position: center; height:336px; display: flex;-webkit-align-items: flex-end; align-items: flex-end; padding:16px; position: relative; }
section#locations .project-card .image:before { content:""; background-color: #000; position: absolute; top:0; left:0; width: 100%; height: 100%; opacity: 0; transition: all 0.25s ease-in-out; }
section#locations .project-card .image .location { background-color: rgba(255,255,255,0.25); color: var(--white); font-size: 14px; text-transform: uppercase; padding:4px 8px; }
section#locations .project-card .image .location:before { content:"\f3c5"; font-family: 'Font Awesome 7 Pro'; font-weight: 700;  color: var(--white); padding-right: 8px; }
section#locations .project-card .details { padding:16px; transition: all 0.25s ease-in-out; }
section#locations .project-card .details .title { font-weight: 600; margin-bottom: 8px; }
section#locations .project-card .details .description { margin-top: 8px; margin-bottom: 16px; }
section#locations .project-card .details .read-more { margin-bottom: 0;  font-weight: 600; }
section#locations .project-card:hover .details { background-color: var(--primary-colour); color: #FFF; }
section#locations .project-card:hover .image:before { opacity: 0.2; }
@media (max-width:768px) {
  section#locations .project-card { margin-bottom: 16px; }
}

section#news h5, section#news .h5{ margin-bottom: 32px; }
section#news .latest-news-releases { margin-top: 96px; }


@media (max-width:768px) {
  section#news .latest-news-releases { margin-top: 40px; }
}

/* TABS */
.nav-tabs { margin: 0px; padding: 0; list-style: none; display: flex; border-top: 1px solid var(--primary-colour); }
.nav-tabs li { cursor: pointer; position: relative; display: block; color:var(--primary-colour); font-weight: 600;  padding: 12px 40px; transition: all 0.25s ease-in-out; }
.nav-tabs li.addtab { width:100px; }
.nav-tabs li:hover { background-color:var(--secondary-colour); color:var(--white); }
.nav-tabs li.current { background-color:var(--primary-colour); color:var(--white); }
.nav-tabs li a { color:var(--white); }
.tab-content { display: none; padding: 32px 0; }
.tab-content.active { display: block; -webkit-animation-duration: 0.5s; -moz-animation-duration: 0.5s; animation-duration: 0.5s; -webkit-animation-name: fade-in; -moz-animation-name: fade-in; animation-name: fade-in; }
.tabs .mobile-tabs { display: none; }
.tabs select { display: none; cursor: pointer; margin: 0; outline: none; }
.tab-content .element-bar { display: none !important; }
.tab-content .element-bar.showit { display: block !important; } 
ul.sub-tabs {position: absolute; opacity: 0; pointer-events: none; transition: all 0.25s ease-in-out; padding: 15px 30px; margin: 0px; list-style: none; background-color: #ffffff; z-index: 1; width: 100%; left: 0px; top: 100%; box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.16);}
ul.sub-tabs > li {text-align: left; padding: 4px 0px; background-color: white; color: black;}
.nav-tabs > li.has-sub::before {content: '\f107'; font-family: 'Font Awesome 7 Pro'; font-weight: 400; position: absolute; right: 15px; top: 15px;}
.nav-tabs > li.has-sub:hover ul.sub-tabs {opacity: 1; pointer-events: all;}
.tabs .mobile-tabs { margin-bottom: 7px; padding-top: 7px; }
.tabs select { font-weight:700; font-size: 16px; border: 1px solid var(--primary-colour); background-position: calc(100% - 10px) center; padding: 7px 10px;  width: 100%; max-width:300px; color: var(--primary-colour); }
.nav-tabs > li.has-sub:hover:after { background-color: var(--primary-colour); }
ul.sub-tabs > li:hover {color: var(--primary-colour);}
@media screen and (max-width: 1024px) {
  .tabs:not(.no-mobile) .mobile-tabs, .tabs:not(.no-mobile) select { display: block; }
  .tabs:not(.no-mobile) ul.nav-tabs { display: none; }
}

@media (max-width:768px){
  .nav-tabs li { padding: 12px 20px; }
}

/* NEWS */
.news-item { border-left: 1px solid var(--primary-colour); color: var(--primary-colour); padding:16px 24px 64px 24px; margin-bottom: 24px; position: relative; transition: all 0.25s ease-in-out; }
.news-item span { display: block; }
.news-item .date { margin-bottom: 16px; }
.news-item .title { font-size: 20px; line-height: 1.4; }
.news-item .arrow { position: absolute; left:24px; bottom:16px; font-size: 10px; background-color: var(--primary-colour); color: var(--secondary-colour); width: 28px; height:28px; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; transition: all 0.25s ease-in-out; }
.news-item:hover { background-color: var(--primary-colour); color: var(--white); }
.news-item:hover .arrow { background-color: var(--white); }
@media (max-width:1024px){
}




/* FOOTER */
footer { background-color: var(--primary-colour); color: var(--white); }
footer .top { justify-content: space-between; }
footer .top .logo { width: 247px; height:32px;  }
footer .top .logo a svg { width: 247px; height:32px; transition: all 0.25s ease-in-out; }
footer .top .logo a:hover svg { opacity: 0.65; }
footer .top .signup { margin-top: 40px; max-width: 440px; padding-right: 24px; }
footer .top .signup h6 { font-weight: 400; line-height: 1.33; margin-bottom: 24px;}
footer .top .signup input[type="text"] { margin: 0 0 8px; width: 100%;  border: 0;background-color: rgba(255, 255, 255, 0.2); color: #fff; padding: 16px; }
footer .top .signup input[type="text"]::-webkit-input-placeholder { color: var(--white); }
footer .top .signup .consent { display: flex; -webkit-align-items: center; align-items: center; margin:16px 0 24px 0; }
footer .top .signup .consent label { font-size: 12px; line-height: 1.33; opacity: 0.75; font-weight: 500; margin-left: 16px; }
footer .top .signup .signup-message { padding-top: 16px }
footer .top > * { margin-bottom: 88px; }
footer .top .footer-nav a { color: var(--white) }
footer .top .footer-nav ul { list-style: none; margin: 0; padding: 0; }
footer .top .footer-nav ul.top-level { display: grid; grid-template-columns: repeat(12, 1fr); }
footer .top .footer-nav ul.top-level > li { margin-bottom:24px; grid-column: span 4; }
footer .top .footer-nav ul.top-level > li > a { font-size: 16px; font-weight: 600; }
footer .top .footer-nav ul.top-level > li > a:hover { opacity: 0.5; }
footer .top .footer-nav ul.top-level > li > ul { margin-top: 12px; }
footer .top .footer-nav ul.top-level > li > ul a { font-size: 14px; opacity: 0.75;line-height: 1.14; }
footer .top .footer-nav ul.top-level > li > ul a:hover { opacity: 1; }
footer .top .footer-nav ul.top-level > li > ul li { margin: 2px 0; }
footer .top .footer-nav ul.top-level > li > .contact { margin-top: 24px; }
footer .top .social a { color: var(--primary-colour); display: inline-flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; background-color: var(--white); border-radius:50%; height:40px; width:40px; margin-right: 12px; }
footer .social a:hover { color: var(--white); background-color: var(--secondary-colour); }
footer hr { height: 1px; border: none; color: var(--white); background-color: var(--white); margin: 20px 0; opacity: 0.5; }
footer .bottom { color: var(--white); font-size: 14px; padding-bottom: 16px; justify-content: space-between;  }
footer .bottom a { color: var(--white) }
footer .bottom a:hover { opacity: 0.75 }
footer .bottom .copyright span a { display: inline-block; margin-left: 12px; padding-left: 12px; border-left:1px solid var(--white); line-height: 1; }
@media (max-width:1024px) {
  footer { padding-top: 40px }
  footer hr { margin-top: 0px; }
  footer .top > * { margin-bottom: 32px; }
  footer .top .logo a svg { height: 27px; width:207px; }
  footer .top .signup { margin-top: 24px; padding-right: 0; }
  footer .top .signup input[type="text"] { font-size: 14px; }
  footer .top .footer-nav { display: none; }
  footer .bottom { flex-wrap: wrap; }
  footer .bottom .copyright * { line-height: 1.75; }
  footer .bottom > div { flex-basis: 100%; }
}

@media (max-width:768px) {
  footer .bottom .copyright span:last-of-type { display: block; margin-bottom: 12px; }
  footer .bottom .copyright span:last-of-type a { margin-left: 0; padding-left: 0; border-left:none; }
}
@media (max-width:500px) {
  footer .bottom .copyright span { display: block; }
  footer .bottom .copyright span a:first-of-type { margin-left: 0; padding-left: 0; border-left:none; }
}

/* MODAL - GENERAL */
.popup-container { position: fixed; top: 0; left: 0; background-color: rgba(28,67,75,0.95); width: 100%; height: 100%; z-index: 1000; color: #FFF; display: none; }
.popup-container .content { max-width: 770px; padding: 0px 15px 0px 15px; margin: 300px auto 0px auto; }
.popup-container .close { position: absolute; right: 40px; top: 40px; width: 30px; height: 30px; cursor: pointer; font-size: 30px; line-height: 30px; }
.popup-container form.signup .textbox { float: none !important; width: 100% !important; }
.popup-container form.signup .textbox input { padding: 0px !important; }
.popup-container .error-tooltip { top: -50px !important; }
.popup-container input { width: 100%; }

/* SEARCH MODAL */
#search-popup .searchsubmit { position: absolute; height: 0px; width: 0px; border: none; padding: 0px; visibility: hidden; }
#search-popup .s { background-color: transparent; border: 0px; font-size: 50px; color: #ffffff; }
#search-popup .s:focus { outline: 0; }
#search-popup .s::-webkit-input-placeholder { color: rgba(255, 255, 255, 0.5); }
#search-popup .s:-moz-placeholder { color: rgba(255, 255, 255, 0.5); }
#search-popup .s::-moz-placeholder { color: rgba(255, 255, 255, 0.5); }
#search-popup .s:-ms-input-placeholder { color: rgba(255, 255, 255, 0.5); }
#search-popup fieldset { padding: 0px; border: 0px; }


@keyframes fadeIn {
  0% { opacity: 0 }
  to { opacity: 1 }
}
@keyframes fadeInLeft {
  0% { opacity: 0; transform: translate(-20px) }
  to { opacity: 1; transform: translate(0) }
}
@keyframes fadeInRight {
  0% { opacity: 0; transform: translate(20px) }
  to { opacity: 1; transform: translate(0) }
}
@keyframes fadeInUp {
  0% { opacity: 0; transform: translateY(50px) }
  to { opacity: 1; transform: translate(0) }
}

.cc-window{opacity:1;transition:opacity 1s ease}.cc-window.cc-invisible{opacity:0}.cc-animate.cc-revoke{transition:transform 1s ease}.cc-animate.cc-revoke.cc-top{transform:translateY(-2em)}.cc-animate.cc-revoke.cc-bottom{transform:translateY(2em)}.cc-animate.cc-revoke.cc-active.cc-bottom,.cc-animate.cc-revoke.cc-active.cc-top,.cc-revoke:hover{transform:translateY(0)}.cc-grower{max-height:0;overflow:hidden;transition:max-height 1s}
.cc-link,.cc-revoke:hover{text-decoration:underline}.cc-revoke,.cc-window{position:fixed;overflow:hidden;box-sizing:border-box;font-family:Helvetica,Calibri,Arial,sans-serif;font-size:16px;line-height:1.5em;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;z-index:9999}.cc-window.cc-static{position:static}.cc-window.cc-floating{padding:2em;max-width:24em;-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner{padding:1em 1.8em;width:100%;-ms-flex-direction:row;flex-direction:row}.cc-revoke{padding:.5em}.cc-header{font-size:18px;font-weight:700}.cc-btn,.cc-close,.cc-link,.cc-revoke{cursor:pointer}.cc-link{opacity:.8;display:inline-block;padding:.2em}.cc-link:hover{opacity:1}.cc-link:active,.cc-link:visited{color:initial}.cc-btn{display:block;padding:.4em .8em;font-size:.9em;font-weight:700;border-width:2px;border-style:solid;text-align:center;white-space:nowrap}.cc-highlight .cc-btn:first-child{background-color:transparent;border-color:transparent}.cc-highlight .cc-btn:first-child:focus,.cc-highlight .cc-btn:first-child:hover{background-color:transparent;text-decoration:underline}.cc-close{display:block;position:absolute;top:.5em;right:.5em;font-size:1.6em;opacity:.9;line-height:.75}.cc-close:focus,.cc-close:hover{opacity:1}
.cc-revoke.cc-top{top:0;left:3em;border-bottom-left-radius:.5em;border-bottom-right-radius:.5em}.cc-revoke.cc-bottom{bottom:0;left:3em;border-top-left-radius:.5em;border-top-right-radius:.5em}.cc-revoke.cc-left{left:3em;right:unset}.cc-revoke.cc-right{right:3em;left:unset}.cc-top{top:1em}.cc-left{left:1em}.cc-right{right:1em}.cc-bottom{bottom:1em}.cc-floating>.cc-link{margin-bottom:1em}.cc-floating .cc-message{display:block;margin-bottom:1em}.cc-window.cc-floating .cc-compliance{-ms-flex:1 0 auto;flex:1 0 auto}.cc-window.cc-banner{-ms-flex-align:center;align-items:center}.cc-banner.cc-top{left:0;right:0;top:0}.cc-banner.cc-bottom{left:0;right:0;bottom:0}.cc-banner .cc-message{display:block;-ms-flex:1 1 auto;flex:1 1 auto;max-width:100%;margin-right:1em}.cc-compliance{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:justify;align-content:space-between}.cc-floating .cc-compliance>.cc-btn{-ms-flex:1;flex:1}.cc-btn+.cc-btn{margin-left:.5em}
@media print{.cc-revoke,.cc-window{display:none}}@media screen and (max-width:900px){.cc-btn{white-space:normal}}@media screen and (max-width:414px) and (orientation:portrait),screen and (max-width:736px) and (orientation:landscape){.cc-window.cc-top{top:0}.cc-window.cc-bottom{bottom:0}.cc-window.cc-banner,.cc-window.cc-floating,.cc-window.cc-left,.cc-window.cc-right{left:0;right:0}.cc-window.cc-banner{-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner .cc-compliance{-ms-flex:1 1 auto;flex:1 1 auto}.cc-window.cc-floating{max-width:none}.cc-window .cc-message{margin-bottom:1em}.cc-window.cc-banner{-ms-flex-align:unset;align-items:unset}.cc-window.cc-banner .cc-message{margin-right:0}}
.cc-floating.cc-theme-classic{padding:1.2em;border-radius:5px}.cc-floating.cc-type-info.cc-theme-classic .cc-compliance{text-align:center;display:inline;-ms-flex:none;flex:none}.cc-theme-classic .cc-btn{border-radius:5px}.cc-theme-classic .cc-btn:last-child{min-width:140px}.cc-floating.cc-type-info.cc-theme-classic .cc-btn{display:inline-block}
.cc-theme-edgeless.cc-window{padding:0}.cc-floating.cc-theme-edgeless .cc-message{margin:2em 2em 1.5em}.cc-banner.cc-theme-edgeless .cc-btn{margin:0;padding:.8em 1.8em;height:100%}.cc-banner.cc-theme-edgeless .cc-message{margin-left:1em}.cc-floating.cc-theme-edgeless .cc-btn+.cc-btn{margin-left:0}