.elementor-kit-231798{--e-global-color-primary:#0D4170;--e-global-color-secondary:#669FBC;--e-global-color-text:#7A7A7A;--e-global-color-accent:#E8F2F4;--e-global-color-092ec50:#E0853F;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:500;}.elementor-kit-231798 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* NECS filter dropdowns */
.woocommerce-widget-layered-nav h5 {
  font: 600 15px/1.3 Poppins, sans-serif;
  color: #0D4170;
  margin: 18px 0 8px;
}
.woocommerce-widget-layered-nav:first-child h5 { margin-top: 0; }

/* closed box */
.woocommerce-widget-layered-nav .select2-container { width: 100% !important; }
.woocommerce-widget-layered-nav .select2-container--default .select2-selection--single {
  height: 44px;
  background: #fff;
  border: 1px solid #C9D6DE;
  border-radius: 8px;
  display: flex;
  align-items: center;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.woocommerce-widget-layered-nav .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 44px;
  padding: 0 38px 0 14px;
  font: 400 14px/44px Poppins, sans-serif;
  color: #2b3540;
}
.woocommerce-widget-layered-nav .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 44px;
  right: 8px;
}
.woocommerce-widget-layered-nav .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-widget-layered-nav .select2-container--default.select2-container--open .select2-selection--single {
  border-color: #0D4170;
  box-shadow: 0 0 0 3px rgba(13, 65, 112, .12);
}

/* open list (drawn at the end of the page, so not scoped to the rail) */
.select2-dropdown {
  border: 1px solid #C9D6DE;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(13, 65, 112, .15);
  font: 400 14px/1.4 Poppins, sans-serif;
}
.select2-container--default .select2-search--dropdown { padding: 8px; }
.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #C9D6DE;
  border-radius: 6px;
  padding: 8px 10px;
  font: 400 14px Poppins, sans-serif;
  outline: none;
}
.select2-container--default .select2-search--dropdown .select2-search__field:focus { border-color: #0D4170; }
.select2-container--default .select2-results__options { max-height: 280px; }
.select2-container--default .select2-results__option { padding: 9px 14px; color: #2b3540; }
.select2-container--default .select2-results__option[aria-selected=true] { background: #E8F2F4; color: #0D4170; font-weight: 600; }
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background: #0D4170;
  color: #fff;
}



/* NECS category body section */
body .elementor .necs-body {
  max-width: 900px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #E8EDF0;
  border-radius: 16px;
  padding: 36px 40px;
  box-shadow: 0 2px 12px rgba(13, 65, 112, .06);
}
body .elementor .necs-body h2 {
  font: 600 26px/1.25 Poppins, sans-serif;
  color: #0D4170;
  margin: 0 0 14px;
  padding-left: 14px;
  border-left: 4px solid #E0853F;
}
body .elementor .necs-body h2:not(:first-child) { margin-top: 36px; }
body .elementor .necs-body h3 {
  font: 600 20px/1.3 Poppins, sans-serif;
  color: #0D4170;
  margin: 28px 0 10px;
}
body .elementor .necs-body p,
body .elementor .necs-body li {
  font: 300 15.5px/1.8 Poppins, sans-serif;
  color: #2b3540;
}
body .elementor .necs-body ul { list-style: none; padding: 0; margin: 0 0 18px; }
body .elementor .necs-body ul li { position: relative; padding-left: 22px; margin-bottom: 8px; }
body .elementor .necs-body ul li::before {
  content: "";
  position: absolute; left: 0; top: .7em;
  width: 8px; height: 8px; border-radius: 50%;
  background: #E0853F;
}
body .elementor .necs-body table { width: 100%; border-collapse: collapse; margin: 22px 0; }
body .elementor .necs-body th { background: #0D4170; color: #fff; font-weight: 600; text-align: left; padding: 12px 14px; }
body .elementor .necs-body td { padding: 12px 14px; border-bottom: 1px solid #E8EDF0; }
body .elementor .necs-body tr:nth-child(even) td { background: #F6FAFB; }
@media (max-width: 767px) {
  body .elementor .necs-body { padding: 24px 20px; border-radius: 12px; }
  body .elementor .necs-body h2 { font-size: 22px; }
}




/* 1. WooCommerce notices ("added to basket", info, errors) on product, shop and category pages.
   Cart and checkout style their own notices in the NECS Store plugin, so they are excluded here. */
body:not(.woocommerce-cart):not(.woocommerce-checkout) .woocommerce-notices-wrapper { max-width: 1240px; margin: 20px auto 0; padding: 0 28px; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; margin: 0 0 16px; padding: 14px 20px; border: 0; border-left: 4px solid #E0853F; border-radius: 10px; background: #E8F2F4; color: #2b3540; font: 300 14.5px/1.6 Poppins, sans-serif; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none; }
.woocommerce-error { display: block; padding-left: 36px; border-left-color: #b3261e; background: #FBEDEC; font-weight: 400; list-style: none; }
.woocommerce-message a:not(.button), .woocommerce-info a:not(.button) { color: #0D4170; font-weight: 600; }
.woocommerce-message .button, .woocommerce-info .button { float: none; order: 2; margin: 0; padding: 10px 22px; border-radius: 8px; background: #0D4170; color: #fff; font: 700 14px/1.2 Poppins, sans-serif; text-decoration: none; transition: background .15s; }
.woocommerce-message .button:hover, .woocommerce-info .button:hover { background: #E0853F; color: #fff; }
.woocommerce-message:focus, .woocommerce-info:focus, .woocommerce-error:focus { outline: none; }
.woocommerce-message:focus-visible, .woocommerce-info:focus-visible, .woocommerce-error:focus-visible { outline: 2px solid #669FBC; outline-offset: 2px; }


/* 2. Product page details (EAN, SKU, Category, Tags): one per line instead of run together. */
.product_meta { display: flex; flex-direction: column; gap: 6px; margin-top: 18px; font: 300 14px/1.6 Poppins, sans-serif; color: #737373; }
.product_meta .sku_wrapper, .product_meta .detail-container { display: block; }
.product_meta .detail-label, .product_meta .ean_wrapper { font-weight: 600; color: #0D4170; }
.product_meta .detail-label { margin-right: 6px; }
.product_meta .ean_wrapper .ean, .product_meta .sku, .product_meta .detail-content { font-weight: 300; color: #737373; }
.product_meta a { color: #0D4170; text-decoration: none; }
.product_meta a:hover { color: #E0853F; }


/* 3. Thank you page: the order summary boxes (order number, date, email, total, payment method).
   Equal boxes that wrap, and long values such as an email address break inside the box instead of overlapping the next one. */
body.woocommerce-order-received ul.woocommerce-order-overview { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; margin: 0 0 28px; padding: 0; list-style: none; }
body.woocommerce-order-received ul.woocommerce-order-overview li { min-width: 0; margin: 0; padding: 16px 18px; border: 1px solid #E8EDF0; border-radius: 12px; font: 300 12.5px/1.5 Poppins, sans-serif; text-transform: uppercase; letter-spacing: .04em; color: #737373; overflow-wrap: anywhere; word-break: break-word; float: none; }
body.woocommerce-order-received ul.woocommerce-order-overview li strong { display: block; margin-top: 4px; font: 700 15px/1.4 Poppins, sans-serif; text-transform: none; letter-spacing: 0; color: #0D4170; overflow-wrap: anywhere; word-break: break-word; }
body.woocommerce-order-received ul.woocommerce-order-overview li:last-child { border: 1px solid #E8EDF0; }

/* 4. Product cards: the hover-swap image never shows on touch devices or small screens (a second image under the main one on phones) */
@media (hover: none), (max-width: 767px) {
  .necs-hover-img { display: none !important; }
}


/* Phones */
@media (max-width: 767px) {
  body:not(.woocommerce-cart):not(.woocommerce-checkout) .woocommerce-notices-wrapper { padding: 0 16px; }
  .woocommerce-message .button, .woocommerce-info .button { width: 100%; text-align: center; }
  body.woocommerce-order-received ul.woocommerce-order-overview { grid-template-columns: 1fr; }
}/* End custom CSS */