:root {
  --primary: #3e7ab1;
  --secondary: #2d61ff;
  --l-blue: #72aee6;
  --b-grey: #f9f9f9;
  --d-grey: #ebebeb;
  --base: #666769;
  --white: #FFF;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
html {
  font: 400 16px/1.5 'Molengo', Arial, sans-serif;
  color: var(--base);
  -webkit-text-size-adjust: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-x: hidden;
}

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

body {
  margin: 0 auto;
  background: var(--white);
  font-variant-numeric: normal;
}

/* Narrow Width of blocks */
.narrow>div:first-of-type {
  max-width: 1000px;
  margin: 0 auto;
  padding: 3rem 1.5rem;
}

/* Width of "wide" blocks */
.alignwide>div:first-of-type {
  max-width: 1400px;
  margin: 0 auto;
  padding: 3rem 1.5rem;
}

/* Width of "full-wide" blocks */
.alignfull>div:first-of-type {
  max-width: 1680px;
  margin: 0 auto;
  padding: 3rem 1.5rem;
}

.site-header .alignfull>div:first-of-type {
  padding: 0;
}

.site-footer .alignfull>div:first-of-type {
  padding-top: 0;
  padding-bottom: 0;
}

h1,
h2,
h3,
h4 {
  font-weight: 700;
  margin: 0 0 1rem 0;
  padding: 0;
  color: var(--base);
  font-family:'Economica', Arial, sans-serif;
}

h1 {
  font-size: 2.5em;
  margin: 0 0 1rem 0;
  line-height: 1.2;
}

h2 {
  font-size: 2em;
  margin: 0 0 1rem 0;
  line-height: 1.4;
  position: relative;
  padding: 0 1.25rem;
  color: var(--primary);
}

h2:before {
  content: "";
  width: 10px;
  display: block;
  height: 100%;
  background: var(--primary);
  position: absolute;
  top: 0;
  left: 0;
}

h3 {
  font-size: 1.75em;
  line-height: 1.25;
  margin: 0 0 1rem 0;
}

h4 {
  font-size: 1.4em;
  line-height: 1.5;
  margin: 0 0 0.4rem 0;
  color: var(--primary);
}

p {
  font-size: 1em;
  line-height: 1.6;
  margin: 0 0 2rem 0;
  padding: 0;
}

p.has-small-font-size {
  font-size: .85em;
}

p.has-medium-font-size {
  font-size: 1.2em;
}

p.has-large-font-size {
  font-size: 1.4em;
}

b,
strong {
  font-weight: 700;
}

hr {
  background-color: var(--d-grey);
  border: 0;
  height: 1px;
  margin: 2rem 0;
}

img {
  max-width: 100%;
  width: initial;
  height: auto;
  display: block;
  margin: 0 auto;
}

.entry-content img {
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

.img-margin img {
  margin: 2rem 0 3rem 0;
}

svg {
  display: block;
}

figure {
  margin: 0;
}

figcaption {
  font-size: 1rem;
  line-height: 1.2;
  margin: .5rem 0 0;
}

ul.list,
ol.list {
  list-style-type: square;
  font-size: 1em;
  margin: 0 0 2rem 2rem;
  padding: 0;
  line-height: 1.6;
}

ol.list {
  list-style-type: decimal;
}

ul {
  list-style-type: none;
  font-size: 1em;
  margin: 0;
  padding: 0;
}

.regular-ul {
  padding: .7rem 1rem .7rem 2.25rem;
  background: rgb(249 249 249 / 50%);
  border: 1px solid var(--d-grey);
}

.regular-ul li {
  list-style-type: square;
  padding: .3rem 0;
}

.regular-ul li:not(:last-of-type) {
  border-bottom: 1px solid var(--d-grey);
}

.regular-ul li ul { padding: 0 0 0 1rem; }
.regular-ul li ul li { list-style-type: circle; }
.regular-ul li ul li ul li { list-style-type: disc; }

a {
  text-decoration: none;
  -webkit-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
  color: var(--primary);
}

a:hover,
a:focus,
a:active {
  cursor: pointer;
  text-decoration: none;
  color: var(--secondary);
}

a:focus {
  outline: thin dotted;
}

a:hover, a:active {
  outline: 0;
}

/* Breadcrumbs */

.secondary-header__breadcrumbs {
  border-bottom:  1px solid var(--d-grey);
}

.secondary-header__breadcrumbs .wp-block-group__inner-container {
  padding: 0 2.5rem!important;
}

.ah-breadcrumb {
  width: 100%;
  margin: 0;
  left: 0;
  right: 0;
  z-index: 1;
  padding: 0.5rem 0;
  border-radius: 5px;
  font-size: 0.65rem;
}

.ah-breadcrumb li {
  display: inline-block;
  margin: 0 .25rem;
}

.ah-breadcrumb li a { color: var(--base); }
.ah-breadcrumb li a:hover { color: var(--primary); }





/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: var(--b-grey);
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: var(--secondary);
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Video (YouTube)
--------------------------------------------------------------*/
.wp-block-embed__wrapper {
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
  height: 0;
}

.wp-block-embed__wrapper iframe {
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  position: absolute;
}


/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* cross-browser fix */
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 0;
  display: block;
  margin: 0 auto;
  padding: 1.2rem 4.5rem;
  background: var(--primary);
  border-radius: 5px;
  font: 600 .8em/0 'Molengo', Arial, sans-serif;
  font-family: 'Molengo', Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  line-height: 1;
  white-space: nowrap;
  color: var(--white);
  cursor: pointer;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  background: var(--secondary);
  transition: all .3s ease;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #000;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
  color: var(--base);
  border: none;
  border-radius: 5px;
  margin: 0 0 1.5em 0;
  padding: .75rem 1.25rem;
  width: 100%;
  border: 1px solid var(--d-grey);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: var(--dblue);
}

::-webkit-input-placeholder { /* Edge */
  color: #8a98a5;
	font-weight: 300;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #8a98a5;
	font-weight: 300;
}

::placeholder {
  color: #8a98a5;
	font-weight: 300;
}

/* contact 7 forms */

.wpcf7 {
padding: 1.5rem 1rem;
background: linear-gradient(0deg, rgba(183,200,214,.45) 0%, rgba(255,255,255,1) 100%);
border-radius: 6px;
}

span.required {
  color: #D80027;
  font-size: 0.8em;
}

span.wpcf7-not-valid-tip {
  color: #D80027;
}

span.wpcf7-list-item {
  display: block;
}

.wpcf7 label {
  color: var(--primary);
  line-height: 1;
  font-family:'Economica', Arial, sans-serif;
  font-size: 1.25rem;
}

.wpcf7 label span {margin: .5rem 0 0;display: block;}



/*--------------------------------------------------------------
## Site logo
--------------------------------------------------------------*/
.site-header {
  background: var(--white);
  position: relative;
  top: 0;
  width: 100%;
  z-index: 2;
  -webkit-box-shadow: 0 8px 20px -4px rgba(0, 0, 0, .15);
  box-shadow: 0 8px 20px -4px rgba(0, 0, 0, .15);
}

.site-header .alignfull {
  padding: 0;
}

.top-nav + .alignfull .wp-block-group__inner-container { padding: 1rem 2.5rem; }

.site-branding {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*! justify-content: center; */
padding: 1rem 1.5rem;height: 67px;}

.site-branding img {
  width: 10rem;
  -webkit-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
}

.site-branding a:hover img {
  opacity: .75;
}

.top-nav {
  display: none;
}

/* Social Media */
.menu-social-media-container ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
align-items: center;}

.menu-social-media-container ul li {
  margin: 0 1rem 0 0;}

.menu-social-media-container ul li a {
  color: var(--base);
  display: flex;
  align-items: center;
}

.menu-social-media-container ul li:nth-of-type(4) {
  border-right: 1px solid var(--base);
  padding: 0 1rem 0 0;
}

.menu-social-media-container ul li:nth-of-type(n+4) img {
  margin-right: .4rem;
}

.menu-social-media-container ul li:last-of-type {
  margin-right: 0;
}

.menu-social-media-container img {
  width: .9rem;
}

/* Language selector */
.menu-languages-container {
  position: relative;
  cursor: pointer;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
}

.menu-languages-container ul {
  position: absolute;
  right: 0;
  z-index: 3;
  top: 100%;
}

.menu-languages-container > ul {
  position: relative;
  right: unset;
  top: unset;
width: 100%;}

.menu-languages-container li.menu-item-has-children > a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 1px solid var(--base);
    border-bottom: 1px solid var(--base);
    transform: rotate(45deg);
    position: relative;
    top: -.25rem;
    display: inline-flex;
    margin: 0 0 0 0.5rem;
}

.menu-languages-container ul li a {
  display: block;
  padding: .5rem 0 .5rem 0;
  color: var(--base);
  min-width: auto;
}

.menu-languages-container a img {
  display: inline;
  vertical-align: middle;
  margin-right: .45rem;
  position: relative;
  bottom: 1px;
}

.menu-languages-container ul.sub-menu {
  display: none;
  border: 1px solid var(--d-grey);
}

.menu-languages-container:hover ul.sub-menu {
  display: block;
}

.menu-languages-container ul.sub-menu li a {
  display: block;
  padding: .5rem 1rem;
  -webkit-box-shadow: 0px 4px 12px -3px rgb(0 0 0 / 20%);
  box-shadow: 0px 4px 12px -3px rgb(0 0 0 / 20%);
  background-color: var(--white);
  border-bottom: 1px solid var(--d-grey);
  text-decoration: none;
  color: var(--base);
  min-width: 10rem;
}

.menu-languages-container ul.sub-menu li:last-child a {
  border: 0;
}

.menu-languages-container ul.sub-menu a:hover {
  color: var(--primary);
  background: var(--b-grey);
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/* Hide/show nav*/
.btn-content {
  display: none;
  width: 100%;
  background: var(--primary);
  padding: 2rem 1.5rem;
  text-align: center;
  -webkit-box-shadow: 0 8px 14px -4px rgba(0, 0, 0, 0.5);
  box-shadow: 0 8px 14px -4px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 2;
  top: 0;
  border-top: 1px solid rgba(225, 225, 225, .6);
}

.btn-content a {
  color: var(--white);
  text-decoration: none;
  line-height: 1.8;
  text-transform: uppercase;
}

.main-navigation .btn-toggle {
  position: absolute;
  top: 0;
  right: 0;
  border: 0;
  border-radius: 0;
  background: var(--primary);
  color: var(--white);
  font-size: 1em;
  line-height: 0;
  outline: none;
  cursor: pointer;
  padding: 2rem 1rem;
  margin: 0;
  z-index: 2;
}

.main-navigation .btn-toggle i.bar {
  position: relative;
  display: block;
  width: 2rem;
  height: 3px;
  background: var(--white);
  -webkit-transition: all .2s ease-out;
  -o-transition: all .2s ease-out;
  transition: all .2s ease-out;
}

.main-navigation .btn-toggle i.bar::before,
.main-navigation .btn-toggle i.bar::after {
  content: '';
  width: 2rem;
  height: 3px;
  background: var(--white);
  position: absolute;
  left: 0;
  -webkit-transition: all .2s ease-out;
  -o-transition: all .2s ease-out;
  transition: all .2s ease-out;
}

.main-navigation .btn-toggle i.bar::before {
  top: -10px;
}

.main-navigation .btn-toggle i.bar::after {
  bottom: -10px;
}

.main-navigation .btn-toggle.btn-toggle-expand i.bar {
  background: rgba(0, 0, 0, 0);
}

.main-navigation .btn-toggle.btn-toggle-expand i.bar::before {
  top: 0;
  -webkit-transform: rotateZ(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotateZ(-135deg);
}

.main-navigation .btn-toggle.btn-toggle-expand i.bar::after {
  bottom: 0;
  -webkit-transform: rotateZ(135deg);
  -ms-transform: rotate(135deg);
  transform: rotateZ(135deg);
}

.main-navigation ul {
  text-align: left;
}

.main-navigation ul li ul li a {
  padding: 0.75rem 1.5rem;
  line-height: 1;
}

.main-navigation ul li ul li ul li a {
  padding: 0.75rem 2rem;
  line-height: 1;
  text-transform: initial;
  opacity: 0.75;
}

.main-navigation ul li ul li ul li a:before { content: "- "}

.main-navigation li a {
  display: block;
  padding: .75rem;
  border-bottom: 1px solid rgba(225, 225, 225, .75);
  line-height: 1.25;
}

.flags-sp {
  margin: 2rem 0 0;
}

.flags-sp a {
  display: flex!important;
  align-items: center;
}

.flags-sp a img { margin: 0 1rem 0 0; }



/*--------------------------------------------------------------
## col and Modules
--------------------------------------------------------------*/
/* quotations */
blockquote {
  display: block;
  margin: 0 0 .75rem 0;
  padding: 0;
  font-style: normal;
  quotes: "\201C","\201D";
}

blockquote p:before {
  content: open-quote;
  margin-right: .1rem
}

blockquote p:after {
  content: close-quote;
}

blockquote p {
  color: var(--white);
  font-size: 1.15rem;
}

.quotee {
  font-size: 1em;
  font-style: normal;
  font-weight: 700;
}

address {
  font-style: normal;
}

iframe,
object,
embed {
  max-width: 100%;
}

/* col */
.wp-block-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row;
  flex-flow: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -1.5rem;
  /*gutter*/
}

.wp-block-columns .wp-block-column {
  padding-left: 1.5rem;
  margin-bottom: 1.5rem;
}

.wp-block-column {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

/* without gutter */
.wp-block-columns.no-gutter {
  margin-left: 0;
  /*no-gutter*/
}

.wp-block-columns.no-gutter .wp-block-column {
  padding-left: 0;
  margin-bottom: 0;
}

.wp-block-columns.no-gutter-bottom .wp-block-column {
  margin-bottom: 0;
}

/* center text */
.has-text-align-center {
  text-align: center;
}

/* text right */
.has-text-align-right {
  text-align: right;
}

/* text left */
.text-left {
  text-align: left;
}

/* justify per row */
.align-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.align-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/* vertical alignment */
.is-vertically-aligned-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.is-vertically-aligned-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.is-vertically-aligned-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.is-vertically-aligned-baseline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

/* horizontal alignment */
.h-align-height .module,
.h-align-height .module-box {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  height: 100%;
}

/* base classes for all media - mobile first */
.one-item>.wp-block-column,
.one-of-one>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
}

.two-items>.wp-block-column,
.one-of-two>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
}

.three-items>.wp-block-column,
.one-of-three>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.3333%;
  flex: 0 0 33.3333%;
  /* IE11 < */
  -ms-flex: 0 0 calc(100% / 3);
  flex: 0 0 calc(100% / 3);
}

.four-items>.wp-block-column,
.one-of-four>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
}

.five-items>.wp-block-column,
.one-of-five>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
}

.six-items>.wp-block-column,
.one-of-six>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 16.66666666666667%;
  flex: 0 0 16.66666666666667%;
  /* IE11 < */
  -ms-flex: 0 0 calc(100% / 6);
  flex: 0 0 calc(100% / 6);
}

.two-of-three>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66.6666%;
  flex: 0 0 66.6666%;
  /* IE11 < */
  -ms-flex: 0 0 calc(100% / 3 * 2);
  flex: 0 0 calc(100% / 3 * 2);
}

.three-of-four>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
}

.three-of-five>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 60%;
  flex: 0 0 60%;
}

.five-of-six>.wp-block-column:first-of-type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 83.3333%;
  flex: 0 0 83.3333%;
  /* IE11 < */
  -ms-flex: 0 0 calc(100% / 6 * 5);
  flex: 0 0 calc(100% / 6 * 5);
}

/* Switch 2 column order */
.switcharoo:nth-of-type(1) {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.switcharoo:nth-of-type(2) {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

/* slider */
.hero .message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*justify-content: center;*/
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: var(--b-grey);
  position: relative;
  padding: 4rem;
  z-index: 1;
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.hero .message p {
  font-size: 1.4em;
  line-height: 1.6;
  margin: 0 0 2rem 0;
  color: var(--primary);
}

.hero.main-img .message h1 {
  margin: 0;
}

.hero img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

p a { display: inline; }

.text-block-right,
.text-block-left {
  padding: 2rem 0 0 0;
}

.grey {
  background: var(--b-grey);
}

.white {
  background: var(--white);
}

.wp-block-cover {
  padding: 4rem 0;
  position: relative;
}

.wp-block-cover div[role=img],.wp-block-cover div.wp-block-cover__image-background {
  padding: 0;
  background-position: top left;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  z-index: -1;
  width: 100%;
  max-width: 100%;
  height: 100%;
}
.wp-block-cover.bg-overlay {
  background-color: var(--primary);
  position: relative;
}

.wp-block-cover.bg-overlay::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(244, 171, 28, 0)), color-stop(50%, rgba(244, 171, 28, .5)));
  background-image: -o-linear-gradient(left, rgba(244, 171, 28, 0) 0%, rgba(244, 171, 28, .5) 50%);
  background-image: linear-gradient(90deg, rgba(244, 171, 28, 0) 0%, rgba(244, 171, 28, .5) 50%);
}

.wp-block-cover .module-box {
  display: block;
  width: calc(100vw - 4rem);
  padding: 2rem;
  background: var(--white);
  background: rgba(255, 255, 255, .85);
  border-radius: 3px;
  position: relative;
  z-index: 2;
}

.hexagon {
  text-align: center;
}

.hexagon a {
  display: block;
  padding: 1rem .75rem;
}

.hexagon a:hover {
  background: rgba(0, 0, 0, .015);
  border-radius: 3px;
}

.hexagon h3 {
  margin: .5rem 0 .25rem 0;
}

.hexagon a:hover h3 {
  color: var(--primary);
}

.hexagon a img {
  margin: auto;
  -webkit-transform: scale(0.94);
  -ms-transform: scale(0.94);
  transform: scale(0.94);
  -webkit-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
}

.hexagon a:hover img {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.hexagon p {
  margin: 0 0 .5rem 0;
  line-height: 1.4;
  color: var(--base);
}

.heading-only {
  margin: 0 0 2rem 0;
}

.blog .latest-news h2 {
  font-size: 1.15em
}

.blog .latest-news p {
  font-size: .85em;
}

/* Support & Resources */
.border-top {
  border-top: 1px solid var(--d-grey);
}

.latest-news .outer-link {
  display: block;
  border: 1px solid var(--d-grey);
  border-radius: 4px;
  color: var(--base);
  position: relative;
}

.latest-news .outer-img {
  position: relative;
  overflow: hidden;
}

.latest-news .outer-link img {
  border-radius: 4px 4px 0 0;
  -webkit-transition: -webkit-transform .75s;
  transition: -webkit-transform .75s;
  -o-transition: transform .75s;
  transition: transform .75s;
  transition: transform .75s, -webkit-transform .75s;
  width: 100%;
}

.latest-news .outer-link:hover img {
  -webkit-transition: all .5s ease-out;
  -o-transition: all .5s ease-out;
  transition: all .5s ease-out;
  -webkit-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: scale(1.15)
}

.latest-news .inner-content {
  font-size: 1.15em;
  padding: 1.5rem;
  height: 100%;
}

.latest-news .category {
  display: block;
  background: var(--primary);
  padding: .5rem 1.75rem;
  border-radius: 0 4px;
  position: absolute;
  top: 0;
  right: 0;
  font-size: .75em;
  text-transform: uppercase;
  color: var(--white);
}

.latest-news .read {
  display: block;
  margin: 1.75rem 0 0 0;
  font-size: .9em;
  color: var(--primary);
  text-transform: uppercase;
}

.latest-news .outer-link:hover .read {
  color: var(--primary);
  -webkit-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
}

/* buttons */
.wp-block-button a {
  display: inline-block;
  padding: 1.5rem 2rem;
  background: rgb(62,122,177);
  background: linear-gradient(90deg, rgba(62,122,177,1) 0%, rgba(45,97,255,1) 100%);
  border-radius: 5px;
  font-weight: 400;
  color: var(--white);
  text-align: center;
  text-transform: uppercase;
  -webkit-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
  font-size: 0.75rem;
  letter-spacing: .075rem;
  box-shadow: 0 4px 12px rgba(45,97,255,0.5);
}

.wp-block-button a:hover {
  color: var(--white);
  box-shadow: 0 1px 3px rgb(0 44 85 / 90%);
}

.wp-block-buttons.is-content-justification-center {
  text-align: center;
}

.wp-block-buttons .wp-block-button {
  display: inline-block;
  margin-right: 2rem;
}

.wp-block-buttons .wp-block-button:last-of-type {
  margin: 0;
}

.wp-buttons-two.is-content-justification-center {
  display: flex;
  justify-content: space-between;
  margin: 2rem auto 0;
  width: 100%;
}

.wp-block-buttons.wp-buttons-two .wp-block-button {
  width: 48%;
  margin: 0;
}

.wp-block-buttons.wp-buttons-two .wp-block-button a {
  min-width: 100%;
}


/*table styling*/
.wp-block-table {
  max-width: calc(100vw - 2rem);
  padding: 1rem 0;
}

.wp-block-table table {
  border-collapse: collapse;
  overflow-x: auto;
  display: table;
  /*width: fit-content;*/
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  width: 100%;
}

.wp-block-table table td,
.wp-block-table table th {
  border: 1px solid var(--d-grey);
  padding: 1.5rem 1.75rem;
}

.wp-block-table table thead {
  color: var(--primary);
  background: transparent;
}

.wp-block-table table th {
  text-align: left;
  border-top: none;
  font-weight: 700;
}

.wp-block-table table td {
  /*white-space: nowrap;*/
  border-bottom: none;
  font-size: 0.9em;
  font-weight: 100;
  line-height: 1.3;
}

.wp-block-table table td:first-of-type,
.wp-block-table table th:first-of-type {
  border-left: none;
}

.wp-block-table table td:last-of-type,
.wp-block-table table th:last-of-type {
  border-right: none;
}

.is-style-stripes table {
  font-size: .9em
}

.is-style-stripes table th {
  font-size: 1.2em
}

.is-style-stripes table td:first-child {
  font-size: 1em;
}

.is-style-stripes table td,
.is-style-stripes table th {
  padding: .5rem;
}

.is-style-stripes table tr:nth-child(even) {
  background: var(--b-grey);
}

/* footer */

.fixed-contact-btn {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  z-index: 10;
  display: block;
}

.contact-modal {
  position: fixed;
  bottom: -200%;
  right: 1.5rem;
  z-index: 11;
  display: block;
  background: var(--white);
  border-radius: 5px;
  box-shadow: 0 4px 12px rgb(0 0 0 / 30%);
  padding: 3rem 2rem .5rem 2rem;
  transition: bottom .5s ease;
}

.contact-modal.active {
  bottom: 1.5rem;
  transition: bottom .5s ease;
}

.contact-modal textarea {
  max-height: 5rem;
  overflow: auto;
  padding: 0.5rem .75rem;
}

.contact-modal input:not(input[type="submit"]) {
  padding: 0.5rem .75rem;
  font-size: 1rem;
}

.contact-modal label { font-size: 1.1rem; }

.contact-modal input[type="submit"] {
  padding: 1rem 3rem;
  margin: 0 auto;
}

.contact-modal__close {
  position: absolute;
  right: 0;
  top: 0;
  cursor: pointer;
  display: block;
  padding: 1.75rem 1rem;
}

.contact-modal__close:after,
.contact-modal__close:before {
  content: "";
  height: 1px;
  width: 30px;
  display: flex;
  background: var(--base)
}

.contact-modal__close:after { transform: rotate(45deg); }
.contact-modal__close:before { transform: rotate(-45deg); }

.contact-modal__close:hover:before,
.contact-modal__close:hover:after { background: var(--primary); }

.contact-modal form.invalid .wpcf7-response-output {
  margin: 0 auto .5rem;
  font-size: .85rem;
}


.site-footer {
  background: #3b3b3b;
  color: #ececec;
}

.site-footer a,
.site-footer li a {
  color: #ececec;
}

.site-footer a:hover,
.site-footer li a:hover {
  color: var(--secondary);
}

.site-info {
  padding: 4rem 0 .5rem 0;
}

.site-info .logo {
  position: relative;
  bottom: 1.25rem
}

.site-info .logo img {
  margin: auto;
}

.site-info h2 {
  font-size: 1.2em;
  line-height: 1.3;
  color: var(--white);
  position: relative;
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 0.04rem;
}

.site-info li {
  font-size: .725em;
  line-height: 1.5;
  margin: 0 0 .5rem 0;
  padding: 0 0 .5rem 0;
  border-bottom: 1px solid #626262;
}

.site-info li a:before {
  content: "";
  width: 6px;
  height: 6px;
  border-right: 1px solid;
  border-bottom: 1px solid;
  transform: rotate(-45deg);
  position: relative;
  top: -.15rem;
  display: inline-flex;
  margin: 0 .5rem;
}

.site-info p {
  margin: 0 0 1rem 0;
  line-height: 1.5;
  font-size: .725em;
}

.site-info .menu-social-media-container ul {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.site-info .menu-social-media-container ul li {
  margin: 1.75rem 1.5rem .75rem 0;
}

.site-info .menu-social-media-container img {
  width: 1.15rem;
}

.copyright {
  display: block;
  padding: .25rem 0 .45rem 0;
  width: 100%;
  color: #ececec;
  background-color: #2d2d2d;
  border-top: 1px solid #222222;
  background-image: url('/wp-content/uploads/escheresque_ste.png');
  background-repeat: repeat;
}

.copyright ul,
.copyright p {
  margin: 0;
  padding: 0;
}

.copyright ul li,
.copyright p {
  display: inline-block;
  font-size: .6em;
  line-height: 1.4;
}

.copyright li:not(:last-of-type) {
  border-right: 1px solid #d3d3d3;
  padding: 0 .5rem 0 0;
  margin: 0 .2rem 0 0;
}

.copyright a,
.copyright li a {
  color: #ececec;
}

.copyright a:hover,
.copyright li a:hover {
  color: var(--secondary);
}

.site-info .wp-block-columns {
 align-items: flex-start;
}

.site-info .wp-block-column {
  flex-direction: column;
}

.footer-featured-product__group {
  display: flex;
  margin: 0 0 .5rem 0;
  padding: 0 0 .5rem 0;
  border-bottom: 1px solid #626262;
}

.footer-featured-product__group .wp-block-group__inner-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.footer-featured-product__group p { width: calc(100% - 2rem); margin: 0;}
.footer-featured-product__group .wp-block-image { width: 2rem; }

.footer-featured-product__group .wp-block-image img {
  height: auto;
  width: 2rem;
  margin: 0;
}


/*********** Homepage ***********/
/* --- OWL FIX: hero slider stacking + missing nav --- */
section.slider.owl-carousel {
  display: block !important; /* prevent flex/grid overrides */
  position: relative;        /* anchor nav positioning */
}

section.slider.owl-carousel .owl-stage-outer {
  overflow: hidden;
  position: relative;
}

section.slider.owl-carousel .owl-stage {
  position: relative;
}

section.slider.owl-carousel .owl-item {
  float: left !important;     /* critical: prevents stacking */
  width: 100%;
}

/* Make nav actually visible and clickable */
section.slider.owl-carousel .owl-nav {
  position: absolute;
  inset: 0;
  z-index: 50;
  pointer-events: none; /* allow only buttons to receive clicks */
}

section.slider.owl-carousel .owl-nav [class*="owl-"] {
  pointer-events: auto;
  z-index: 51;
}

/* Ensure arrows sit above slide content */
section.slider.owl-carousel .hero,
section.slider.owl-carousel .hero__cover,
section.slider.owl-carousel .wp-block-cover {
  position: relative;
  z-index: 1;
}
.mv__slider {
  overflow: hidden;
  height: auto;
}

.mv__slider .wp-block-cover {
  padding: 0;
  height: 100%;
}

.mv__slider .hero__cover {
  position: relative;
}


.mv__slider .owl-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.owl-carousel.hp-text-carousel {
  display: flex;
  justify-content: center;
}

.hp-text-carousel .wp-block-group__inner-container,
.hp-text-carousel .owl-stage-outer {
  width: 100%;
}

.hp-text-carousel h2 {
  font-size: 2.75rem;
}

.hp-text-carousel h2:after {
  content: "";
  width: 10px;
  display: block;
  height: 100%;
  background: var(--primary);
  position: absolute;
  top: 0;
  right: 0;
}

.hp-cta-blocks__columns {
  justify-content: space-between;
  margin: 3rem auto 0;
}

.hp-cta-blocks__column {
  background-color: var(--base);
  border-radius: 5px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.5);
  padding: 2rem!important;
  flex: 0 0 100%!important;
margin: 0 auto 2rem!important;flex-wrap: wrap;border: 1px solid var(--secondary);}

.hp-cta-blocks__columns > div:first-of-type {
  text-align: right;
}

.hp-cta-blocks__columns > div:last-of-type {
  flex-direction: row-reverse;
}

.hp-cta-blocks__column figure {
  width: 100%;
  position: relative;
max-width: 300px;margin: auto;}

.hp-cta-blocks__columns > div:first-of-type figure { left: 0; }
.hp-cta-blocks__columns > div:last-of-type figure { left: 0; }

.hp-cta__inner-group {
  width: 100%;
  text-align: center;}

.hp-cta__inner-group h3 {
  color: var(--l-blue);
  margin: 0 0 1.5rem;
}
.hp-cta__inner-group p {
  color: var(--white);
  margin: 0 0 1.5rem;
}

.hp--h2 {
  font-size: 2.75rem;
  margin: 0 auto 3rem;
}

.hp--h2:after{
  content: "";
  width: 10px;
  display: block;
  height: 100%;
  background: var(--primary);
  position: absolute;
  top: 0;
  right: 0;
}

.hp-products__columns .wp-block-column,
.hp-products__columns .sidebar-link__group { margin: 0 auto 1.5rem!important; }

.hp-products__columns .sidebar-link__group figcaption {
  font-size: 1.25rem;
  padding: .75rem;
}




/*********** Secondary Pages ***********/

.secondary-header__cover {
  background: url('/wp-content/uploads/alt-bg-1.jpg');
  background-repeat: no-repeat;
  background-size: cover;
  padding: 0;
  background-position: center;
}

.secondary-header__cover .wp-block-columns {
  display: flex;
}

.secondary-header__cover.alignfull>div:first-of-type {
  padding: 2.5rem;
}

.secondary-header__cover .secondary-header__left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 0 0 100%!important;
}

.secondary-header__cover .secondary-header__right {
  flex: 0 0 100%!important;
}

.wp-block-columns .wp-block-column.secondary-header__left,
.wp-block-columns .wp-block-column.secondary-header__right {
  margin: 0;
}

.secondary-header__h1 {
  line-height: 1;
  font-size: 2.5rem;
  margin: 0 0 .5rem;
  color: var(--white);
  background: rgba(52,73,94,0.75);
  padding: 0.5rem 1.25rem;
}

.secondary-header__p {
  margin: 0;
  font-size: 0.875rem;
  color: var(--white);
  background: rgba(52,73,94,0.75);
  padding: 0.1rem 1.25rem;
}

.who-we-are__columns > div:last-of-type {
  margin: 2rem auto 0;
}

.who-we-are__column {
  flex-direction: column;
  align-items: unset;
}

.about-info__group .wp-block-buttons {
  display: flex;
  justify-content: space-between;
}

.about-info__group .wp-block-buttons .wp-block-button {
  margin: 0 0 1rem;
  width: 48%;
}

.about-info__group .wp-block-buttons .wp-block-button a {
  width: 100%;
}

.who-we-are__group {
  display: flex;
  flex-direction: column;
  background: rgb(183,200,214);
  background: linear-gradient(0deg, rgba(183,200,214,.45) 0%, rgba(255,255,255,1) 100%);
  padding: 2rem;
  border-radius: 5px;
  align-items: unset;
  flex:  0 0 48%!important;
}

.who-we-are__group h3 {
  font-size: 1.15rem;
  margin: 0 0 .5rem;
}

.who-we-are__group p {
  font-size: 1rem;
}

.who-we-are__group p:not(:last-of-type) {
  border-bottom: 1px solid var(--b-grey);
  padding: 0 0 1.5rem;
  margin: 0 0 1.5rem;
}

.about-cta-block__group {
  padding: 2.5rem;
  margin: 2.5rem auto 0;
  background-color: var(--white);
  box-shadow: 0 4px 12px rgba(0,0,0,.2);
  border-radius: 5px;
  background: url('/wp-content/uploads/alt-bg-1.jpg');
  background-repeat: no-repeat;
  background-size: cover;
}

.about-cta-block__group p { margin: 0 auto 1rem; color: var(--primary)}
.about-cta-block__group h2 { font-size: 1.75rem; color: var(--base); }
.about-cta-block__group .button a { background-color: var(--base); }
.about-cta-block__group .button a:hover { background-color: var(--primary); }
.about-cta-block__group h2:before { background: var(--primary); }

.about-cta-block__group h2:after {
  content: "";
  width: 10px;
  display: block;
  height: 100%;
  background: var(--primary);
  position: absolute;
  top: 0;
  right: 0;
}

.about-cta-block__group .wp-block-buttons > div:not(:first-of-type) {
  margin: 1rem auto;
}

.who-we-are__gallery,
.product__columns {
  margin-left: 0!important;
  justify-content: space-between;
}

.product__columns { flex-direction: column-reverse;}

.who-we-are__gallery > div,
.product__columns > div {
  flex: unset!important;
  padding: 0!important;
  width: 100%;
}

.product__columns > div:first-of-type {
  width: 100%;
  border-top: 1px solid var(--d-grey);
  padding-right: 0%!important;
  margin-right: 0%!important;
padding-top: 5%!important;;margin-top: 5%;}

.product__columns > div:last-of-type {
  width: 100%;
}

.product__columns > div {
  flex-direction: column;
}

.product-gallery__group {
  width: 100%;
  overflow: hidden;
}

.owl-carousel.manufacturing-gallery,
.owl-carousel.product-gallery {
  display: flex;
}

.manufacturing-gallery ul,
.product-gallery ul {
  display: flex;
  max-width: 100%;
}

.manufacturing-gallery .owl-stage-outer,
.product-gallery .owl-stage-outer {
  width: 100%;
}

.manufacturing-gallery .owl-item { height: 350px; }
.product-gallery .owl-item { height: 500px; }

.manufacturing-gallery .owl-item li figure,
.product-gallery .owl-item li figure{
  width: 100%!important;
  height: 100%;
  display: flex;
  background: var(--b-grey);
  justify-content: center;
}

.manufacturing-gallery .owl-item li figure img,
.product-gallery .owl-item li figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-gallery .owl-item li figure img {
  object-fit: contain;
box-shadow: none;}

.product-gallery .owl-nav [class*=owl-] {
  width: 3rem;
  height: 3rem;
  padding: 0;
  background: var(--primary);
  border-radius: 1.5rem;
  cursor: pointer;
}

.product-gallery .owl-nav .owl-prev:after,
.product-gallery .owl-nav .owl-next:after {
  width: 1rem;
  height: 1rem;
}

.product-gallery .owl-nav .owl-prev:after { left: 0.2rem; }
.product-gallery .owl-nav .owl-next:after { left: -.2rem; }

.product-gallery .owl-nav [class*=owl-]:hover {
  background: var(--secondary);
}

.product__spec-buttons {
  margin: 2rem auto 4rem;
width: 100%;}

.product__spec-buttons .wp-block-button {
  margin: 0 auto 1rem;
  width: 100%;
}

.product__spec-buttons .wp-block-button a {
  width: 100%;
padding: 1.25rem;}

.sidebar-link__group {
  border-radius: 5px;
  overflow: hidden;
  border: 1px solid var(--secondary);
  margin: 0 auto 2rem;
  box-shadow: 0 2px 8px rgb(62 122 177 / 50%);
  position: relative;
  transition: box-shadow 0.3s ease;
width: 100%;}

.sidebar-link__group figcaption {
  padding: 1rem;
  text-align: center;
  color: var(--white);
  font-family: 'Economica';
  z-index: 1;
  position: relative;
  border-top: 1px solid var(--secondary);
  font-size: 1.3rem;
  margin: 0;
  letter-spacing: .03rem;
  background: rgb(62,122,177);
  background: linear-gradient(90deg, rgba(62,122,177,1) 0%, rgba(45,97,255,1) 100%);
}

.sidebar-link__group:hover {
  box-shadow: 0 1px 3px rgb(62 122 177 / 100%);
}

.sidebar-link__group img {
  transition: transform 0.3s ease;
  z-index: 0;
  position: relative;
width: 100%;height: 100%;object-fit: cover;}

.sidebar-link__group:hover img {
  transform: scale(1.1);
}

.related-products__group {
  margin: 4rem 0 0;
  padding: 2rem 0 0;
}

.related-products__group .wp-block-columns {
  display: flex;
  justify-content: space-between;
  margin: 0;
}

.related-products__group .wp-block-column {
  padding: 0!important;
  width: 48%;
  flex: unset!important;
}

.product-archive__group {
  margin: 1rem 0 0;
  padding: 0;
  border: 0;
}

.product-archive .product__columns > div:first-of-type { width: 100%; }
.product-archive .product__columns > div:last-of-type { width: 100%; }
.product-archive__group .sidebar-link__group { margin: 0; }

.contact-columns {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 4rem 0 0 0!important;}

.contact-columns > div:first-of-type { flex: 0 0 100%; padding: 0!important;}

.contact-columns > div:last-of-type {
  flex: 0 0 100%;
  flex-direction: column;
padding: 0;}

.contact-columns .wpcf7 {
  width: 100%;
}


/* ******* Posts ******* */

.single-post__columns {
  margin: 0!important;
}

.single-post__columns > div:first-of-type {
  padding: 0;
  flex: 0 0 100%!important;
}

.single-post__columns > div:last-of-type {

  flex: 0 0 100%!important;
padding: 0;}

.wp-block-search__inside-wrapper {
  display: flex;
}

.wp-block-search__inside-wrapper input {
  border-radius: 5px 0 0 5px;
height: 55px;}

.wp-block-search__inside-wrapper button {
  padding: 0;
  height: 55px;
  width: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 5px 5px 0;
}

.wp-block-search__inside-wrapper button svg path {
  fill: var(--white);
}

.post-gallery ul {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-template-rows: auto;
  grid-gap: 85px;
  grid-auto-flow: dense;
  height: auto!important;
  margin: 0 auto 6rem;
}

.post-gallery li {
  width: 100%;
  position: relative;
  box-shadow: 0 2px 8px rgba(0,0,0,.2);
}

.post-gallery li figure {
  height: 300px;
  border-radius: 5px;
  overflow: hidden;
}

.post-gallery li figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post-gallery li figcaption {
  position: absolute;
  top: 100%;
  background: var(--white);
  box-shadow: 0 2px 8px rgba(0,0,0,.2);
  padding: .75rem;
  border-radius: 0 0 5px 5px;
  line-height: 1.2;
  font-size: 1rem;
margin: 0;width: 100%;text-align: center;}



/* Slider basics */

.owl-dots,
.owl-nav {
  text-align:center;
  -webkit-tap-highlight-color:transparent
}

.owl-dots {
  position:absolute;
  bottom:1em;
  left:50%;
  transform:translate(-50%,0);
}

.owl-dots .owl-dot {
  display:inline-block;
  zoom:1
}

.owl-nav { top:0 }

.owl-dots .owl-dot span {
  display:block;
  width: 0.75rem;
  height: 0.75rem;
  margin: 0 .15rem;
  background: transparent;
  border: 1px solid var(--white);
  border-radius: 100%;
  -webkit-backface-visibility:visible;
  backface-visibility:visible;
  background-size: 16px 19px;
  transition: opacity .2s ease;
}

.owl-dots .owl-dot.active span,
.owl-dots .owl-dot:hover span {
  background: var(--white);
  border-radius: 100%;

}
.owl-nav [class*=owl-] {
  display: flex;
  cursor: pointer;
  width: 4rem;
  height: 4rem;
  padding: 1rem;
  position:absolute;
  align-items: center;
  justify-content: center;
}

.owl-nav .owl-prev:after,
.owl-nav .owl-next:after {
  content: "";
  display: flex;
  width: 2rem;
  height: 2rem;
  border-right: 2px solid var(--white);
  border-bottom: 2px solid var(--white);
  transform: rotate(135deg);
  position: relative;
}

.owl-nav .owl-next:after {
  transform: rotate(-45deg);
}

.owl-nav .owl-prev {
  top: 50%;
  left: 1%;
  transform:translate(1%,-50%);
}

.owl-nav .owl-next {
  top: 50%;
  right: 1%;
  transform:translate(1%,-50%);
}

.owl-stage .owl-item li { padding: 0; width: 100%;height: 100%;}


/* Main content */
.module {
  margin: 0 0 3.5rem 0;
}

.module a h2 {
  display: block;
  font-size: 1.85em;
  line-height: 1.25;
  color: var(--primary);
}

/* Cookie popup */
.cookie-banner {
  position: fixed;
  display: none;
  width: 100%;
  bottom: 0;
  padding: 1rem 2rem .5rem 2rem;
  background: rgba(0,0,0,0.8);
  color: var(--white);
  z-index: 99;
  left: 0;
  -webkit-box-shadow: 0px 1px 23px 1px rgb(0 0 0 / 36%);
  box-shadow: 0px 1px 23px 1px rgb(0 0 0 / 36%);
  font-size: .8rem;
}

.cookie-banner .wp-block-columns {
  justify-content: space-between;
}

.cookie-banner .wp-block-columns > div:last-of-type {
  justify-content: flex-end;
}

.cookie-banner a {
  /* display: inline; */
  color: var(--white);
  text-decoration: underline;
}

.cookie-banner .wp-block-button a {
  padding: .5rem 1rem;
  text-decoration: none;
  background: var(--primary);
  color: var(--white);
  font-size: .6rem;
}

.cookie-banner .wp-block-button.close a{
  margin-right:  10px;
}

.cookie-banner .wp-block-button.reject a{
  margin-left:  10px;
  margin-right:  0;
}

.cookie-banner .wp-block-button a:hover {
  opacity: .8;
}

.cookie-banner p {
  color: var(--white);
  font-size: .85em;
}

.cookie-banner p {
  margin: 0;
}

.cookie-banner .close {
  color: var(--base);
}

/* tablet (medium) screens */
@media (min-width: 768px) {
  html {
    font-size: 18px;
  }

  .narrow>div:first-of-type,
  .alignwide>div:first-of-type,
  .alignfull>div:first-of-type {
    padding: 4rem 2rem;
  }

  .t-one-item>.wp-block-column {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .t-two-items>.wp-block-column,
  .t-one-of-two>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .t-three-items>.wp-block-column,
  .t-one-of-three>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.3333%;
    flex: 0 0 33.3333%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 3);
    flex: 0 0 calc(100% / 3);
  }

  .t-four-items>.wp-block-column,
  .t-one-of-four>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
  }

  .t-five-items>.wp-block-column,
  .t-one-of-five>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
  }

  .t-six-items>.wp-block-column,
  .t-one-of-six>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.66666666666667%;
    flex: 0 0 16.66666666666667%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 6);
    flex: 0 0 calc(100% / 6);
  }

  .t-two-of-three>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.6666%;
    flex: 0 0 66.6666%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 3 * 2);
    flex: 0 0 calc(100% / 3 * 2);
  }

  .t-three-of-four>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
  }

  .t-three-of-five>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60%;
    flex: 0 0 60%;
  }

  .t-five-of-six>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.3333%;
    flex: 0 0 83.3333%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 6 * 5);
    flex: 0 0 calc(100% / 6 * 5);
  }

  .hero .switcharoo:nth-of-type(1) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  .hero .switcharoo:nth-of-type(2) {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .t-align-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }

  .t-align-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .t-has-text-align-center {
    text-align: center;
  }

  .t-has-text-align-right {
    text-align: right;
  }

  .t-has-text-align-left {
    text-align: left;
  }

  .site-branding {
    margin: 0;
    align-items: center;
    height: 95px;
    padding: 1rem 2.5rem;
  }

  .site-branding img {
    width: auto;
    height: auto;
    margin: 0;
  }

  .main-navigation .btn-toggle {
    padding: 2.5rem 1.5rem;
    width: 95px;
    height: 95px;
  }

  .main-navigation .btn-toggle i.bar,
  .main-navigation .btn-toggle i.bar::before,
  .main-navigation .btn-toggle i.bar::after {
    width: 2.25rem;
  }

  .main-navigation .btn-toggle i.bar::before {
    top: -12px;
  }

  .main-navigation .btn-toggle i.bar::after {
    bottom: -12px;
  }

  .site-info .logo img {
    margin: 0;
  }

  .site-info .menu-social-media-container ul {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }

  .hero img {
    height: 100vh;
  }

  .hero .wp-block-button a {
    padding: 1.25rem .5rem;
  }

  .slider .owl-dots,
  .slider .owl-nav {
    text-align: center;
    -webkit-tap-highlight-color: transparent
  }

  .slider .owl-dots {
    position: absolute;
    bottom: 1em;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
  }

  .slider .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1
  }

  .slider .owl-nav {
    top: 0
  }

  .slider .owl-dots .owl-dot span {
    display: block;
    width: 1rem;
    height: 1rem;
    margin: 0 .2rem;
    background: var(--white);
    border: 1px solid var(--d-grey);
    border-radius: 100%;
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    background-size: 16px 19px;
    -webkit-transition: opacity .2s ease;
    -o-transition: opacity .2s ease;
    transition: opacity .2s ease;
  }

  .slider .owl-dots .owl-dot.active span,
  .slider .owl-dots .owl-dot:hover span {
    background: var(--d-grey);
    border-radius: 100%;
  }

  .slider .owl-nav [class*=owl-] {
    display: inline-block;
    cursor: pointer;
    width: 42px;
    height: 82px;
    background-size: 11px 20px;
    background-size: 42px 82px;
  }

  .slider .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    left: 95%;
    -webkit-transform: translate(-98%, -50%);
    -ms-transform: translate(-98%, -50%);
    transform: translate(-95%, -50%);}

  .slider .owl-nav .owl-prev {
    position: absolute;
    top: 50%;
    left: 2%;
    -webkit-transform: translate(-2%, -50%);
    -ms-transform: translate(-2%, -50%);
    transform: translate(-2%, -50%)
  }

  .slider .owl-nav [class*=owl-]:hover {
    opacity: .8
  }

  .wp-block-cover {
    padding: 4rem 0;
  }

  .wp-block-cover .module-box {
    padding: 3rem;
  }

  .wp-block-cover {
    padding: 4rem 0;
    background-position: top left;
    background-size: cover;
  }

  .wp-block-cover .module-box {
    display: block;
    width: 100%;
    background: var(--white);
  }

  .list-three-cols {
    -moz-columns: 2;
    -webkit-columns: 2;
    columns: 2;
    -moz-column-gap: 1rem;
    -webkit-column-gap: 1rem;
    column-gap: 1rem;
  }

  .list-three-cols li {
    page-break-inside: avoid;
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    break-inside: avoid;
  }

  .site-info {
    padding: 2rem 0 .5rem 0;
  }

  .copyright {
    padding: .25rem 0 .45rem 0;
  }

  .who-we-are__columns > div:last-of-type {
    margin: 0;
  }

  .post-gallery ul {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 100px 25px;
    margin: 0 auto 6rem;
  }

}



@media (min-width: 1027px) {


  /*********** Homepage ***********/

  .hp-cta-blocks__columns {
    justify-content: space-between;
    margin: 3rem auto 0;
    margin-left: 0!important;
  flex-wrap: nowrap;}

  .hp-cta-blocks__column {
    flex: 0 0 48%!important;
    margin: 0!important;
    flex-wrap: nowrap;
  }

  .hp-cta-blocks__columns > div:first-of-type .hp-cta__inner-group {
    text-align: right;
  }

  .hp-cta-blocks__columns > div:last-of-type {
    flex-direction: row-reverse;
  }

  .hp-cta-blocks__column figure {
    width: 300px;
    position: relative;
    margin: 0;
  }

  .hp-cta-blocks__columns > div:first-of-type figure { left: -1rem; }
  .hp-cta-blocks__columns > div:last-of-type figure { left: 2.5rem; }

  .hp-cta__inner-group {
    width: calc(100% - 200px);
    text-align: left;
  }


  /*********** Secondary Pages ***********/


  .secondary-header__cover .secondary-header__left {
    flex: 0 0 100%!important;
  }

  .secondary-header__cover .secondary-header__right {
    flex: 0 0 40%!important;
    margin: 0 0 0 auto !important;
  }

  .secondary-header__cover .secondary-header__right .ah-breadcrumb {
    margin: 0 0 0 auto;
  }

  .secondary-header__h1 { font-size: 2.75rem; }

  .who-we-are__column {
    flex-direction: column;
    align-items: unset;
  }

  .about-info__group .wp-block-buttons {
    display: flex;
    justify-content: space-between;
  }

  .about-info__group .wp-block-buttons .wp-block-button {
    margin: 0 0 1rem;
    width: 48%;
  }

  .about-info__group .wp-block-buttons .wp-block-button a {
    width: 100%;
  }

  .who-we-are__group {
    display: flex;
    flex-direction: column;
    background: rgb(183,200,214);
    background: linear-gradient(0deg, rgba(183,200,214,.45) 0%, rgba(255,255,255,1) 100%);
    padding: 2rem;
    border-radius: 0 0 5px 5px;
    align-items: unset;
    flex:  0 0 48%!important;
  }

  .who-we-are__group h3 {
    font-size: 1.15rem;
    margin: 0 0 .5rem;
  }

  .who-we-are__group p {
    font-size: .75rem;
  }

  .who-we-are__group p:not(:last-of-type) {
    border-bottom: 1px solid var(--b-grey);
    padding: 0 0 1.5rem;
    margin: 0 0 1.5rem;
  }

  .about-cta-block__group {
    padding: 2.5rem;
    margin: 2.5rem auto 0;
    background-color: var(--white);
    box-shadow: 0 4px 12px rgba(0,0,0,.2);
    border-radius: 5px;
    background: url('/wp-content/uploads/alt-bg-1.jpg');
    background-repeat: no-repeat;
    background-size: cover;
  }

  .about-cta-block__group p { margin: 0 auto 1rem; color: var(--primary)}
  .about-cta-block__group .button a { background-color: var(--base); }
  .about-cta-block__group .button a:hover { background-color: var(--primary); }

  .about-cta-block__group .wp-block-buttons > div:not(:first-of-type) {
    margin: 0 0 1.5rem;
  }

  .who-we-are__gallery,
  .product__columns {
    /* flex-wrap: nowrap; */
    /* overflow: hidden; */
    margin-left: 0!important;
    justify-content: space-between;
  flex-direction: row;}

  .who-we-are__gallery > div,
  .product__columns > div {
    flex: unset!important;
    padding: 0!important;
    width: 48%;
  }

  .product__columns > div:first-of-type {
    width: 34%;
    border-right: 1px solid var(--d-grey);
    padding-right: 5%!important;
    margin-right: 5%!important;
  border-top: none;padding-top: 0!important;margin-top: 0;}

  .product__columns > div:last-of-type {
    width: 61%;
  }

  .product__columns > div {
    flex-direction: column;
  }

  .product-gallery__group {
    width: 100%;
    overflow: hidden;
  }

  .owl-carousel.manufacturing-gallery,
  .owl-carousel.product-gallery {
    display: flex;
  }

  .manufacturing-gallery ul,
  .product-gallery ul {
    display: flex;
    max-width: 100%;
  }

  .manufacturing-gallery .owl-stage-outer,
  .product-gallery .owl-stage-outer {
    width: 100%;
  }

  .manufacturing-gallery .owl-item { height: 600px; }
  .product-gallery .owl-item { height: 500px; }

  .manufacturing-gallery .owl-item li figure,
  .product-gallery .owl-item li figure{
    width: 100%!important;
    height: 100%;
    display: flex;
    background: var(--b-grey);
    justify-content: center;
  }

  .manufacturing-gallery .owl-item li figure img,
  .product-gallery .owl-item li figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .product-gallery .owl-item li figure img {
    object-fit: contain;
  box-shadow: none;}

  .product-gallery .owl-nav [class*=owl-] {
    width: 3rem;
    height: 3rem;
    padding: 0;
    background: var(--primary);
    border-radius: 1.5rem;
    cursor: pointer;
  }

  .product-gallery .owl-nav .owl-prev:after,
  .product-gallery .owl-nav .owl-next:after {
    width: 1rem;
    height: 1rem;
  }

  .product-gallery .owl-nav .owl-prev:after { left: 0.2rem; }
  .product-gallery .owl-nav .owl-next:after { left: -.2rem; }

  .product-gallery .owl-nav [class*=owl-]:hover {
    background: var(--secondary);
  }

  .product__spec-buttons {
    margin: 3rem 0;
  width: 100%;}

  .product__spec-buttons .wp-block-button {
    margin: 0 auto 1rem;
    width: 100%;
  }

  .product__spec-buttons .wp-block-button a {
    width: 100%;
  padding: 1.25rem;}


  .sidebar-link__group figcaption {
    padding: 0.5rem;
    font-family: 'Economica';
  font-size: .9rem;}

  .sidebar-link__group img {
    transition: transform 0.3s ease;
    z-index: 0;
    position: relative;
  }

  .sidebar-link__group:hover img {
    transform: scale(1.1);
  }

  .related-products__group {
    margin: 4rem 0 0;
    padding: 2rem 0 0;
    border-top: 1px solid var(--d-grey);
  }

  .related-products__group .wp-block-columns {
    display: flex;
    justify-content: space-between;
    margin: 0;
  }

  .related-products__group .wp-block-column {
    padding: 0!important;
    width: 24%;
    flex: unset!important;
  }

  .product-archive__group {
    margin: 1rem 0 0;
    padding: 0;
    border: 0;
  }

  .product-archive .product__columns > div:first-of-type { width: 25%; }
  .product-archive .product__columns > div:last-of-type { width: 70%; }
  .product-archive__group .sidebar-link__group { margin: 0; }

  .contact-columns {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 4rem 0 0 0!important;}

  .contact-columns > div:first-of-type { flex: 0 0 65%; padding: 0 2.5rem!important;}

  .contact-columns > div:last-of-type {
    flex: 0 0 35%;
    flex-direction: column;
  }

  .contact-columns .wpcf7 {
    width: 100%;
  }









}





/* desktop */
@media (min-width: 1366px) {
  html {
    font-size: 20px;
  }

  h1 {
    font-size: 3.25em;
  }

  h2 {
    font-size: 2em;
  }

  .narrow>div:first-of-type,
  .alignwide>div:first-of-type,
  .alignfull>div:first-of-type {
    padding: 5rem 2.5rem;
  }

  .site-header .alignfull>div:first-of-type {
    padding: 0 2.5rem;
  }

  .top-nav + .alignfull .wp-block-group__inner-container { padding: .75rem 2.5rem!important; }

  .wp-block-columns {
    margin-left: -2.5rem;
  }

  .wp-block-columns .wp-block-column {
    padding-left: 2.5rem;
    margin-bottom: 2.5rem;
  }

  /* slim gutter */
  .wp-block-columns.slim-gutter {
    margin-left: -.5rem;
  }

  .wp-block-columns.slim-gutter .wp-block-column {
    padding-left: .5rem;
    margin-bottom: .5rem;
  }

  .d-one-item>.wp-block-column {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .d-two-items>.wp-block-column,
  .d-one-of-two>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .d-three-items>.wp-block-column,
  .d-one-of-three>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.3333%;
    flex: 0 0 33.3333%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 3);
    flex: 0 0 calc(100% / 3);
  }

  .d-four-items>.wp-block-column,
  .d-one-of-four>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
  }

  .d-five-items>.wp-block-column,
  .d-one-of-five>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
  }

  .d-six-items>.wp-block-column,
  .d-one-of-six>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.66666666666667%;
    flex: 0 0 16.66666666666667%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 6);
    flex: 0 0 calc(100% / 6);
  }

  .d-two-of-three>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.6666%;
    flex: 0 0 66.6666%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 3 * 2);
    flex: 0 0 calc(100% / 3 * 2);
  }

  .d-three-of-four>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
  }

  .d-three-of-five>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60%;
    flex: 0 0 60%;
  }

  .d-five-of-six>.wp-block-column:first-of-type {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.3333%;
    flex: 0 0 83.3333%;
    /* IE11 < */
    -ms-flex: 0 0 calc(100% / 6 * 5);
    flex: 0 0 calc(100% / 6 * 5);
  }

  /* Switch 2 column order */
  .switcharoo:nth-of-type(1) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  .switcharoo:nth-of-type(2) {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .d-align-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }

  .d-align-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .d-has-text-align-center {
    text-align: center;
  }

  .d-has-text-align-right {
    text-align: right;
  }

  .d-has-text-align-left {
    text-align: left;
  }

  .top-nav {
    display: block;
    width: 100%;
    margin: 0;
    background: var(--white);
    border-bottom: 1px solid var(--d-grey);
    font-size: .85em;
    padding: 0;
  }

  .site-header .one-item > .wp-block-column {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  align-items: center;
    display: flex;
    justify-content: space-between;
  }

  .site-header .one-item > div:last-of-type {  justify-content: flex-end;width: 100%;}

  .site-branding {
    margin: 0;
    display: inline-block;
    vertical-align: middle;
  height: auto;padding: 0;}

  .site-branding img {
    width: auto;
  max-width: 14rem;}

  .btn-toggle,
  .btn-toggle2 {
    display: none;
  }

  .btn-content {
    display: inline !important;
  }

  .main-navigation {
    position: relative;
    z-index: 2;
  }

  .main-navigation .btn-content {
    background: transparent;
    padding: 0;
  }

  #primary-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: space-between;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -ms-flex-line-pack: center;
    align-content: center;
    margin: 0;
    width: 100%;
  }

  #primary-menu li {
    font-size: .9rem;
    margin: 0;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    position: relative;
  }

  #primary-menu li a {
    display: block;
    margin: 0;
    padding: 1rem 1.25rem;
    white-space: nowrap;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    color: var(--base);
    font-size: .875em;
  letter-spacing: .05rem;border-bottom: 0;}

  #primary-menu li:first-child a {
    margin-left: 0;
  }

  #primary-menu li:last-child a {
    margin-right: 0;
  }

  #primary-menu li a:hover {
    color: var(--primary);
  }

  #primary-menu .current-menu-parent a,
  #primary-menu .current_page_item a {
    color: var(--primary);
  }

  /* sub menu drop-down */
  #primary-menu .menu-item-has-children > a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 1px solid var(--base);
    border-bottom: 1px solid var(--base);
    transform: rotate(45deg);
    position: relative;
    top: -.25rem;
    display: inline-flex;
    margin: 0 0 0 0.5rem;
  }

  #primary-menu .menu-item-has-children:hover > a {
    background-color: var(--primary);
    color: var(--white);
    border-radius: 5px 5px 0 0;
  }

  #primary-menu .menu-item-has-children:hover > a:after {
    border-color: var(--white);
  }

  #primary-menu .sub-menu {
    position: absolute;
    display: none;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    width: 100%;
  }

  #primary-menu li .sub-menu li { width: 100%; }

  #primary-menu li:hover .sub-menu {
    display: block;
  }

  #primary-menu li .sub-menu li a {
    margin: 0;
    padding: .75rem 1.25rem;
    background: var(--white);
    display: block;
    color: var(--base);
    border-radius: 0;
    text-align: left;
    white-space: normal;
    text-transform: capitalize;
    line-height: 1.4;
    width: 100%;
    opacity: 1;
  }

  #primary-menu li .sub-menu li a:before { content: none; }

  #primary-menu li .sub-menu li:not(:last-of-type) a {
    border-bottom: 1px solid var(--b-grey);
  }

  #primary-menu li .sub-menu li.current-menu-item a,
  #primary-menu li .sub-menu li a:hover,
  #primary-menu li .sub-menu li:last-of-type a:hover {
    background: var(--b-grey);
    color: var(--primary);
  }

  #primary-menu .sub-menu li .sub-menu {
    left: 100%;
    top: 0;
    display: none;
  }

  #primary-menu .sub-menu li:hover .sub-menu {
    display: block;
  }

  #primary-menu .sub-menu li:hover > a {
    background-color: var(--primary);
    color: var(--white);
    border-radius: 0;
  }

   #primary-menu .sub-menu .menu-item-has-children > a:after {
    transform: rotate(-45deg);
    position: absolute;
    top: calc(50% - 4px);
    right: 1rem;
    margin: 0;
  }

  #primary-menu .sub-menu li:hover > a:after {
    border-color: var(--primary);
  }

  .flags-sp { display: none; }

  .site-info .wp-block-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /* -webkit-box-pack: end; */
    -ms-flex-pack: end;
    /* justify-content: flex-end; */
  }

  .hero figure {
    max-height: 750px;
    overflow: hidden;
  }

  .hero img {
    height: auto;
  }

  .hero .wp-block-button a,
  .wp-block-button a {
    display: inline-block;
    padding: 1.25rem 4rem;
  }

  .text-block-right {
    padding: 0 0 0 5rem;
  }

  .text-block-left {
    padding: 0 5rem 0 0;
  }

  .wp-block-cover.cyan-overlay {
    background-size: 60%;
  }

  .wp-block-cover.cyan-overlay::after {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(14, 110, 128, 0)), color-stop(60%, rgba(14, 110, 128, 1)));
    background-image: -o-linear-gradient(left, rgba(14, 110, 128, 0) 0%, rgba(14, 110, 128, 1) 60%);
    background-image: linear-gradient(90deg, rgba(14, 110, 128, 0) 0%, rgba(14, 110, 128, 1) 60%);
  }

  .list-three-cols {
    -moz-columns: 3;
    -webkit-columns: 3;
    columns: 3;
    -moz-column-gap: 4rem;
    -webkit-column-gap: 4rem;
    column-gap: 4rem;
  }

  .latest-news .outer-link {
    display: -ms-grid;
    display: grid;
    grid-auto-rows: 1fr;
    height: 100%;
    /* equal height columns */
  }

  .latest-news .read {
    position: absolute;
    bottom: 1.75rem;
  }

  figcaption {
    font-size: 0.75rem;
  }

  .site-info {
    padding: 4rem 0 .5rem 0;
  }

  .site-info .logo {
    position: relative;
    bottom: 1.25rem
  }

  .site-info .logo img {
    margin: auto;
  }

  .site-info h2 {
    font-size: 1.2em;
    line-height: 1.3;
    color: var(--white);
    position: relative;
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: 0.04rem;
  }

  .site-info li {
    font-size: .725em;
    line-height: 1.5;
    margin: 0 0 .5rem 0;
    padding: 0 0 .5rem 0;
    border-bottom: 1px solid #626262;
  }

  .site-info li a:before {
    content: "";
    width: 6px;
    height: 6px;
    border-right: 1px solid;
    border-bottom: 1px solid;
    transform: rotate(-45deg);
    position: relative;
    top: -.15rem;
    display: inline-flex;
    margin: 0 .5rem;
  }

  .site-info p {
    margin: 0 0 1rem 0;
    line-height: 1.5;
    font-size: .725em;
  }

  .site-info .menu-social-media-container ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .site-info .menu-social-media-container ul li {
    margin: 1.75rem 1.5rem .75rem 0;
  }

  .site-info .menu-social-media-container img {
    width: 1.15rem;
  }

  .footer-featured-product__group p { margin: 0;}

  .site-info .wp-block-columns > div:last-of-type {
    flex: 0 0 24%;
  }

  .site-info .wp-block-columns > div:not(:last-of-type) {
    flex: 0 0 calc((100% - 24%) / 2);
  }

  /* ******* Posts ******* */

  .single-post__columns {
    margin: 0!important;
  }

  .single-post__columns > div:first-of-type {
    padding: 0 3rem 0 0;
    flex: 0 0 72%!important;
  }

  .single-post__columns > div:last-of-type {
    border-left: 1px solid var(--d-grey);
    flex: 0 0 28%!important;
  padding-left: 2.5rem;}

  .wp-block-search__inside-wrapper {
    display: flex;
  }

  .wp-block-search__inside-wrapper input {
    border-radius: 5px 0 0 5px;
  }

  .wp-block-search__inside-wrapper button {
    padding: 0;
    height: 55px;
    width: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 5px 5px 0;
  }

  .post-gallery ul {
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 25px;
    margin: 0 auto 2rem;
  }

  .post-gallery li {
    width: 100%;
    position: relative;
    box-shadow: 0 2px 8px rgba(0,0,0,.2);
  }

  .post-gallery li figure {
    height: 300px;
    border-radius: 5px;
    overflow: hidden;
  }

  .post-gallery li figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .post-gallery li figcaption {
    position: absolute;
    top: 100%;
    background: var(--white);
    box-shadow: 0 2px 8px rgba(0,0,0,.2);
    padding: .75rem;
    border-radius: 0 0 5px 5px;
    line-height: 1.2;
    font-size: .75rem;
    margin: 0;
  }


}
