/**
 * @file
 * Subtheme specific CSS.
 */


@font-face {
  font-family: Centra No\.1;
  src: url(../fonts/CentraNo1-Bold.woff) format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Centra No\.1;
  src: url(../fonts/CentraNo1-Medium.woff) format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Centra No\.1;
  src: url(../fonts/CentraNo1-BoldItalic.woff) format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Centra No\.1;
  src: url(../fonts/CentraNo1-BookItalic.woff) format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Centra No\.1;
  src: url(../fonts/CentraNo1-MediumItalic.woff) format("woff");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Centra No\.1;
  src: url(../fonts/CentraNo1-Book.woff) format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Ginto Nord;
  src: url(../fonts/Ginto_Nord_Medium.ttf) format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Prompt;
  src: url(../fonts/Prompt-Bold.ttf) format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Plex;
  src: url(../fonts/IBMPlexSansThai-Regular.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* overrides */
.form-control:focus {
  outline: none !important;
  box-shadow: none !important;
  background: none;
}

input:focus,
textarea:focus {
  outline: none;
  box-shadow: none !important;
}

*:focus {
    box-shadow: none !important;
}

/* Colours */

:root {
  --cornsilk: #fbf9e9;
  --firebrick: #c10230;
  --crimson: #f5333f;
  --dark-green: #1a5632;
  --yellow-green: #a2d45e;
  --teal: #007580;
  --medium-turquoise: #7adbd4;
  --dark-red: #79242F;
  --orange: #e05b27;
  --light-blue: #70cac6;
}

.dark-green {
	background-color: var(--dark-green) !important;
}

.dark-green-text {
  color: var(--dark-green);
}

/* languages */
body.th {
	font-family: Plex, sans-serif;
  font-size: 16px;
  font-weight: 400;
}

body.th h1, body.th h2, body.th h3, body.th h4, body.th h5, body.th h6,
body.vi h1, body.vi h2, body.vi h3, body.vi h4, body.vi h5, body.vi h6 {
	font-family: Prompt, sans-serif;
}

.th :is(p, p li, h1, h2, h3, h4, h5, h6, .page-banner .page-banner-wrapper .lead-text p, .page-banner-apple .page-banner-content p, .page-banner-news .page-banner-content time, .page-banner-news .page-banner-content p, .carousel .carousel-item .carousel-caption p, .view-job-banner) {
  line-height: 140%;
}

@media (min-width: 1141px) and (max-width: 1399px) {
  .vi .navbar-expand-lg .navbar-nav .nav-link {
    font-size: 16px;
  }
}

body.zh-hans h1, body.zh-hans h2, body.zh-hans h3, body.zh-hans h4, body.zh-hans h5,
body.zh-hant h1, body.zh-hant h2, body.zh-hant h3, body.zh-hant h4, body.zh-hant h5 {
  font-weight: 700;
}

/*.path-frontpage:is(.th, .vi, .zh-hans, .zh-hant) .field--name-field-content-components .field__item:nth-child(5) {
  display: none;
}*/

/* Global */
@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.form-control,  select {
	background: none;
	border: none;
	border-radius: 0;
}

html, body {
    overflow-x: hidden;
}

body {
  background-color: var(--cornsilk);
  color: var(--firebrick);
  font-family: Centra No\.1, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 120%;
}

/* Typography */

h1 {
  margin-top: 0;
  font-family: Ginto Nord, sans-serif;
  font-size: 70px;
  font-weight: 500;
  line-height: 110%;
}

h2 {
  margin-top: 0;
  font-family: Ginto Nord, sans-serif;
  font-size: 56px;
  font-weight: 500;
  line-height: 110%;
}

h3 {
  margin-top: 0;
  font-family: Ginto Nord, sans-serif;
  font-size: 42px;
  font-weight: 500;
  line-height: 120%;
}

h4 {
  margin-top: 0;
  font-family: Ginto Nord, sans-serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 120%;
}

h5 {
  margin-top: 0;
  font-family: Ginto Nord, sans-serif;
  font-size: 21px;
  font-weight: 500;
  line-height: 120%;
}

h6 {
  margin-top: 0;
  font-family: Ginto Nord, sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 120%;
}

/*:is(h1, h2, h3, h4, h5, h6):lang(zh-tw), :is(h1, h2, h3, h4, h5, h6):lang(zh-cn) {
	font-weight: 700;
}*/

p,
.paragraph li {
  font-size: 22px;
  line-height: 130%;
}

.paragraph li {
  margin-bottom: 8px;
}

.field--name-field-gh-content li {
	font-size: 20px;
	line-height: 120%;
	margin-bottom: 8px;
}

@media screen and (max-width: 991px) {
    h1 {
        font-size: 62px;
    }
    h2 {
        font-size: 48px;
    }
    h3 {
        font-size: 36px;
    }
    h4 {
        font-size: 26px;
    }
    h5 {
        font-size: 21px;
    }
    p {
        font-size: 20px;
    }
}

@media screen and (max-width: 767px) {
    h1 {
        font-size: 46px;
    }
    h2 {
        font-size: 40px;
    }
    h3 {
        font-size: 32px;
    }
    h4 {
        font-size: 22px;
    }
    h5 {
        font-size: 18px;
    }
}

@media screen and (max-width: 479px) {
    h1 {
        font-size: 34px;
    }
    h2 {
        font-size: 30px;
    }
    h3 {
        font-size: 24px;
    }
    h4 {
        font-size: 20px;
    }
    h5 {
        font-size: 16px;
    }
    h6 {
        font-size: 15px;
    }
    p {
        font-size: 18px;
    }
}

:is(p, h1, h2, h3, h4, h5, h6, li):not(.menu-item):not(.dropbutton-action) a:not(.btn):not([class*="nav-link"]) {
  color: var(--firebrick);
  font-size: 100%;
  font-weight: 400;
  text-decoration: underline;
}

:is(p, h1, h2, h3, h4, h5, h6, li):not(.menu-item):not(.dropbutton-action) a:not(.btn):not([class*="nav-link"]):hover {
  color: var(--crimson);
  text-decoration: none;
}

label {
  margin-bottom: 5px;
  font-size: 20px;
  font-weight: 700;
  display: block;
}

ul.fancy {
  display: grid;
  gap: 16px;
  border-left: 1px solid #fbf9e966;
  margin-top: 16px;
  margin-bottom: 16px;
}

/* Regions */

#header {
	background-color: var(--cornsilk);
}

.container {
	width: 100%;
	max-width: 1380px;
	padding-left: 40px;
	padding-right: 40px;
}

/* Front page */
.block-views-blocknews-homepage-news-block h3 {
	color: var(--dark-green);
}

.block-views-blocknews-homepage-news-block .view-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 40px;
}

.block-views-blocknews-homepage-news-block p {
	font-size: 18px;
}

.talk-to-us {
	background-color: var(--dark-green);
	padding-top: 116px;
  padding-bottom: 96px;
  color: var(--cornsilk);
  text-align: center;
}

.talk-to-us .content {
	max-width: 480px;
	margin: 0 auto;
}

.talk-to-us .content p {
	margin-top: 15px;
	margin-bottom: 20px;
}

.talk-to-us .form-control, .talk-to-us select {
	color: var(--cornsilk);
	background: none;
	border: 0;
	border-bottom: 2px solid var(--cornsilk);
	border-radius: 0;
	height: 50px;	
	padding-left: 0;
  font-weight: 500;
}

/*.talk-to-us input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px var(--dark-green) inset !important;
    -webkit-text-fill-color: var(--cornsilk) !important;
}*/

.talk-to-us select option {
	background-color: var(--dark-green);
}

.talk-to-us .form-control::placeholder, 
.talk-to-us select::placeholder {
	color: var(--cornsilk);
  font-weight: normal;
}

.talk-to-us label {
	font-weight: 400;
}

.form-check {
  display: flex;
  gap: 15px;
  text-align: left;
}

.form-check label {
  font-size: 16px;
  margin-top: -2px;
  margin-bottom: 0;
  align-content: center;
}

.form-check-input:focus {
  border-color: var(--cornsilk);
}

.form-check-input:checked {
  background-color: var(--firebrick);
  border-color: var(--firebrick);
}

.form-check-input:focus:not(:checked) {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
}

/* footer */

.site-footer {
	background: inherit;
	font-family: inherit;
}

.footer {
	margin-top: 80px;
	margin-bottom: 120px;
	padding-top: 80px;
}

.footer__bottom, .footer__top {
	margin-bottom: 56px;
	margin-top: 56px;
}

.footer-logo {
	width: 238px;
	height: auto;
}

.legal p, .legal p a {
	font-size: 14px;
	color: var(--firebrick);
}

.footer .nav-item a {
	color: var(--firebrick);
	text-decoration: none;
  padding-right: 0;
}

.footer .content a:hover, .footer .nav-link:hover {
  color: var(--crimson);
}

.footer .content a:hover img {
  opacity: 0.8;
}

.footer .nav-item {
  width: 100%;
}

.legal p a {
	margin-left: 20px;
}

.social-block .social-icon-wrapper {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.social-block a {
	display: inline-block !important;
}

.footer .nav-link {
	font-size: 18px;
	padding-left: 0;
	color: var(--firebrick);
	font-weight: 700;
	text-decoration: none;
}

.footer__top .footer_grid_wrapper {
  display: grid;
  column-gap: 24px;
  row-gap: 56px;
  grid-template-columns: repeat(6, 1fr);
}

.footer__top .footer_grid_wrapper .footer-logo {
  grid-column: span 6;
  align-self: center;
}

.footer__top .footer_grid_wrapper .fourth {
  grid-column: span 2;
  padding-top: 8px;
}

.footer__top .footer_grid_wrapper .seventh {
  grid-column: 6;
}

body:not(.en-gb) .footer__top .footer_grid_wrapper .third {
  display: none;
}

@media (max-width: 991px) {
  .footer__top .footer_grid_wrapper {
    grid-template-columns: repeat(3, 1fr);
    row-gap: 32px;
  }
  .footer__top .footer_grid_wrapper .footer-logo {
    grid-row: 1;
    grid-column: 1;
  }
  .footer__top .footer_grid_wrapper .seventh { 
    grid-row: 1;
    grid-column: 3;
  }
  .footer__top .footer_grid_wrapper :is(.first, .second, .third) {
    grid-row: 2;
  }
  .footer__top .footer_grid_wrapper .fourth {
    grid-row: 3;
  }
}

@media (max-width: 767px) {
  .footer__top .footer_grid_wrapper {
    grid-template-columns: 1fr;
    column-gap: 0;
    text-align: center;
  }
  .footer__top .footer_grid_wrapper .footer-logo {
    justify-self: center;
  }
  .footer__top .footer_grid_wrapper .seventh {
    grid-row: 2;
    grid-column: 1;
  }
  .js .block-dropdown-language .dropbutton-multiple .dropbutton-widget {
    max-width: 200px;
    margin-left: auto;
    margin-right: auto;
  }
  .footer__top .footer_grid_wrapper .first {
    grid-row: 3;
  }
  .footer__top .footer_grid_wrapper .second {
    grid-row: 4;
  }
  .footer__top .footer_grid_wrapper .third {
    grid-row: 5;
  }
  .footer__top .footer_grid_wrapper .fourth {
    grid-row: 6;
  }
  .social-block .social-icon-wrapper {
    justify-content: center;
  }
  .legal {
    text-align: center;
  }
}

/* navbar */
.navbar {
	padding-top: 24px;
  padding-bottom: 24px;
}

.navbar-toggler {
	border: none;
}

.navbar-brand img {
	width: 238px;
	height: auto;
}

.navbar-expand-lg .navbar-nav .nav-link {
	font-size: 18px;
	text-decoration: none;
	color: var(--firebrick);
	padding: 18px 12px;
  font-weight: 700;
  transition: all .15s;
}

.navbar-expand-lg .navbar-nav .nav-link:hover {
	color: var(--crimson);
}

.dropdown-menu {
	box-shadow: 6px 0 20px -2px #0000007a;
	--bs-dropdown-padding-y: 0px;
	border: 0px;
	border-radius: 0px;
}

.dropdown-menu li {
	padding: 0;
}

.dropdown-menu li a {
	display: block;
	background-color: var(--firebrick);
  color: var(--cornsilk);
  white-space: nowrap;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 16px;
  font-size: 16px;
  font-weight: 700;
  transition: all .15s;
  text-decoration: none;
}

.dropdown-menu li a:hover {
	background-color: var(--crimson);
}

.nav-item.menu-item--expanded a::after {
  font-family: "FontAwesome"; 
  font-weight: 400;
  font-size: 14px;
  margin-left: 7px;
  content: "\f078";
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  border: 0;
  vertical-align: top;
}

.dropdown-menu .dropdown-item a::after {
	content: "";
}

@media (min-width: 991px) {
	.navbar-nav li.menu-item--expanded:hover .dropdown-menu {
		display: block;
	}
}	

.navbar-toggler {
	background-color: var(--firebrick);
	border-radius: 0;
	padding: 18px;
	color: var(--cornsilk);
	margin-bottom: 20px;
}

.navbar-toggler.collapsed {
	background-color: transparent;
}

.navbar-toggler.collapsed .fa {
	color: var(--firebrick);
}

@media (max-width: 990px) {
	.navbar {
		padding-bottom: 0px; 
	}
	.navbar .container-xl {
		flex-wrap: nowrap;
	}
	.navbar-collapse {
		background-color: var(--firebrick);
		margin-left: -15px;
		margin-right: -15px;
		position: absolute;
    top: 100px;
    left: 15px;
    right: 15px;
    z-index: 999;
	}
	.navbar-collapse .navbar-nav .nav-link {
		color: var(--cornsilk); 
	}
	.navbar-collapse .navbar-nav .nav-link:hover {
		color: var(--cornsilk);
		background-color: var(--crimson); 
	}
	.navbar-collapse .navbar-nav {
		margin-top: 10px;
	}
	.navbar-brand img {
		width: auto;
    height: 24px;
    margin-top: -10px;
	}
	li.nav-item ul.dropdown-menu {
		display: block;
		box-shadow: none;
	}
	li.nav-item ul.dropdown-menu li a:hover{
				color: var(--cornsilk);
		background-color: var(--crimson); 
	}
	.mobile-pp {
		display: block;
		width: 130px !important;
		margin-bottom: 0;
		margin-top: 10px;
		margin-right: 40px;
	}
	.move-right {
		display: flex;
	}
	.dropdown-menu li a:hover {
		background-color: var(--firebrick);
		color: var(--crimson);
	}
	.navbar-expand-lg .navbar-nav .nav-link, .dropdown-menu li a {
		font-size: 24px !important;
		padding: 18px 24px !important;
	}
	.navbar-expand-lg .navbar-nav .nav-link::after {
		display: none;
	}
	.dropdown-menu li a::before {
		font-family: "FontAwesome"; 
		content: "\f112";
		display: inline-block;
		transform: rotate(180deg);
    margin-right: 10px;
    font-size: 18px;
    font-weight: normal;
	}
}

@media (max-width: 479px) {
	.mobile-pp {
		width: 100px !important;
		margin-right: 20px;
	}
}

@media (min-width: 991px) {
	.mobile-pp {
		padding-top: 20px;
		margin-left: 30px;
		width: 138px;
		height: auto;
		margin-right: 20px;
		margin-bottom: 20px;
	}
}

@media only screen and (min-width: 991px) and (max-width: 1140px) {
  .mobile-pp {
    display: none;
  }
}

/* Breadcrumbs */

.breadcrumb {
  --bs-breadcrumb-divider-color: var(--firebrick);
  --bs-breadcrumb-item-active-color: var(--firebrick);
  font-size: 18px;
}

.breadcrumb a {
  color: var(--firebrick);
  font-weight: 700;
  text-decoration: none;
}

.breadcrumb a:focus,
.breadcrumb a:hover,
.breadcrumb a:active {
  color: var(--crimson);
  text-decoration: underline;
}

/* Background Colours */

.bg-firebrick,
.bg-crimson,
.bg-dark-green,
.bg-yellow-green,
.bg-teal,
.bg-medium-turquoise,
.bg-dark-red,
.bg-orange {
  color: var(--cornsilk);
}

.bg-cornsilk {
  background-color: var(--cornsilk);
  color: var(--firebrick);
}

.bg-firebrick {
  background-color: var(--firebrick);
}

.bg-crimson {
  background-color: var(--crimson);
}

.bg-dark-green {
  background-color: var(--dark-green);
}

.bg-yellow-green {
  background-color: var(--yellow-green);
  color: var(--dark-green);
}

.bg-teal {
  background-color: var(--teal);
}

.bg-medium-turquoise {
  background-color: var(--medium-turquoise);
  color: var(--teal);
}

.bg-dark-red {
  background-color: var(--dark-red);
}

.bg-orange {
  background-color: var(--orange);
}

.bg-light-blue {
  background-color: var(--light-blue);
  color: var(--teal);
}

/* Buttons */

.btn {
  border: 2px solid var(--firebrick);
  background-color: var(--firebrick);
  color: var(--cornsilk);
  text-transform: uppercase;
  border-radius: 40px;
  padding: 11px 18px 9px;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  line-height: inherit;
  transition: all .15s;
}

.btn-primary, .btn:first-child:active {
  border-color: var(--cornsilk);
  background-color: var(--cornsilk);
  color: var(--firebrick);
}

.btn-primary:focus,
.btn-primary:hover,
.btn-primary:active {
  border-color: var(--cornsilk);
  background-color: var(--cornsilk);
  color: var(--crimson);
}

.bg-cornsilk .btn-primary {
  border-color: var(--firebrick);
  background-color: var(--firebrick);
  color: var(--cornsilk);
}

.bg-cornsilk .btn-primary:focus,
.bg-cornsilk .btn-primary:hover,
.bg-cornsilk .btn-primary:active {
  border-color: var(--crimson);
  background-color: var(--crimson);
  color: var(--cornsilk);
}

.btn-lg {
  padding: 17px 32px 15px;
  font-size: 20px;
}

.btn-secondary {
  background-color: var(--cornsilk);
  color: var(--firebrick);
}

.btn-secondary:focus,
.btn-secondary:hover,
.btn-secondary:active {
  border-color: var(--firebrick) !important;
  background-color: var(--firebrick) !important;
  color: var(--cornsilk) !important;
}

.btn-red {
  background-color: var(--firebrick);
  color: var(--cornsilk);
}

.btn-red:focus,
.btn-red:hover,
.btn-red:active {
  border-color: var(--crimson) !important;
  background-color: var(--crimson) !important;
  color: var(--cornsilk) !important;
}

.small-buttons .btn {
  padding: 11px 18px 9px;
  font-size: 16px;
}

/* Media Image Reset */

.field--name-field-media-image,
.field--name-field-media-image img {
  width: 100%;
  margin: 0 !important;
  object-fit: cover;
}

/* Paragraph - Global */

.field--name-field-content-components > .field__item:first-child > .paragraph:not(.paragraph--type-anchor-paragraph) {
    margin-top: 132px;
}

.field--name-field-content-components > .field__item > .paragraph:not(.paragraph--type-anchor-paragraph) {
    /*padding-top: 132px;
    padding-bottom: 132px;*/
    margin-bottom: 132px;
}

@media screen and (max-width: 991px) {
    .field--name-field-content-components > .field__item:first-child > .paragraph:not(.paragraph--type-anchor-paragraph):first-child {
        margin-top: 100px;
    }
    .field--name-field-content-components > .field__item > .paragraph:not(.paragraph--type-anchor-paragraph) {
        /*padding-top: 100px;
        padding-bottom: 100px;*/
        margin-bottom: 100px;
    }
}

@media screen and (max-width: 767px) {
    .field--name-field-content-components > .field__item:first-child > .paragraph:not(.paragraph--type-anchor-paragraph):first-child {
        margin-top: 64px;
    }
    .field--name-field-content-components > .field__item > .paragraph:not(.paragraph--type-anchor-paragraph) {
        /*padding-top: 64px;
        padding-bottom: 64px;*/
        margin-bottom: 64px;
    }
}

.paragraph .field--name-field-text-content *:last-child {
    margin-bottom: 0;
}

/* Paragraph - full_width_text */

@media (min-width: 768px) {
  .paragraph--type-full-width-text.text-mw-50 .field--name-field-text-content {
    max-width: 50%;
  }
  .paragraph--type-full-width-text.text-mw-66 .field--name-field-text-content {
    max-width: 66.6666%;
  }
}

/* Paragraph - full_width_grid_image_text */

.paragraph--type-full-width-grid-image-text .first-column .bg-image-wrapper {
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  background-position: center;
  aspect-ratio: 9 / 6;
}

.paragraph--type-full-width-grid-image-text .grid-row-wrapper {
  display: grid;
  grid-template-columns: 1fr;
}

.paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column {
  padding: 124px 32px;
  align-content: center;
}

.full-width-grid-no-padding-bottom.paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column {
  padding-bottom: 0;
}

.paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column .content-wrapper {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: center;
}

@media (min-width: 992px) {
  .paragraph--type-full-width-grid-image-text .grid-row-wrapper {
    grid-template-columns: 1fr 1fr;
  }
  .row-reverse.paragraph--type-full-width-grid-image-text .grid-row-wrapper .first-column {
    grid-column: 2;
    grid-row: 1;
  }
  .row-reverse.paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column {
    grid-column: 1;
    grid-row: 1;
  }
  .full-width-grid-no-padding-bottom.paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column {
    padding-bottom: 124px;
  }
  .paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column .content-wrapper {
    max-width: 58ch
  }
  .row-reverse.paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column  .content-wrapper {
    justify-self: end;
  }
  .paragraph--type-full-width-grid-image-text .first-column .bg-image-wrapper {
    aspect-ratio: unset;
    min-height: 800px;
  }
}

.paragraph--type-full-width-grid-image-text .grid-row-wrapper .second-column .field--name-field-button {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

/* Paragraph - card_grid_layout + grid_card */

*.paragraph--type-card-grid-layout .card-grid-wrapper  {
  display: grid;
  gap: 32px;
}

.paragraph--type-card-grid-layout:is(.bg-firebrick, 
  .bg-crimson, 
  .bg-dark-green, 
  .bg-yellow-green, 
  .bg-teal, 
  .bg-medium-turquoise, 
  .bg-dark-red, 
  .bg-orange) .card-grid-wrapper {
  padding-top: 92px;
  padding-bottom: 92px;
}

@media screen and (max-width: 991px) {
  .paragraph--type-card-grid-layout:is(.bg-firebrick, 
  .bg-crimson, 
  .bg-dark-green, 
  .bg-yellow-green, 
  .bg-teal, 
  .bg-medium-turquoise, 
  .bg-dark-red, 
  .bg-orange) .card-grid-wrapper {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 767px) {
  .paragraph--type-card-grid-layout:is(.bg-firebrick, 
  .bg-crimson, 
  .bg-dark-green, 
  .bg-yellow-green, 
  .bg-teal, 
  .bg-medium-turquoise, 
  .bg-dark-red, 
  .bg-orange) .card-grid-wrapper {
    padding-top: 24px;
    padding-bottom: 24px;
  }
}

.paragraph--type-grid-card {
  display: flex;
  flex-direction: column;
}

.paragraph--type-grid-card .image-wrapper {
  aspect-ratio: 3 / 2;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.ar-1-1.paragraph--type-grid-card .image-wrapper {
  aspect-ratio: 1 / 1;
}

.ar-3-2.paragraph--type-grid-card .image-wrapper {
  aspect-ratio: 3 / 2;
}

.paragraph--type-grid-card .image-wrapper > div,
.paragraph--type-grid-card .image-wrapper .field__item  {
  display: flex;
  height: 100%;
}

.paragraph--type-grid-card .content-wrapper {
  padding: 40px;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.paragraph--type-grid-card .content-wrapper .field--name-field-card-header-image {
  max-width: 74px;
}

.paragraph--type-grid-card .content-wrapper h2,
.paragraph--type-grid-card .content-wrapper h3,
.paragraph--type-grid-card .content-wrapper h4,
.paragraph--type-grid-card .content-wrapper h5,
.paragraph--type-grid-card .content-wrapper h6 {
    margin-bottom: 0;
}

.paragraph--type-grid-card .content-wrapper h6 {
    min-height: 40px;
}

.paragraph--type-grid-card .field--name-field-button {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

@media (min-width: 992px) {
  .two-col.paragraph--type-card-grid-layout .card-grid-wrapper {
    grid-template-columns: 1fr 1fr;
  }
  .three-col.paragraph--type-card-grid-layout .card-grid-wrapper {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .four-col.paragraph--type-card-grid-layout .card-grid-wrapper {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .horizontal-card.paragraph--type-grid-card {
    flex-direction: row;
    grid-column: 2 span;
  }
  .row-reverse.horizontal-card.paragraph--type-grid-card {
    flex-direction: row-reverse;
  }
  .horizontal-card.paragraph--type-grid-card .image-wrapper,
  .horizontal-card.paragraph--type-grid-card .content-wrapper {
    width: 50%;
  }
  .horizontal-card.paragraph--type-grid-card .content-wrapper {
    justify-content: center;
  }
}

.grid-cards-no-padding.paragraph--type-card-grid-layout .paragraph--type-grid-card .content-wrapper {
  padding: 0;
}

/* Anchor Paragraph */

.paragraph--type-anchor-paragraph .anchor-para {
  margin-top: -124px;
  padding-top: 124px;
}

@media (max-width: 767px) {
  .paragraph--type-anchor-paragraph .anchor-para {
    margin-top: -106px;
    padding-top: 106px;
  }
}

/* Text + Webform Paragraph */

.paragraph--type-text-webform {
  padding: 56px 24px;
}

.paragraph--type-text-webform .grid-row-wrapper {
  display: flex;
  gap: 40px;
  justify-content: center;
}

.paragraph--type-text-webform .grid-row-wrapper .intro {
  max-width: 50ch;
  text-align: center;
  color: var(--dark-green);
}

.paragraph--type-text-webform .grid-row-wrapper .intro:before {
  content: "";
  display: inline-block;
  width: 64px;
  height: 61px;
  background-image: url('../images/rotating_5p_green.png');
  background-size: cover;
  background-position: center;
  animation: spin 10s linear infinite;
}

.paragraph--type-text-webform .grid-row-wrapper .webform {
  align-self: center;
}

@media (max-width: 991px) {
  .paragraph--type-text-webform .grid-row-wrapper {
    flex-wrap: wrap;
  }
  .paragraph--type-text-webform .grid-row-wrapper .intro {
    max-width: 40ch;
  }
  .paragraph--type-text-webform .grid-row-wrapper .webform {
    width: 100%;
  }
  .paragraph--type-text-webform .grid-row-wrapper .webform form {
    max-width: 400px;
    margin: 0 auto;
  }
}

@media (max-width: 767px) {
  .paragraph--type-text-webform .grid-row-wrapper .intro {
    max-width: 39ch;
  }
  .paragraph--type-text-webform .grid-row-wrapper .webform form {
    max-width: 300px;
  }
}

@media (max-width: 479px) {
  .paragraph--type-text-webform .grid-row-wrapper .intro,
  .paragraph--type-text-webform .grid-row-wrapper .webform {
    max-width: 100%;
  }
}

.footer-form {
  background-color: #f3f0d9;
  border-radius: 20px;
  margin-top: 54px;
  margin-bottom: 54px;
}

/*.newsletter-signup {
  color: var(--dark-green);
}

.pp-icon {
  animation: spin 10s linear infinite;
}

.form-text h4 {
  color: var(--dark-green);
}*/

.newsletter-signup input,
.newsletter-signup select {
  color: var(--dark-green);
  background: none;
  border: 0;
  border-bottom: 2px solid var(--dark-green);
  border-radius: 0;
  height: 50px;
  padding-left: 0;
  font-weight: 500;
}

.newsletter-signup input::placeholder,
.newsletter-signup select::placeholder {
  color: var(--dark-green);
  font-weight: normal;
}

.newsletter-signup input:focus,
.newsletter-signup select:focus {
  color: var(--dark-green);
  background-color: transparent;
  border-color: var(--dark-green);
}

@media (max-width: 991px) {
  .newsletter-signup .webform-flexbox {
		display: flex;
    flex-direction: column;
	}
  .newsletter-signup .webform-flexbox .webform-flex--1 {
    width: 100%;
  }
}

.newsletter-signup .form-actions {
  text-align: center;
  margin-bottom: 0 !important;
}

.newsletter-signup .btn-primary, .newsletter-signup .btn-primary:active {
  background-color: var(--dark-green);
  color: var(--cornsilk);
  border: 0;
}

/*.newsletter-signup input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px #f3f0d9 inset !important;
    -webkit-text-fill-color: var(--dark-green) !important;
}*/

.newsletter-signup .btn-primary:hover {
  color: var(--yellow-green);
}

.form-firebrick.paragraph--type-text-webform {
  background-color: var(--firebrick);
}

.form-firebrick.paragraph--type-text-webform .grid-row-wrapper .intro {
  color: var(--cornsilk);
}

.form-firebrick.paragraph--type-text-webform .grid-row-wrapper .intro:before {
  background-image: url('../images/rotating_5p_cornsilk.png');
}

.form-firebrick .newsletter-signup input,
.form-firebrick .newsletter-signup select {
  color: var(--cornsilk);
  border-bottom: 2px solid var(--cornsilk);
}

.form-firebrick .newsletter-signup input::placeholder,
.form-firebrick .newsletter-signup select::placeholder {
  color: var(--cornsilk);
}

.form-firebrick .newsletter-signup input:focus,
.form-firebrick .newsletter-signup select:focus {
  color: var(--cornsilk);
  background-color: transparent;
  border-color: var(--cornsilk);
}

.form-firebrick .newsletter-signup .btn-primary {
  background-color: var(--cornsilk);
  color: var(--firebrick);
  border: 0;
}

.form-firebrick .newsletter-signup .btn-primary:hover {
  color: var(--crimson);
}

/*.form-firebrick .newsletter-signup input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px var(--firebrick) inset !important;
    -webkit-text-fill-color: var(--cornsilk) !important;
}*/

.form-yellow-green.paragraph--type-text-webform {
  background-color: var(--yellow-green);
}

.webform-confirmation .webform-confirmation__message {
  margin-bottom: 0;
  text-align: center;
}

.form-firebrick .webform-confirmation .webform-confirmation__message {
  color: var(--cornsilk);
}

.form-yellow-green .webform-confirmation .webform-confirmation__message,
.footer-form .webform-confirmation .webform-confirmation__message {
  color: var(--dark-green);
}

/* Page Banner */

.page-banner .page-banner-wrapper {
  background-image: url('../images/page_banner_bg_default.jpg');
  background-position: 0%;
  background-size: cover;
  background-color: var(--firebrick);
  height: auto;
  padding-top: 40px;
  padding-bottom: 40px;
  color: var(--cornsilk);
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.page-banner .page-banner-wrapper.full-bg-image {
  height: 70vh;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .page-banner .page-banner-wrapper {
    padding-top: 72px;
    padding-bottom: 72px;
  }
}

.page-banner .page-banner-wrapper .page-banner-content {
  max-width: 80ch
}

.page-banner .page-banner-wrapper .page-banner-content h1 {
  margin-bottom: 0;
}

.page-banner .page-banner-wrapper .page-banner-content .home-banner-strapline {
  width: auto;
  height: 120px;
}

.page-banner .page-banner-wrapper .lead-text p {
  margin-top: 24px;
  font-size: 28px;
  line-height: 120%;
}

.page-banner .page-banner-wrapper .lead-text *:last-child {
  margin-bottom: 0;
}

.page-banner .page-banner-wrapper .lead-text a {
  color: var(--cornsilk) !important;
}

.page-banner .page-banner-wrapper .lead-text a:focus,
.page-banner .page-banner-wrapper .lead-text a:hover,
.page-banner .page-banner-wrapper .lead-text a:active {
  color: var(--cornsilk);
}

.page-banner .page-banner-wrapper.offset-image {
    background-image: none;
    padding-top: 132px;
    padding-bottom: 132px;
    display: grid;
}

.page-banner .page-banner-wrapper.offset-image .banner {
    display: flex;
    gap: 32px;
    align-items: center;
}

.page-banner .page-banner-wrapper.offset-image .banner img {
    width: auto;
    height: 360px;
}

@media (max-width: 991px) {
    .page-banner .page-banner-wrapper.offset-image {
        padding-top: 100px;
        padding-bottom: 100px;
    }
    .page-banner .page-banner-wrapper.offset-image .banner {
        flex-direction: column;
    }
    .page-banner .page-banner-wrapper.offset-image .banner img {
        order: -1;
        height: 270px;
        align-self: start;
    }
}

@media screen and (max-width: 767px) {
    .page-banner .page-banner-wrapper.offset-image {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    .page-banner .page-banner-wrapper.offset-image .banner {
        gap: 48px;
    }
    .page-banner .page-banner-wrapper.offset-image .banner img {
        height: 230px;
    }
}

@media screen and (max-width: 479px) {
    .page-banner .page-banner-wrapper.offset-image .banner {
        gap: 40px;
    }
    .page-banner .page-banner-wrapper.offset-image .banner img {
        height: 150px;
    }
    .page-banner .page-banner-wrapper .page-banner-content .home-banner-strapline {
      max-width: 100%;
      height: auto;
    }
}

/* Apple - Page Banner */

.page-banner-apple .page-banner-wrapper {
  height: 80vh;
  position: relative;
}

.page-banner-apple .page-banner-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #00000040;
  z-index: 1;
}

.page-banner-apple .page-banner-wrapper video {
  height: 80vh;
  width: 100%;
  object-fit: cover;
}

.view-apples.view-display-id-apples_page_banner .field--type-image img {
    width: 60%;
    margin-bottom: 0 !important;
}

.page-banner-apple .page-banner-content {
  color: var(--cornsilk);
  text-align: center;
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  display: flex;
  z-index: 2;
}

.page-banner-apple .page-banner-content .content-wrapper {
  max-width: 80ch;
  margin: auto;
}

.page-banner-apple .page-banner-content p {
  margin-top: 24px;
  font-size: 28px;
  line-height: 120%;
}

.page-banner-apple .page-banner-content p:last-of-type {
  margin-bottom: 0;
}

.page-banner-apple .page-banner-content .strapline {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid var(--cornsilk);
  margin-top: 32px;
  padding-top: 16px;
  padding-bottom: 16px;
}

.page-banner-apple .page-banner-content .strapline p {
  margin-top: 0;
  font-size: 25px;
}

@media screen and (max-width: 991px) {
  .page-banner-apple .page-banner-content .strapline p {
    font-size: 22px;
  }
}

@media screen and (max-width: 479px) {
  .page-banner-apple .page-banner-content p {
    font-size: 24px;
  }
  .page-banner-apple .page-banner-content .strapline p {
    font-size: 20px;
  }
}

/* News - Page Banner */

.page-banner-news .page-banner-wrapper {
  height: 60vh;
  min-height: 560px;
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.page-banner-news .page-banner-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #00000080;
  z-index: 1;
}

.page-banner-news .page-banner-content {
  position: relative;
  z-index: 2;
  color: var(--cornsilk);
  max-width: 80ch;
  overflow: hidden;
}

.page-banner-news .page-banner-content time {
  font-size: 22px;
  line-height: 130%;
}

.page-banner-news .page-banner-content p {
  margin-top: 24px;
  font-size: 28px;
  line-height: 120%;
}

.page-banner-news .page-banner-content p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 991px) {
  .page-banner-news .page-banner-content time {
    font-size: 20px;
  }
}

@media screen and (max-width: 479px) {
  .page-banner-news .page-banner-content time {
    font-size: 18px;
  }

  .page-banner-news .page-banner-content p {
    font-size: 24px;
  }
}

/* News - Grid */

.news-grid {
  padding: 0;
}

.news-grid > .view-content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
}

@media (min-width: 992px) {
    .news-grid > .view-content {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

.news-grid .node--view-mode-teaser {
  height: 100%;
}

.news-grid .news-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.news-grid .news-card .content-wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding-top: 24px;
  padding-bottom: 24px;
}

.article-category {
  width: fit-content;
  margin-bottom: 8px;
  padding: 4px 8px 3px;
  background-color: var(--firebrick);
  color: var(--cornsilk);
  font-weight: 700;
}

.news-grid .pure-expertise .article-category {
  background-color: #f5333f;
}

.news-grid .pure-place .article-category {
  background-color: #7adbd4;
}

.news-grid .pure-safety .article-category {
  background-color: #007580;
}

.news-grid .pure-delight .article-category {
  background-color: #79242f;
}

.news-grid .pure-control .article-category {
  background-color: #007580; /* Missing */
}

.news-grid .news .article-category {
  background-color: #007580;
}

.news-grid .news-card .content-wrapper .news-lead {
  margin-bottom: 24px;
}

.news-grid .news-card .content-wrapper p:last-child {
  margin-bottom: 0;
}

.news-grid > .view-content .news-card .field--name-node-link {
  margin-top: auto;
}

.block-views-blocknews-news-node {
    background-color: var(--teal);
    color: var(--cornsilk);
    padding-top: 132px;
    padding-bottom: 132px;
}

.block-views-blocknews-news-node .article-category {
    background-color: transparent !important;
    padding: 0 !important;
}

.block-views-blocknews-news-node .btn-secondary {
    border-color: var(--cornsilk);
    background-color: transparent;
    color: var(--cornsilk);
}

.block-views-blocknews-news-node .btn-secondary:hover,
.block-views-blocknews-news-node .btn-secondary:active  {
    border-color: var(--firebrick) !important;
    color: var(--firebrick) !important;
    background-color: var(--cornsilk) !important;
}

@media screen and (max-width: 991px) {
    .block-views-blocknews-news-node {
        padding-top: 100px;
        padding-bottom: 100px;
    }
}

@media screen and (max-width: 767px) {
    .block-views-blocknews-news-node{
        padding-top: 64px;
        padding-bottom: 64px;
    }
}

/* News - Featured */

.news-featured {
  margin-bottom: 48px; 
}
.news-featured .news-card {
  display: grid;
}

@media (min-width: 768px) {
  .news-featured .news-card {
    grid-template-columns: 1fr 1fr;
  }
}

.news-featured .news-card .image-wrapper>div,
.news-featured .news-card .image-wrapper .field--name-field-media-image,
.news-featured .news-card .image-wrapper .field--name-field-media-image .field__item,
.news-featured .news-card .image-wrapper .field--name-field-media-image .field__item img {
  height: 100%;
}

.news-featured .news-card .content-wrapper {
  padding: 40px;
  display: grid;
  gap: 16px;
}

/* News - node */

.node--type-article .field--name-field-content-components .paragraph--type-full-width-text {
    color: var(--dark-green);
}

@media (min-width: 992px) {
    .node--type-article .field--name-field-content-components .paragraph--type-full-width-text .field--name-field-text-content {
        width: calc(100% - 364px);
    }
}


/* apple node */

.ranges, 
.nutrition {
  padding-top: 132px;
  padding-bottom: 132px;
  border-bottom: 1px solid var(--firebrick);
}

.ranges, .nutrition, .nutrition .table {
	color: var(--dark-green);
}

.ranges h2 {
	margin-bottom: 50px;
}

.nutrition .table tr {
	background: none;
	font-size: 22px;
	vertical-align: middle;
  border: none;
  border-bottom: 1px solid #6b6b6b1a;
}

.nutrition .table tr:last-child {
	border-bottom: 0;
}

.nutrition tr td, .nutrition tr th {
	border: none;
}

.apple-cover-image img {
	height: 470px;
	width: auto;
}

.range-slider {
  width: 100%;
  margin: 30px 0;
  position: relative;
}

.range-track {
  width: 100%;
  height: 1px;
  background: var(--firebrick);
  border-radius: 0px;
  position: relative;
}

.range-circle {
  width: 24px;
  height: 24px;
  background: var(--firebrick);
  border: 0;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s ease;
}

.range-circle:hover {
  transform: translate(-50%, -50%) scale(1.1);
}

.range-labels {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  font-size: 25px;
  color: var(--firebrick);
}

.range-labels .additional {
	display: none;
}

.view-apples.apple-grid {
  padding: 0;
}

.view-apples.apple-grid.apple-node {
  padding-top: 100px;
  padding-bottom: 100px;
}

.view-apples.apple-grid > .view-content {
  display: grid;
  column-gap: 80px;
  row-gap: 124px; 
}

.view-apples.apple-grid.four-col > .view-content {
  column-gap: 24px;
  row-gap: 16px;
}

@media (min-width: 575px) {
  .view-apples.apple-grid>.view-content {
    grid-template-columns: 1fr 1fr;
    column-gap: 64px;
    row-gap: 124px;
  }
  .view-apples.apple-grid.four-col>.view-content {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 991px) {
  .view-apples.apple-grid > .view-content {
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 64px;
    row-gap: 124px;
  }
  .view-apples.apple-grid.four-col  > .view-content {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    row-gap: 64px;
  }
}

.view-apples.apple-grid > .view-content .apple-tile > div {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.view-apples .view-content .field {
	display: block;
	clear: both;
}

.view-apples .range-slider {
  margin: 24px 0;
}

.view-apples .field--name-field-crunch {
  padding-bottom: 20px;
}

.view-apples:not(.apple-node):not(.apple-banner) .field--type-image img {
	width: 200px;
	height: auto;
	margin-bottom: 20px !important;
}

.view-apples:not(.apple-node) .view-content .field h4 {
	display: none;
}

.view-apples .range-labels {
	font-size: 18px;
	margin-top: 15px;
}

.view-apples span.additional {
	display: inline;
}

.view-apples span {
	display: none;
}

.view-apples.apple-grid.apple-node :is(.view-header, .apple-tile, h3,
h4) {
  text-align: center;
  color: var(--dark-green);
}
.view-apples.apple-grid.apple-node h4 {
  margin-bottom: 24px;
}

.view-apples.apple-grid .apple-tile p {
	min-height: 145px;
}

.view-apples.apple-grid .apple-tile p:last-child {
  margin-bottom: 20px;
}

.view-apples.apple-grid .apple-tile .field--name-node-link {
  margin-top: auto;
}

.view-apples.apple-grid:not(.apple-node) .apple-tile .field--name-node-link .btn {
  display: block;
}

.view-apples.apple-grid.apple-node .view-header {
  margin-bottom: 40px;
}

.apple-video {
  padding-top: 124px;
  padding-bottom: 124px;
}

.apple-video .field--name-body {
  display: flex;
  justify-content: center;
}

.apple-video video {
  max-width: 640px;
}

/* Dazzle and Posy overrides */

.page-node-32.path-node :is(.nutrition,
  .nutrition .table,
  .ranges,
  .apple-video) {
    background-color: #003c4c;
    border-color: #fff;
    color: #fff;
}

.page-node-32.path-node :is(.range-circle,
  .range-track) {
    background-color: #fff;
}

.page-node-32.path-node .range-labels {
  color: #fff;
}

.page-node-40.path-node :is(.nutrition,
  .nutrition .table,
  .ranges,
  .apple-video) {
    background-color: hsla(356.0869565217391, 82.14%, 89.02%, 1.00);
    color: var(--firebrick);
}

/* Carousel */

.carousel .carousel-item img {
  height: 50vh;
  min-height: 630px;
  object-fit: cover;
}

.carousel .carousel-item .carousel-caption {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 0;
  bottom: 0;
  justify-content: center;
  text-align: left;
  max-width: 80ch;
}

.carousel .carousel-item .carousel-caption p {
  margin-top: 24px;
  font-size: 28px;
  line-height: 120%;
}

@media screen and (max-width: 767px) {
  .carousel .carousel-item .carousel-caption {
    left: 15px;
    right: 15px;
  }
  .carousel .carousel-item .carousel-caption p {
    font-size: 26px;
  }
}

@media screen and (max-width: 479px) {
  .carousel .carousel-item .carousel-caption p {
    font-size: 24px;
  }
}

.carousel .carousel-item .carousel-caption p:last-of-type {
  margin-bottom: 0;
}

.carousel .carousel-item .carousel-caption a {
  margin-top: 32px;
  max-width: fit-content;
}

@media screen and (max-width: 767px) {
  .carousel .carousel-item img {
    height: 60vh;
    min-height: 560px;
  }
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
  width: 40px;
  height: 40px;
}

.carousel .carousel-indicators [data-bs-target] {
  width: 16px;
  height: 16px;
  border-radius: 100%;
}


/* maps */
.map-block {
	margin-bottom: 40px;
}

.map-block h5 {
	color: var(--dark-green);
}

.map-block .field--type-geofield {
	margin-bottom: 20px;
}

.leaflet-tooltip p {
	font-size: 14px;
	margin-bottom: 0;
}

.leaflet-marker-icon {
	filter: hue-rotate(155deg);
}

/* Map Table */

.table.no-border tr {
  background: none;
  border-bottom: 0;
}

.table.no-border td {
  border: 0;
}

/* careers views blocks */
.view-jobs {
  padding-top: 100px;
  padding-bottom: 100px;
  box-shadow: 0 0 0 100vmax var(--yellow-green);
  clip-path: inset(0 -100vmax);
  background-color: var(--yellow-green);
  filter: drop-shadow(0 0 0 var(--yellow-green));
  color: var(--dark-green);
}

.view-jobs .view-header {
  max-width: 58ch;
  margin-bottom: 56px;
}

.view-jobs .view-content {
  row-gap: 32px;
}

.view-jobs .node--view-mode-teaser {
  display: grid;
  gap: 15px;
  background-color: var(--dark-green);
	color: var(--cornsilk);
	padding: 20px;
}

.view-jobs .node--view-mode-teaser h4,
.view-jobs .node--view-mode-teaser h6 {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .view-jobs .node--view-mode-teaser {
    grid-template-columns: 3fr 3fr 2fr;
    grid-template-rows: 1fr 2fr;
  }
  .view-jobs .node--view-mode-teaser h6 {
    grid-area: 1 / 1 / 2 / 3;
  }
  
  .view-jobs .node--view-mode-teaser .field--name-node-title {
    grid-area: 2 / 1 / 3 / 3;
  }
  .view-jobs .node--view-mode-teaser .field--name-node-link {
    grid-area: 2 / 3 / 3 / 4;
    place-self: self-end;
  }
}

.view-job-banner {
	background-color: var(--firebrick);
	color: var(--cornsilk);
	padding-top: 130px;
	padding-bottom: 130px;
	margin-bottom: 40px;
	font-size: 28px;
  line-height: 120%;
}

.view-job-banner h1 {
	margin-bottom: 20px;
}

.field--name-field-gh-content {
	margin-bottom: 4rem;
}

.field--name-field-gh-content p, .field--name-field-gh-content ul {
	color: var(--dark-green);
}

.view-job-apply-block {
	background-color: var(--yellow-green);
	color: var(--dark-green);
	padding: 30px;
}

.view-job-apply-block .btn {
	margin-top: 30px;
}

.job-node {
	padding-top: 50px;
	padding-bottom: 50px;
}

/* Webform select2 - remove defunct default select styles */

.select2-container--default .select2-dropdown {
    background: var(--yellow-green);
    border: 1px solid var(--dark-green);
    border-radius: 0;
}

.select2-container--default .select2-results {
    padding: 0;
}

.select2-container--default .select2-results__option {
    padding: .375rem;
    color: var(--dark-green);
    font-size: 14px !important;
    line-height: 22px !important;
}

.select2-container--default .select2-dropdown .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-dropdown .select2-results__option[aria-selected="true"]:not(.select2-results__option--highlighted) {
    background: var(--dark-green);
    color: var(--yellow-green);
}

.select2-container--default .select2-dropdown {
    padding: 0;
}

ul.select2-results__options>li.select2-results__option {
    margin: 0 !important;
}

.select2-container {
    max-width: 100% !important;
}

@media (max-width: 991px) {
  .select2-container {
    width: 100% !important;
  }
}

.form-type-select .select2-container--default .select2-selection--single {
    background-color: transparent;
    border: none;
    border-bottom: 2px solid var(--dark-green);
    border-radius: 0;
    height: 50px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: 0;
    color: var(--dark-green);
    text-align: left;
    line-height: 50px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered:not(.select2-selection__placeholder) {
    font-weight: 500;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    font-weight: 400;
    color: var(--dark-green);
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    display: none;
}

.form-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow, .talk-to-us .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 35px !important;
    top: 10px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    display: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow::after {
    font-family: "FontAwesome";
    content: "\f078";
    color: var(--dark-green);
    font-size: 10px;
    position: absolute;
    top: 15px;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow::after {
    content: "\f077";
}

body:has(.form-firebrick .select2-container--open) .select2-dropdown {
    background: var(--firebrick);
    border: 1px solid var(--cornsilk);
}

body:has(.form-firebrick .select2-container--open) .select2-results__option {
    color: var(--cornsilk);
}

body:has(.form-firebrick .select2-container--open) .select2-dropdown .select2-results__option--highlighted[aria-selected],
body:has(.form-firebrick .select2-container--open) .select2-dropdown .select2-results__option[aria-selected="true"]:not(.select2-results__option--highlighted) {
    background: var(--cornsilk);
    color: var(--firebrick);
}

.form-firebrick .select2-container--default .select2-selection--single {
    border-bottom: 2px solid var(--cornsilk);
}

.form-firebrick .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--cornsilk);
}

.form-firebrick .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: var(--cornsilk);
}

.form-firebrick .select2-container--default .select2-selection--single .select2-selection__arrow::after {
    color: var(--cornsilk);
}

body:has(.talk-to-us .select2-container--open, .footer-form .select2-container--open) .select2-dropdown {
    background: var(--dark-green);
    border: 1px solid var(--cornsilk);
}

body:has(.footer-form .select2-container--open) .select2-dropdown {
    border-color: var(--dark-green);
}

body:has(.talk-to-us .select2-container--open, .footer-form .select2-container--open) .select2-results__option {
    color: var(--cornsilk);
}

body:has(.talk-to-us .select2-container--open, .footer-form .select2-container--open) .select2-dropdown .select2-results__option--highlighted[aria-selected],
body:has(.talk-to-us .select2-container--open, .footer-form .select2-container--open) .select2-dropdown .select2-results__option[aria-selected="true"]:not(.select2-results__option--highlighted) {
    background: var(--cornsilk);
    color: var(--dark-green);
}

.talk-to-us .select2-container--default .select2-selection--single {
    border-bottom: 2px solid var(--cornsilk);
}

.talk-to-us .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--cornsilk);
    line-height: 50px;
    padding-left: 0;
}

.talk-to-us .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: var(--cornsilk);
}

.talk-to-us .select2-container--default .select2-selection--single .select2-selection__arrow::after {
    color: var(--cornsilk);
}

/* language selector block */
.footer .language-link {
	font-size: 16px;
	padding-left: 0;
  color: var(--cornsilk);
	font-weight: 700;
	display: block;
	text-decoration: none;
}

.block-language .nav-link {
	width: 100%;
	background-color: var(--firebrick);
	padding-left: 7px;
}

.footer .block-language .nav-link:hover, .footer .block-language .nav-link.is-active {
	color: var(--cornsilk);
	background-color: var(--crimson);
}

.js .block-dropdown-language .dropbutton-multiple .dropbutton-widget {
	padding-right: 0;
}

.block-dropdown-language .dropbutton-widget .dropbutton li:first-child .language-link {
	border-bottom: 2px solid var(--firebrick);
	color: var(--firebrick);
	background-color: transparent;
}

.block-dropdown-language .dropbutton-widget .dropbutton li {
	line-height: 40px;
  text-align: left;
}

li.dropbutton-toggle {
	border: 0;
	right: 0;
	width: 100%;
	height: 40px;
	margin-top: 0;
	top: 0;
}

li.dropbutton-toggle::after {
	font-family: "FontAwesome";
  font-weight: 400;
  font-size: 14px;
  margin-left: 7px;
  content: "\f078";
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  border: 0;
  vertical-align: top;
  position: absolute;
  z-index: 999;
  right: 15px;
  top: 0;
}

.block-dropdown-language .dropbutton-arrow {
	right: 0;
	border: 0;
}

li.dropbutton-action.secondary-action a {
	color: var(--cornsilk);
	padding-left: 12px;
	text-decoration: none;
	font-weight: 700;
	background-color: var(--firebrick);
	display: block;
}

li.dropbutton-action.secondary-action a:hover {
	background-color: var(--crimson) !important;
	color: var(--cornsilk) !important;
}

/** default language block **/
.footer .language-link {
	font-size: 18px;
	padding-left: 0;
  color: var(--cornsilk);
	font-weight: 700;
	display: block;
	text-decoration: none;
}

.block-language .nav-link {
	width: 100%;
	background-color: var(--firebrick);
	padding-left: 7px;
}

.footer .block-language .nav-link:hover, .footer .block-language .nav-link.is-active {
	color: var(--cornsilk) !important;
	background-color: var(--crimson);
}

.footer .block-language .nav-link:hover a {
	color: var(--cornsilk) !important;
}
