/* CSS Document */
/*
@import url('https://fonts.googleapis.com/css2?family=Bio Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
*/

/* ADD VP_FONTS  */
@import "vp_fonts.css";

/*GLOBALS*/
body {
    position: relative;
    font-family: 'Bio Sans', sans-serif;
    background: #f1f2f4;
    overflow-y: scroll;
}

::-moz-selection {
    background: none;
}

input::selection {
    background: #f38b03;
    color: white;
}

input::-moz-selection {
    background: #f38b03;
    color: white;
}

button:focus:not(:focus-visible) {
    outline: none;
}

.h2,
h2 {
    font-family: Archivo;
    font-style: normal;
    font-weight: 500;
    font-size: 1.75rem;
    line-height: 2.125rem;
    text-align: center;
    color: #2D3E52;
}

.h3,
h3 {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 1.125rem;
    line-height: 148.5%;
    text-align: center;
    letter-spacing: 0.05em;
    color: #2D3E52;
}

.h4,
h4 {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.25rem;
    letter-spacing: 0.01em;
    color: #1C2C3E;
}

.p,
p {
    color: #2D3E52;
}

ul {
    list-style-type: none;
}

.red {
    color: #EA5B3A;
}

.green {
    color: #68CA66;
}

.orange {
    color: #FFD249;
}

.blue {
    color: #56CCF2;
}

.btn:focus,
.btn:active {
    outline: none !important;
    box-shadow: none;
}

input[type=text] {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.875rem;
    line-height: 1.0625rem;
    letter-spacing: 0.025em;
    color: #79899B;
}

.form-control:focus {
    border-color: inherit;
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: transparent;
    border: none;
    border-bottom: 0.125rem solid #F38B03;
}

.bg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100% !important;
    z-index: -1;
}

.bg:before {
    content: '';
    background: #f6f7f9;
    transform: skew(-30deg);
    position: fixed;
    width: 100%;
    height: 100%;
    left: -50%;
    z-index: 0;
}

.center-logo {
    padding-bottom: 2rem;
}

.start-project {
    padding-bottom: 1.5rem;
}

.btn-orange-with-arrow {
    width: 5rem;
    height: 2.25rem;
    background: #F38B03;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    color: #FEFEFE;
    margin-bottom: 25px;
    border-radius: 0rem;
}

.btn-orange-with-arrow:hover {
    color: #F38B03;
    background-color: transparent;
    border: 0.0625rem solid #F38B03;
}

.part-number-text {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 1.125rem;
    line-height: 148.5%;
    text-align: center;
    letter-spacing: 0.05em;
    margin-bottom: 3rem;
    margin-top: 30px;
}

.patch-number {
    max-width: 23.75rem;
    margin: 0 auto;
}

.patch-number-input {
    background-color: transparent;
    border: none;
    border-bottom: 0.125rem solid #F38B03;
    margin-right: 1.25rem;
    border-radius: 0rem
}

.btn-patch-number-go {
    border-color: #F38B03;
    color: #F38B03;
    border-radius: 0rem;
}

.btn-patch-number-go:hover {
    background-color: #F38B03;
    border-color: #F38B03;
    color: #FFFFFF;
}

#config,
#summary {
    margin-top: 3.125rem;
}

.btn-reset {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    color: #EA5B3A;
    border: 0.0625rem solid #EA5B3A;
    border-radius: 0rem;
}

.btn-reset:hover {
    color: #ffffff;
    background-color: #EA5B3A;
}

.config-bar-title {
    margin-top: 1.875rem;
}

.config-array {
    margin-top: 2rem;
}

.config-array > ul {
    padding: 0rem;
}

.config-array > ul > li {
    padding-bottom: 0.625rem;
    cursor: pointer;
}

.config-array > ul > li > span {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.75rem;
    line-height: 0.9375rem;
    letter-spacing: 0.04em;
    color: #79899B;
}

.config-array > ul > li > p {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.0625rem;
    letter-spacing: 0.025em;
    color: #2D3E52;
    margin-bottom: 0rem;
    margin-top: 0.5rem;
}

.config-array > ul > li > hr {
    margin-top: 0.3125rem;
    margin-bottom: 0rem;
    border: 0;
    border-top: 0.125rem solid #b2b2b2;
}

.config-array .fa-chevron-right {
    font-size: 0.57rem;
    margin-top: 0.25rem;
}

.config-array hr.active {
    border-color: #fd7e14;
}

.cable-code {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 500;
    font-size: 1.75rem;
    line-height: 2.125rem;
    text-align: center;
    color: #2D3E52;
}

.cable-code-title {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 1.125rem;
    line-height: 1.375rem;
    letter-spacing: 0.075em;
    color: #79899B;
    margin-top: -0.9375rem;
}

.coil-image {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.select-elements {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.element {
    background: white;
    box-shadow: 0rem 0.0313rem 0.0625rem rgba(0, 0, 0, 0.08), 0rem 0.0625rem 0.125rem rgba(0, 0, 0, 0.08);
    margin-bottom: 0.3125rem;
    border-bottom: 0.125rem solid #f8f8f8;
    height: 95%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.select-elements .element.active {
    border-bottom: 0.125rem solid #F38B03;
}

.element:hover {
    border-bottom: 0.125rem solid #F38B03;
    cursor: pointer;
}

.caption > h4 {
    padding: 0rem 0.625rem 0.9375rem 0.625rem;
}

.btn-next {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    background-color: #F38B03;
    color: #ffffff;
    border-radius: 0rem;
    width: 4.4375rem;
    height: 2.25rem;
    margin-right: 1.1875rem;
}

.btn-next:hover {
    border: 0.0625rem solid #F38B03;
    background-color: transparent;
    color: #F38B03;
}

.btn-next.disabled {
    border: 0.0625rem solid #9e9e9e;
    background-color: #d7d7d7;
    color: #757575;
}

.btn-finish {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    background-color: #F38B03;
    color: #ffffff;
    border-radius: 0rem;
    width: 4.4375rem;
    height: 2.25rem;
}

.btn-finish:hover {
    border: 0.0625rem solid #F38B03;
    background-color: transparent;
    color: #F38B03;
}

.btn-finish.disabled {
    border: 0.0625rem solid #9e9e9e;
    background-color: #d7d7d7;
    color: #757575;
}

.btn-prev {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    border: 0.0625rem solid #F38B03;
    background-color: transparent;
    color: #F38B03;
    border-radius: 0rem;
    width: 4.4375rem;
    height: 2.25rem;
    margin-right: 1.1875rem;
}

.btn-prev:hover {
    border: 0.0625rem solid #F38B03;
    background-color: #F38B03;
    color: #ffffff;
}

.summary-title {
    background-color: #ffffff;
    /*box-shadow: 0rem 0.0625rem 0.125rem rgba(0, 0, 0, 0.07), 0rem 0.125rem 0.25rem rgba(0, 0, 0, 0.07);*/
    /*padding: 1.875rem 0.9375rem;*/
    margin-bottom: 2rem;
}

.summary-title > h2 {
    text-align: left;
    margin-bottom: 0rem;
}

/* .invoice {
  background-color: #ffffff;
  box-shadow: 0rem 0.0625rem 0.125rem rgba(0, 0, 0, 0.07), 0rem 0.125rem 0.25rem rgba(0, 0, 0, 0.07);
  padding: 1.875rem 1.875rem;
  margin-bottom: 2rem;
} */

.btn-summary {
    border-radius: 0rem;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    color: #F38B03;
    border: 0.0625rem solid #F38B03;
}

.btn-summary:hover {
    background-color: #F38B03;
    color: #ffffff;
}

.btn-edit {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    color: #F38B03;
    border-radius: 0rem;
}

.btn-edit:hover {
    background-color: #F38B03;
    color: #ffffff;
}

/* button#dropdownBOMButton {
  position: absolute;
  right: 35px;
  top: 30px;
  background: transparent;
  border-color: transparent;
  color: #f38b03;
} */

button#dropdownBOMButton:focus {
    box-shadow: none;
}

.hr-summary {
    margin-top: 2rem;
    margin-bottom: 2rem;
    border: 0;
    border-top: 0.0625rem solid #D4D7DB;
}

.invoices {
    width: 100%;
}

.invoice-data-item-img {
    width: 247px;
}

.invoice-data-cable-code {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.625rem;
    letter-spacing: 0.025em;
    color: #2D3E52;
    text-align: left;
}

.invoice-data-cable-transcription {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.875rem;
    line-height: 1.0625rem;
    text-align: center;
    letter-spacing: 0.025em;
    color: #1C2C3E;
    width: 85%;
}

.quote-form {
    background-color: #ffffff;
    box-shadow: 0rem 0.0625rem 0.125rem rgba(0, 0, 0, 0.07), 0rem 0.125rem 0.25rem rgba(0, 0, 0, 0.07);
    padding: 1.875rem 1.875rem;
    margin-bottom: 2rem;
}

.quote-form .qf-item {
    position: relative;
    margin-bottom: 0.5rem;
    padding-top: 0.9rem;
}

.quote-form .qf-item input {
    height: 2.7rem;
    border: none;
    border-bottom: 1px solid #cdcdcd;
    border-radius: 0;
    transition: all .2s;
    width: 100%;
    background: transparent;
    color: inherit;
    font-size: inherit;
    padding: 0;
    /*min-height: 3rem;
      line-height: 4rem;*/
    -webkit-appearance: none;
    -moz-appearance: none;
    margin: 0;
    font-weight: 500;
}

.quote-form .qf-item input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
select:focus,
textarea:focus {
    border-color: #bbb;
    outline: 0;
}

.qf-item.is-active input:not([type=button]):not([type=checkbox]):not([type=radio]):not([type=file]) ~ .qf-label {
    color: #f38b03;
    opacity: 1;
    transform: translate(0);
    top: 0;
    left: 0;
    font-style: normal;
    font-size: 80%;
}

.qf-item.is-filled input:not([type=button]):not([type=checkbox]):not([type=radio]):not([type=file]) ~ .qf-label {
    transform: translate(0);
    top: 0;
    left: 0;
    font-style: normal;
    font-size: 80%;
}

.quote-form .qf-label {
    transform-origin: top left;
    position: absolute;
    opacity: .5;
    transition: all .2s;
    white-space: nowrap;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.75rem;
    line-height: 0.9375rem;
    letter-spacing: 0.04em;
    color: #79899B;
    transform: translateY(2rem) scale(1);
    top: 0rem;
    left: 0.0rem;
}

.required {
    color: #ea5b3a !important;
    font-size: inherit !important;
    top: 0 !important;
    font-weight: bolder;
}

.quote-form .helper-text {
    position: relative;
    display: block;
    font-size: 0.8rem;
    width: 100%;
    transition: all .2s ease-in-out;
    margin-top: .2rem;
    color: #ea5b3a;
    font-weight: 700;
}


.invoice-mail {
    background-color: #ffffff;
    box-shadow: 0rem 0.0625rem 0.125rem rgba(0, 0, 0, 0.07), 0rem 0.125rem 0.25rem rgba(0, 0, 0, 0.07);
    padding: 1.875rem 1.875rem;
    margin-bottom: 2rem;
}


/*
.input-div {
  display: block;
  padding-top: 0.9375rem;
  margin-bottom: 3.125rem;
  position: relative;
}
.input-div > input {
  height: 2rem;
}
.input-div > input, .input-div > textarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  background-color: transparent;
  color: #1C2C3E;
  border: none;
  border-bottom: 0.125rem solid #b2b2b2;
  outline: none;
  width: 100%;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 0rem;
  background-image: none;
  font-family: Bio Sans;
  font-style: normal;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.0625rem;
  letter-spacing: 0.025em;
}
.input-div > label {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  overflow-x: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: Bio Sans;
  font-style: normal;
  font-weight: normal;
  font-size: 0.75rem;
  line-height: 0.9375rem;
  letter-spacing: 0.04em;
  color: #79899B;
} */

/* NEW DESIGN */


.input-div {
    position: relative;
    /* margin: 45px 0; */
    display: block;
    padding-top: 0.9375rem;
    margin-bottom: 3.125rem;
}

/* textarea {
  resize: none;
} */

.input-div > input,
.input-div > textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    background-color: transparent;
    color: #1C2C3E;
    border: none;
    border-bottom: 0.125rem solid #b2b2b2;
    outline: none;
    width: 100%;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 0rem;
    background-image: none;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.0625rem;
    letter-spacing: 0.025em;
}

.input-div > input:focus,
textarea:focus {
    outline: none;
}

.input-div > input:focus ~ label,
.input-div > input:valid ~ label,
textarea:focus ~ label,
textarea:valid ~ label {
    top: -14px;
    font-size: 12px;
    color: #79899B;
}

.input-div > input:focus ~ .bar:before,
textarea:focus ~ .bar:before {
    width: 100%;
}


.input-div > label {
    position: absolute;
    left: 0px;
    top: 10px;
    display: block;
    width: 100%;
    overflow-x: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.75rem;
    line-height: 0.9375rem;
    letter-spacing: 0.04em;
    color: #79899B;
    pointer-events: none;
    -webkit-transition: 300ms ease all;
    transition: 300ms ease all;
}

.bar {
    position: relative;
    display: block;
    width: 100%;
}

.bar:before {
    content: "";
    height: 2px;
    width: 0;
    bottom: 0px;
    position: absolute;
    background: #F38B03;
    -webkit-transition: 300ms ease all;
    transition: 300ms ease all;
    left: 0%;
}

/* NEW DESIGN */


.mail-agree {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.8125rem;
    line-height: 1rem;
    color: #000000;
    padding-top: 0.3125rem;
}

.btn-email {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    background: #F38B03;
    text-transform: uppercase;
    color: #FEFEFE;
    border-radius: 0rem;
    margin-top: 2rem;
}

.btn-email:hover {
    background-color: #ffffff;
    border: 0.0625rem solid #F38B03;
    color: #F38B03;
}

ul.cart {
    padding-left: 0rem;
    margin-top: 60px;
}

.cart-input-div {
    display: block;
    padding-top: 0.9375rem;
    /*    margin-bottom: 50px;*/
    position: relative;
}

.cart-input-div > input,
.cart-input-div > select {
    height: 2rem;
}

.cart-input-div > input,
.cart-input-div > select {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    background-color: transparent;
    color: #1C2C3E;
    border: none;
    border-bottom: 0.125rem solid #b2b2b2;
    outline: none;
    width: 4.375rem;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 0rem;
    background-image: none;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.0625rem;
    letter-spacing: 0.025em;
}

.cart-input-div > label {
    position: absolute;
    top: 0;
    display: block;
    width: 100%;
    overflow-x: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.75rem;
    line-height: 0.9375rem;
    letter-spacing: 0.04em;
    color: #79899B;
}

.cart-input-div > span {
    position: absolute;
    top: 1.5rem;
    left: 4.375rem;
    display: block;
    width: 100%;
    overflow-x: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 0.625rem;
    line-height: 0.9375rem;
    letter-spacing: 0.04em;
    color: #79899B;
}

input[data-name='len'] {
    width: 4.375rem;
}

input[data-name='boe1'] {
    width: 7.1875rem;
    padding-right: 58px;
}

input[data-name='boe2'] {
    width: 7.1875rem;
    padding-right: 58px;
}

input[data-name='qt'] {
    width: 4.375rem;
}

select[data-name='units'] {
    width: 5.625rem;
}

.carousel-inner {
    min-height: 28.125rem;
    padding-bottom: 3.125rem;
}

table.table-fit {
    width: auto !important;
    table-layout: auto !important;
}

table.table-fit thead th,
table.table-fit tfoot th {
    width: auto !important;
}

table.table-fit tbody td,
table.table-fit tfoot td {
    width: auto !important;
}

th.cable-id-summary {
    vertical-align: bottom;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 1.125rem;
    line-height: 1.375rem;
    align-items: center;
    letter-spacing: 0.075em;
    color: #79899B;
}

th.cable-remove-icon {
    vertical-align: bottom;
    color: red;
    font-size: 1.125rem;
    line-height: 1.375rem;
    align-items: center;
    letter-spacing: 0.075em;
}

.cable-remove-icon .fa-trash-alt {
    cursor: pointer;
}


.config-image-array {
    position: relative;
    height: auto;
    min-height: 25.6875rem;
}

.array-part {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    transition: background-image 0.2s ease-in-out;
    top: 0rem;
    left: 0rem;
    position: absolute;
    width: 100%;
    height: 100%;
}

.coil {
    z-index: 10;
}

.cable-right {
    z-index: 2;
}

.cable-left {
    transform: scaleX(-1);
    z-index: 2;
}

.side-right {
    z-index: 3;
}

.side-left {
    transform: scaleX(-1);
    z-index: 3;
}

.fiber-count {
    position: absolute;
    display: none;
}

.connector.side-right {
    z-index: 12;
}

.connector.side-left {
    z-index: 11;
}

.count-left {
    top: 5.3125rem;
    left: 3.125rem;
    padding: 0.3125rem;
    background-color: #79889d;
    width: 5.625rem;
    height: 3.5625rem;
    color: white;
}

.count-right {
    top: 5.3125rem;
    right: 3.125rem;
    left: auto;
    padding: 0.3125rem;
    background-color: #79889d;
    width: 5.625rem;
    height: 3.5625rem;
    color: white;
}

p.number-box {
    color: white;
    font-size: 1.375rem;
    margin-bottom: -0.625rem;
}

span.number-box-subtext {
    font-size: 0.75rem;
}

.custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #F38B03;
    background-color: #F38B03;
}

button:disabled {
    background: #79889d;
}

button[disabled]:hover {
    background: #79889d;
    color: #ffffff;
    border-color: #79889d;
    cursor: not-allowed;
}

.input-alert {
    border-color: red;
}

.right-panel {
    margin-left: 25%;
    margin-top: -3.125rem;
}

#p_container_carousel {
    max-width: 43.75rem;
    margin: 0 auto;
}

li.nav-item.incorrect p[data-type=item_title] {
    text-decoration: line-through;
    color: #ff000063;
}

div.default-item {
    width: 1.25rem;
    height: 1.5rem;
    background-image: url(../../img/default-item.png);
    background-size: contain;
    background-repeat: no-repeat;
    top: -0.4375rem;
    position: absolute;
    left: 0.8125rem;
}

.navbar-brand {
    position: absolute;
    left: 0.9375rem;
    top: 0.3125rem;
}

.navbar-toggle {
    z-index: 3;
}

.start-h2 {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.5rem;
    text-align: center;
    letter-spacing: 0.025em;
    color: #2D3E52;
    padding: 1.25rem;
}

.selected::selection {
    color: #ffffff !important;
    background: #F38B03 !important;
}

.cable-code::selection,
.invoice-data-cable-code::selection {
    color: #ffffff;
    background: #F38B03;
}

.table-responsive {
    overflow: hidden;
}

@media screen and (max-device-height: 34.375rem) {
    .center-logo {
        padding-bottom: 0.9375rem;
        width: 3.125rem;
    }

    .welcome-text {
        padding-bottom: 0rem;
    }

    .app-select {
        max-width: 70%;
        margin: 0 auto;
    }

    p.part-number-text {
        margin-bottom: 0.875rem;
        margin-top: 2rem;
    }

    .left-configuration-bar {
        padding-right: 0rem !important;
    }

    .config-bar-title {
        margin-top: 0.9375rem;
    }

    .h2,
    h2 {
        font-size: 1.25rem;
        margin-bottom: 0rem;
    }

    .cable-code {
        font-size: 1.5rem;
    }

    .cable-code-title {
        font-size: 0.9375rem;
    }

    .count-right {
        top: 0.625rem;
        right: -1.5625rem;
    }

    .count-left {
        top: 0.625rem;
        left: -1.5625rem;
    }

    .config-array {
        margin-top: 0rem;
    }

    .config-array > ul > li {
        padding-bottom: 0rem;
    }

    .config-array > ul > li > p {
        font-size: 0.6875rem;
    }

    .config-image-array {
        min-height: 40vh;
        width: 35vw;
        margin: 0 auto;
    }

    .img-fluid {
        max-width: 65%;
        height: auto;
    }

    .caption > h4 {
        padding: 0rem 0rem 0.9375rem 0rem;
    }

    .select-elements {
        margin-top: 0.9375rem;
        margin-bottom: 2rem;
    }

    .start-h2 {
        font-size: 1.0625rem;
    }

}

@media only screen and (min-width: 260px) and (max-width: 768px) {
    .table-responsive {
        overflow: auto;
    }

    .right-panel {
        margin-left: 0;
        margin-top: 0;
    }

    .config-image-array {
        min-height: 23vh;
        width: 80vw;
        margin: 0 auto;
    }

    .center-logo {
        display: none;
    }

    .welcome-text {
        padding-bottom: 0rem;
        padding-top: 4.0625rem;
    }

    .summary-title > h2 {
        font-size: large;
    }

    .invoice-data-cable-code {
        font-size: 1rem;
    }

    .small.invoice-data-cable-transcription {
        display: none;
    }

    .invoice-data-cable-transcription {
        font-family: Bio Sans;
        font-style: normal;
        font-weight: normal;
        font-size: 0.875rem;
        line-height: 1rem;
        text-align: center;
        letter-spacing: 0.025em;
        color: #1C2C3E;
    }

    .col-md-3[data-type="f_element"] {
        width: auto;
    }

    .element {
        max-width: 15vh;
        min-width: 15vh;
    }


    .count-left {
        top: -0.6rem;
        left: -1.8rem;
    }

    .count-right {
        top: -0.6rem;
        left: 14.8rem;
    }

    tr {
        max-width: 75vw;
        display: inline-block;
    }

    .app-select > div > div {
        max-width: 15vh;
        min-width: 15vh;
        padding-right: 5px;
        padding-left: 5px;
    }

    .navbar-brand {
        position: absolute;
    }

    .bg {
        display: none;
    }

    .start-h2 {
        font-size: 1rem;
    }

    .cable-code {
        font-size: 1.3rem;
    }

    .h2,
    h2 {
        font-size: 1.4rem
    }

    .h4,
    h4 {
        font-weight: 500;
        font-size: 10px;
    }

    .fas.pl-3.pr-5.fa-file-invoice {
        padding-right: 20px !important;
    }


    .total-cables {
        top: 45px !important;
        font-size: 14px !important;
        right: 16px !important;
    }

    /* .sub-total-cables {
      top: 45px !important;
      font-size: 12px !important;
      right: 0px !important;
      position: relative !important;
    } */
    .sub-total-cables {
        top: 90px !important;
        font-size: 12px !important;
        right: 15px !important;
        position: absolute !important;
    }

    img.drop-ico {
        margin-top: 60px !important;
    }

    .breakout-left {
        top: 40px !important;
        left: 0px !important;
    }

    .breakout-right {
        top: 40px !important;
        right: 0px !important;
    }
}

/* 

@media (max-height:700px) and (orientation:landscape){
    html{
        font-size:1.2vh;
    }
}
@media (max-height:550px) and (orientation:landscape){
    html{
        font-size:42.5%;
    }
}
@media (min-width:1921px) and (min-height:769px){
    html{
        font-size:72.5%;
    }
}
@media (min-width:2400px){
    html{
        font-size:82.5%;
    }
} */
#ie-alert {
    margin-top: -16px;
    background-color: #ffe595;
    position: fixed;
    width: 100%;
    z-index: 999;
    padding: 30px;
    display: none;
    color: #1c1910;
}

#mobile-alert {
    margin-top: -16px;
    background-color: #ffe595;
    position: fixed;
    width: 100%;
    z-index: 999;
    padding: 30px;
    display: none;
    color: #1c1910;
}

p.ie-alert-ico {
    font-size: 50px;
}

a.x-button {
    position: absolute;
    right: 10vh;
    font-size: 25px;
    z-index: 999;
    text-decoration: none;
    outline: none;
    color: #1c1910;
}

.d-menu {
    position: absolute;
    right: 0px;
    top: -15px;
}

.dropdown-toggle::after {
    display: none;
}

a.dropdown-item i {
    padding-right: 15px;
}

.dropdown-menu {
    border-radius: 0;
}

.app-content {
    background: #FFFFFF;
    box-shadow: 0px 0.5px 1px rgba(0, 0, 0, 0.08), 0px 1px 2px rgba(0, 0, 0, 0.08);
}

.app-content img {
    margin-top: 25px;
}

/* MODAL */
.modal-content {
    border-radius: 0px !important;
}

.close {
    padding: 10px
}

.custom-modal {
    margin-top: -30px;
}

.modal-icon {
    font-size: 4em;
}

.modal-h3 {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 36px;
}

.modal-p {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 21px;
    padding: 25px;
    text-align: center;
    letter-spacing: 0.025em;
}

[role=button] {
    cursor: pointer;
}

.navbar-brand-ext {
    position: relative;
    left: 0.9375rem;
    top: 0.7125rem;
}

.btn-orange-active {
    background: #F38B03;
    text-transform: uppercase;
    color: #FEFEFE;
    border-radius: 0rem;
}

.btn-orange-active:hover {
    color: #F38B03;
    background-color: transparent;
    border: 0.0625rem solid #F38B03;
}

img.drop-ico {
    margin-top: -4px;
}

.dropdown-menu.show > span {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    margin-left: 17px;
    margin-bottom: 5px;
    line-height: 18px;
    display: flex;
    align-items: center;
    letter-spacing: 0.05em;
    color: #79899B;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: .25rem 1.2rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.total-cables {
    position: absolute;
    top: 8px;
    right: 16px;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    text-transform: uppercase;
    color: #79899B;
}

.total-cables-count {
    color: black;
}

.add-lenght-buttons {
    position: relative;
    width: 100%;
}

.sub-total-cables {
    position: absolute;
    top: 50px;
    right: 15px;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: var(--tertiary-main);
}

.sub-total-cables-text {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 24px;
    align-items: center;
    color: var(--tertiary-main);
}

.sub-total-cables-count {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 17px;
    text-align: right;
    letter-spacing: 0.05em;
    color: var(--text-primary);
}

.clpse-icon {
    color: var(--text-primary);
}


ul.navbar-nav {
    position: absolute;
    right: 30px;
    top: 10px;
}

li.nav-item.active {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    z-index: 1;
}

a.nav-link {
    /* color: #f38b03 !important; */
    padding: 3px;
}

a.nav-link:hover {
    color: white !important;
    padding: 3px;

}

.go-go-btn {
    color: #2d3e52 !important;
    border: 0.0625rem solid #2d3e52;
}

.go-go-btn:hover {
    background-color: #2d3e52;
}


.break-right {
    display: none;
}

.break-left {
    display: none;
}

.break-right-tt {
    display: none;
}

.break-left-tt {
    display: none;
}


.breakout-left {
    top: 250px;
    left: 175px;
    z-index: 100;
    border: 2px solid #e97f22;
    background-color: #ffffff;
    width: 78px;
    height: 27px;
    border-radius: 35px;
    color: white;
    position: absolute;
}

.breakout-right {
    top: 250px;
    right: 175px;
    z-index: 100;
    border: 2px solid #e97f22;
    background-color: #ffffff;
    width: 78px;
    height: 27px;
    border-radius: 35px;
    color: white;
    position: absolute;
}

.breakout-number-box {
    color: #170000;
}

span.number-box-subtext-breakout {
    font-size: 0.8rem;
}

span.number-box-subtext2 {
    font-size: 0.75rem;
}

span.number-box-subtext3 {
    font-size: 0.75rem;
}


/* NEW */
.bill-header {
    background-color: var(--white);
    padding: 14px;
    min-height: 120px;
    position: relative;
    width: 100%;
    box-shadow: var(--drop-shadow2);
}

.bill-title {
    color: var(--secondary-main);
}

.bill-right-buttons {
    position: absolute;
    right: 15px;
    top: 18px;
}

.bill-total-items {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: var(--tertiary-main);
    position: absolute;
    right: 15px;
    bottom: 15px;
}

.bill-total-items-count {
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.05em;
    color: var(--text-primary);
}

/* .bill-new-item {} */

.invoice {
    background-color: #ffffff;
    width: 100%;
    position: relative;
    box-shadow: 0rem 0.0625rem 0.125rem rgba(0, 0, 0, 0.07), 0rem 0.125rem 0.25rem rgba(0, 0, 0, 0.07);
    padding: 1.875rem 1.875rem;
    margin-bottom: 2rem;
}

/* .invoice-data:not(:first-child) {
  margin-top: 41px;
} */

.invoice-data-image {
    position: relative;
}

.cable-img {
    opacity: 1;
    display: block;
    transition: .5s ease;
    backface-visibility: hidden;

}

.cable-overlay {
    transition: .5s ease;
    opacity: 0;
    position: absolute;
    top: 0px;
    /* top: 50%;
       left: 50%;
       transform: translate(-50%, -50%); */
    text-align: center;
}

.invoice-data-image:hover .cable-img {
    opacity: 0.7;
}

.invoice-data-image:hover .cable-overlay {
    opacity: 1;
}

.invoice-data:not(:first-child) .hr-invoice {
    margin: 30px 0px;
    display: block !important;
}

/* MODAL  */
.quote-form {
    background-color: #ffffff;
    box-shadow: none;
    padding: 1.875rem 1.875rem;
    margin-bottom: 2rem;
}

.modal-content {
    border-radius: 0px !important;
}

.close {
    padding: 10px
}

.custom-modal {
    margin-top: -30px;
}

.modal-icon {
    font-size: 4em;
}

.modal-h3 {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 36px;
}

.modal-p {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 21px;
    padding: 25px;
    text-align: center;
    letter-spacing: 0.025em;
}

.rotate {
    transition: all 0.3s linear;
}

.rotate.down {
    transform: rotate(-90deg);
}

.collapse-all {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    line-height: 15px;
    letter-spacing: 0.04em;
    color: var(--tertiary-main);
    position: absolute;
    right: 15px;
    top: 15px;
}

.collapse-all:hover {
    cursor: pointer;
}

.bill-new-item {
    width: 100%;
    position: relative;
}

.cp-back-btn {

    position: absolute;
    right: 0.9375rem;
    top: 0.7125rem;
    border-radius: 0rem;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    color: #F38B03 !important;
    border: 0.0625rem solid #F38B03 !important;
}

.cp-back-btn:hover {
    color: white !important;
    background-color: #F38B03;
}

i.fa-spinner {
    margin-right: 5px;
}


/* BOM NOTIFICATIONS */
.sum-note {
    width: 100%;
    background: #FFFEF9;
    /* Colors / Warning / light */
    position: relative;
    border: 1px solid #FFE596;
    box-sizing: border-box;
}

span.warning-icon {
    padding-right: 15px;
}

span.warning-icon > img {
    margin-top: -5px;
}

.note-clpse-icon {
    color: var(--text-primary);
    position: absolute;
    top: 15px;
    right: 15px;
    cursor: pointer;
}

.sum-note-text > p {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 17px;
    letter-spacing: 0.05em;
    padding: 0px 15px;
    color: #1C2C3E;
    cursor: pointer;
}

.note-group {
    padding: 0px 37px;
}

.note-group-item {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 13px;
    line-height: 16px;
    padding: 10px 0px;
    letter-spacing: 0.025em;
    color: #2D3E52;
}

span.note-id {
    padding-right: 15px;
}

.warn-ico {
    position: absolute;
    z-index: 2;
    left: 0;
    display: block;
}


/* NOTES  */
.notes {
    background-color: #ffffff;
    width: 100%;
    position: relative;
    box-shadow: 0rem 0.0625rem 0.125rem rgb(0 0 0 / 7%), 0rem 0.125rem 0.25rem rgb(0 0 0 / 7%);
    padding: 1.875rem 1.875rem;
    margin-bottom: 2rem;
}

.notes-title {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.025em;
    color: #2D3E52;
}

.notes-text {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    line-height: 15px;
    letter-spacing: 0.04em;
    color: #79899B;
}

.notes-text-input {
    border: none;
    margin-top: 15px;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.05em;
    color: #79899B;
    padding: 5px 0px;
    border-radius: 0px;
    border-bottom: 1px solid #B3B3B3;
}


.warn-ico:hover ~ .warn-hover {
    visibility: visible;
    opacity: 1;


}

.warn-hover {
    visibility: hidden;
    background: rgba(0, 0, 0, 0.7);
    position: absolute;
    top: 0;
    left: 30px;
    opacity: 0;
    transition: all .3s ease-in-out;
    z-index: 20;
}

.warn-hover ol {
    margin: 0px;
    padding: 10px 15px 10px 30px;
}

.badge-upper {
    font-size: 8px;
    position: absolute;
    left: 16px;
}

.warn-hover li {
    white-space: nowrap;
    font-family: Bio Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    line-height: 20px;
    letter-spacing: 0.05em;
    color: #FFFFFF;
    padding: 0px;
}

.footer {
    margin-top: 15px;
}

.footer-text {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 12px;
    letter-spacing: 0px;
    display: flex;
    align-items: center;
    text-transform: uppercase;
    justify-content: center;
    color: #79899B;
}

.footer-text > a {
    font-family: Bio Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 12px;
    line-height: 12px;
    display: flex;
    align-items: center;
    text-transform: uppercase;
    justify-content: flex-end;
    color: #2D3E52;
    padding-left: 5px;
}

.modal-content > [data-type="footer"] {
    padding: 10px 15px 25px;
}

.modal-body > p[data-type="content"] {
    font-size: 14px;
    font-weight: 400;
    font-family: 'Bio Sans', sans-serif;
    line-height: 1.5;
    letter-spacing: 0px;
}

.btn-summary[data-type="btn_no"] {
    color: #fff !important;
    background-color: #c1c1c1 !important;
    border-color: #4e555b !important;
}

.btn-summary[data-type="btn_no"]:hover {
    background: #a8a8a8 !important;
}

.btn-summary[data-type="btn_yes"] {
    color: #fff !important;
    background: #F38B03 !important;
    border-color: #4e555b !important;
}

.btn-summary[data-type="btn_yes"]:hover {
    color: #F38B03 !important;
    background-color: transparent !important;
    border: 0.0625rem solid #F38B03 !important;
}

.navbar-brand {
    z-index: 2;
}

@media all and (max-width: 768px) {
    .warn-hover {
        display: none;
    }


    .footer-text {
        display: block;
    }

    .footer-text > a {
        display: block;
    }

    .footer-text > a:before {
        content: ' ';
        clear: right;
        display: block;
        margin-bottom: 10px;
    }

    #summary {
        padding: 0px 15px;
    }

    .collapse-all {
        display: none !important;
    }

    .btn-newItemConfig {
        width: 100%;
    }

    .btn-AddCpq5g {
        margin-top: 10px;
        width: 100%;
    }

    .bill-header {
        min-height: 150px;
    }

    .bill-right-buttons {
        top: 12px;
        position: relative;
        right: auto;
    }

    .bill-total-items {
        bottom: 0px;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .add-lenght-buttons {
        text-align: center !important;
    }

    .invoice-data-cable-transcription {
        width: auto;
    }

    span.clpse-icon {
        display: none;
    }
}


li.fix-group-item {
    position: relative;
    margin-bottom: 10px;
}

span.fix-note-text {
    text-align: left;
    display: block;
}

li.fix-group-item input {
    position: absolute;
    top: 4px;
    right: 0;
}
.invoice:has(warn-ico) ~ body {
    background: red;
}

.cable-length-summary-input:placeholder-shown {
    background: red;
}

.cable-length-summary-input::placeholder {
    color: lightgrey;
}

.invoice-data-cable-code [data-type=code] {
    display: inline-flex;
    align-items: center;
}
.spec-sheet-download {
    color: #f38b03;
    position: relative;
    display: inline-flex; 
  }

.spec-sheet-download:hover {
    color: #f38b03;
    text-decoration: none;
    position: relative;
    display: inline-flex;
}
.spec-sheet-download.no-spec-sheet {
    color: #c1c1c1;
}
.spec-sheet-download[data-tooltip]:hover::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: calc(100% + 5px);;
    left: 50%;
    transform: translateX(-50%);
    background-color: #f38b03;
    color: #fff;
    padding: 4px 8px;
    white-space: nowrap;
    border-radius: 4px;
    font-size: 14px;
    z-index: 10;
    pointer-events: none;
}  
.spec-sheet-download[data-tooltip]:hover::before {
    content: '';
    position: absolute;
    bottom: calc(100% + 5px);;
    left: 50%;
    transform: translateX(-50%) translateY(100%);
    border-width: 5px;
    border-style: solid;
    border-color: #f38b03 transparent transparent transparent; 
    z-index: 11;
}
.spec-sheet-download.no-spec-sheet[data-tooltip]:hover::after {
    color: black;
    background-color:#c1c1c1;
}
.spec-sheet-download.no-spec-sheet[data-tooltip]:hover::before {
    border-color: #c1c1c1 transparent transparent transparent; 
}
.spec-sheet-download .vp-icon.pdf {
    display: inline-block;
    vertical-align: middle; 
    margin-bottom: 2px;
}
