@charset "UTF-8"; /* Web Solutions 4.0 Compatible */
body:not(#tinymce) {
    padding-top: 8em
}

h1 {
    font-size: 2.3em;
}

h2 {
    font-size: 1.75em
}

h3 {
    font-size: 1.5em
}

h4 {
    font-size: 1.4em
}

h5 {
    font-size: 1.3em
}

h6 {
    font-size: 1.2em
}

th {
    font-size: 1.2em
}

.styled-heading-1, #content > .styled-heading-1 {
    font-size: 1.5em
}

h1+.styled-heading-1 {
    margin-top: -0.5em
}

hr, #description hr {
    margin: 3em 0
}

/* HEADER ------------------------------*/
body>header {
    position: fixed;
    top: 0;
    left: 0;
    height: 8em;
    z-index: 10;
    border-bottom: 1px solid #ececec;
    overflow: visible;
    padding: 0 2.5em;
    background: #fff
}

.management>header {
    top: 35px
}

.management2>header {
    top: 80px
}

#brand {
    display: block;
    width: 12em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

#brand:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%
}

#brand img {
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}

body>header .tagline {
    display: none;
    /*position: absolute;top: 4.9375rem;left: 12.1875rem;font-size: 0.875rem;*/
}

body>header .tagline a {
    color: #4b5257;
}

body>header .tagline a:hover {
    color: #c33;
}

/* NAV ------------------------------ */
#navContainer {
    float: right
}

nav ul {
    margin: 0
}

#mainnav {
    overflow: visible;
    margin-top: 4.25em;
    z-index: 1;
}

#mainnav > ul {
    text-align: center;
    overflow: visible;
    margin: 0;
    padding: 0;
}

#mainnav > ul > li {
    display: inline-block;
    position: relative
}

#mainnav > ul > li > a {
    line-height: 3em;
    padding: 0 0.75em;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 0.91em;
    display: inline-block;
    color: #2C2C2C;
    text-decoration: none;
}

#mainnav > ul > li:hover>a, #mainnav > ul > li:active > a {
    color: var(--dark-blue)
}

#mainnav > ul > li.on > a {
    color: var(--dark-blue)
}

/* dhtml */
#mainnav > ul > li > span {
    width: 100%;
    height: calc(100% - 8rem);
    top: 8rem;
    left: 0;
    position: fixed;
    z-index: 1;
    background: #000;
    opacity: 0;
    display: block;
    pointer-events: none;
}

.management #mainnav > ul > li > span {
    top: 10.1875rem
}

.management2 #mainnav > ul > li > span {
    top: 13rem
}

#mainnav > ul > li:hover > span {
    opacity: 0.6;
    transition: ease 200ms opacity 0.35s;
}

#mainnav > ul > li:hover > span {
    opacity: 0.6;
    transition: ease 200ms opacity 0.35s;
}

#mainnav > ul > li > ul {
    z-index: 1;
    width: 230px;
    padding: 1em 0;
    background: #F7F7F7;
    position: absolute;
    overflow: auto;
    height: auto;
    top: -200vh;
    opacity: 0;
    z-index: -1;
    visibility: hidden;
    transition: ease 200ms opacity 0.35s;
}

#mainnav > ul > li:hover > ul {
    top: auto;
    opacity: 1;
    z-index: 2;
    visibility: visible
}

#mainnav > ul > li:nth-last-child(2) > ul {
    right: 0
}

#mainnav > ul > li:last-child > ul {
    right: 0
}

#mainnav > ul > li > ul > li {
    width: 100%;
    display: block;
    float: left
}

#mainnav > ul > li > ul > li > a {
    background: none;
    color: var(--dark-blue);
    text-transform: none;
    font-size: .9em;
    line-height: 1.1em;
    padding: .3em 1em;
    display: block;
    width: 100%;
    text-align: left;
    float: left
}

#mainnav > ul > li > ul > li > a:hover {
    background: none;
    color: var(--dark-blue)
}

/* megamenu */
#mainnav > ul > li .megamenu {
    max-width: 62.5rem;
    text-align: left;
    width: 100%;
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    padding: 1em 2em 2em;
    background: #F7F7F7;
    overflow: auto;
    height: auto;
    top: -200vh;
    opacity: 0;
    z-index: -1;
    visibility: hidden;
    transition: ease 200ms opacity 0.35s;
}

#mainnav > ul > li:hover .megamenu {
    top: auto;
    opacity: 1;
    z-index: 2;
    visibility: visible
}

#mainnav > ul > li .megamenu > ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-content: stretch;
    align-items: flex-start;
}

#mainnav > ul > li .megamenu > ul > li > a {
    font-weight: 600;
    display: block;
    line-height: 1.125em;
    padding: 0.25em 0.5rem;
    font-size: 0.8125rem;
    color: var(--blue);
    text-transform: uppercase;
}

#mainnav > ul > li .megamenu > ul > li > a:hover {
    color: var(--dark-blue)
}

#mainnav > ul > li .megamenu > ul > li > ul > li > a {
    font-weight: 400;
    font-size: 0.8125rem;
    border-radius: 2px;
    color: #2C2C2C;
    letter-spacing: 0;
    line-height: 1.125em;
    display: block;
    padding: 0.2rem 0.5rem;
}

#mainnav > ul > li .megamenu > ul > li > ul > li > a:hover {
    background: #E8E8E8
}

/* ancillary */
#ancillary {
    position: absolute;
    right: 2.5em;
    top: 0.625rem;
    z-index: 0;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: flex-end;
}
/*
header:not(.hide-small-cart) #ancillary {
    right: 10.5em;
}*/

#ancillary > a {
    color: #fff;
    display: inline-block;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 2.5rem;
    padding: 0 1.25rem;
}

#ancillary > .contact {
    background: var(--red);
    margin-left: 0.25rem
}

#ancillary > .contact:hover {
    background: var(--dark-red);
}

#ancillary > .tel {
    background: var(--blue);
    margin-left: 0.8125rem
}
#ancillary > .tel i {
    color:white;
    margin-right: 8px
}
#ancillary > .tel:hover {
    background: var(--dark-blue);
}

#ancillary > ul {
    display: inline-block;
    vertical-align: middle
}

#ancillary > ul > li {
    display: inline;
    line-height: 2.5rem;
    position: relative;
}

#ancillary ul li a {
    display: inline-block;
    font-size: 0.90625rem;
    color: #c33;
    font-weight: 600;
    padding: 0 .8em;
    text-decoration: none;
}

#ancillary ul li a:hover, #ancillary > ul > li:hover > a, #ancillary > ul > li:active > a, #ancillary > ul > li.on > a {
    color: var(--blue)
}

#ancillary > ul > li.on > a {
    text-decoration: none;
    color: var(--blue)
}

#ancillary > ul > li > ul > li {
    line-height: 2;
}

#ancillary > ul > li > ul a {
    color: #000;
}

#ancillary > ul > li > ul {
    background: #E8E8E8;
    display: none;
    left: 0;
    position: absolute;
    top: auto;
    width: 150px;
}

#ancillary > ul > li:hover > ul {
    display: block;
}

#ancillary .search {
    position: relative;
    display: flex;
    align-content: center;
    align-items: center;
}

#ancillary .search input {
    display: inline-block;
    height: 2.5rem;
    float: left;
    border: 0
}

#ancillary .search input[type="text"] {
    background: none;
    padding: 0 3.125rem 0 1em;
    color: #333333;
    width: 18.125rem;
    font-size: 0.8125rem;
    box-shadow: inset 0 0 0 1px #E2E2E2;
}

#ancillary .search input[type="text"]:hover {
    box-shadow: inset 0 0 0 1px #bfbfbf
}

#ancillary .search input[type="text"]:focus {
    box-shadow: inset 0 0 0 1px var(--blue)
}

#ancillary .search input[type="submit"] {
    position: absolute;
    right: 1px;
    bottom: 1px;
    width: 2.5rem;
    height: 2.375rem;
    box-shadow: inset 1px 0 0 0 #E2E2E2;
    padding: 0;
    background: url(/images/icon-search.svg) no-repeat center
}

#ancillary .search input[type="submit"]:hover {
    background-color: #ececec
}

#ancillary .search ::-webkit-input-placeholder {
    color: #333333;
    opacity: 1
}

#ancillary .search ::-moz-placeholder {
    color: #333333;
    opacity: 1
}

#ancillary .search :-ms-input-placeholder {
    color: #333333;
    opacity: 1
}

#ancillary .search :-moz-placeholder {
    color: #333333;
    opacity: 1
}

body>header .small-cart {
    position: absolute;
    z-index: 1;
    top: 0.63em;
    right: 2.5em
}

body>header.hide-small-cart .small-cart {
    display: none
}

body>header .small-cart .quote {
    font-weight: 700;
    box-shadow: 0 0 0 1px rgba(255,255,255,0.5);
    position: relative;
    z-index: 3;
    background: var(--blue);
    color: #fff;
    text-transform: uppercase;
    float: right;
    line-height: 2.5rem;
    padding: 0 1em
}

body>header .small-cart.highlighted .quote {
    transform: translateY(80px)
}

body>header .small-cart .quote:hover {
    background: #000
}

body>header .small-cart .added {
    position: absolute;
    pointer-events: none;
    transition: ease all 200ms;
    top: 3.5em;
    right: 0;
    opacity: 0;
}

body>header .small-cart.highlighted .added {
    opacity: 1;
}

body>header .small-cart .added span {
    font-weight: 700;
    transition: ease all 200ms;
    transform: translateY(-10px);
    display: block;
    background: #fff;
    white-space: nowrap;
    padding: 0.5em 1.5em;
    position: relative;
    z-index: 1;
    box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);
    font-size: 0.85em;
    border-radius: 5px;
}

body>header .small-cart .added span:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #ffffff transparent;
    position: absolute;
    top: 0;
    right: 2.5em;
    transform: translateY(-100%)
}

body>header .small-cart.highlighted .added span {
    transform: translateY(80px)
}

body>header .small-cart .added div {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.75)
}

/* mobile */
#mobilenav,.menu {
    display: none
}

.highlight, .content .highlight {
    padding: 2em 1.5em
}

/* MAIN ------------------------------ */
main>.wrap {
    padding-top: 0.69em;
    overflow: inherit;
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: stretch;
    align-items: stretch;
}

main>.wrap>aside {
    width: 14.44em;
    margin-right: 1em;
    order: 1;
    background: #EFEFEF
}

main>.wrap>aside .stick-wrap {
    position: sticky;
    top: 8em;
    margin-bottom: 2em;
}

.management main>.wrap>aside .stick-wrap {
    top: calc(8em + 35px)
}

.management2 main>.wrap>aside .stick-wrap {
    top: calc(8em + 79px)
}

main>.wrap>aside .crumbs > li:first-child:before {
    content: "";
    display: block;
    height: 2.63em;
    background: #4B5257
}

#content {
    width: 54.5em;
    order: 2;
    margin: 0 auto;
    padding: 1.44em 1em 7.94em 0;
    overflow: hidden;
    min-height: 600px;
    position: relative;
}

#content.fullWidth {
    float: none;
    margin: 0 auto
}

.wrap.cad-models {
    margin: 3em auto 2em;
    max-width: 75rem;
}

.wsManagementLogin td:first-child {
    width: 40%;
    text-align: right
}

.content .photoright, .content .photoleft{max-width:50%;height:auto}

.twoCol {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
}

.threeCol {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
}

.resCol {
    -webkit-columns: auto;
    -moz-columns: auto;
    columns: auto;
    -webkit-column-width: 13em;
    -moz-column-width: 13em;
    column-width: 13em;
}

.formTable td {
    width: 50%
}

.formTable td {
    padding: 0 0 .5em .5em
}

.formTable td:first-child {
    padding: 0 .5em .5em 0
}

.formTable td[colspan="2"] {
    padding-right: 0
}

.formTable.formLoose,.formTable.formLoose td {
    width: auto
}

.pageHeader {
    height: 6.19em
}

.landing .pageHeader {
    height: auto;
    padding: 0
}

.landing .pageHeader h1:before {
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    background: url(images/blue-triangle.svg) no-repeat center bottom;
    margin-right: 0.35em;
    vertical-align: baseline
}

.landing .pageHeader .wrap p {
    font-size: 1.25em;
    max-width: 45rem;
    margin: 0 auto;
    line-height: 1.75rem
}

.landing .pageHeader .wrap.product-wrap {
    max-width: 54.5em;
    padding-right: 1em;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-content: center;
    align-items: center;
}

.landing .pageHeader .wrap.product-wrap .intro-text {
    text-align: left;
    text-shadow: 0 0 30px #000;
    margin-right: 9%;
    flex: 1 1 auto;
}

.landing .pageHeader .wrap.product-wrap .intro-text h1 {
    margin-bottom: 0
}

.landing .pageHeader .wrap.product-wrap .intro-text h1:before {
    margin: 0 0.35em 0 -1.35em;
}

.landing .pageHeader .wrap.product-wrap .intro-text .subheading {
    display: block;
    text-transform: none;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1em;
    margin: 0.125em 0 1em;
}

.landing .pageHeader .wrap.product-wrap .intro-text p {
    margin-bottom: 1em;
}

.landing .pageHeader .wrap.product-wrap .product-list {
    margin: 0;
    width: 17em;
    min-width: 17em;
}

.landing .pageHeader .wrap.product-wrap .product-list .product {
    width: 100%;
    margin: 0;
    text-align: left;
    box-shadow: 0 5px 30px rgba(0,0,0,0.5);
}

.landing .featured-product {
    padding: 2em;
    background: #efefef;
    margin: 1em 0 2em;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: center;
    align-items: flex-start;
}

.landing .featured-product .featured-content ul li {
    padding-left: 2em
}

.landing .featured-product .featured-content ul li:before {
    left: 0.75em
}

.landing .featured-product .product-list {
    width: 17em;
    min-width: 17em;
    margin: 0 0 0 5%;
}

.landing .featured-product .product-list .product {
    width: 100%;
    margin: 0 auto
}

.photoright {
    margin: 0 0 1em 2em;
}

.photoleft {
    margin: 0 2em 1em 0;
}

.photoright.floated-video, .photoleft.floated-video, .photoright.floated-video .videoContainer, .photoleft.floated-video .videoContainer {
    width: 100%
}

.photoright.floated-video figcaption {
    text-align: right;
    font-size: 0.87rem;
    line-height: 1.25em;
    margin-top: 0.5em
}

.photoleft.floated-video figcaption {
    text-align: left;
    font-size: 0.87rem;
    line-height: 1.25em;
    margin-top: 0.5em
}

.twoUp {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.twoUp img {
    height: auto;
    width: 48%;
}

#content p, #content > ol, #content > ul, #content > * > ol, #content > * > ul {
    font-size: 1.125rem
}

.landing #content {
    overflow: visible
}

.landing #content img.wide-image {
    width: calc(100% + 10em);
    margin-left: -5em
}

main.configurator-view:not(.landing) >.wrap, main.configurator-view:not(.landing) #content {
    max-width: 100%;
    width: 100%;
    padding: 1em
}

main.configurator-view:not(.landing) div#configuratorViewer {
    position: relative;
    width: 1132px;
    height: 768px;
}

main.configurator-view h1 {
    padding-right: 7.5rem
}

.product-list, #content #products .product-list, #CAD-drawings ul {
    margin: 3em 0 2em;
    clear: both;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: stretch;
    align-items: stretch;
}

#products .product-list {
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-content: stretch;
    align-items: stretch;
}

.home #products .product-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-content: stretch;
    align-items: stretch;
}

#products .product-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-content: stretch;
    align-items: stretch;
}

#content #products .product-list {
    margin: 0
}

.product-list a, #content #products .product-list a, #CAD-drawings ul li {
    width: 31.5%;
    margin-top: 0;
    margin-right: 2.75%
}

#products .product-list a {
    width: 22.75%;
    margin-right: 2.75%
}

#content #products .product-list a {
    margin-left: 0
}

.product-list a:nth-child(3n+3), #content #products .product-list a:nth-child(3n+3), #CAD-drawings ul li:nth-child(3n+3) {
    margin-right: 0
}

#products .product-list a:nth-child(4n+4) {
    margin-right: 0
}

.product-list.engineered-solutions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: stretch;
    align-items: stretch;
}

.product-list.engineered-solutions a {
    padding: 1.75rem 1.75rem 4.75rem
}

.product-list.engineered-solutions a .product-name {
    font-size: 1.5rem
}

#content #products .wrap > h2 {
    font-size: 1.75em
}

.uses {
    float: right;
    width: 31.5%;
    margin: 0 0 2.44em 8%
}

#hero :is(.slide, #video-container)::before {
	background: linear-gradient(0deg, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%);
  height: 12em;
}

#hero .text-wrapper {
    width: 100%;
    padding: 0 2rem;
    position: absolute;
    bottom: clamp(1.6rem, -3.257rem + 9.14vw, 3.6rem);
    left: 0;
}

#hero .wrap {
    font-size: clamp(2rem, 0.33rem + 3.14vw, 2.688rem);
    max-width: 78.3125rem;
    padding-inline: 1.375em 14rem;
    overflow: visible;
    z-index: 3;
    position:relative
}

#hero .wrap:before {
    z-index: 2;
}

#hero .wrap h1, #hero .wrap .title {
    font-size: 1em;
    position: relative;
}

#hero .wrap span.brief {
	font-size: .5em;
}

#hero .wrap::before {
    content: "";
    width: 1em;
    left: 0;
    height: 1em;
    background: url(images/blue-triangle.svg) no-repeat center bottom;
    position: absolute;
    top: 0;
    transition: all .3s ease;
}

#hero .slide>a:is(:hover,:focus-visible) .wrap .title:before {
    background-image: url('/images/blue-triangle.svg') !important;
}

#hero .wrap p {
    font-size: 1.44em;
    line-height: 1.75rem;
    max-width: 44.75rem;
    margin: 0
}

#hero :is(#video-container, .video, iframe) {
  aspect-ratio: 1800 / 562;
}

#hero button.play-pause:is(:hover,:focus-visible) {
  background-color: var(--red);
}


#product-finder-callout {
    font-size: 1.25rem;
}

#product-finder-callout .button {
    margin-left: 1em;
    font-size: 1.125rem;
}

#support h2 {
    display: inline-block;
    margin: 0;
    font-size: 1.25rem;
    line-height: 3.13rem
}

#support form {
    float: right
}

#support form select {
    width: 15.19em;
    margin-right: 0.5rem
}


/* Sales Rep Finder */
#sales-rep-finder  {
    font-size: 1.125em;
    margin: 0 auto;
    max-width: 58.0625rem;
}

#sales-rep-finder .intro-text .intro  {
    font-size: 1.125em;
    font-weight: 700;
}

#sales-rep-finder .option-group #USA  {
    max-width: 10.625rem;
}

#sales-rep-finder .option-group .product-selection  {
    max-width: 22.8125rem;
	width: 100%;
}

#sales-rep-finder .rep-list .rep-header {
    display: flex;
	justify-content: space-between;
	gap: 2.5rem;
}

#sales-rep-finder .rep-list .rep-header > *{
    width: calc(50% - 1.25rem);
}

#sales-rep-finder .rep-list .rep-products ul {
	column-count: 2;
}




/* CAD360 RIBBON ------------------------------ */

#CAD360 .wrap {
  align-items: center;
}

#CAD360 .textbox {
  order: 2;
  padding-inline: 1.25em;
  width: 50%;
}

#CAD360 figure {
  width: 25%;
}

#CAD360 figure:first-of-type {
  order: 1;
}

#CAD360 figure:last-of-type {
  order: 2;
}




/* WELCOME RIBBON ------------------------------ */

#welcome {
  padding-block: 5em;
}

#welcome .textbox {
  max-width: 52%;
  padding-left: 2em;
}

#welcome figure {
  position: absolute;
  inset: 0 0 0 auto;
  width: 41.5%;
}

#welcome figure img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}




/* HOMEPAGE BLOG RIBBON ------------------------------ */

.home-blog ul.ws-flex {
  --ws-column-count: 4;
  --ws-gap: clamp(1.5em, 0.286em + 2.29vw, 2em); /* 850 - 1200 */
}

.home-blog li>a:is(:hover,:focus-visible) {
  border-color: var(--dark-red);
}

.home-blog li>a:is(:hover,:focus-visible) :is(strong.title, span.link) {
  color: var(--dark-red);
}




/* ------------------------------ */

.logo-header {
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.logo-header .logo-container {
    width: 12.5rem;
}

.logo-header .half {
    width: calc(50% - 0.5rem);
}

.bg-ribbon {
    padding: 6.25rem 1em;
}

#versaflex.bg-ribbon {
    background: url(/images/home/versaflex-bg.jpg) no-repeat center / cover
}

#engineered-solutions.bg-ribbon {
    background: url(/images/home/engineered-solutions-bg.jpg) no-repeat center / cover
}

.bg-ribbon:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    background-image: linear-gradient(270deg, rgba(0,0,0,0.00) 0%, #000000 54%);
}

.bg-ribbon h2 {
    text-transform: uppercase;
    font-weight: 800;
    font-size: 2.81em;
    transform: translateX(-1.35em);
    margin-bottom: 0.5rem;
}

.bg-ribbon h2::before {
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    background: url(images/blue-triangle.svg) no-repeat center bottom;
    margin-right: 0.35em;
    vertical-align: baseline;
}

.bg-ribbon p:last-child {
    margin-bottom: 0
}

#versaflex.bg-ribbon p {
    max-width: 36.5rem
}

#engineered-solutions.bg-ribbon p {
    max-width: 39.4375rem
}

.bg-ribbon .button {
    margin-top: 0.5em
}

#featured-video .wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-content: stretch;
    align-items: center;
}

#featured-video .video {
    width: 57%
}

#featured-video .description {
    width: 43%;
    padding-left: 1.88em
}


#content .icon-links {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: stretch;
}

#content .icon-links li {
    width: 19.125%;
    margin: 0.25em
}

#content .icon-links li a {
    height: 100%;
    padding: 0.5em 1.5em 1.5em
}

#content .icon-links li a:before {
    height: 7em;
}

#content .search-bar {
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 1em;
}

#content .search-bar input {
    padding: 0 1em;
    height: 2.81em;
    font-size: 1rem
}

#content .search-bar button {
    height: 2.81rem;
}

#content .project-list {
    grid-template-columns: repeat(auto-fill, minmax(15.625em, 1fr));
}




.interior #support form {
    float: none;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-content: center;
    align-items: center;
}

.interior #support form > * {
    flex: 1 1 auto;
}

.interior #support form select {
    width: auto;
    margin: 0 1.5rem 0 0.25em;
    padding-right: 2.5em
}

.interior #support form select, .interior #support form button {
    height: 2.75rem
}

.interior #support form h2 {
    line-height: 2.75rem
}

.categoryThumb section {
    float: left;
    overflow: auto;
    width: 100%;
    padding: 1em 0
}

.categoryThumb section :last-child {
    margin-bottom: 0
}

.categoryThumb section+section {
    border-top: 1px dashed #ccc
}

.categoryThumb img {
    float: left
}

.categoryThumb h2, .categoryThumb p {
    width: calc(100% - 7.63rem);
    margin-bottom: 0;
    float: right;
}

.categoryThumb p {
    color: #666
}

#tblSubmissions colgroup {
    display: none
}

#tblSubmissions td {
    width: 30%
}

#tblSubmissions td:last-child {
    width: 1em
}

#tblSubmissions td:nth-last-child(2) {
    width: 4em
}

#content > .image-links li {
    padding: 0;
    display: inline-block;
    width: 29%;
    vertical-align: top
}

#content > .image-links li + li {
    margin: 0 0 0 4%
}

.cleanMove-table th, .cleanMove-table td {
    padding: 0.75rem;
}

.cleanMove-table th:nth-child(2) {
    width: 27.6%;
    background: #4B5257;
    color: #fff;
    border: 1px solid #ccc
}

.cleanMove-table th:nth-child(3) {
    width: 27.6%;
    background: #74ad00;
    color: #fff;
    border: 1px solid #ccc
}

.cleanMove-table th:nth-child(4) {
    width: 27.6%;
    background: #39c;
    color: #fff;
    border: 1px solid #ccc
}

.cleanMove-table td {
    border: 1px solid #ccc;
    line-height: 1.25em
}

.cleanMove-table td:first-child {
    min-width: 17%;
    background: #efefef;
    font-weight: 600
}

#content .drawing-description {
    margin-bottom: 1em;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start;
}

#content .drawing-description .description {
    padding-top: 0.625rem;
    margin-left: 1em
}

#products-landing-page #landing-top {
    padding: 3.5rem 1rem 4.75rem;
}

#products-landing-page #landing-top .wrap {
    max-width: 78.25rem;
    margin: 0 auto
}

#products-landing-page #landing-top .wrap h1 {
    font-size: 2.625rem;
    margin-bottom: 1rem;
    text-indent: -1em;
}

#products-landing-page #landing-top .wrap h1:before {
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    background: url(images/blue-triangle.svg) no-repeat center bottom;
    margin-right: 0.35em;
    vertical-align: baseline;
}

#products-landing-page #landing-top .wrap p {
    max-width: 53.625rem;
    margin: 0 auto
}

#products-landing-page #landing-top .wrap .product-categories {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-content: stretch;
    align-items: stretch;
}

#products-landing-page #landing-top .wrap .product-categories li {
    width: 22.8%;
    margin: 0 2.93% 0 0
}

#products-landing-page #landing-top .wrap .product-categories li:nth-child(4n+4) {
    margin-right: 0
}

#products-landing-page #landing-top .wrap .product-categories li a {
    height: 100%;
    background: #000;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: stretch;
    align-items: stretch;
}

#products-landing-page #landing-top .wrap .product-categories li a .product-image {
    transition: ease all 200ms;
    overflow: hidden;
    height: auto;
    aspect-ratio: 1 / 1;
    position: relative;
    background-size: cover;
    background-position: center;
}

#products-landing-page #landing-top .wrap .product-categories li a:hover .product-image {
    border-color: var(--dark-blue)
}

#products-landing-page #landing-top .wrap .product-categories li a .product-image:before {
    transition: ease all 200ms
}

#products-landing-page #landing-top .wrap .product-categories li a:hover .product-image:before {
    opacity: 0
}
#products-landing-page #landing-top .wrap .product-categories li a .product-image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
#products-landing-page #landing-top .wrap .product-categories li a .product-name {
    transition: ease all 200ms;
    background: var(--blue);
    padding: 1rem;
    min-height: 5.75rem;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    align-content: center;
    align-items: center;
}

#products-landing-page #landing-top .wrap .product-categories li a:hover .product-name {
    background: var(--dark-blue)
}

#products-landing-page #landing-top .wrap .product-categories li a .product-name h2 {
    margin: 0;
    max-width: 13.75rem;
    text-transform: uppercase;
    font-weight: 900;
    font-size: 1.375rem;
    color: #FFFFFF;
    letter-spacing: 0;
    text-align: center;
    line-height: 1.5625rem;
}

#products-landing-page #landing-bottom {
    padding: 4.375rem 1em 5rem
}

#products-landing-page #landing-bottom .wrap {
    max-width: 46.75rem;
    margin: 0 auto
}

#products-landing-page #landing-bottom .wrap h2 {
    font-size: 1.6875rem;
    line-height: 2.3125rem;
    text-align:center
}

#products-landing-page #landing-bottom .wrap p {
    font-size: 1.125rem;
    color: #000000;
    letter-spacing: 0;
    line-height: 1.8125rem;
}

#products-landing-page #landing-bottom .wrap .help-callout {
    max-width: 35.5625rem;
    padding: 2em;
    margin: 3em auto 0;
    border:1px solid #39c;
    border-radius:8px
}

#products-landing-page #landing-bottom .wrap .help-callout p {
    margin: 0;
    font-size: 1.125rem;
    letter-spacing: 0;
    text-align: center;
    line-height: 1.6875rem;
}

.landing #products .top {
    margin-bottom: 3rem
}

.landing #products .top .wrap {
    text-align: center;
    ; font-size: 1.125rem;
    color: #000000;
    text-align: center;
    line-height: 1.8125rem;
}

.landing #products .top .wrap h1 {
    font-size: 2.625rem;
    margin-bottom: 1rem;
    text-indent: -1em
}

.landing #products .top .wrap h1:before {
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    background: url(images/blue-triangle.svg) no-repeat center bottom;
    margin-right: 0.35em;
    vertical-align: baseline;
}

.landing #products .top .wrap p {
    max-width: 52.5rem;
    margin: 0 auto
}

.home .product-categories {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-content: stretch;
    align-items: stretch;
}

.home .product-categories li {
    width: 22.8%;
    margin: 0 2.93% 0 0
}

.home .product-categories li:nth-child(4n+4) {
    margin-right: 0
}

.home .product-categories li a {
    height: 100%;
}

.home .product-categories li a .product-image {
    transition: ease all 200ms
}

.home .product-categories li a:hover .product-image {
    border-color: var(--dark-blue)
}

.home .product-categories li a .product-image:before {
    transition: ease all 200ms
}

.home .product-categories li a:hover .product-image:before {
    opacity: 0
}

#product-finder #finder-top {
    padding: 3.5rem 1rem;
    text-align: center;
    background: #e8e8e8
}

#product-finder #finder-top .wrap {
    max-width: 78.25rem;
    margin: 0 auto
}

#product-finder #finder-top .wrap h1 {
    font-size: 2.625rem;
    margin-bottom: 2rem
}

#product-finder #finder-top .wrap h1:before {
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    background: url(images/blue-triangle.svg) no-repeat center bottom;
    margin-right: 0.35em;
    vertical-align: baseline;
}

#product-finder #finder-top .wrap p {
    font-weight: 500;
    font-size: 1.25rem;
    color: #000000;
    text-align: center;
    line-height: 1.8125rem;
    max-width: 53.625rem;
    margin: 0 auto
}

#product-finder #finder-bottom {
    padding: 2.8125rem 4.125rem 8.4375rem;
}

#product-finder #finder-bottom form {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-content: stretch;
    align-items: stretch;
}

#product-finder #finder-bottom .filters {
    width: 16.25rem;
    min-width: 16.25rem
}

#product-finder #finder-bottom .filters .filter-container {
    position: sticky;
    top: 8.75rem;
    overflow: auto;
}

#product-finder #finder-bottom .filters .title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #000;
    text-transform: uppercase;
    line-height: 2rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-content: center;
    align-items: center;
}

#product-finder #finder-bottom .filters .title button {
    padding: 0;
    display: inline-block;
    background: none;
    font-weight: 500;
    font-size: 0.875rem;
    color: #333333;
    text-align: right;
    line-height: 1.5rem;
}

#product-finder #finder-bottom .filters .title button:hover {
    color: var(--red)
}

#product-finder #finder-bottom .filters .title button.reset:before {
    content: "";
    margin-right: 0.125em;
    padding-left: 1em;
    background: url(/images/product-finder-refresh.svg) no-repeat center
}

#product-finder #finder-bottom .filters .title button.remove-all:before {
    content: "";
    margin-right: 0.125em;
    padding-left: 1em;
    background: url(/images/product-finder-refresh.svg) no-repeat center
}

#product-finder #finder-bottom .filters .filter {
    position: relative;
    margin-top: 0.25rem
}

#product-finder #finder-bottom .filters .filter:before {
    content: "";
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 1.5rem;
    background: url(/images/product-finder-select-arrow.svg) no-repeat center left;
    filter: invert(89%) sepia(10%) saturate(48%) hue-rotate(315deg) brightness(84%) contrast(92%);
}

#product-finder #finder-bottom .filters .filter:after {
    opacity: 0;
    transition: ease all 200ms;
    content: "";
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 1.5rem;
    background: url(/images/product-finder-select-arrow.svg) no-repeat center left;
    filter: invert(43%) sepia(29%) saturate(4929%) hue-rotate(336deg) brightness(79%) contrast(101%);
}

#product-finder #finder-bottom .filters .filter:hover:after {
    opacity: 1
}

#product-finder #finder-bottom .filters .selected-products {
    margin-bottom: 1.25rem;
    display: none
}

#product-finder #finder-bottom .filters .selected-products.showing-products {
    display: block
}

#product-finder #finder-bottom .filters .selected-products .selected-product {
    position: relative;
    border-top: 1px dashed #D8D8D8;
    font-weight: 500;
    font-size: 1rem;
    color: #333333;
    line-height: 1.25em;
    padding: 0.5rem 1.5625rem 0.5rem 0.65rem;
}

#product-finder #finder-bottom .filters .selected-products .selected-product button {
    position: absolute;
    top: 0;
    right: 0;
    width: 2.5rem;
    height: 2rem;
    background: url(/images/product-finder-remove.svg) no-repeat center;
    padding: 0;
    filter: grayscale(1);
    opacity: 0.5
}

#product-finder #finder-bottom .filters .selected-products .selected-product button:hover {
    filter: grayscale(0);
    opacity: 1
}

#product-finder #finder-bottom .filters .selected-products .compare-products {
    font-size: 0.9375rem;
    font-weight: 500;
    width: 100%;
    color: var(--red);
    line-height: 2.25rem;
    background: #fff;
    padding: 0 1em;
    border: 1px solid var(--red)
}

#product-finder #finder-bottom .filters .selected-products .compare-products:hover {
    background: var(--red);
    color: #fff
}

#product-finder #finder-bottom .filters .selected-products .compare-products:before {
    content: "";
    padding-left: 0.875rem;
    transition: ease all 200ms;
    margin-right: 0.5em;
    background: url(/images/compare-icon.svg) no-repeat center
}

#product-finder #finder-bottom .filters .selected-products .compare-products:hover:before {
    filter: brightness(100)
}

#product-finder #finder-bottom .filters select {
    width: 100%;
    cursor: pointer;
    height: 2.25rem;
    border: 1px solid #D8D8D8;
    border-radius: 2px;
    padding: 0 1.5625rem 0 0.65em;
    font-weight: 600;
    font-size: 0.875rem;
    color: #333333;
    background: #fff
}

#product-finder #finder-bottom .filters select:hover {
    border-color: var(--red);
}

#product-finder #finder-bottom .filters select :disabled {
    color: #ccc
}

#product-finder #finder-bottom .filters label.flex {
    width: 100%;
    white-space: nowrap;
    cursor: pointer;
    position: relative;
    z-index: 1;
    padding: 0;
    font-weight: 600;
    font-size: 0.875rem;
    color: #333333;
    background: #fff;
    display: flex;
    align-items: center;
    align-content: center;
}

#product-finder #finder-bottom .filters label.flex span {
    line-height: 2.25rem;
    padding: 0 0.65em 0 0.65em;
    display: block;
    border-radius: 2px 0 0 2px;
    border: 1px solid #D8D8D8;
    border-right: 0
}

#product-finder #finder-bottom .filters label.flex input {
    height: 2.375rem;
    width: 100%;
    text-align: center;
    flex: 1 1 auto;
    border: 1px solid #D8D8D8;
    border-radius: 0 2px 2px 0;
    font-size: 0.875rem;
    color: #333333;
}

#product-finder #finder-bottom .filters label.flex input:focus {
    border-color: var(--red)
}

#product-finder #finder-bottom .filters label.flex ::-webkit-input-placeholder {
    color: #333;
    font-style: italic;
    font-size: 12px;
    text-align: center
}

#product-finder #finder-bottom .filters label.flex :-ms-input-placeholder {
    color: #333;
    font-style: italic;
    font-size: 12px;
    text-align: center
}

#product-finder #finder-bottom .filters label.flex ::placeholder {
    color: #333;
    font-style: italic;
    font-size: 12px;
    text-align: center
}

#product-finder #finder-bottom .filters label.flex input::-webkit-outer-spin-button, #product-finder #finder-bottom .filters label.flex input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#product-finder #finder-bottom .filters label.flex input[type=number] {
    -moz-appearance: textfield;
}

#product-finder #finder-bottom .products-container {
    flex: 1 1 auto;
    margin: 0 0 0 3.125rem;
    padding-left: 3.125rem;
    border-left: 2px solid #EDEDED;
}

#product-finder #finder-bottom .product-list {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: 1fr;
    grid-column-gap: 1.25rem;
    grid-row-gap: 2.5rem;
}

#product-finder #finder-bottom .product-list li {
    position: relative;
}

#product-finder #finder-bottom .product-list li .product-box {
    margin: 0;
    height: 100%;
    padding-bottom: 7.125rem;
    border-color: #E8E8E8
}

#product-finder #finder-bottom .product-list li .compare {
    position: absolute;
    bottom: 3.875rem;
    left: 0;
    width: 100%;
}

#product-finder #finder-bottom .product-list li .compare label {
    cursor: pointer;
    text-align: center;
    display: block;
    padding: 0 1rem;
    line-height: 3.125rem;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 0.875rem;
}

#product-finder #finder-bottom .product-list li .compare label:hover, #product-finder #finder-bottom .product-list li .compare :checked + label {
    color: var(--red);
}

#product-finder #finder-bottom .product-list li .compare label:before {
    content: "";
    transition: ease all 200ms;
    display: inline-block;
    margin-right: 0.25em;
    width: 1.0625rem;
    height: 1.0625rem;
    vertical-align: text-bottom;
    border: 1px solid #5D5D5D;
    background: #fff url(/images/compare-check.svg) no-repeat center
}

#product-finder #finder-bottom .product-list li .compare :checked + label:before {
    border-color: var(--red);
    background-color: var(--red)
}

#product-finder #finder-bottom .product-list li input {
    display: none
}

#product-finder #finder-bottom .product-list li .learn-more {
    position: absolute;
    height: auto;
    bottom: 0;
    left: 0;
    margin: 0;
    width: 100%;
    padding: 0
}

#product-finder #finder-bottom .product-list li .learn-more:hover {
    background: var(--red)
}

#product-finder #finder-bottom #compare-products.wide-wrap {
    max-width: 100%
}

#product-finder #finder-bottom #compare-products.medium-wrap {
    max-width: 1200px;
    margin: 0 auto
}

#product-finder #finder-bottom #compare-products.small-wrap {
    max-width: 800px;
    margin: 0 auto
}

#product-finder #finder-bottom #compare-products .top {
    position: relative;
}

#product-finder #finder-bottom #compare-products .top h2 {
    text-align: center;
    line-height: 2.3125rem;
    font-size: 1.25rem;
    font-weight: 700;
    color: #000;
    text-transform: uppercase;
    line-height: 2.5rem;
}

#product-finder #finder-bottom #compare-products .top .button {
    line-height: 2.3125rem;
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 1.5em;
    font-size: 14px;
    font-weight: 500;
    background: var(--red)
}

#product-finder #finder-bottom #compare-products .top .button:before {
    content: "";
    padding-left: 0.875rem;
    margin-right: 0.5em;
    background: url(/images/left-white-arrow.svg) no-repeat center;
}

#product-finder #finder-bottom #compare-products .top .button:hover {
    background: var(--dark-red)
}

#product-finder #finder-bottom #compare-products .top .button.start-over {
    left: auto;
    right: 0;
    background: var(--blue)
}

#product-finder #finder-bottom #compare-products .top .button.start-over:hover {
    background: var(--dark-blue)
}

#product-finder #finder-bottom #compare-products .top .button.start-over:before {
    display: none
}

#product-finder #finder-bottom #compare-products .overflow-table {
    width: 100%;
    overflow: auto;
    border: 1px solid #D8D8D8
}

#product-finder #finder-bottom #compare-products table {
    width: 100%;
    table-layout: fixed;
}

#product-finder #finder-bottom #compare-products table th {
    position: relative;
    padding: 0;
    border-right: 1px solid #D8D8D8
}

#product-finder #finder-bottom #compare-products table th:last-child {
    border-right: 0
}

#product-finder #finder-bottom #compare-products table th .remove-product {
    position: absolute;
    top: 0;
    right: 0;
    width: 3rem;
    height: 3rem;
    background: url(/images/product-finder-remove.svg) no-repeat center / 0.8125rem auto;
    padding: 0;
    filter: grayscale(1);
    opacity: 0.5
}

#product-finder #finder-bottom #compare-products table th .remove-product:hover {
    filter: grayscale(0);
    opacity: 1
}

#product-finder #finder-bottom #compare-products table th a {
    background: #F1F8FB;
    padding: 0;
    display: block;
    height: 100%
}

#product-finder #finder-bottom #compare-products table th a:hover {
    background: #fff
}

#product-finder #finder-bottom #compare-products table th a .product-image {
    padding-right: 2.625rem
}

#product-finder #finder-bottom #compare-products table th a .product-image img {
    max-width: 350px;
    height: auto;
    width: 100%;
    min-width: 9.375rem
}

#product-finder #finder-bottom #compare-products table th a .product-name {
    padding: 1.125rem 1.5625rem;
    display: block;
    text-transform: uppercase;
    font-weight: 800;
    font-size: 1.375rem;
    color: var(--blue);
    line-height: 1.625rem;
}

#product-finder #finder-bottom #compare-products table th a:hover .product-name {
    color: var(--red)
}

#product-finder #finder-bottom #compare-products table td {
    border-right: 1px solid #D8D8D8;
    padding: 1.125rem 1.5625rem;
    border-top: 1px dashed #D8D8D8;
    font-weight: 500;
    color: #333;
}

#product-finder #finder-bottom #compare-products table td:last-child {
    border-right: 0
}

#product-finder #finder-bottom #compare-products table td .small-title {
    display: block;
    font-style: italic;
    font-size: 0.8125rem;
    color: #848484;
    line-height: 1rem;
}

#product-finder #finder-bottom #compare-products table td .button {
    display: block;
    text-align: center;
}

#product-finder #finder-bottom #compare-products table tr:not(:last-child):hover td {
    background: #FFFAC8
}

#product-finder #finder-bottom #compare-products .extra-info {
    margin-top: 5rem;
    padding: 0 1.5rem
}

#product-finder #finder-bottom #compare-products .extra-info .wrap {
    max-width: 62.5rem;
    margin: 0 auto
}

#product-finder #finder-bottom #compare-products .extra-info #content {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
    min-height: 0
}

/* Scanned Project (from QR code)*/
#scanned-project #details-top {
    padding: 2.5em 2em 2em;
}

#scanned-project #details-top .help-text {
    margin-top: 2em;
}

#scanned-project #details-top .wrap {
    max-width: 62.5rem;
    margin: 0 auto;
}

#scanned-project #details-bottom {
    padding: 3.5em 2em 6em;
}

#scanned-project #details-bottom .wrap {
    gap: 3.5em 2em;
}

#scanned-project #details-bottom .wrap + .wrap {
    margin-top: 3.5em;
}

#scanned-project #details-bottom .half {
    width: calc(50% - 1em);
}

#scanned-project #details-bottom .third {
    flex: 1 1 auto;
    width: calc(33.333% - 1.375em);
}

#scanned-project #details-bottom .videos {
    gap: 2em;
    grid-template-columns: repeat(2, 1fr);
}

#scanned-project #details-bottom .video:only-child {
    grid-column: 1 / span 2;
}

#scanned-project #details-bottom .help-callout {
    padding: 2em;
}

#scanned-project #details-bottom .products {
    --ws-columns: 4;
    --ws-gap: 1em;
    row-gap: 2em;
}

#scanned-project #details-bottom .products a:is(:hover,:focus) {
    border-color: var(--red);
}

#scanned-project #details-bottom .products a:is(:hover,:focus) h2 {
    background: var(--red);
}

.mobileOnly {
    display: none
}



/* FOOTER ------------------------------ */




#web-solutions {
    float: right;
    margin-left: 0.69em
}

body>footer .wrap nav span:before {
    content: "|";
    margin: 0 0.5em
}






@media screen and (min-width: 1400px) {
    body:not(.home) #products .wrap, body > .interior > .wrap {
        max-width: 95rem
    }

    main:not(.landing) #content {
        max-width: 76.5em;
        padding-right: 5%;
        padding-left: 2em;
        width: 100%
    }

    body.fullWidth main:not(.landing) #content {
        padding-left: 1em;
        padding-right: 1em;
        width: 100%;
        max-width: 60em
    }

    .product-list a, #content #products .product-list a, .product-list a:nth-child(3n+3), #content #products .product-list a:nth-child(3n+3) {
        width: 23.5%;
        margin-right: 2%
    }
    /*
    body:not(.home) #products .product-list a, body:not(.home) #products .product-list a:nth-child(4n+4) {
        width: 17.75%;
        margin-right: 2%
    }

    body:not(.home) #products .product-list a:nth-child(5n+5) {
        margin-right: 0
    }

    .product-list a:nth-child(4n+4), #content #products .product-list a:nth-child(4n+4) {
        margin-right: 0
    }*/
}

@media screen and (max-width: 1700px) {
    #product-finder #finder-bottom .product-list {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media screen and (max-width: 1440px) {

    #product-finder #finder-bottom .product-list {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (max-width: 1360px) {
    #mainnav > ul > li:nth-last-child(3) > ul {
        right: 0;
        left: auto
    }

    #content .icon-links li {
        width: 30%
    }

    #gallery .slide .image {
        padding-bottom: 50%
    }

    #CAD360 .flex .controls, #CAD360 .flex .model {
        background-size: calc(100% - 2rem) auto
    }
}

@media screen and (max-width: 1230px) {
    body:not(#tinymce) {
        padding-top: 7em
    }
    /*
    header:not(.hide-small-cart) #ancillary {
        right: 1em;
    }
    */
    body>header .small-cart {
        right: 1em
    }

    body>header .small-cart .added {
        top: 3em
    }

    #ancillary .search {
        order: 1
    }
    /*
    header:not(.hide-small-cart) #ancillary .search {
        margin-right: 7.5em
    }*/

    #hero-callouts section .textbox {
        padding: .75rem 1rem;
    }

    #hero-callouts h2 {
        font-size: 1.25rem;
    }

    body>header .tagline {
        opacity: 0;
        pointer-events: none;
    }

    #product-finder #finder-bottom {
        padding: 2.8125rem 2rem 8.4375rem
    }

    #product-finder #finder-bottom .filters {
        width: 15rem;
        min-width: 15rem
    }

    #product-finder #finder-bottom .filters .title {
        font-size: 1rem
    }

    #product-finder #finder-bottom .filters select, #product-finder #finder-bottom .filters label.flex, #product-finder #finder-bottom .filters label.flex input {
        font-size: 0.75rem
    }

    #product-finder #finder-bottom .filters select {
        padding-left: 0.25rem
    }

    #product-finder #finder-bottom .filters label.flex span {
        padding: 0 0.5rem 0 0.5rem
    }

    #product-finder #finder-bottom .filters .selected-products .selected-product {
        font-size: 0.875rem
    }

    #product-finder #finder-bottom .products-container {
        margin: 0 0 0 2rem;
        padding-left: 2rem;
    }
}

@media screen and (max-width: 1140px) {
    body:not(#tinmce) {
        padding-top:5.9375rem
    }

    body > header {
        height: auto
    }

    #brand {
        left: 1rem;
        width: 6rem
    }

    #mainnav {
        margin-top: 3.25em;
    }

    #mainnav > ul > li > a {
        font-size: 0.875rem;
        padding: 0 0.5rem
    }

    #mainnav > ul > li > span {
        top: 5.9375rem;
        height: calc(100% - 5.9375rem)
    }

    .management #mainnav > ul > li > span {
        top: 8.125rem
    }

    #ancillary > ul > li {
        line-height: 2rem
    }

    #ancillary .search input {
        height: 2rem
    }

    #ancillary .search input[type="submit"] {
        width: 2rem
    }

    #ancillary .search input[type="text"] {
        width: 12rem;
        padding: 0.75em
    }

    body>header .small-cart .quote {
        line-height: 2rem
    }

    #support {
        text-align: center
    }

    #support form {
        float: none
    }

    #products-landing-page #landing-top .wrap .product-categories li a .product-name {
        min-height: 0;
    }

    .home #products .product-categories li a {
        padding-bottom: 4.5rem
    }

    .home #products .product-categories li a h2 {
        font-size: 1.25rem;
        padding: 0 1.5em;
        line-height: 1.125em;
        max-width: 100%
    }

    .home #products .product-categories li a p {
        max-width: 100%;
        padding: 0 1em
    }

    .home #products .product-categories li a .learn-more {
        line-height: 3rem
    }

    #products-landing-page #landing-top .wrap .product-categories li a .product-name h2 {
        font-size: 1.25rem;
        line-height: 1.125em;
        max-width: 12.5rem
    }
}

@media screen and (max-width: 1080px) {
    #mainnav > ul > li .megamenu {
        max-width:100%
    }

    #content {
        padding: 1.44em 2em 7.94em 1em
    }

    #products .product-list a, #products .product-list a:nth-child(4n+4) {
        width: 28.75%;
        margin: 0 0.5em 1.75em
    }

    .home #products .product-list a {
        margin-bottom: 0
    }

    .landing #content img.wide-image {
        width: 100%;
        margin-left: 0
    }
}

@media screen and (max-width: 1000px) {
    body:not(#tinymce) {
        padding-top: 8.6875rem
    }

    body>header {
        padding: 0 1rem
    }

    #brand {
        top: 1em;
        transform: none
    }

    body>header .tagline {
        top: 2.8125rem;
        left: 8.25rem;
        opacity: 1;
        pointer-events: all;
    }

    body>header .small-cart {
        top: 1.5em
    }

    #mainnav > ul {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-content: stretch;
        align-items: flex-start;
    }

    #mainnav > ul > li > span {
        top: 8.6875rem;
        height: calc(100% - 8.6875rem);
    }

    #ancillary {
        top: 2.5em;
        right: 1rem
    }

    body>header .small-cart .quote {
        top: 1rem
    }

    #navContainer {
        float: none
    }

    #mainnav {
        margin-top: 6em
    }

    main > .wrap > aside {
        min-width: 14em
    }

    .uses {
        float: none;
        width: 100%;
        margin: 0 0 1em;
    }

    .product-list a, #content #products .product-list a, #CAD-drawings ul li, .product-list a:nth-child(3n+3), #content #products .product-list a:nth-child(3n+3), #CAD-drawings ul li:nth-child(3n+3) {
        width: 49%;
        margin-right: 2%
    }

    .product-list a:nth-child(even), #content #products .product-list a:nth-child(even), #CAD-drawings ul li:nth-child(even) {
        margin-right: 0
    }

    #hero .wrap h1 {
        font-size: 2.5em
    }

    #content .icon-links li a {
        padding: 0.5em 1em 1.5em;
    }

    .product-list.engineered-solutions a, .product-list.engineered-solutions a:nth-child(3n+3) {
        width: 49% !important;
        margin: 0 2% 1.25rem 0 !important
    }

    .product-list.engineered-solutions a:nth-child(even) {
        margin-right: 0 !important
    }

    .home .product-categories li {
        width: calc(25% - 1rem);
        margin: 0 0.75rem 0 0
    }

    #products-landing-page #landing-top .wrap .product-categories li {
        width: calc(25% - 1rem);
        margin: 0 0.75rem 0 0
    }

    #product-finder #finder-bottom .product-list {
        grid-template-columns: repeat(2, 1fr);
    }
}
