/* TMG FrontEnd CSS */
::after,
::before {
  box-sizing: border-box
}

a[href="javascript:;"][onclick^="OpenPrintList"] {
    cursor: default;
    pointer-events: none;
}


.offer_title.py-4 img {
  width: 14% !important;
}

#AddVariants iframe {
  width: 100% !important;
  height: 500px;
}

.actions.d-flex.flex-wrap.justify-content-center.mx-3.py-3 {
  display: none !important;
}


.DynamicPopup {
height: 700px !important;
}


.formFooter {
  display: none !important;
}



.stock_info {
  display: none;
}


.mb-1 small {
  display: none;
}


.col {
  flex: inherit !important;
}

:root{
  --text: #000000;
  --grey: #7a7a7a;
  --middle-grey: #DDDDDD;
  --light-grey: #f7f6f6;
  --red: #b70f0a;
  --light-red: #fbe9e7;
  --blue: #44a2f8;
}
::placeholder {
   font-size: 12px;
   color: #c0c0c0;
}

footer,
header,
main {
  display: block;
}

html {
  min-height: 32px;
  font-family: sans-serif;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;

}

body {
  font-family: 'Roboto', sans-serif;
  line-height: 1;
  margin: 0;
  padding: 0;
  color: var(--text);
  min-width: 320px;
  line-height: 22px;
}

a {
  color: var(--primary-color)
}

a:hover {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 800;
}
h1 {
  font-size: 1.875rem;
}
h2 {
  font-size: 1.6rem;
}
h2 small {
  font-weight: 400;
  font-size: 1.3rem;
}
table{
  font-size: 0.875rem;
}
thead tr{
  border-bottom: 2px solid var(--primary-color);
}
tr{
  border-bottom: 2px solid var(--middle-grey);
}
td, th{
  padding: 0.875rem;
}
input,
textarea {
  padding: 10px;
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
  font-size: 14px;
}
input[type="submit"]{
  background: var(--primary-color);
  color: var(--primary-color-contrast);
  font-size: 1.125rem;
  padding: 0.5rem 4rem;
  font-weight: bold;
}
button:disabled {
   background-color: #c0c0c0;
   color: #606060;
   text-shadow: 1px 1px 0px #e0e0e0;
}
.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}
.mw_container{
  max-width: 1760px;
  margin: auto;
}
.c-grey{
  color: var(--grey);
}
.c-primary{
  color: var(--primary-color);
}
.c-white{
  color: #FFFFFF;
}
.c-red{
  color: var(--red);
}

.bg-red{
  background-color: var(--red);
}
.alert-danger a { color: red; }
.alert-success a { color: green; }

.header__logo img{
  display: block;
  max-width: 300px;
  max-height: 100px;
  z-index: 5;
  margin: 5px 0px;
}
.btn{
  font-size: 1.125rem;
  font-weight: bold;
  background-color: var(--secondary-color);
  color: var(--secondary-color-contrast);
  padding: 0.75rem 3.5rem;
  border-radius: 10px;
  text-decoration: none;
  transition: 0.4s;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.btn:hover{
  color: var(--primary-color-contrast);
  filter: brightness(1.3);
}
.btn-outline{
  font-size: 1.125rem;
  font-weight: bold;
  border: 2px solid var(--primary-color);
  color: var(--primary-color);
  padding: 0.75rem 3.5rem;
  border-radius: 10px;
  text-decoration: none;
  transition: 0.4s;
  display: flex;
  align-items: center;
  text-align: center;
  display: inline-block;
  cursor: pointer;
}
.btn-outline:hover{
  color: var(--primary-color);
  filter: brightness(1.3);
}
.btn.small, .btn-outline.small {
  font-size: 0.875rem;
  padding: 0.25rem 2rem;
}
.btn.smaller, .btn-outline.smaller {
  font-size: 0.75rem;
  font-weight: normal;
  padding: 0.25rem 1.25rem;
}
.btn-red{
  font-size: 1.125rem;
  font-weight: bold;
  background-color: var(--red);
  color: #FFFFFF;
  padding: 0.75rem 3.5rem;
  border-radius: 10px;
  text-decoration: none;
  transition: 0.4s;
  display: flex;
  align-items: center;
  

}
.btn-red:hover{
  color: #FFFFFF;
  filter: brightness(1.5);
}
.header__contact, .header__contact a {
  color: var(--primary-color);
  font-size: 1.1rem;
  font-weight: bold;
}
.header__contact img {
  max-width: 24px;
  margin-right: 10px;
  filter: contrast(25%);
}
.offer_title {
  background-color: var(--primary-color);
  color: var(--primary-color-contrast) !important; 
}
.offer_title h1 { font-size: 2rem; }
.offer_title h2 { font-size: 1.7rem; }
.offer_title h2 small { font-size: 1.4rem; display:inline; }
@media screen and (max-width: 800px) {
	.offer_title h1 { font-size: 1.7rem; }
	.offer_title h2 { font-size: 1.4rem; }
	.offer_title h2 small { font-size: 1.1rem; display:block; }
}
.welcome_text > div {
  border-radius: 10px;
  background-color: #F7F6F6;
  border: 1px solid var(--middle-grey);
  font-size: 14px;
  line-height: 18px;
}
.welcome_text > div > p:last-child {
   margin: 0px;
}
.company__info_boxes{
  font-size: 1.063;
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
  line-height: 1.5;
  position: relative;
}
@media screen and (min-width: 990px) {
  .company__info .company__info_boxes{
    width: 100%;
  }  
}
.company__info_boxes h3{
  font-size: 1rem;
  color: var(--grey);
}
.company__info_boxes h4{
  font-size: 1.25rem;
  color: var(--primary-color);
}
.offer__code img {
  display: block;
  max-width: 16px;
  margin-left: 5px;
  margin-top: -3px;
}
.offer__code img:hover {
   filter: opacity(0.70);
}
.company_numbers {
   font-size: 0.8rem;
   color: var(--grey);
}
.actions {
   background-color: #f6f6f6;
   border-radius: 10px;
}
.actions > div {
   display: flex;
   align-items: center;
   justify-content: center;
   margin: 0px 30px; 
   cursor: pointer;
}
.actions img {
   display: block;
   max-width: 40px;
   max-height: 40px;   
   margin-right: 7px;
}
.actions a {
   color: gray;
   font-size: 16px;
}
.notice_text {
  border: 2px solid var(--red);
  background-color: var(--light-red);
  color: var(--red);
  border-radius: 10px;
}
.notice_text img.icon {
   max-width: 40px;
   max-height: 40px;
   margin-right: 20px;
}
.notice_text > div > p:last-child {
   margin: 0px;
}
.terms-conditions .accordion{
  border: 1px solid var(--grey);
  border-radius: 10px;
  overflow: hidden;
}
.terms-conditions .accordion .accordion-button{
  border-radius: 10px;
  background-color: var(--light-grey);
  color: var(--text);
  font-weight: bold;
  font-size: 1.125rem;
}
.terms-conditions .accordion-body{
  max-height: 500px;
  overflow: auto;
  font-size: 0.875rem;
}
footer{
  background: rgb(247,246,246);
  background: linear-gradient(90deg, rgba(247,246,246,1) 50%, rgba(235,235,235,1) 50%);
}
@media screen and (max-width: 1200px) {
  footer{
    background: rgb(247,246,246);
    background: linear-gradient(180deg, rgba(247,246,246,1) 50%, rgba(235,235,235,1) 50%);
  } 
}
.footer__logo {
  display: inline-block;
  position: relative;
}
.footer__logo img {
  display: block;
  max-width: 250px;
  max-height: 100px;
  z-index: 5;
  margin: 0 auto;
}
.footer__company h3{
  color: var(--primary-color);
  font-size: 1.375rem;
}
.footer__contacts{
  background-color: rgba(235,235,235,1);
}
.footer__contact span{
  color: var(--primary-color);
  font-size: 1.5rem;
}
.footer__contact, .footer__contact {
  font-weight: bold;
  color: var(--primary-color);
}
.footer__icon {
  display: block;
  max-width: 28px;
  max-height: 28px;
  margin-right: 10px;
  filter: contrast(20%);
}
.footer__socials img {
  width: 40px;
  margin: 5px;  
}
.footer__socials img:hover {
  filter: brightness(80%);
}

.product_title {
   color: var(--primary-color);
   font-size: 1.5rem;
   font-weight: bold;
}
.product_code {
   color: gray;
   font-size: 0.8rem;
}
.presentation_card{
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
}
.presentation_card .product_img {
  width: 100%;
  padding-top: 100%;
  position: relative;
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
}
.presentation_card .product_img img{
  max-width: 95%;
  max-height: 95%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.presentation_header{
  border-bottom: 1px solid var(--middle-grey);
  font-size: 0.938rem;
}
.presentation_card h3{
  color: var(--primary-color);
  font-size: 1.375rem;
}
.presentation_card h3 small {
  font-size: 0.813rem;
  color: var(--grey);
  font-weight: normal;
  display: block;
}
.presentation_card h3 small b {
  font-size: 0.813rem;
  color: var(--grey);
}
.presentation_card h3 b {
  font-size: 1.125rem;
  color: var(--text);
}
.presentation_header b{
  font-size: 1.125rem;
}
.presentation_header input[type='checkbox'] {
  accent-color: #77b441;
  width: 20px;
  height: 20px;
}
.presentation_card_description,
.presentation_card_parameters {
  font-size: 0.875rem;
  position: relative;
  padding-bottom: 0.5rem;
}
.presentation_card_description p:last-child {
   margin-bottom: 0px;
}
.presentation_card__parametrs_title{
  color: var(--grey);
  text-transform: uppercase;
  font-size: 1rem;
}
.presentation_card_printlist a {
   font-size: 0.875rem;
   font-weight: bold;
}
.presentation_card_printlist ul {
   margin-bottom: 5px;
}
.presentation_card_printlist ul li {
   font-size: 0.875rem;
   line-height: 1.2rem;
}
.presentation_card_printlist ul span {
   color: #909090;
   line-height: 0.8rem;
}
.stock_info, .stock_info a, .stock_info span, .stock_info b {
   font-size: 0.875rem;
}
@media screen and (max-width:700px) {
   .stock_info span { display: block }
}

.ProdParams {
   margin: 0px;
}
.ProdParams .ProdParamName {
   color: black;
}
.ProdParams .ProdParamValue {
   color: var(--grey);
   font-weight: bold;
}
.
ble {
  font-size: 0.8rem;
}
.colors div {
  width: 25px;
  height: 25px;
  display: inline-block;
  margin: 3px;
  border-radius: 5px;
  border: 1px solid #d0d0d0;
}
.variants div{  
  display: inline-block;
  font-size: 0.875rem;
  font-weight: 900;
  padding: 0.3rem 0.6rem;
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
  margin: 3px;
}
.table-responsive::-webkit-scrollbar {
    -webkit-appearance: auto;
}

.table-responsive::-webkit-scrollbar:vertical {
    width: 12px;
}

.table-responsive::-webkit-scrollbar:horizontal {
    height: 12px;
}

.table-responsive::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, .5);
    border-radius: 10px;
    border: 2px solid #ffffff;
}

.table-responsive::-webkit-scrollbar-track {
    border-radius: 10px;  
    background-color: #ffffff; 
}
.price_table tr th, .price_table tr td {
   padding: 10px 8px;
}
.price_table tr.RowGroup td {
   border-top: solid 2px gray;
}
h3.price_table_title {
   color: black;
}
@media screen and (max-width:800px) {
   .price_details_column { display: none; }
}
h3.price_table_title span, h3.price_table_title b {
   font-size: 1.4rem;
   color: var(--primary-color);
}
.price_discount small {
   color: silver;
}
.price_discount b {
   color: #e00000;
}
.variant_title b {
   color: var(--primary-color);
}
.icon_info {
   display: block;
   max-width: 18px;
   max-height: 18px;
   margin-left: 5px;
   filter: contrast(20%);
}
.presentation_card_quantities{
  border-left: 1px solid var(--middle-grey);
}
@media screen and (max-width:990px) {
  .presentation_card_quantities{
    border-left: none;
    border-top: 1px solid var(--middle-grey);
  }  
}
.presentation_card_quantities small{
  color: var(--grey);
}
tr.RowClickCheck { cursor: pointer !important; }
tr.RowClickCheck input { cursor: pointer !important; }
.pointer { cursor: pointer !important; }
.pointer label { cursor: pointer !important; }
.pointer span { cursor: pointer !important; }
.pointer input { cursor: pointer !important; }
.presentation_card_quantities tbody tr:hover{
  background-color: #f6f6f6;
}
.presentation_card_quantities tbody tr.selected{
  background-color: #fff9f0 !important;
}
.presentation_card_other_quantities{
  font-size: 0.875rem;
}
.presentation_card_other_box {
   display: none;
}
.presentation_footer{
  font-size: 0.875rem;
}
.presentation_footer_lead_time{
  background: var(--light-grey);
  border-radius: 10px;
}
.presentation_footer_lead_time > p {
   margin-bottom: 0px;
}
.presentation_footer_important_notice {
  color: var(--red);
  background-color: #fbeeea;
  border-radius: 10px;
}
.presentation_footer_important_notice > p {
   margin-bottom: 0px;
}
.presentation_footer_product_price {
  background: var(--light-grey);
  border-radius: 10px;
  font-size: 1.188rem;
}
.quotation_card {
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
}
.quotation_header{
  border-bottom: 1px solid var(--middle-grey);
  font-size: 0.938rem;
}
.quotation_header h3 {
  color: var(--primary-color);
  font-size: 1.375rem;
}
.quotation_header p {
  margin-bottom: 0;
}
.quotation_header .summary {
  color: #808080;
}
.quotation_header .summary b {
  color: #000000;
  font-size: 1.125rem;
}
.quotation_header .product_img {
  width: 100px;
  height: 100px;
  min-width: 100px;
  min-height: 100px;
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
  text-align: center;
}
.quotation_header .product_img a img {
  max-width: 95px;
  max-height: 95px;
}
.quotation_header .info_link {
   color: var(--grey);
   font-size: 0.8rem;
}
.quotation_body td.item_name {
   min-width: 320px;
   font-weight: normal;
}
.quotation_body td.item_name span {
   color: var(--primary-color);
   font-weight: bold;
}
.quotation_body table tr:hover td {
   background-color: #fafafa;
}
.quotation_footer{
  font-size: 0.875rem;
}
.quotation_footer_lead_time  {
  background: var(--light-grey);
  border-radius: 10px;
}
.quotation_footer_important_notice {
  color: var(--red);
  background-color: #fbeeea;
  border-radius: 10px;
}
.quotation_footer_lead_time > p {
   margin-bottom: 0px;
}
.quotation_footer_important_notice > p {
   margin-bottom: 0px;
}
.formpage .errorbox {
  color: var(--red);
  background-color: rgba(255,235,238,1);
}
.formpage .successbox, .cart .successbox {
  color: green;
  background-color: #E0FFE0;
}
.cart .successbox .btn {
   display: inline;
}
.cart .successbox p {
   font-size: 1rem;
}
.formpage img.icon {
   width: 80%;
   max-width: 100px;
   margin-bottom: 15px;
}
.cart img.icon {
   width: 90%;
   max-width: 120px;
   margin-bottom: 25px;
}
.formpage .contactform {
  background: #F7F6F6;
}
.formpage .contactform .container {
  max-width: 800px;
}
.formpage .formtitle {
  color: var(--grey);
  font-size: 1rem;
  font-weight: bold;
}

.expired .presentation_header,
.expired .quotation_header {
  border-bottom: none;
}
.expired_product_img {
  width: 80px;
  height: 80px;
  min-width: 80px;
  min-height: 80px;
  border: 1px solid var(--middle-grey);
  border-radius: 10px;
  padding: 5px;
  position: relative;
}
.expired_product_img img{
  max-width: 90%;
  max-height: 90%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.rejected_send{
  background-color: #dfedd6;
  color: #629c44;
  min-height: 430px;
}
.rejected_send span{
  font-size: 110px;
}
.succes_text{
  width: 90%;
  max-width: 850px;
}
.cart_closed{
  position: fixed;
  right: 0px;
  top: 50%;
  padding: 1rem 1rem 0.75rem 1rem;
  background-color: var(--primary-color);  
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.cart_opened{
  background: #ffffff;
  width: 450px;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  box-shadow: 5px 5px 19px rgba(0, 0, 0, 0.45);
}
@media screen and (max-width: 600px) {
  .cart_opened{
    width: 100%;
    z-index: 10;
    height: auto;
    position: absolute;
  } 
}
.cart_opened-header{
  background: #F7F6F6;
}
.cart_opened-header .cart{
  font-size: 2.5rem;
  color: var(--primary-color);
}
.cart_opened-header h3{
  color: #606060;
  font-size: 1.375rem;
}
.cart_opened-header .close{
  color: var(--grey);
  position: absolute;
  top: 10px;
  right: 10px;
}
.cart_opened-products div{
  border-bottom: 1px solid var(--middle-grey);
}
.cart_opened-products h4{
  font-size: 1rem;
  color: var(--primary-color);
}
.cart_opened-form{
  background: #F7F6F6;
}
.reasons label{
  font-size: 1.125rem;
}
.cart_opened_close{
  position: absolute;
  top: 50%;
  left: -50px;
  z-index: 9;
  color: var(--primary-color-contrast);
  background-color: var(--primary-color);
  padding: 0.7rem;
  font-size: 2rem;
  border-radius: 10px;
}
.cart_opened_close span{
  font-size: 2rem;
}

/* TMG Bootstrap tooltips */
.tooltip.show {
   opacity: 1;
}
.tooltip .tooltip-inner {
   text-align: left;
   max-width: 400px;
   padding: 12px 15px;
   background-color: #e0e0e0;
   box-shadow: 3px 3px 5px #909090; 
   color: #606060;
   opacity: 1;
   cursor: default;
}
.tooltip.bs-tooltip-start .tooltip-arrow::before { border-left-color: #909090; margin-left: 2px;}
.tooltip.bs-tooltip-top .tooltip-arrow::before { border-top-color: #909090; }
.tooltip.bs-tooltip-bottom .tooltip-arrow::before { border-bottom-color: #909090; }
.tooltip.bs-tooltip-end .tooltip-arrow::before { border-right-color: #909090; }
.tooltip .tooltip-inner ul {
   margin: 0px;
}
.tooltip .tooltip-inner b {
   color: #202020;
}

/* TMG Dynamic Zoomable Content */
.zoomable.dynamic {
  position: absolute;
  width: 100%;
  height: 60px;
  display: flex;
  border: 0px;
  align-items: flex-end;
  bottom: 0px;
  background: rgb(255,255,255);
  background: linear-gradient(180deg, rgba(255,255,255,0.0) 0%, rgba(255,255,255,1) 60%);
}
.zoomable.dynamic > div { display: flex; align-items: center; font-size: 13px; }
.zoomable.dynamic.show { background: none; }
.zoomable.dynamic.show a { color: gray; }
.zoomable img { max-width: 18px; margin-right: 5px; filter: contrast(10%); }

/* TMG Cart Icon (floating/fixed) */
.cart_icon {
   text-decoration: none;
   position: relative;
}
.cart_icon.floating > div {
  position: fixed;
  right: 0px;
  top: 50%;
  z-index: 999;
  padding: 0.8rem 0.8rem 0.8rem 0.8rem;
  background-color: var(--primary-color);  
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.cart_icon.fixed > div {
   background-color: none; 
   padding: 0.8rem 0.8rem 0.8rem 0.8rem;
}
.cart_icon > div img {
   max-width: 36px;
   max-height: 36px;
}
.cart_icon.invert > div img {
   filter: invert(1);
}
.cart_icon > div span {
   font-size: 0.80rem;
   font-weight: bold; 
   position: absolute;
   right: 5px;
   top: 5px;
   padding: 0px 3px;
   min-width: 20px;
   text-align: center;
   border-radius: 10px;

}
.cart_icon.floating > div span {
   background-color: var(--secondary-color);
   color: var(--secondary-color-contrast);
}
.cart_icon.fixed > div span {
   background-color: var(--primary-color);
   color: var(--primary-color-contrast);
}
.cart_icon, .cart_icon:hover {
   color: var(--secondary-color-contrast); 
}
.cart_icon:hover > div {
   filter: brightness(120%);
}
@media screen and (max-width: 800px) {
   .cart_icon > div {
      padding: 0.6rem 0.4rem 0.6rem 0.6rem;
   }   
   .cart_icon > div img {
      max-width: 24px;
      max-height: 24px;
   }   
   .cart_icon > div span {
      right: 3px;
	  top: -8px;
      font-size: 0.70rem;
      font-weight: normal; 
   }
}

/* TMG Forms */
.req {
   color: #e00000;
   font-weight: bold;
}
.popup_closer {
   background-color: #000000;
   padding: 8px 12px;
   color: white;
   font-size: 1.5rem;
   position: absolute;
   top: 0;
   right: 0;  
   cursor: pointer;
}
.popup_closer:hover {
   background-color: #202020;
}

/* TMG Cart Popup */
.fancybox-slide.Cart {
  padding: 5px !important;
}
.cart {
   font-size: 0.8rem;
}
.cart_header, .cart_form_header {
  background: #F7F6F6;
  font-size: 2.5rem;
}
.cart_header h3, .cart_form_header h3 {
  color: #606060;
  font-size: 1.375rem;
}
.cart_header img, .cart_form_header img {
  display: block;
}
.cart_price_table {
   font-size: 0.9rem;
   border-collapse: collapse;
}
.cart_price_table tr {
   border: 0px;
}
.cart_price_table tr.item {
   border-top: solid 1px #dddddd;
}
.cart_price_table tr.header {
   border-bottom: solid 2px var(--primary-color) !important;
}
.cart_price_table tr th {
   line-height: 1rem;
}
.cart_price_table tr td {
   line-height: 1.2rem;
}
.cart_price_table tr th, .cart_price_table tr td {
   padding: 10px 5px;
   border-bottom: 0px !important;
}
.cart_price_table .variant_title {
   font-weight: bold;
}
.cart_item_image {
   width: 75px;
   padding-left: 15px !important;
}
.cart_item_image > div {
   width: 50px;
   height: 50px;
   padding: 2px;
   border: solid 1px #dddddd;
   border-radius: 5px;
   display: flex;
   align-items: center;
   justify-content: center;
  
}
.cart_item_image img {
   width: 98%;
   max-width: 50px;
   max-height: 50px;
}
.cart_item_name {
   min-width: 300px;
   font-size: 0.95rem;
   font-weight: bold;
   color: var(--primary-color);
}
.cart_item_vartitle {
   min-width: 220px;
   font-weight: bold;
}
.cart_item_vartitle b {
   color: var(--primary-color);
}
.cart_item_quantity {
   min-width: 120px;
}
.cart_item_totalprice {
   min-width: 120px;
}
.cart_item_actions {
   padding-left: 20px !important;
   min-width: 240px;
}
.cart_item_actions div {
   display: flex;
   align-items: start;
   flex-flow: column;
   justify-content: center;
   font-weight: bold;
   font-size: 0.96rem;
   text-transform: uppercase;
}
.cart_item_actions label {
   display: flex;
   cursor: pointer;
}
.cart_item_actions input {
   cursor: pointer;
}
.cart_item_actions label input:checked + span {
   color: var(--primary-color);
}
.cart_item_actions label span {
   margin-left: 5px;
}
.cart_item_actions > label, .cart_item_actions > label > input {
   cursor: pointer;
}
.cart_item_controls {
   vertical-align: middle !important; 
   padding-right: 10px !important;
}
.cart_item_controls img {
   max-width: 20px;
   max-height: 20px;
   cursor: pointer;
}
.cart_item_controls img:hover {
   filter: brightness(150%);
}
.cart_item_comment {
   display: flex;
   flex-flow: column;
   font-size: 0.75rem;
}
.cart_row_comment td {
   padding: 0px 5px 10px 5px !important;
}
.cart_row_comment textarea {
   width: 100%;
   margin-top: -5px !important;
}
.cart_row_comment button {
   margin-bottom: 5px !important;
}
.cart_item_comment > div {
   margin-top: 5px;
}
.cart_item_comment img {
   max-width: 16px;
   max-height: 16px;
}
.cart_form_header {
  border-top: solid 2px silver;
}
.cart_form {
  background: #F7F6F6;
}

/* TMG Dynamic Popups */
.DynamicPopup {
   max-width: 800px;
   font-size: 0.9rem;
   display: none;
}
.DynamicPopup h4 {
   font-size: 1.3rem;
   margin-bottom: 15px;
   color: var(--primary-color);
}
.DynamicPopup p {
   margin-bottom: 5px;
}
.DynamicPopup big {
   color: #d00000;
   font-size: 0.9rem;
   font-weight: bold;
}
#AddVariants h4 {
   font-size: 1.3rem;
   margin-bottom: 15px;
   color: var(--primary-color);
}
#AddVariants .AddVariantsSummary {
   display: flex;
   justify-content: space-between;
   border: solid 1px #f0f0f0;
   border-radius: 5px;
   padding: 8px 10px;
   background-color: #fff8f8;
   color: #D00000;
   font-size: 0.9rem;
}
#AddVariants .AddVariantsSummary.CountOK {
   background-color: #f8fff8;
   color: green;
}
#AddVariants #AddVariantsCountMin, #AddVariants #AddVariantsCountAct {
   font-weight: bold;
}
#AddVariantsList {
   display: inline-block;
   overflow-y: auto;
   width: 100%;
   max-height: 500px;
   border: solid 1px #eeeeee;
   border-radius: 5px;
}
#AddVariantsList table {
   border-collapse: collapse;
   width: 100%;
}
#AddVariantsList table tr {
   border: 0px;
}
#AddVariantsList table th, #AddVariantsList table td {
   padding: 8px 15px;
}
#AddVariantsList table tr {
   border-bottom: solid 1px #e0e0e0;
}
#AddVariantsList table tr:last-child {
   border-bottom: none;
}
#AddVariantsList table thead tr {
    position: sticky;
	top: 0;
	margin-bottom: 5px;
	z-index: 999;
	background-color: #e0e0e0;
	border-bottom: solid 2px var(--primary-color);
}
#AddVariantsList table tbody tr:hover {
   background-color: #f8f8f8;
}
#AddVariantsList input[type=checkbox] {
   transform: scale(1.2);
   margin-right: 15px;
}
#AddVariantsList input[type=number] {
   width: 60px;
   padding: 1px 8px;
   font-size: 0.8rem;
   font-weight: bold;
   color: var(--primary-color);
}
#AddVariantsList input[type=number]:disabled {
   font-weight: normal;
   color: silver;
   text-shadow: 1px 1px 1px white;
}
#AddVariantsList input[type=number]::-webkit-outer-spin-button,
#AddVariantsList input[type=number]::-webkit-inner-spin-button{
  -webkit-appearance: none;
  margin: 0;
}
#AddVariantsList table th.select, #AddVariantsList table td.select {
   padding: 0px;
}
#AddVariantsList table td.variant {
   display: flex;
   align-items: center;
   min-width: 200px;
   cursor: pointer;
}
#AddVariantsList div.color {
   border: solid 1px #eeeeee;
   border-radius: 3px;
   width: 25px;
   height: 22px;
   margin-right: 5px;
}

/* TMG Stocks Popup */
.fancybox-slide.Stocks, .fancybox-slide.PrintList {
  padding: 5px !important;
}
.stockdetail .stocktitle {
   color: var(--primary-color);
   font-size: 1.3rem;
   font-weight: bold;
}
.stockdetail .stocktitle span {
   color: black;
}
.stockdetail .color {
   width: 25px;
   height: 25px;
   border: solid 1px #f0f0f0;
   border-radius: 5px;
}
.stockdetail .stocktable th, .stockdetail .stocktable td {
   padding: 0.5rem 1rem 0.5rem 0.5rem;
   line-height: 1.25rem;
}
.stockdetail .stocktable tbody tr {
   border-bottom: 1px solid var(--middle-grey);
}
.stockdetail .stocktable tbody tr:hover td {
   background-color: #fafafa;
}

/* TMG PrintList Popup */
.fancybox-slide.PrintList {
  padding: 5px !important;
}
.printlistdetail .printlisttitle {
   color: var(--primary-color);
   font-size: 1.3rem;
   font-weight: bold;
}
.printlistdetail .printlisttitle span {
   color: black;
}
.printlisttable tr.position {
   background-color: #fafafa;
}
.printlisttable .printimage {
   width: 106px;
   height: 106px;
   border: solid 1px #f0f0f0;
   margin-right: 10px;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 5px;
}
.printlisttable .printimage img {
   max-width: 100px;
   max-height: 100px;
}

/* Terms */
.OfferTermsBody, .OfferTermsBody p, .OfferTermsBody ul li { color: black; font-size: 0.9rem !important; }
.OfferTermsBody h1, .OfferTermsBody h2 { color: black; font-size: 1.5rem !important; margin-bottom: 20px; }
.OfferTermsBody h3, .OfferTermsBody h4 { color: black; font-size: 1.3rem !important; margin-bottom: 15px; }
.OfferTermsBody h5, .OfferTermsBody h6 { color: black; font-size: 1.1rem !important; margin-bottom: 15px; }