:root {
  --blue: #003e6b;
  --dark-grey: #2d2d2d;
  --grey: #bbb;
  --light-grey: #e2e2e2;
  --orange: #ff8400;
}

body {
  background-color: var(--dark-grey);
  min-inline-size: 960px;
  font-family: Roboto, Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 300;
  color: white;
}
h1,
h2,
h3,
h4,
fieldset legend {
  font-weight: 400;
}
strong {
  font-weight: 700;
}
a {
  text-decoration: none;
  color: white;
}
a.cta,
.node-readmore a,
.view-features .field--type-link a,
.field--name-field-link a,
.field--name-field-product-category-link a {
  display: inline-block;
  background-color: var(--blue);
  padding: 6px 24px 4px 24px;
  min-inline-size: 112px;
  font-size: 0.875em;
  font-weight: 400;
  text-align: center;
  text-transform: uppercase;
  color: white !important;
}
body.front a.cta,
a.cta:hover,
body.front .node-readmore a,
.node-readmore a:hover,
body.front .view-features .field--type-link a,
.view-features .field--type-link a:hover,
body.front .field--type-link a,
.field--type-link a:hover,
body.front .field--name-field-product-category-link a,
.field--name-field-product-category-link a:hover {
  background-color: var(--orange);
}
a.cta span.ext,
a.cta svg.ext,
.node-readmore a span.ext,
.node-readmore a svg.ext,
.view-features .field--name-field-link a span.ext,
.view-features .field--name-field-link a svg.ext,
.field--name-field-link a span.ext,
.field--name-field-link a svg.ext,
.field--name-field-product-category-link a span.ext,
.field--name-field-product-category-link a svg.ext {
  display: none;
}
.field--label-above {
  margin-block-start: 24px;
}
.field--label-inline *,
.field--name-field-quantity-pricing li *,
.eps-product-more-information * {
  display: inline;
}
.field--label-inline .field__label,
.field--name-field-quantity-pricing .field__label,
.eps-product-more-information .field__label,
.product--view-mode-default .field--name-quantity label {
  font-weight: 400;
}
.product--view-mode-default .field--label-inline .field__label,
.product--view-mode-default .field--name-quantity label,
.product--view-mode-default .field--name-field-quantity-pricing .field__label,
.product--view-mode-default .eps-product-more-information .field__label {
  display: inline-block;
  min-inline-size: 12em;
}
.field--label-inline .field__label:after,
.product--view-mode-default .field--name-field-quantity-pricing .field__label:after,
.eps-product-more-information .field__label:after {
  content: ':';
}
.form-item,
.form-actions {
  margin: 0 0 16px 0;
}
.product--view-mode-default .field--name-quantity .form-item {
  margin-block-end: 4px;
}
label {
  display: block;
  margin-block-end: 8px;
}
select,
input.form-text,
input.form-email,
input.form-tel,
input.form-search,
input.form-submit,
textarea {
  margin: 0;
  border: none;
  background-color: var(--light-grey);
  padding: 13px 16px 11px 16px;
  max-inline-size: 560px;
  font-family: Roboto, Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.25;
  color: var(--dark-grey);
}
input.form-number {
  border: 1px solid var(--grey);
}
textarea {
  padding: 16px;
}
#header input.form-text,
#header select.form-select {
  padding: 9px 12px 7px 12px;
}
#header input.form-text {
  background-color: white;
}
#header input.form-text.error,
#content .block-product-search-form input.form-text.error {
  border-width: 1px;
  padding: 12px 15px 10px 15px;
}
#header input.form-text.error {
  padding: 8px 11px 6px 11px;
}
input.form-submit {
  margin-inline-end: 1em;
  border: none;
  background-color: var(--blue);
  background-image: none;
  padding: 8px 16px;
  min-inline-size: 140px;
  font-weight: 400;
  text-align: start;
  color: white;
  cursor: pointer;
}
input.form-submit:hover {
  background-color: var(--orange);
}
form .g-recaptcha {
  margin: 16px 0;
}
#superheader {
  padding: 0 20px;
}
#superheader:after {
  content: '.';
  display: block;
  block-size: 0;
  clear: both;
  visibility: hidden;
}
#superheader .block,
#superheader nav {
  padding: 12px 0.5em;
  float: right;
}
#superheader nav {
  margin-inline-start: -0.25em;
  padding-inline-start: 0;
}
#superheader .block-cart {
  margin: 0 -20px 0 2em;
  background-color: white;
  padding-inline: 2em;
  color: var(--dark-grey);
}
#superheader .block *,
#superheader nav * {
  display: inline;
}
#superheader .block-cart a {
  display: inline-block;
  position: relative;
  inset-block-start: -2px;
  color: var(--dark-grey);
}
#superheader .block-cart .cart-block--summary__icon img {
  display: none;
}
#superheader .block-cart .cart-block--summary__icon:before {
  content: '\f07a';
  margin-inline-end: 0.25em;
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
/* Hiding "Register" for authenticated users is handled by "Menu Item Role
   Access", but it still appears for user 1, and that messes up the mobile
   layout. */
body.user-logged-in #superheader nav li.menu-item--register {
  display: none;
}
#superheader nav li:before {
  margin: 0 0.5em;
  content: '|';
}
#superheader nav a {
  font-weight: 400;
}
#header {
  background-color: var(--light-grey);
  padding: 24px 20px;
  color: var(--dark-grey);
}
#header:after {
  content: '.';
  display: block;
  block-size: 0;
  clear: both;
  visibility: hidden;
}
#header a {
  color: var(--blue);
}
#header .block,
#header nav {
  padding: 0 20px;
}
#header .block-eps-branding {
  inline-size: 200px;
  float: left;
}
#header .logo {
  display: block;
}
#header .logo img {
  display: block;
  inline-size: 100%;
  block-size: auto;
}
#header .block-product-search-form-global,
#main .block-product-search-form {
  position: relative;
}
#header .block-product-search-form-global {
  float: right;
}
.block-product-search-form-global label,
.block-product-search-form label {
  display: none;
}
.block-product-search-form-global .form-item,
.block-product-search-form .form-item {
  display: inline-block;
  margin-block-end: 0;
}
.block-product-search-form-global .form-item-supplier,
.block-product-search-form .form-item-supplier {
  margin-inline-end: -0.25em;
}
.block-product-search-form-global .form-select,
.block-product-search-form .form-select {
  display: block;
  box-sizing: border-box;
  margin: 0;
  box-shadow: none;
  border: none;
  border-radius: 0;
  background: url(../img/select-icon.png) center right 8px / 16px 10px no-repeat scroll padding-box padding-box var(--orange);
  padding-inline-end: 2em !important;
  inline-size: 100%;
  max-inline-size: 100%;
  line-height: 1.25;
  color: white;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
}
.block-product-search-form-global .form-select:-ms-expand,
.block-product-search-form .form-select:-ms-expand {
  display: none;
}
.block-product-search-form-global .form-select:focus,
.block-product-search-form .form-select:focus {
  outline: none;
}
.block-product-search-form-global .form-actions {
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: 1px;
  margin: 0;
  line-height: 1;
}
.block-product-search-form .form-actions {
  margin-block-start: 12px;
}
.block-product-search-form-global .form-actions:before {
  content: '\f002';
  display: block;
  margin: 8px 32px 0 0;
  font-family: 'Font Awesome 5 Pro';
  font-size: 1.25em;
  font-weight: 600;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  color: var(--blue);
  -webkit-font-smoothing: antialiased;
}
.block-product-search-form-global input.form-submit {
  position: absolute;
  inset-inline-end: 20px;
  inset-block-start: 0;
  margin: 0;
  border: none;
  padding: 0;
  inline-size: 40px;
  min-inline-size: 0;
  block-size: 40px;
  cursor: pointer;
  text-indent: 80px;
}
.block-product-search-form-global input.form-submit,
.block-product-search-form-global input.form-submit:hover {
  background-color: transparent;
}
#header nav {
  clear: right;
  float: right;
  padding-block-start: 32px;
  font-size: 1.25em;
  font-weight: 400;
  text-align: end;
  text-transform: uppercase;
}
#header nav ul {
  margin-inline-end: -8px;
}
#header nav ul ul {
  display: none;
}
#header nav li {
  display: inline;
  margin-inline-start: 0.5em;
}
#header nav a {
  display: inline-block;
  padding: 8px 8px 6px 8px;
}
body.front #header nav .menu-item--home a,
#header nav .menu-item--active-trail a,
#header nav a:hover {
  background-color: var(--orange);
  color: white;
}
#main {
  box-sizing: border-box;
  background-color: white;
  line-height: calc(5 / 3);
  color: var(--dark-grey);
}
#main a {
  color: var(--blue);
}
#main a:hover {
  color: var(--orange);
}
#main .main-content {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 24px 20px 48px 20px;
  max-inline-size: 1200px;
}
body.front #main .main-content {
  max-inline-size: none;
}
#main .main-content:after {
  content: '.';
  display: block;
  block-size: 0;
  clear: both;
  visibility: hidden;
}
#supercontent .block {
  padding: 0 20px;
}
#supercontent .block-eps-breadcrumbs ol {
  padding-inline-start: 0;
}
#supercontent  .block-eps-breadcrumbs ol > li {
  display: inline;
  list-style-type: none;
  font-size: 0.875em;
}
#supercontent .block-eps-breadcrumbs ol > li + li:before {
  content: '|';
  margin: 0 0.25em;
}
#block-eps-local-tasks {
  padding: 0 20px;
  text-align: end;
}
#content {
  box-sizing: border-box;
  padding: 0 20px;
}
body.sidebar-first #content {
  inline-size: calc((100% / 3) * 2);
  float: left;
}
#main table {
  margin-block-end: 24px;
  inline-size: 100%;
  border-collapse: collapse;
}
#main table th,
#main table td {
  padding: 3px 5px;
  font-size: 0.875em;
  font-weight: 300;
}
#main table th {
  background-color: var(--light-grey);
  font-size: 1em;
  font-weight: 400;
}
#main table tbody tr:nth-of-type(even) {
  background-color: var(--light-grey);
}
.node__meta {
  margin-block-end: 16px;
  font-size: 0.875em;
}
.node__meta * {
  display: inline;
}
h2 + .node__meta {
  margin-block-start: -12px;
}
#main .field--name-field-image {
  margin-block-end: 24px;
  background-color: var(--light-grey);
}
.node--type-story .field--name-field-image {
  max-inline-size: 100%;
}
.node--type-supplier .field--name-field-image,
.product--type-default .field--name-field-image {
  margin-block-end: 12px;
  background-color: transparent;
}
.node--type-supplier.node--view-mode-full .field--name-field-image {
  margin: 0 0 24px 20px;
  float: right;
}
.field--name-field-image img {
  display: block;
  margin: 0 auto;
}
.node--type-story .field--name-field-image img {
  max-inline-size: 100%;
  block-size: auto;
}
.node--type-supplier .teaser-image img,
.node--type-supplier .field--name-field-image img {
  border: 1px solid var(--light-grey);
}
.views-row + .views-row .node--type-story.node--view-mode-teaser,
.node--view-mode-full .field--name-field-product-category .paragraph {
  margin-block-start: 32px;
  border-block-start: 1px solid var(--light-grey);
  padding-block-start: 32px;
}
#main .node--type-story.node--view-mode-teaser ul.links {
  margin-block-start: 16px;
}
.view-suppliers,
.block-views-block-products-block-front .view-products,
.block-views-block-products-block-featured .view-products {
  margin: 0 -20px;
}
.block-views-block-products-block-front .view-products:after,
.block-views-block-products-block-featured .view-products:after {
  content: '.';
  display: block;
  block-size: 0;
  clear: both;
  visibility: hidden;
}
.view-suppliers .views-row,
.block-views-block-products-block-front .views-row,
.block-views-block-products-block-featured .views-row {
  box-sizing: border-box;
  padding: 0 20px 24px 20px;
  inline-size: calc(100% / 6);
  float: left;
}
.block-views-block-products-block-front .views-row,
.block-views-block-products-block-featured .views-row {
  inline-size: 25%;
}
.view-suppliers .views-row:nth-child(6n + 1),
.block-views-block-products-block-front .views-row:nth-child(4n + 1),
.block-views-block-products-block-featured .views-row:nth-child(4n + 1) {
  clear: left;
}
.block-views-block-products-block-front .views-field-field-image,
.block-views-block-products-block-featured .views-field-field-image {
  position: relative;
  margin-block-end: 12px;
  background-color: white;
  padding-block-end: calc((100% / 3) * 2);
}
.view-suppliers .views-row img,
.block-views-block-products-block-front .views-row img,
.block-views-block-products-block-featured .views-row img {
  max-inline-size: 100%;
  block-size: auto;
}
.block-views-block-products-block-front .views-row .views-field-field-image a,
.block-views-block-products-block-featured .views-row .views-field-field-image a {
  display: block;
  position: absolute;
  inset: 0;
}
.block-views-block-products-block-front .views-row .views-field-field-image a img,
.block-views-block-products-block-featured .views-row .views-field-field-image a img {
  display: block;
  position: relative;
  margin: 0 auto;
  inset-block-start: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.block-views-block-suppliers-block-front,
.block-views-block-products-block-front,
.block-views-block-products-block-featured {
  margin: 32px 0;
}
.block-views-block-products-block-featured {
  margin-block-end: 0;
}
.block-views-block-products-block-front {
  margin-inline: -40px;
  background-color: var(--light-grey);
  padding: 24px 40px;
}
.block-views-block-suppliers-block-front > .block-content,
.block-views-block-products-block-front > .block-content {
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  padding: 0 20px;
  max-inline-size: 1200px;
}
#main .view-suppliers .views-row h3,
#main .block-views-block-products-block-front .views-row h3,
#main .block-views-block-products-block-featured .views-row h3 {
  font-size: 1.25em;
}
#main body.front .view-suppliers .views-row h3 {
  display: none;
}
#main .block-views-block-products-block-front .views-row h3,
#main .block-views-block-products-block-featured .views-row h3 {
  margin-block-end: 2px;
}
#main .block-views-block-products-block-front .views-row .views-field-title a,
#main .block-views-block-products-block-featured .views-row .views-field-title a {
  color: var(--dark-grey);
}
.block-views-block-suppliers-block-front footer,
.block-views-block-products-block-front footer {
  position: absolute;
  inset-inline-end: 19px;
  inset-block-start: 0;
}
.block-views-block-products-block-featured footer {
  clear: left;
  padding: 16px 20px 0 20px;
}
.node--view-mode-full .field--name-field-product-category {
  clear: both;
}
.node--view-mode-full .field--name-field-product-category .paragraph {
  position: relative;
  margin-block-end: 24px;
  padding-inline-start: 240px;
  min-block-size: 200px;
}
.node--view-mode-full .field--name-field-product-category .field--name-field-product-category-image {
  position: absolute;
  inset-block-start: 32px;
  inset-inline-start: 0;
}
.product--view-mode-default .field-group-images {
  box-sizing: border-box;
  margin: 0 0 24px 20px;
  inline-size: calc(100% / 3);
  float: right;
}
.product--view-mode-default .field-group-images img {
  display: block;
  margin: 0 auto;
  max-inline-size: 100%;
  block-size: auto;
}
.product--view-mode-default .field-group-images .eps-product-supplier-logo {
  margin-block-start: 16px;
}
.product--view-mode-default .field-group-images .field--name-field-image + .eps-product-supplier-logo {
  margin-block-start: 32px;
}
#main .product--view-mode-default .field--name-field-quantity-pricing h2 {
  font-size: 1.25em;
}
#main .product--view-mode-default .field--name-field-quantity-pricing ul {
  padding-inline-start: 0;
}
#main .product--view-mode-default .field--name-field-quantity-pricing ul > li {
  list-style-type: none;
}
.view-product-search .views-row + .views-row {
  margin-block-start: 16px;
  border-block-start: 1px solid var(--light-grey);
  padding-block-start: 16px;
}
#main .view-product-search h3 {
  margin-block-end: 4px;
  font-size: 1.25em;
}
#sidebar {
  box-sizing: border-box;
  padding: 0 20px;
  inline-size: calc(100% / 3);
  float: right;
}
#sidebar .block {
  margin-block-end: 32px;
}
#sidebar .block-type-call-to-action {
  background-color: var(--orange);
  padding: 20px;
}
#sidebar .block-type-call-to-action h2,
#sidebar .block-type-call-to-action a {
  color: white;
}
#sidebar .block-type-call-to-action a.cta,
#sidebar .block-type-call-to-action .field--name-field-link a,
#sidebar .block-type-call-to-action a.cta:hover,
#sidebar .block-type-call-to-action .field--name-field-link a:hover {
  background-color: white;
  color: var(--dark-grey) !important;
}
#subcontent {
  background-color: var(--light-grey);
}
#subcontent > div {
  box-sizing: border-box;
  margin: 0 auto;
  max-inline-size: 1200px;
  padding: 48px 20px;
}
#subcontent .block {
  padding: 0 20px;
}
#superfooter,
#footer {
  padding: 24px 20px;
  font-size: 0.875em;
  line-height: 1.5;
}
#superfooter {
  padding-block-start: 48px;
}
#footer {
  font-size: 0.75em;
  padding-block-end: 48px;
}
#superfooter:after,
#footer:after {
  content: '.';
  display: block;
  block-size: 0;
  clear: both;
  visibility: hidden;
}
#superfooter h2 {
  font-weight: 700;
}
#superfooter span.ext,
#superfooter svg.ext,
#footer span.ext,
#footer svg.ext {
  display: none;
}
#superfooter .block,
#superfooter nav,
#footer .block {
  padding: 0 20px;
}
#superfooter .block {
  margin-inline-end: 80px;
  float: left;
}
#superfooter .block-logo {
  margin-inline-end: 40px;
  inline-size: 120px;
}
#superfooter .block-logo img {
  display: block;
  inline-size: 100%;
  block-size: auto;
}
#superfooter .block-customersupport strong {
  display: inline-block;
  min-inline-size: 5em;
  font-weight: 400;
}
#footer .block-credits {
  float: right;
  text-align: end;
}
#footer .block-credits li {
  display: inline;
  margin-inline-start: 1em;
}
#footer .block-copyright {
  padding-inline-end: 0;
  float: left;
}
#footer nav#block-footer li:before {
  content: '|';
  margin: 0 0.25em;
}
.block-views-block-features-block {
  margin-inline: -20px;
}
.view-features {
  margin: 0 auto;
  inline-size: 920px;
  block-size: 480px;
}
.view-features .views-row + .views-row {
  display: none;
}
.view-features .node {
  display: flex;
  align-items: stretch;
  gap: 40px;
  block-size: 480px;
}
.view-features .node > * {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-basis: 40%;
}
.view-features .node > .field--name-field-feature-image {
  flex-basis: 60%;
}
.view-features .field--name-field-feature-image img {
  display: block;
  margin: 0 auto;
}
#main .view-features .node-container > h2 {
  font-size: 3em;
  font-weight: 400;
  line-height: 1.125;
}
.view-features .node-container .field--name-body {
  font-size: 1.5em;
}
.view-features .field--name-field-link a:hover {
  background-color: var(--blue);
}
.features-dynamic {
  position: relative;
  padding: 0 0 40px 0 !important;
  min-inline-size: 920px;
}
.features-dynamic .nav {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  z-index: 198;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1;
  text-align: center;
}
#main .features-dynamic .nav ul {
  margin: 0;
  padding: 0;
}
.features-dynamic .nav li {
  display: inline-block;
  margin: 0;
  list-style-type: none !important;
  white-space: nowrap;
  overflow: hidden;
}
.features-dynamic li.skip-nav {
  margin: 0 0.25em;
}
/* Don't try to fit the step nav when there's no room. */
.features-dynamic li.step-nav {
  display: none;
}
@media screen and (min-width: 1100px) {
  .features-dynamic li.step-nav {
    display: inline-block;
  }
}
.features-dynamic li.step-nav a {
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: -240px;
  display: block;
  block-size: 80px;
  inline-size: 48px;
  overflow: hidden;
}
.features-dynamic li.step-nav.next a {
  inset-inline: auto 0;
}
.features-dynamic li.step-nav a:before {
  content: '\f104';
  position: relative;
  inset-block-start: -24px;
  margin-inline-end: 96px;
  font-family: 'Font Awesome 5 Pro';
  font-size: 8em;
  font-style: normal;
  font-variant: normal;
  color: var(--light-grey);
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.features-dynamic li.step-nav.next a:before {
  content: '\f105';
}
.features-dynamic li.skip-nav a {
  display: block;
  background-color: var(--light-grey);
  inline-size: 24px;
  block-size: 24px;
  text-indent: 48px;
  overflow: hidden;
  cursor: pointer;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
.features-dynamic li.skip-nav.active a {
  background-color: var(--orange);
  cursor: default;
}
nav.pager,
.view-product-search header {
  margin: 24px 0;
  border-width: 1px 0;
  border-style: solid;
  border-color: var(--light-grey);
  padding: 4px 0;
  font-size: 0.875em;
}
nav.pager {
  text-align: center;
}
#main nav.pager ul {
  padding-inline-start: 0;
}
#main nav.pager ul:after {
  content: '.';
  display: block;
  block-size: 0;
  clear: both;
  visibility: hidden;
}
#main nav.pager li:first-child {
  float: left;
}
#main nav.pager li:last-child {
  float: right;
}
#main nav.pager li.is-active:first-child,
#main nav.pager li.is-active:last-child {
  float: none;
}
#main nav.pager a {
  text-decoration: none;
}
#commerce-checkout-flow-multistep-default fieldset,
#commerce-checkout-flow-multistep-default #edit-shipping-information-shipments {
  margin: 16px 0;
  padding: 0;
}
#commerce-checkout-flow-multistep-default fieldset legend {
  font-size: 1.25em;
  font-weight: 400;
}
#commerce-checkout-flow-multistep-default fieldset fieldset legend {
  font-size: 1.125em;
}
.layout-region-checkout-main,
.layout-region-checkout-secondary,
.layout-region-checkout-footer,
.form-wrapper__returning-customer,
.form-wrapper__guest-checkout {
  inline-size: auto;
  float: none;
}
.form-wrapper__guest-checkout {
  margin-block-start: 24px !important;
}
.form-submit + .form-wrapper {
  margin-block-start: 16px;
}
.view-commerce-cart-form #edit-actions,
.commerce-checkout-flow-multistep-default input.form-submit {
  margin-block-start: 16px;
}
.node--type-promotion.node--view-mode-full .highlight {
  display: flex;
  align-items: stretch;
  margin-block: 40px;
  border: 1px solid var(--grey);
}
.node--type-promotion.node--view-mode-full .highlight > * {
  flex: 1 0 34%;
  display: flex;
  align-items: center;
  padding: 32px;
}
.node--type-promotion.node--view-mode-full .highlight > *:not(:has(img)) {
  background-color: var(--light-grey);
  padding: 20px;
}
.node--type-promotion.node--view-mode-full .highlight img {
  display: block;
  inline-size: 100%;
  block-size: auto;
}
.node--type-promotion.node--view-mode-full .field--name-field-product {
  display: flex;
  margin-block-start: 48px;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 32px;
}
.node--type-promotion.node--view-mode-full .field--name-field-product > * {
  flex: 1 0 26%;
  max-inline-size: calc(100% / 3);
}
.node--type-promotion.node--view-mode-full .field--name-field-product:has(> *:nth-child(4)) > * {
  flex-basis: 21%;
  max-inline-size: calc(100% / 4);
}
.node--type-promotion.node--view-mode-full .field--name-field-product:has(> *:nth-child(5)) > * {
  flex-basis: 26%;
  max-inline-size: calc(100% / 3);
}
.node--type-promotion.node--view-mode-full .field--name-field-product:has(> *:nth-child(7)) > * {
  flex-basis: 21%;
  max-inline-size: calc(100% / 4);
}
#main .node--type-promotion.node--view-mode-full .field--name-field-product h3 {
  font-size: 1.25rem;
}
.node--type-promotion.node--view-mode-full .field--name-field-product .teaser-image {
  box-sizing: border-box;
  margin-block-end: 24px;
  aspect-ratio: 3/2;
}
.node--type-promotion.node--view-mode-full .field--name-field-product .teaser-image:not(:has(.field--type-image)) {
  border: 1px solid var(--grey);
  background: url(../logo.png) center center / contain no-repeat scroll content-box padding-box transparent;
  padding: 20% 22.5% 20% 17.5%;
}
#main .node--type-promotion.node--view-mode-full .field--name-field-product .field--name-field-image {
  margin-block-end: 0;
  background-color: transparent;
}
.node--type-promotion.node--view-mode-full .field--name-field-product .teaser-image img {
  display: block;
  margin-inline: 0;
  width: 100%;
  height: auto;
}
