.mb-15 {
  margin-bottom: 15px;
}

@media only screen and (width < 768px) {
  .clearfix-xs {
    clear: both;
  }
}

@media only screen and (768px <= width) {
  .text-right-sm {
    text-align: right;
  }

  .mb-15-sm {
    margin-bottom: 15px;
  }
}

header#header.navbar-compact {
  z-index: 9999;
}

.kivitel-preview {
  display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

@media only screen and (768px <= width) {
  .kivitel-preview {
    flex-wrap: nowrap;
  }
}

.row--calculation_totals {
  background-color: #e0e0e0;
  border: 1px solid #cccccc;
  border-top: unset;
  display: flex;
   flex-flow: column;
  margin-bottom: 0;
  text-align: center;
  padding: 25px;
}
@media only screen and (width < 450px) {
  .row--calculation_totals {
    flex-flow: column;
  }
}
@media only screen and (width < 1200px) {
  .row--calculation_totals {
    margin-left: -15px;
    margin-right: -15px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.row--calculation_totals h3 {
  font-size: 22px;
  font-weight: 500;
  text-transform: uppercase;
}
.row--calculation_totals h3#calculator-total {
  color: #ed1c24;
  margin-bottom: 30px;
}

.calculator .form-group {
  margin-bottom: 0;
}

.calculator .form-group .std-input-group {
  display: flex;
}
.calculator .form-group .std-input-group-label {
  display: flex;
}
.calculator .form-group .std-input-group > *,
.calculator .form-group .std-input-group-label > span {
  flex-basis: 50%;
}
.calculator .form-group .std-input-group input,
.calculator .form-group .std-input-group select,
.calculator .form-group .std-input-group textarea,
.calculator .form-group .std-input-group span.select2 .select2-selection {
  border-radius: 0;
}
.calculator .form-group .std-input-group > .std-input-group-item:first-child input,
.calculator .form-group .std-input-group > .std-input-group-item:first-child select,
.calculator .form-group .std-input-group > .std-input-group-item:first-child textarea,
.calculator .form-group .std-input-group > .std-input-group-item:first-child span.select2 .select2-selection {
  border-radius: 2px 0 0 2px;
  border-right: 0;
}
.calculator .form-group .std-input-group .std-input-group-item:last-child input,
.calculator .form-group .std-input-group .std-input-group-item:last-child select,
.calculator .form-group .std-input-group .std-input-group-item:last-child textarea,
.calculator .form-group .std-input-group .std-input-group-item:last-child span.select2 .select2-selection {
  border-radius: 0 2px 2px 0;
}

.calculator .calculation-detail {
  line-height: normal;
}
.calculator .calculation-detail p {
  margin-bottom: 0;
  margin-top: 0;
}

.btn.btn-calc-mode,
.calculator .add-to-cart,
.calculator .offer-request {
  padding: 10px 20px;
  text-wrap: initial;
  transition: opacity 250ms ease;
  width: 100%;
}
.calculator .add-to-cart,
.calculator .offer-request {
  display: flex;
   column-gap: 10px;
   align-items: center;
   justify-content: center;
  text-align: left;
}
.calculator .add-to-cart:active,
.calculator .add-to-cart:focus,
.calculator .add-to-cart:hover {
  background-color: #ed1c24;
  border-color: #ed1c24;
  color: #ffffff;
  opacity: .75;
}
.calculator .add-to-cart i,
.calculator .offer-request i {
  margin: 0;
}
.calculator .offer-request {
  background-color: #3B5999;
  border-color: #3B5999;
  color: #ffffff;
}
.calculator .offer-request:active,
.calculator .offer-request:focus,
.calculator .offer-request:hover {
  background-color: #3B5999;
  border-color: #3B5999;
  color: #ffffff;
  opacity: .75;
}
.calculator #calculator-send-offer-request {
  font-size: 18px;
  height: 50px;
  margin: 10px 0 15px 0;
  max-width: 350px;
}

@media only screen and (width < 450px) {
  .row--calculation_totals--buttons {
    display: flex;
    align-items: center;
    flex-flow: column;
    row-gap: 10px;
  }
}
@media only screen and (450px <= width) {
  .row--calculation_totals--buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 25px;
  }
  .calculator .add-to-cart,
  .calculator .offer-request {
    align-self: stretch;
    max-width: 350px;
    max-width: fit-content;
  }
}
@media only screen and (768px <= width) {
  .calculator .add-to-cart,
  .calculator .offer-request {
    min-width: 220px;
    max-width: 320px;
    max-width: fit-content;
  }
}

.calculator .product-discount {
  background-color: #ed1c24;
  border-radius: 2px 3px 2px 2px;
  color: #ffffff;
  font-size: 12px;
  padding: .6em 1.2em .4em;
  text-transform: uppercase;
}

.calculator .title {
  color: #2a2a2a;
  font-size: 24px;
  font-weight: 700;
  line-height: 34px;
  margin-top: 0;
  margin-bottom: 0;
}

.calculator .title small {
  color: #2a2a2a;
}

.calculator .subtitle {
  color: #2a2a2a;
  font-size: 17px;
  font-weight: 500;
  text-transform: uppercase;
}
.calculator .subtitle small {
  color: #2a2a2a;
  font-size: 0.8em;
  font-style: italic;
  text-transform: capitalize;
}

@media only screen and (width < 768px) {
  .calculator .title {
    margin-bottom: 4px;
  }

  .calculator .subtitle + p {
    margin-bottom: 0;
  }

  .calculator .subtitle + p + p {
    margin-bottom: 12px;
  }
}


.calculator .row.mode-full .order-detail__price {
  flex-grow: 1;
  font-size: 1.15em;
  font-weight: 500;
  margin-top: 10px;
  text-align: right;
}

.calculator .has-error p,
.calculator .has-error .subtitle small {
  color: #ed1c24;
}

.calculator .has-error span.error {
  background-color: transparent;
  color: #ed1c24;
  line-height: 1.6em;
}

#calculator-client-details input.form-control,
#calculator-client-details select.form-control,
#calculator-client-details textarea.form-control {
  background-color: #ffffff;
  border: 1px solid #cccccc;
}

#calculator-client-details .has-error input.form-control,
#calculator-client-details .has-error select.form-control,
#calculator-client-details .has-error textarea.form-control {
  border-color: #a94442
}

.calculator .calculator-item .has-error input,
.calculator .calculator-item .has-error select,
.calculator .calculator-item .has-error textarea {
  border-color: #a94442;
}

.calculator h3 {
  margin-top: 0;
}

.calculator label,
.calculator legend {
  color: #282828;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 0;
}
.calculator .has-error label,
.calculator .has-error legend {
  color: #ed1c24;
}

.calculator fieldset label {
  font-weight: 400;
  margin-left: 6px;
}

.calculator legend {
  border-bottom: unset;
}

.calculator sup {
  color: inherit;
  font-size: .8em;
}


.calculator .alert-info,
.calculator .alert-info i {
  background-color: #d9edf7;
}


.calculator .alert-warning,
.calculator .alert-warning i {
  background-color: #fcf8e3;
}

a.lightbox-popup {
  cursor: zoom-in;
  transition: opacity 200ms ease;
}

a.lightbox-popup:hover {
  opacity: .75;
}

.order-detail__select--color {
  float: left;
  height: 26px;
  width: 80px;
  /* width: 35px; */
}
/* @media only screen and (375px <= width < 425px) {
  .order-detail__select--color {
    width: 55px;
  }
}
@media only screen and (425px <= width) {
  .order-detail__select--color {
    width: 80px;
  }
} */

.order-detail__select--image {
  width: auto;
  margin-top: -6px;
  max-height: 36px;
}

.order-detail__select--text {
  margin-left: 8px;
}

.order-detail__select--color.ral1002,
.kivitelek .kivitel.ral1002 button {
  background-color: rgb(198,166,100);
  border-color: #ffffff;
  color: rgb(000,000,000);
}

.order-detail__select--color.ral1015,
.kivitelek .kivitel.ral1015 button {
  background-color: rgb(230,214,144 );
  border-color: #ffffff;
  color: rgb(000,000,000);
}

.order-detail__select--color.ral3000,
.kivitelek .kivitel.ral3000 button {
  background-color: rgb(175,043,030);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral3005,
.kivitelek .kivitel.ral3005 button {
  background-color: rgb(94, 33, 41);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral3009,
.kivitelek .kivitel.ral3009 button {
  background-color: rgb(100,036,036);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral3011,
.kivitelek .kivitel.ral3011 button {
  background-color: rgb(120,031,025);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral5010,
.kivitelek .kivitel.ral5010 button {
  background-color: rgb(014,041,075);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral6005,
.kivitelek .kivitel.ral6011 button {
  background-color: rgb(47, 69, 56);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral6011,
.kivitelek .kivitel.ral6011 button {
  background-color: rgb(088,114,070);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral6020,
.kivitelek .kivitel.ral6020 button {
  background-color: rgb(046,058,035);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral7011,
.kivitelek .kivitel.ral7011 button {
  background-color: rgb(67, 75, 77);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral7016,
.kivitelek .kivitel.ral7016 button {
  background-color: rgb(041,049,051);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral7024,
.kivitelek .kivitel.ral7024 button {
  background-color: rgb(71, 74, 81);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral8003,
.kivitelek .kivitel.ral8003 button {
  background-color: rgb(115, 66, 34);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral8004,
.kivitelek .kivitel.ral8004 button {
  background-color: rgb(142,064,042);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral8017,
.kivitelek .kivitel.ral8017 button {
  background-color: rgb(069,050,046);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral8019,
.kivitelek .kivitel.ral8019 button {
  background-color: rgb(64, 58, 58);
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.order-detail__select--color.ral9002,
.kivitelek .kivitel.ral9002 button {
  background-color: rgb(231,235,218);
  border-color: #ffffff;
  color: rgb(000,000,000);
}

.order-detail__select--color.ral9005,
.kivitelek .kivitel.ral9005 button {
  background-color: rgb(10,10,10);
  border-color: #ffffff;
  color: #ffffff;
}

.order-detail__select--color.ral9006,
.kivitelek .kivitel.ral9006 button {
  background-color: rgb(165,165,165);
  border-color: #ffffff;
  color: rgb(000,000,000);
}

.order-detail__select--color.ral9007,
.kivitelek .kivitel.ral9007 button {
  background-color: rgb(143,143,143);
  border-color: #ffffff;
  color: rgb(000,000,000);
}

.order-detail__select--color.horganyzott,
.kivitelek .kivitel.horganyzott button {
  background-color: #bec2c5;
  border-color: #ffffff;
  color: rgb(000,000,000);
}

.order-detail__select--color.diofamintas,
.kivitelek .kivitel.diofamintas button {
  background-image: url('./image/dio_bg.png');
  border-color: #ffffff;
  color: rgb(255,255,255);
}

.calculator .btn-modes {
  display: flex;
  width: 100%;
}

.calculator .btn-modes .btn {
  width: 50%;
}

.calculator .btn-group > .btn-calc-mode {
  background-color: #fafafa;
  border: 1px solid #bbbbbb;
  border-radius: 2px;
  color: inherit;
  display: flex;
   align-items: center;
   column-gap: 10px;
   justify-content: center;
  flex: 0 1 100%;
  font-size: 15px;
  font-weight: 500;
  padding: 12px 10px 10px;
  text-align: left;
  text-transform: capitalize;
  text-transform: math-auto;
  transition: background 200ms ease;
}
.calculator .btn-group > .btn-calc-mode:hover {
  background-color: #e9e9e9;
}
.calculator .btn-group > .btn-calc-mode.selected {
  background-color: #3B5999;
  color: #ffffff;
}
.calculator .btn-group > .btn-calc-mode span {
  text-wrap: initial;
}

.has-error span.error {
  background-color: #ffffff;
  color: #a94442;
  font-size: 12px;
  font-weight: 500;
  padding: 0;
}


.select2-container {
  width: 100% !important;
}

.select2-container--default .select2-selection--single {
  min-height: 40px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  padding: 7px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 40px;
}

.select2-container--default .select2-results__option--disabled{
  display: none !important;
}

.order-detail__hidden-input {
  pointer-events: none;
  position: absolute;
    top: 7px;
    left: 13px;
  z-index: 9;
}

.has-discount .order-detail__hidden-input {
  bottom: 19px;
}

.has-discount input.price-both + .order-detail__hidden-input {
  bottom: 29px;
}

.order-detail__hidden-input .order-detail__hidden-input--value {
  opacity: 0;
}

.order-detail__hidden-input .order-detail__hidden-input--unit {
  color: #282828;
}
input:disabled + .order-detail__hidden-input .order-detail__hidden-input--unit,
select:disabled + .order-detail__hidden-input .order-detail__hidden-input--unit,
textarea:disabled + .order-detail__hidden-input .order-detail__hidden-input--unit {
  opacity: .6;
}

.offer-request-form {
  background-color: #f0f0f0;
  border: 1px solid #cccccc;
  border-top: unset;
  padding: 0;
  border-radius: 2px;
  overflow-x: scroll;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  padding: 20px 0;
}
@media only screen and (width < 1200px) {
  .offer-request-form {
    margin-left: -15px !important;
    margin-right: -15px !important;
  }
}
.offer-request-form .row {
  margin-bottom: 0 !important;
}

.offer-request-form .form-group textarea {
  height: auto;
  line-height: initial;
}

.offer-request-form .form-group {
  margin-bottom: 25px;
}

.calculator-items-wrapper {
  background-color: #f0f0f0;
  border: 1px solid #cccccc;
  border-radius: 2px 2px 0 0;
  padding: 25px 0;
}

@media only screen and (1200px <= width) {
  .calculator-items-wrapper {
    margin: 0;
    padding: 25px 0;
  }
}

.calculator-items {
  padding: 0;
}

.calculator-item {
  display: grid;
   grid-template-columns: 9fr 10fr;
   column-gap: 15px;
  padding: 15px;
}
@media only screen and (width < 768px) {
  .calculator-item {
    display: flex;
    column-gap: 15px;
    padding: 15px;
    flex-flow: column;
    row-gap: 25px;
  }
}
.calculator-new-size {
  margin: 0;
  position: relative;
}
.calculator-new-size {
  padding: 15px 0 10px;
}
@media only screen and (768px <= width) {
  .calculator-item {
    /* start new css */
    align-items: start;
    column-gap: 40px;
    grid-template-columns: 6fr 7fr 4fr;
    /* end new css */
    padding: 35px 25px;
  }
  .calculator-new-size {
    padding: 15px 25px 10px;
  }
}
.calculator-item:nth-child(even) {
  background-color: #e0e0e0;
}

.calculator-item .calculator-item--image {
  align-self: center;
  margin-top: 20px;
}

/* .calculator-item img.sandwichpanel-image {
  width: 115%;
  margin-left: -10%;
  max-width: 350px;
} */
@media only screen and (width < 768px) {
  .calculator-item img.sandwichpanel-image {
    max-width: 300px;
  }
}

.calculator-item .calculator-item--inputs {
  display: grid;
   grid-template-rows: max-content;
   grid-template-columns: 1fr;
   row-gap: 25px;
}
@media only screen and (768px <= width) {
  .calculator-item .calculator-item--inputs {
    display: grid;
     grid-template-columns: 1fr 1fr;
     column-gap: 40px;
  }
}

.calculator-item .calculator-item--details {
  display: grid;
   grid-template-rows: max-content;
   grid-template-columns: 1fr;
   row-gap: 20px;
}
@media only screen and (width < 768px) {
  .calculator-item .calculator-item--details {
    column-gap: 15px;
    grid-column-start: 1;
    grid-column-end: 3;
    grid-template-columns: 9fr 10fr;
  }
}

.calculator-item button.calculator-delete-item {
  background-color: transparent;
  color: #ed1c24;
  font-size: 12px;
  margin: -5px 15px -10px -4px;
  padding: 0;
  justify-self: left;
}
@media only screen and (width < 768px) {
  .calculator-item button.calculator-delete-item {
    justify-self: right;
    margin: 0 -4px -15px 15px;
  }
}
@media only screen and (768px <= width) {
  .calculator-item button.calculator-delete-item {
    font-size: 13px;
  }
}

.calculator-item h5 {
  margin-bottom: 6px;
}

.calculator-items .select2-container--default .select2-selection--single,
.calculator-items .calculator-item input,
.calculator-items .calculator-item input:focus,
.calculator-items .calculator-item input:hover {
  background-color: #ffffff;
  border: 1px solid #cccccc;
  border-radius: 2px;
  transition: opacity 200ms ease;
}

.calculator-items .calculator-item input:disabled,
.calculator-items .calculator-item input:disabled + .order-detail__hidden-input.disabled {
  opacity: .6;
}

.select2-container--default .select2-selection--single:hover,
.calculator-item input:hover {
  opacity: .8;
}

/* Hide arrows from numeric input fields */
.calculator-item input[type="number"] {
  font-size: 14px;
  height: auto;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}
.calculator-item input[type="number"]::-webkit-inner-spin-button,
.calculator-item input[type=number]::-webkit-outer-spin-button { 
  -webkit-appearance: none;
}

.calculator-item p.unit-price {
  font-size: 12px;
  line-height: 20px;
  margin: 0;
}
@media only screen and (375px <= width) {
  .calculator-item p.unit-price {
    font-size: 14px;
  }
}
.calculator-item p.unit-price span.text-sale {
  color: #ed1c24;
  font-weight: 500;
}

.calculator-item p.total-price {
  color: #ed1c24;
  font-size: 18px;
}

.btn.offer-request,
.btn.offer-request:active,
.btn.offer-request:focus,
.btn.offer-request:hover {
  color: #ffffff;
}
.btn.btn-offer-request:disabled {
  opacity: .75;
}

button#button-add-new-size {
  background-color: #495057;
  text-transform: initial;
  width: 100%;
  border-radius: 2px;
  transition: opacity 200ms ease;
}
button#button-add-new-size:hover {
  opacity: .85;
}