

.invalid-tooltip{ text-wrap: nowrap; max-width: unset; margin-right: calc(var(--bs-gutter-x) * .5); position: absolute; top: 42px; right:0; z-index: 5;
padding: .25rem .5rem; margin-top: .1rem; font-size: .875rem; color: #fff; background-color: #e3001c; border-radius: .25rem; }
.parent-validator{position:relative; width:100%;}
.radio-tooltip {right:unset;}
#captchaFeedback { top:75px !important; }

/* breadcrumb */
.breadcrumb {padding-block: 15px; background: #F8F8FA;}
.breadcrumb ul {margin: 0; padding: 0;}
.breadcrumb li {list-style-type: none; display: inline;}
.breadcrumb li:not(:first-child):before {content: "/";}
.breadcrumb li :where(a, span) {text-decoration: none; line-height: 1.2; color: #343a40;}
/* Hover */
.breadcrumb li a:hover {color: var(--clr-red-dk); transition: var(--transition);}

/* QUOTE */
:is(.quote, .products) {padding-top: 30px; --clr-text: #343a40; --clr-text-lt: #757575; --clr-bg: #f0f1f4; --clr-label: #203d71; --clr-link: #007bff; --clr-border: #203d71; --clr-btn-hover: #084695;}
:is(.quote, .products) .head {text-align: center; margin-bottom: 35px;}
:is(.quote, .products) .head :first-child {font-size: var(--fs-28); font-weight: var(--fw-700); color: var(--clr-red-dk); text-transform: uppercase; margin-bottom: 10px;}
:is(.quote, .products) .head p {color: var(--clr-text);}
.quote .title {margin-bottom: 20px;}
.quote .title :first-child {font-size: var(--fs-22); font-weight: var(--fw-700); color: var(--clr-red-dk);}
.quote label {font-size: var(--fs-16); font-weight: var(--fw-700); line-height: 1.3; color: var(--clr-label); display: block; margin-bottom: 10px;}
.quote label span {color: var(--clr-red-dk);}
.quote form {position: relative; padding: 30px 5% 145px; background-color: var(--clr-bg); display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;}
.quote form :where(input:not(:is([type="radio"], [type="checkbox"])), select) {width: 100%; height: 45px; padding: 10px; margin-bottom: 10px; border: none; font-size: var(--fs-14); color: var(--clr-text-lt);}
.quote form .group {display: flex; align-items: center; gap: 10px;}
.quote form textarea {width: 100%; height: 92px; padding: 10px; margin-bottom: 15px; border: none; font-size: var(--fs-14);}
.quote form input[type='checkbox'] + label {padding-left: 20px;}
.quote form input[type='checkbox'] + label a {color: var(--clr-link);}
.quote form input[type='checkbox']:has(+ label) {float: left; clear: both;}
.quote form :is(input[type='checkbox']:has(+ label), input[type='checkbox'] + label) {margin-bottom: 10px; color: #000; font-weight: var(--fw-400);}
.quote form .group.radio {position:relative; justify-content: space-between; border-bottom: 1px solid var(--clr-border); padding-block: 10px 20px; margin-bottom: 10px;}
.quote form .group.radio label {margin: 0;}
.quote form .group.radio div {display: inline-flex; align-items: center;}
.quote form .group.radio div input {margin-right: 5px; width: 16px; height: 16px;}
.quote form .group.radio div label {width: 80px}
.quote form .group.labels div {width: 100%;}
.quote form input[type='file'] {background-color: #fff;}
.quote .details form input[type='number']::-webkit-inner-spin-button {appearance: none;}
.quote form button[type='submit'] {position: absolute; inset: auto 0 40px; margin-inline: auto; display: block; background-color: var(--clr-red); color: #fff; border-radius: 50px; font-size: var(--fs-18); font-weight: var(--fw-700); padding: 20px 36px; width: 150px;}
.quote :is(.head > *, .title :first-child, label, input, button[type='submit']) {transition: var(--transition);}
.quote form button[type='submit']:hover {background-color: var(--clr-btn-hover);}
.captcha {position: relative;}

/* Media Quries */
@media only screen and (width <= 991px) {
:root {--fs-28: 26px;}
.quote form :is(input:not(:is([type="radio"], [type="checkbox"])), textarea)::placeholder  {font-size: var(--fs-12);}
.quote form select {font-size: var(--fs-12);}
.quote form .group.radio div label {width: fit-content; padding-right: 15px;}
}
@media only screen and (width <= 767px) {
.quote form {grid-template-columns: 1fr; padding-bottom: 105px;}
}
@media only screen and (width <= 575px) {
.invalid-tooltip{top: 50px; }

:root {--fs-28: 24px; --fs-22: 20px; --fs-16: 15px;}
.quote form button[type='submit'] {padding-block: 15px;}
}
@media only screen and (width <= 475px) {
.quote form .group {display: block;}
.quote form .group.radio label[for="unit"] {margin-bottom: 10px;}
}
