@charset "UTF-8";

html {
     scroll-padding-top: 3.5em;
}

.landing main:has(.product-page) {
     padding-bottom: 0;
}

main>.product-page .page-tag {
     margin: -2em 0 1em;
}

main>.product-page #product-top {
     padding: 0 1rem;
     position: relative;
     z-index: 1;
}

main>.product-page #product-top .product-images img {
     display: block;
     max-width: 100%;
     transition: none;
}

main>.product-page #product-top .product-images .main-image {
     background: #fff;
     border-radius: var(--border-radius);
     box-shadow: 50px 50px 100px 0 rgba(0, 0, 0, 0.15);
     cursor: pointer;
     display: block;
     overflow: hidden;
     padding-bottom: 100%;
     position: relative;
}

main>.product-page #product-top .product-images .main-image:before {
     background: url(/images/products/zoom.svg) no-repeat center;
     bottom: 0;
     content: "";
     display: block;
     height: 2.875rem;
     pointer-events: none;
     position: absolute;
     right: 0;
     width: 2.875rem;
     z-index: 1;
}

main>.product-page #product-top .product-images .main-image img {
     display: block;
     height: auto;
     left: 50%;
     position: absolute;
     top: 50%;
     transform: translate(-50%, -50%);
     width: 100%;
}

main>.product-page #product-top .product-images .main-image img[src$=".svg"] {
     width: calc(100% - 3rem);
}

main>.product-page #product-top .product-images .thumbnails {
     align-content: center;
     align-items: center;
     display: flex;
     gap: 0.5625rem;
     justify-content: center;
     margin-top: 0.5625rem;
     position: relative;
     text-align: center;
     z-index: 2;
}

main>.product-page #product-top .product-images .thumbnails .thumb {
     align-content: center;
     align-items: center;
     background: #fff;
     border: 1px solid #C1C6C8;
     cursor: pointer;
     display: flex;
     height: 2.5rem;
     justify-content: center;
     opacity: 0.75;
     position: relative;
     transition: ease all 200ms;
     width: 2.5rem;
}

main>.product-page #product-top .product-images .thumbnails .thumb img {
     height: auto;
     max-height: 100%;
     max-width: 100%;
     opacity: 0.75;
     width: auto;
}

main>.product-page #product-top .product-images .thumbnails .thumb.on,
main>.product-page #product-top .product-images .thumbnails .thumb:is(:hover, :focus-visible) {
     border-color: var(--grey);
}

main>.product-page #product-top .product-images .thumbnails .thumb.on img {
     opacity: 1;
}

main>.product-page #product-top .product-images .thumbnails .thumb .tooltip {
     display: none;
}

main>.product-page #product-top .product-images .thumbnails .thumb img:not([src*="svg"]) {
     height: 100%;
     left: 0;
     object-fit: cover;
     object-position: center;
     position: absolute;
     top: 0;
     width: 100%;
}

main>.product-page #product-top .product-images .thumbnails .thumb img[src*="svg"] {
     height: 100%;
     object-fit: cover;
     object-position: center;
     padding: 0.3125rem;
     width: 100%;
}

main>.product-page #product-top .product-info {
     margin-top: 2em;
     position: relative;
}

main>.product-page #product-top .product-info h1 {
     margin-bottom: 0.125em;
     position: relative;
}

main>.product-page #product-top .product-info .small-title {
     color: var(--dark-grey);
}

main>.product-page #product-top .product-info #product-actions {
     align-content: stretch;
     align-items: stretch;
     align-items: stretch;
     display: flex;
     flex-direction: column;
     gap: 1px;
     margin: 1em 0 2em;
}

main>.product-page #product-top .product-info #product-actions :is(.button, button) {
     align-items: center;
     display: flex;
     flex: 1 1 auto;
     font-size: 0.875em;
     padding: 0 0.875rem 0 0.5em;
     text-align: left;
     text-transform: uppercase;
}

main>.product-page #product-top .product-info :is(button.with-icon, .button.with-icon):before {
     content: "";
     height: 3em;
     width: 3em;
}

main>.product-page #product-top .product-info :is(.button.compare-product, button.compare-product):before {
     background: url(/images/icons/button-icon-compare-product-v2.svg) no-repeat center / contain;
}

main>.product-page #product-top .product-info :is(.button.request-info, button.request-info):before {
     background: url(/images/icons/button-icon-request-info-v2.svg) no-repeat center / contain;
}

main>.product-page #product-top .product-info :is(.button.find-a-rep, button.find-a-rep):before {
     background: url(/images/icons/button-icon-find-a-rep-v2.svg) no-repeat center / contain;
}

main>.product-page #product-top .product-info :is(.button.newsletter-signup, button.newsletter-signup):before {
     background: url(/images/icons/button-icon-newsletter-signup-v2.svg) no-repeat center / contain;
}

main>.product-page #product-top .product-info .button-container {
     align-content: stretch;
     align-items: stretch;
     align-items: stretch;
     display: grid;
     margin: 1em 0 2em;
}

main>.product-page #product-top .product-info .button-container .button {
     flex: 1 1 auto;
     font-size: 0.875em;
     padding: 0.875rem;
     text-align: center;
     text-transform: uppercase;
}

main>.product-page #product-top .product-info .logos {
     align-content: center;
     align-items: center;
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     justify-content: flex-start;
     margin: 2.1875rem 0 0.5em;
}

main>.product-page #product-top .product-info .logos .certification {
     margin: 0 1em 1em 0;
     max-width: 4.875rem;
}

main>.product-page #product-top .product-info .logos .certification img {
     height: auto;
     max-height: 1.75rem;
     max-width: 100%;
     width: auto;
}

main>.product-page #product-top .product-info .intro {
     font-size: 18px;
     font-weight: 500;
}

main>.product-page #product-top .product-info .show-more {
     color: var(--Q-Tran-blue);
     cursor: pointer;
     font-size: 0.875rem;
     font-weight: 700;
     letter-spacing: 0;
     transition: ease all 200ms;
}

main>.product-page #product-top .product-info .show-more:hover {
     color: var(--bright-blue);
}

main>.product-page #product-top .actions .primary {
     margin-top: 1.5rem;
}

main>.product-page #product-top .actions .primary .button {
     text-transform: uppercase;
}

main>.product-page #product-top .actions .secondary {
     margin-top: 2rem;
}

main>.product-page #product-top .actions .secondary .tabs {
     align-content: stretch;
     align-items: stretch;
     display: flex;
     flex-wrap: wrap;
     gap: 2px;
}

main>.product-page #product-top .actions .secondary .tabs button {
     align-content: center;
     align-items: center;
     background: var(--grey);
     border: 0;
     display: flex;
     flex: 1 1 auto;
     flex-direction: column;
     flex-wrap: nowrap;
     font-size: 0.875rem;
     justify-content: center;
     padding: 0.875rem;
     text-align: center;
     width: calc(50% - 1px);
}

main>.product-page #product-top .actions .secondary .tabs button.on {
     background: #fff;
     border: 0;
     box-shadow: inset 0 0 0 1px var(--Q-Tran-blue);
     color: var(--dark-grey);
     position: relative;
}

main>.product-page #product-top .actions .secondary .tabbed-content-container {
     background: #fff;
     border: 1px solid var(--Q-Tran-blue);
     margin-top: 2px;
     padding: 1rem;
}

main>.product-page #product-top .actions .secondary .tabbed-content-container h2 {
     font-size: 1.125rem;
}

main>.product-page .product-project-gallery {
     padding: 2em 1em 3em;
}

main>.product-page .product-project-gallery .project-gallery-heading {
     margin-bottom: 1.5em;
}

main>.product-page .product-project-gallery #photo-gallery {
     gap: 0;
     grid-template-columns: minmax(0, 1fr);
}

main>.product-page .product-project-gallery .thumbnails {
     gap: 0.3125em;
     grid-template-columns: repeat(6, minmax(0, 1fr));
     padding: 0.3125em 0;
}

main>.product-page .product-nav {
     background: #fff;
     margin-top: 5rem;
     padding: 1.875rem 1rem;
     z-index: 2;
}

main>.product-page #project-gallery+.product-nav {
     margin-top: 0;
}

main>.product-page .product-nav .wrap {
     margin: 0 auto;
     max-width: 75.4375rem;
}

main>.product-page .product-nav .title {
     margin-right: 1.875rem;
}

main>.product-page .product-nav .product-name {
     color: var(--dark-grey);
     font-size: 1.3125rem;
     font-weight: 700;
     letter-spacing: -0.0206rem;
     margin-bottom: 1em;
}

main>.product-page .product-nav .scroll-links .scroll-button {
     border-radius: var(--border-radius);
     box-shadow: inset 0 0 0 1px #C1C6C8;
     color: #101820;
     display: block;
     display: inline-block;
     font-size: 0.9rem;
     font-weight: 700;
     padding: 0.35em 3.625rem 0.35em 1rem;
     position: relative;
     width: 100%;
}

main>.product-page .product-nav .scroll-links .scroll-button+.scroll-button {
     margin-top: 0.3125rem;
}

main>.product-page .product-nav .scroll-links .scroll-button:hover {
     box-shadow: inset 0 0 0 1px var(--Q-Tran-blue);
}

main>.product-page .product-nav .scroll-links .scroll-button:after {
     border: 1px solid var(--Q-Tran-blue);
     border-radius: var(--border-radius);
     content: "";
     display: block;
     height: 100%;
     position: absolute;
     right: 0;
     top: 0;
     width: 2.375rem;
}

main>.product-page .product-nav .scroll-links .scroll-button:before {
     background: url(/images/button-arrow-down.svg) no-repeat center;
     content: "";
     display: block;
     height: 2.375rem;
     position: absolute;
     right: 0;
     top: 0;
     width: 2.375rem;
}

main>.product-page .product-ribbons {
     overflow: hidden;
     position: relative;
}

main>.product-page .product-ribbon {
     margin-top: 1em;
     position: relative;
}

main>.product-page .product-ribbon .wrap,
main>.product-page #compatible-products {
     background: #fff;
     overflow: hidden;
     padding: 1em 1em 2.75em;
     position: relative;
     z-index: 1;
}

main>.product-page .product-ribbon#technical-downloads table {
     border: 1px solid #ececec;
     width: 100%;
}

main>.product-page .product-ribbon#technical-downloads table+table {
     margin-top: 2em;
}

main>.product-page .product-ribbon#technical-downloads th {
     display: none;
}

main>.product-page .product-ribbon#technical-downloads tr:nth-child(2n+1) {

     background: var(--lightest-greige)
}

main>.product-page .product-ribbon#technical-downloads td {
     display: block;
     padding-bottom: 0.125em;
     width: 100%;
}

main>.product-page .product-ribbon#technical-downloads td+td {
     padding-top: 0;
}

main>.product-page .product-ribbon#technical-downloads td:first-child {
     padding-top: 1em;
}

main>.product-page .product-ribbon#technical-downloads td:last-child {
     padding-bottom: 1em;
}

main>.product-page .product-ribbon#technical-downloads .mobileTable td {
     align-content: flex-start;
     align-items: center;
     display: flex;
     flex-direction: row;
     flex-wrap: nowrap;
     justify-content: flex-start;
}

main>.product-page .product-ribbon#technical-downloads .mobileTable td:before {
     content: attr(data-attribute)":";
     display: block;
     font-weight: 300;
     margin-right: 0.25rem;
}

main>.product-page #technical-downloads .tech-info-image {
     align-content: stretch;
     align-items: stretch;
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     justify-content: flex-start;
     margin-bottom: 1rem;
}

main>.product-page #technical-downloads .tech-info-image>* {
     flex: 1 1 auto;
     position: relative;
     width: 100%;
}

main>.product-page #technical-downloads .tech-info-image>*:before {
     content: "";
     display: block;
     height: calc(100% - 0.5rem);
     left: 0.5rem;
     position: absolute;
     width: calc(100% - 1rem);
}

main>.product-page #technical-downloads .tech-info-image .tech-image {
     background-position: center;
     background-size: cover;
     order: 1;
     padding-bottom: 75%;
}

main>.product-page #technical-downloads .tech-info-image .tech-image:before {
     border: 1px solid #fff;
     border-bottom: 0;
     top: 0.5rem;
}

main>.product-page #technical-downloads .tech-info-image .tech-content {
     order: 2;
     padding: 1rem;
}

main>.product-page #technical-downloads .tech-info-image .tech-content:before {
     border: 1px solid var(--Q-Tran-blue);
     border-top: 0;
     bottom: 0.5rem;
}

main>.product-page #technical-downloads .tech-info-image.blue {
     background: var(--Q-Tran-blue);
}

main>.product-page #technical-downloads .tech-info-image.blue .tech-image:before {
     border-color: #fff;
}

main>.product-page #technical-downloads .tech-info-image.blue .tech-content {
     color: #fff;
}

main>.product-page #technical-downloads .tech-info-image.blue .tech-content:before {
     border-color: #fff;
}

main>.product-page #technical-downloads .tech-info-image.blue .tech-content h3 {
     color: #fff;
}

main>.product-page #technical-downloads .tech-info-image.blue .tech-content ul li:before {
     background-image: url(/images/bullet-white.svg);
}

main>.product-page #technical-downloads .tech-info-image .tech-image:only-child:before {
     border: 1px solid #fff;
     bottom: 0.5rem;
     height: calc(100% - 1rem);
     left: 0.5rem;
     right: 0.5rem;
     top: 0.5rem;
}

main>.product-page #compatible-products .sidebar {
     margin-bottom: 1em;
}

main>.product-page .icon-links a {
     display: block;
     font-size: 0.875em;
     font-weight: 500;
     line-height: 1.25em;
     margin-bottom: 0.5em;
     padding: 0.25em 1em 0.25em 2em;
     position: relative;
}

main>.product-page .icon-links a:before {
     background-size: contain;
     content: "";
     display: block;
     height: 1em;
     left: 0.5em;
     position: absolute;
     top: 4px;
     transition: ease all 200ms;
     width: 1em;
}

main>.product-page .icon-links a.pdf:before {
     background: url(/images/icon-link-pdf.svg) no-repeat center / contain;
}

main>.product-page .icon-links a.file:before {
     background: url(/images/icon-link-file.svg) no-repeat center / contain;
}

main>.product-page .icon-links a.three-d:before {
     background: url(/images/icon-link-3d.svg) no-repeat center / contain;
}

main>.product-page .product-ribbon .video-wrapper .video+.video {
     margin-top: 1rem;
}

main>.product-page .product-ribbon .table-overflow {
     overflow: auto;
}

main>.product-page .product-ribbon .table-overflow.scroll:before,
main>.product-page .product-ribbon .table-overflow.scroll:after {
     content: "";
     display: block;
}

main>.product-page #compatibility .legend {
     display: block;
     padding: 0;
}

main>.product-page #compatibility .legend .option {

     width: 100%
}