/* Global styles */
::placeholder { color: darkgray; opacity: 1; }
::-ms-input-placeholder { color: darkgray; opacity: 1; }
::-webkit-input-placeholder { color: darkgray; opacity: 1; }
* { -webkit-overflow-scrolling: touch; }
body { font-size: 0.875rem; line-height: normal; }
body.noscroll { overflow: hidden; }
h1, .h1 { border-bottom: 2px solid #878787; padding-bottom: 12px; }
h1, .h1, h2, h3, .h3 { font-weight: bold; }
h1, .h1, h2, h3, .h3, h4, h5, h6 { color: #0b3558; line-height: normal; }
h2 { margin: 0.625rem auto 0.5rem; }
h3, .h3 { margin: 0.625rem auto 0; }
h1>small { font-size: 67%; }
h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h4 small, .h4 small, h5 small, .h5 small, h6 small, .h6 small {
  color: unset; line-height: unset; }
img.no-auto { height: unset; }
div.icons, div.popover { display: none !important; }
.button { font-weight: bold; line-height: normal; }
p > .button { margin-bottom: 0; }
.blue-text { color: #0b3558; }
.noline, .noline:focus, .noline:hover { text-decoration: none; }
.radius { border-radius: 0.313rem; }
.red-text { color: #d12127; }
.yellow-text { color: #ffae00; }
.reveal:focus { box-shadow: 0 0 6px 3px rgba(11,53,88,0.5); outline: none; }
.tooltip { font-weight: bold; }

a:not([href]) { color: inherit; cursor: inherit; text-decoration: inherit; }
iframe { border: 0.0625rem solid #554832; display: block; margin: 1rem auto; max-width: 100%; }
picture { display: block; height: inherit; }

.fa-linkedin { color: #2667b2; }
.fa-youtube { color: #f00; }
/* End global styles */

/* Masthead */
.masthead, .masthead-content { position: relative; }
.masthead { background: #0b3558; background-image: url('../images/logo_corner.svg'); background-position: left top;
  background-repeat: no-repeat; color: #fff; font-weight: bold; height: 150px;  }
hr.header { background: #666; border: 0; content: ''; display: block; height: 3.125rem; margin: 0 0 2.1875rem;
  max-width: unset; width: 100%; }
/* The left and right padding here mimics the padding that column classes have */
.masthead-content { font-size: 0; height: inherit; padding: 0 34px; }
.masthead-content::before { content: ''; display: inline-block; height: 100%; vertical-align: middle; width: auto; }
.masthead-content > * { display: inline-block; font-size: 1rem; vertical-align: middle; }

.masthead-content > *.logo { height: auto; margin-left: 100px; margin-right: 40px; width: 267px; }
/* .logo a { display: block; } */
.logo p { margin: 0; }

/* Navigation */
/* .masthead-content > .mainmenu { } */
.mainmenu { text-transform: uppercase; width: calc(100% - 267px - 100px - 40px - 368px - 70px); }
.mainmenu .menu { justify-content: flex-end; text-align: right; }
.mainmenu .menu a { color: #fff; }
.mainmenu .menu a:hover { background: inherit; text-decoration: underline; }
.mainmenu .dropdown.menu>li>a { padding: 12px 14px; }
.mainmenu .dropdown.menu>li.is-dropdown-submenu-parent>a { padding-right: 14px; }
.mainmenu .menu li.active>a { background: inherit; color: #8e8e8e; }
.mainmenu > li a:focus, .mainmenu > li a:hover, .dropdown.menu>li.is-active>a { color: #8e8e8e; }
.is-dropdown-submenu-parent a::after { margin: 0; top: 50%; }
.dropdown.menu>li.is-dropdown-submenu-parent>a::after, .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a::after,
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right>a::after { background-image: url('../images/white-chevron.svg');
    background-position: center; background-repeat: no-repeat; background-size: cover; border: none; display: none; height: 0.375rem;
    transition: transform 0.2s; width: 0.625rem; }
.dropdown.menu>li.is-dropdown-submenu-parent.active>a::after, .dropdown.menu>li.is-dropdown-submenu-parent.is-active>a::after,
  .is-dropdown-submenu .is-dropdown-submenu-parent.is-active>a::after { background-image: url('../images/red-chevron.svg'); }
.mainmenu .is-dropdown-submenu { background: #0b3558; border: 0; font-size: 0.875rem; font-weight: normal; padding: 20px 0;
  text-transform: none; width: 16.5625rem; }
.mainmenu .is-dropdown-submenu a { line-height: normal; padding: 5px 36px; }
.mainmenu .submenu a:focus, .mainmenu .submenu a:hover, .mainmenu .submenu .is-active>a, .mainmenu .submenu li.active>a {
  background: inherit; color: #8e8e8e; }
.mainmenu .menu.is-dropdown-submenu { text-align: left; }
.is-dropdown-submenu .is-dropdown-submenu { border: 1px solid #000; margin-top: 0; }
/* li.opens-left .is-dropdown-submenu { border: 1px solid #333; } */
.is-dropdown-submenu li { position: relative; }
.is-dropdown-submenu li>a::before { background-image: url('../images/white-triangle.svg'); background-position: center;
  background-repeat: no-repeat; background-size: cover; content: ''; display: none; height: 0.375rem; left: 0; position: absolute;
  top: 50%; transform: translateY(-50%); width: 0.25rem; }
.is-dropdown-submenu li>a:focus::before, .is-dropdown-submenu li>a:hover::before { background-image: url('../images/red-triangle.svg'); }
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a::after { left: auto; right: 0; transform: rotate(90deg) translateX(-50%); }
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right>a::after { right: 0; transform: rotate(-90deg) translateX(50%); }
.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu, .is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu { top: -1.25rem; }
.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu { right: calc(100% + 0); }
.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu { left: calc(100% + 0); }
/* .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right.is-active>a::after {} */

.pushy { text-transform: uppercase; font-weight: bold; }
.pushy, .pushy > .pushy-main-submenu .pushy-submenu { background: #000; }
.pushy-submenu { text-transform: none; font-weight: normal; }
.pushy li > a { color: #fff; }
.pushy li > a:focus, .pushy li > a:hover { background: #000; color: #0b3558; }
.pushy-main-submenu > li > a:focus, .pushy-main-submenu > li > a:hover { box-shadow: inset -10px 0 6px -9px rgba(0, 0, 0, 0.5); }
.pushy-active { overflow: hidden; }

/* Unset the webkit-perspective property if we use a fixed position header */
.pushy-container { -webkit-perspective: unset; }
.pushy-menu-btn, a.pushy-menu-btn:not([href]) { color: #fff; display: none; font-size: 36px; line-height: 1;
  position: absolute; right: 3%; top: 50%; transform: translateY(-50%); }

a.up-button { background: #0b3558; bottom: 1rem; border-radius: 1.875rem; color: #fefefe; display: block;
  font-family: 'Font Awesome 5 Free'; font-size: 2rem; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased;
  font-variant: normal; font-weight: 900; left: 0.5rem; line-height: 1; padding: 0.8125rem 0.8125rem; position: fixed;
  text-decoration: none; text-rendering: auto; z-index: 2; }
a.up-button:focus, a.up-button:hover { background: #9e191e; }
a.up-button::before, a.up-button:before { content: '\f062'; }
/* End navigation */

/* Top modules */
.topmods { margin: 0 30px; }
.topmods.searchbar { margin-left: 40px; }
.searchbar { font-size: 0.875rem; max-width: 368px; width: 368px; }
.input-group > * { border: 0; }
.input-group-label { background: #666; border: 0; color: #fff; font-weight: bold; text-transform: none; }
.input-group-field::placeholder { font-family: 'Open Sans', sans-serif; font-size: 14px; font-style: italic; }
.input-group-field::-ms-input-placeholder { font-family: 'Open Sans', sans-serif; font-size: 14px; font-style: italic; }
.input-group-field::-webkit-input-placeholder { font-family: 'Open Sans', sans-serif; font-size: 14px; font-style: italic; }
.input-group-button button { background: #205A88; color: #fff; cursor: pointer; padding-left: 1.0625rem; padding-right: 1.0625rem; }
.searchbar .input-group { margin-bottom: 5px; }
.searchbar .input-group-label { font-size: 0.875rem; line-height: calc(50 / 14); padding: 0 1.3125rem; }
.searchbar .input-group-field { background: #f2f2f2; color: #333; height: 3.125rem; }

.topmods.socialmedia { background: #f2f2f2; height: 3.125rem; margin-bottom: 0.3125rem; padding: 0.375rem 1.0625rem; width: 7.625rem; }
.mobile.searchbar { display: none; max-width: unset; width: auto; }
.mobile.searchbar .input-group { margin-bottom: 0; }
.mobile.searchbar .input-group-label { display: none; }

.sponsors .socialmedia { align-items: center; display: flex; flex-direction: column; justify-content: center; }
.sponsors .socialmedia a { display: block; }
.sponsors .socialmedia a:first-child { margin-bottom: 12px; margin-right: 0; }
.socialmedia a { display: inline-flex; }
.socialmedia a:first-child { margin-right: 11px; }
/* Set align-self on the image to stop Safari from stretching its height… */
.socialmedia a img { align-self: flex-start; }
.socialmedia .fab { font-size: 2.25rem; line-height: normal; }

/* Top modules */
/* End masthead */

/* Slideshow */
/* End slideshow */

/* Copyarea */
.breadcrumbs li { font-size: 12px; line-height: normal; text-transform: capitalize; }
.breadcrumbs li.active { color: #0b3558; font-weight: bold; }
.breadcrumbs li:not(:last-child)::after { color: inherit; content: ">"; margin: 0 0.375rem; opacity: 1; position: relative; }
.breadcrumbs li a { color: #666; text-decoration: none; }
.breadcrumbs li a:focus, .breadcrumbs li a:hover { color: #0b3558; }

.product-categories { text-align: center; }
.product-categories h1, .product-categories .h1 { font-size: 1.875rem; font-weight: normal; line-height: normal; margin: 0 0 1.3125rem;
  text-transform: uppercase; }
.product-categories.emscallout h1 { font-size: 1.5rem; }
.emscallout video { width: 100%; }
.product-categories h1 > span { font-weight: bold; }
.product-categories h1 > small { color: #666; text-transform: none; }
.product-categories > .row:not(:first-child) > .columns, .subcategories.product-categories > .row > .columns { margin-bottom: 1.625rem; }
.product-cell { border: 0.125rem solid transparent; }
.product-cell, .product-cell > a { color: #666; text-decoration: none; }
.product-cell h3, .product-cell .h3 { color: inherit; }
.product-cell > a { display: block; height: 100%; padding: 1.625rem 0.5625rem 1.25rem; }
/* .product-cell:focus, .product-cell:hover { } */
.product-cell:focus, .product-cell:hover, .product-cell > a:focus, .product-cell > a:hover { color: #0b3558; text-decoration: underline; }
.product-cell h3, .product-cell .h3 { font-size: 1.125rem; line-height: normal; margin-bottom: 0.625rem; }
.product-cell img { display: inline-flex; }
.product-cell div.product-image-container { background-position: center; background-repeat: no-repeat; background-size: contain;
  height: 12.25rem; }

.copyarea, .product-categories { margin-bottom: 36px; margin-top: 36px; }
.copyarea.inner { margin-top: 32px; }
.copyarea ol, .copyarea ul { margin: 1.5rem 0 1.5rem 0; padding-left: 1.875rem; }
.copyarea ol li, .copyarea ul li { line-height: calc(23 / 16); list-style-type: none;
  margin: 0 auto 0.625rem; position: relative; }
.copyarea ol li::before, .copyarea ul li::before { color: #0b3558; content: '\25CF'; display: block;
  font-size: 0.6875rem; left: -1.125rem; position: absolute; top: 50%; transform: translateY(-50%); }

hr.thicker { border-bottom-width: 2px; border-color: #878787; }

ol { counter-reset: li; }
.copyarea ol li::before { direction: rtl; display: inline-block; font-size: inherit; font-weight: 600; left: -20px; margin: 0;
  position: absolute; text-align: right; top: 0; transform: none; width: 12px; }
ol > li { counter-increment: li; }
.copyarea ol > li::before { content: '.' counter(li); width: 16px; }
/* Reset left/right margins back to auto for component content that may contain its own rows and columns */
.row.reset { margin-left: auto; margin-right: auto; }

[class*="leading-"]:not(:last-of-type)::after { border: 0 solid #eee; border-top-width: 0.0625rem; clear: both; content: '';
  display: table; margin: 2.25rem auto; height: 0.0625rem; width: 100%; }
.map-container { margin: 1.5rem auto; }

dl dt.result-title:first-child { margin: 0 auto 0.3125rem; }
dl dt.result-title:not(:first-child) { margin: 1rem auto 0.3125rem; }

.videowrapper { /* background styles, etc. */ border: 0; margin: 0 auto 36px; position: relative; }
.videowrapper::before, .videowrapper:before { content: ''; float: left; margin-left: -1px; padding: 56.25% 0 0 0; width: 1px; }
.videowrapper::after, .videowrapper:after { clear: both; content: ''; display: table; }
.videowrapper embed, .videowrapper iframe, .videowrapper object { border: 0; height: 99%; margin: 0; max-width: unset; position: absolute; width: 100%; }
.squarephoto { margin: 0 auto; position: relative; }
.squarephoto::before, .squarephoto:before { content: ''; float: left; margin-left: -1px; padding: 100% 0 0 0; width: 1px; }
.squarephoto::after, .squarephoto:after { clear: both; content: ''; display: table; }
.squarephoto img { border: 0; height: 100%; margin: 0; max-width: unset; position: absolute; width: 100%; }

.photoblock { background-position: center; background-repeat: no-repeat; background-size: contain; display: inline-block;
  font-size: 0; height: 200px; margin: 10px 0; width: 100%; }
.photoblock a { display: block; height: 100%; }

input[name="a_password"] { display: none; height: 0; visibility: hidden; }
.item-image { margin: 0 0 1.5rem; max-width: 400px; position: relative; }
.item-image.part-images { max-width: 300px; }
.item-image img { height: auto; max-width: 100%; }
.item-image.pull-right { float: right; margin: 0 0 1.5rem 1.25rem; width: 42%; }

.tns-next, .tns-prev { background: rgba(0,0,0,0.75); border-radius: 50%; display: block; font-size: 22px; height: 30px;
  line-height: 1; padding: 0; position: absolute; text-align: center; top: 50%; transform: translateY(-50%); width: 30px; }
.tns-next .fa, .tns-prev .fa { vertical-align: text-bottom; }
.tns-next:not([href]), .tns-prev:not([href]) { color: #fefefe; cursor: pointer; }
a.tns-next { right: 0; }
a.tns-prev { left: 0; }
.copyarea ul.thumbnails { list-style: none; margin: 0; padding: 0; text-align: center; }
.copyarea .thumbnails li { border: 2px solid #fefefe; cursor: pointer; display: inline-block; margin: 0 3px; }
.copyarea .thumbnails li::before { content: none; }
.copyarea .thumbnails li.tns-nav-active { border-color: rgba(0,0,0,0.10); }

/* .wtb-wrapper { font-size: 0; }
a.wtb-link { display: inline-block; margin: 0.75rem 0.625rem; text-align: center; vertical-align: middle; width: calc((100% / 3) - 20px); }
a.wtb-link > img { height: auto; max-width: 100%; width: auto; } */
.wtb-wrapper { /* font-size: 0; */ align-items: flex-end; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; }
.wtb-wrapper:not(.alldistros) { align-items: center; }
a.wtb-link { display: block; font-size: 1rem; margin: 0.75rem 0.625rem; text-align: center; width: calc((100% / 3) - 20px); }
a.wtb-link > img { height: auto; max-width: 100%; width: 70%; }
.wtb-wrapper.alldistros a.wtb-link { width: calc((100% / 4) - 20px); }
.wtb-wrapper.alldistros a.wtb-link > img { object-fit: contain; height: 120px; width: 120px; }

.part-header h1 { margin: 1.25rem auto 0; }
span.part-status { color: #b3b3b3; display: inline-block; font-size: 1rem; font-style: italic; font-weight: normal; }

.table-scroll > table { min-width: 64rem; }
.table-scroll__nav { background: rgba(251,251,251, 0.75); border-radius: 0.1875rem; bottom: 5%; color: #0a0a0a; font-size: 0.75rem; line-height: calc(15 / 12);
  padding: 0.375rem; position: fixed; right: 3%; text-align: right; width: 5.625rem; z-index: 1; }
.table-scroll__nav label { font-size: inherit; line-height: inherit; margin-bottom: 3px; text-shadow: 0.0625rem 0.0625rem 0.125rem rgba(0,0,0,0.5); }
.table-scroll__nav::after { clear: both; content: ''; display: table; }
button.table-scroll__nav__left, button.table-scroll__nav__right { background: #0b3558; border: 0; border-radius: 0.75rem; color: #fff; cursor: pointer;
  display: inline-block; font-size: 0.75rem; height: 1.375rem; line-height: 1; margin: 0 0.25rem; vertical-align: middle; width: 1.375rem; }
button.table-scroll__nav__left { margin-left: 0; }
button.table-scroll__nav__right { margin-right: 0; }
tbody tr:nth-child(odd) { background-color: #fff; }
.parts-list-wrapper { margin: 32px auto; position: relative; }
.parts-table, .parts-list { box-sizing: content-box; }
.parts-table { font-size: 0.75rem; line-height: normal; min-width: 54.375rem; }
.parts-table, .parts-table td, .parts-table th { border: 1px solid #999; }
.parts-list td, .parts-list th { padding: 12px 7px; }
.parts-list thead { background: #666; color: #fff; font-size: 0.625rem; }
.parts-list thead th { font-weight: normal; text-align: center; width: 70px; width: auto; }
.parts-list thead th:nth-child(1) { width: 100px; }
.parts-list thead th:nth-child(2) { width: 120px; }
/* These next three are handy, but not really a good fit for the type of tables we build on each category page */
/* .parts-list thead th:nth-child(n+6):nth-child(-n+9):nth-child(even) { width: 110px; } */ /* columns 6 and 8 */
/* .parts-list thead th:nth-child(n+6):nth-child(-n+9):nth-child(odd) { width: 80px; } */ /* columns 7 and 9 */
/* .parts-list thead th:nth-child(n+10):nth-child(-n+11) { width: 60px; } */ /* columns 10 and 11 */
.part-details { min-width: unset; width: auto; }
.part-details th { background: #666; color: #fff; font-weight: normal; width: 8.75rem; }
.part-details td { width: 7.25rem; }
.part-details td, .part-details th { padding: 0.5rem 0.6875rem; }

@supports (position: sticky) {
  .parts-list-wrapper { max-height: 400px; }
  .parts-list thead th { background: #666; border: 1px solid #999; position: -webkit-sticky; position: sticky; top: 0;
    z-index: 10; }
  .parts-list thead th.sticky-column { top: 0; z-index: 11; }
  th.sticky-column { background: #666; }
  td.sticky-column { background: inherit; }
  td.sticky-column, th.sticky-column { left: 0; position: -webkit-sticky; position: sticky; z-index: 10; }

  .sticky-border, th.sticky-column::after { border: 0 solid #999; border-left-width: 1px; border-right-width: 1px; bottom: 0;
    content: ''; display: block; left: -1px; pointer-events: none; position: absolute; top: 0; width: 100%; }
}

.crossovers { font-size: 0.875rem; line-height: normal; }
.crossovers, .crossovers td, .crossovers th { border: 0.0625rem solid #999; }
.crossovers td, .crossovers th { padding: 0.75rem 0.4375rem; }
.crossovers thead { background: #666; color: #fff; }

/* Sidebar */
.sidebar > *, div.product-filters { margin-bottom: 1.875rem; overflow-x: hidden; }
.sidebar h3:first-of-type, .product-filters h3 { background: #0b3558; color: #fff; font-size: 1rem; line-height: normal; margin: 0; padding: 1rem 1.5rem 0.75rem;
  text-transform: uppercase; }
.sidemenu { background: #e6e6e6; }
.sidemenu .menu { margin: 0; padding: 0; text-align: left; }
.sidemenu .menu a { padding: 0.5rem 1.5rem; }
.sidemenu .menu li { margin: 0; }
.sidemenu .menu li::before { content: none; }
.sidemenu .menu li:not(.active) a { color: #666; }
.sidemenu .menu:not(.submenu) > li:first-child, .rw-help-menu .submenu > li:first-child { margin-top: 0.5rem; }
.sidemenu .menu:not(.submenu) > li:last-child, .rw-help-menu .submenu > li:last-child { margin-bottom: 0.5rem; }
/* .sidemenu .menu:not(.submenu) > li:first-child > a, .rw-help-menu .submenu > li:first-child > a { padding-top: 1rem; }
.sidemenu .menu:not(.submenu) > li:last-child > a, .rw-help-menu .submenu > li:last-child > a { padding-bottom: 1rem; } */
.sidemenu .menu a:focus, .sidemenu .menu a:hover { text-decoration: underline; }
.sidemenu .menu li:not(.active) a:focus, .sidemenu .menu li:not(.active) a:hover { color: #0b3558; }

.rw-help-menu .menu:not(.submenu) > li:first-child > a { background: #0b3558; color: #fff; font-size: 1rem; font-weight: bold;
  line-height: normal; margin: 0; padding: 1rem 1.5rem 0.75rem; text-transform: uppercase; }
.rw-help-menu > .menu.vertical > li ul { -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-orient: vertical;
  -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

.sidebar .accordion, .product-filters .accordion { background: #ededee; border: 0; }
.sidebar .accordion, .sidebar .accordion-title, .product-filters .accordion, .product-filters .accordion-title { font-size: 14px; line-height: normal; }
.sidebar .accordion-title, .sidebar :last-child:not(.is-active)>.accordion-title, .sidebar .accordion-content,
  .sidebar :last-child>.accordion-content:last-child, .product-filters .accordion-title,
  .product-filters :last-child:not(.is-active)>.accordion-title, .product-filters .accordion-content,
  .product-filters :last-child>.accordion-content:last-child { border: 0; }
.sidebar .accordion-content, .product-filters .accordion-content { background: inherit; color: inherit; }
.sidebar .accordion-title::after, .sidebar .accordion-title::before, .product-filters .accordion-title::after, .product-filters .accordion-title::before { font-family: 'Font Awesome 5 Free'; font-weight: bold; }
.sidebar .accordion-title::before, .product-filters .accordion-title::before { content: '\f105'; }
.sidebar .is-active>.accordion-title::before, .product-filters .is-active>.accordion-title::before { content: '\f107'; }

/* Product filters */
.product-filters .button-group { justify-content: center; margin: 1.875rem auto; }
.product-filters input[type="reset"] { background: none; border-color: transparent; color: #999; font-style: italic;
  font-weight: normal; text-decoration: underline; }
.product-filters input[type="reset"]:focus, .product-filters input[type="reset"]:hover { text-decoration: none; }

.checkbox-wrapper { margin: 0 auto 1rem; }
.checkbox-wrapper label { font-size: 14px; line-height: normal; padding: 0 0 0 24px; position: relative; }
.checkbox-wrapper input[type="checkbox"] { opacity: 0; margin: 0; pointer-events: none; position: absolute; }
.checkbox-wrapper input[type="checkbox"] + label::after { content: none; }
.checkbox-wrapper input[type="checkbox"]:checked + label::after { border-color: #fff; content: ''; }
.checkbox-wrapper input[type="checkbox"]:checked + label::before { background: #0b3558; border-color: #0b3558; }
.checkbox-wrapper input[type="checkbox"]:focus + label::before { outline: rgb(59, 153, 252) auto 5px; }
.checkbox-wrapper label::after, .checkbox-wrapper label::before { border: 1px solid #333; content: ''; display: inline-block;
  height: 16px; position: absolute; width: 16px; }
.checkbox-wrapper label::before { left: 0; top: 2px; } /* checkbox */
.checkbox-wrapper label::after { border: 0; border-left: 2px solid; border-bottom: 2px solid; height: 6px; left: 4px; top: 7px;
  transform: rotate(-45deg); width: 9px; } /* checkbox check */
/* Reference: https://medium.com/claritydesignsystem/pure-css-accessible-checkboxes-and-radios-buttons-54063e759bb3 */
/* Reference: https://codepen.io/takeradi/pen/GrQydJ */
/* End product filters */
/* End sidebar */
/* End copyarea */

/* Custom CSS */
/* End custom CSS */

/* Footer */
section.sponsors { background: #666; display: block; margin: 2.25rem 0 0; padding: 2.5rem 0 1.625rem; width: 100%; }

footer { background: #0b3558; border-top: 0.3125rem solid #0b3558; color: #fff; font-size: 1rem;
  font-weight: normal; padding: 23px 0 24px; position: relative; text-align: center; }
footer a { color: #fff; text-decoration: none; }
footer a:focus, footer a:hover { color: #8e8e8e; }
footer p { margin: 0; }
footer .moduletable { margin: 0 0 16px; }
footer .footerlinks { margin-bottom: 24px; text-transform: uppercase; }
footer .logo { margin-left: auto; margin-right: auto; max-width: 64px; }
.footerlinks a:not(:last-child)::after { color: #fff; content: '|'; cursor: auto; display: inline-block;
  padding: 0 0.375rem; vertical-align: text-bottom; }

footer .chatlink { bottom: 1.75rem; margin: 0; position: absolute; right: 2.5rem; }
.chatlink .button { margin: 0; }
.dev-copyright { font-size: 14px; margin-top: 96px; }
/* End footer */

/* Locations map styles */
.gmaps-wrapper { position: relative; }
.gmaps-wrapper .noscroll { pointer-events: none; }
.gmaps-wrapper, .location-map { border: 0.063rem solid #0a0a0a; box-shadow: 0 0 0.188rem 0 rgba(51,51,51,0.5); }
.gmaps-wrapper .details * { color: #fff; }
.gmaps-wrapper .details a { color: #ccd699; text-decoration: underline; }
.gmaps-wrapper .details a:focus, .gmaps-wrapper .details a:hover { text-decoration: none; }
.gmaps-wrapper .details { background: rgba(0,0,0,0.8); bottom: 0; cursor: default; left: 0;
  padding: 0.625rem; pointer-events: unset; position: absolute; right: 0; top: 0; z-index: 1000; }
/* End locations map styles */

/* .cookie-screen, .cookie-banner { pointer-events: all; } */
.cookie-screen { background: rgba(0,0,0,0.8); bottom: 0; content: ''; position: fixed; top: 0; width: 100%; z-index: 99; }
section.cookie-banner { background: #fefefe; bottom: 0; box-shadow: 0 0 30px 0 rgba(0,0,0,0.4); color: #1a1a1a; left: 0;
  line-height: normal; padding: 1.5vh 6vw; position: fixed; width: 100%; z-index: 100; }
.cookie-banner h2, .cookie-banner p { line-height: normal; }
.cookie-banner h2, .cookie-banner p, .cookie-banner label { margin: 0 0 5px; }
.cookie-banner input, .cookie-banner button { margin-bottom: 12px; margin-top: 0; }
/* .entry-screen, .entry-banner { pointer-events: all; } */
.entry-screen { background: rgba(0,0,0,0.8); bottom: 0; content: ''; position: fixed; top: 0; width: 100%; z-index: 99; }
section.entry-banner { background: #fefefe; bottom: 0; box-shadow: 0 0 30px 0 rgba(0,0,0,0.4); color: #1a1a1a; left: 0;
  line-height: normal; padding: 1.5vh 6vw; position: fixed; width: 100%; z-index: 100; }
.entry-banner h2, .entry-banner p { line-height: normal; }
.entry-banner h2, .entry-banner p, .entry-banner label { margin: 0 0 5px; }
.entry-banner input, .entry-banner button { margin-bottom: 12px; margin-top: 0; }

/* Custom CSS */
blockquote { border-left: 0.1875rem solid #0a0a0a; margin: 1rem 0; padding: 0.9375rem 1rem; }
blockquote, blockquote p { color: inherit; }
blockquote > p:last-child, blockquote [class*="button"]:last-of-type { margin-bottom: 0; }
input[readonly] { background-color: inherit; }
select { background-position: right center; }
span.br { display: initial; }

.recap-container { position: relative; }
.recap-container > div { display: none; }
.grecaptcha-badge { margin: 0 0 1rem; }
.required::before, .required:before { color: #c71c24; content: '*'; display: inline-block; vertical-align: top; }
.pagination-list { margin-left: 0; }
.copyarea ul.pagination { list-style: none; margin: 0 0 1rem; padding: 0; }
.copyarea .pagination li { margin: 0 .0625rem 0 0; }
.copyarea .pagination li::before { content: none; }
.pagination .has-tip { cursor: pointer; }
.pagination li:last-child, .pagination li:first-child, .pagination li.nav-start,
  .pagination li.nav-prev, .pagination li.nav-next, .pagination li.nav-end { display: inline-block; }

.imageset img { display: block; margin: 0 auto; }

.team-member { line-height: normal; }
.team-member::before, .team-member:before, .team-member::after, .team-member:after { clear: both; content: ''; display: table; height: 0.0625rem; margin: 0.625rem 0; }
.staff-photo { float: left; height: 6.25rem; margin: 0 0.75rem 0.75rem 0; position: relative; width: 6.25rem; }
.staff-photo::before, .staff-photo:before { content: ''; float: left; margin-left: -1px; padding: 100% 0 0 0; width: 1px; }
.staff-photo::after, .staff-photo:after { clear: both; content: ''; display: table; }
.staff-photo img { border: 0; border-radius: 50px; height: 100%; margin: 0; max-width: unset; position: absolute; width: 100%; }

/* Weldability rating label */
span.weld-rating { background: #e6e6e6; border-radius: 50%; display: inline-block; font-size: 16px; font-weight: bold;
  padding: 10px 18px; text-transform: uppercase; vertical-align: middle; }
/* 45ad4e */
.weld-rating.weldability_a { background: #70ad47; color: #fefefe; }
.weld-rating.weldability_b { background: #c6e0b4; color: #0a0a0a; }
.weld-rating.weldability_c { background: #e2efda; color: #0a0a0a; }
.weld-rating.weldability_d { background: #ffe699; color: #0a0a0a; }
.weld-rating.weldability_e { background: #f8cbad; color: #0a0a0a; }
.weld-rating.weldability_h { background: #c65911; color: #fefefe; }
.weld-rating.weldability_k { background: #f00; color: #fefefe; }
/* End custom CSS */

/* Media queries */
/* Small and up */
@media only screen and (min-width: 0em) {}

/* Small only */
@media only screen and (max-width: 359px) {
  .masthead { background-image: none; }
  .masthead-content { padding: 0 16px; }
  .masthead-content > *.logo { margin-left: 0; width: 200px; }
}

@media only screen and (max-width: 23.688em) {
  /* .masthead { height: 5.625rem; } */
  /* .masthead-content > *.logo { height: auto; width: 13.5625rem; } */
  /* .topmods.searchbar { top: 81px; } */
}

@media only screen and (max-width: 26.188em) {
  .mobile.searchbar { display: list-item; }
}

@media only screen and (min-width: 360px) and (max-width: 564px) {
  .masthead-content > *.logo { margin-left: 45px; width: 150px; }
}

@media screen and (min-width: 32.500em) {
  .sponsors .socialmedia { flex-direction: row; }
  .sponsors .socialmedia a:first-child { margin-bottom: 0; margin-right: 11px; }
}

@media only screen and (max-width: 564px) {
  .masthead { height: 100px; }
  .masthead-content.row { padding: 0 0.875rem; }
  .masthead-content > *.logo { margin-right: 0; }
  /* .masthead-content > *.logo { margin: 0; } */
  .topmods.searchbar { left: 3%; margin: 0; max-width: unset; width: auto; }
  .pushy-menu-btn, a.pushy-menu-btn:not([href]) { font-size: 24px; }
}

@media only screen and (max-width: 39.9375em) {
  /* .masthead-content > *.logo { margin-right: 0; width: 200px; }
  .masthead-content > *:last-child { width: calc(100% - 200px); } */
  .sidebar { margin-top: 2.5rem; }
  footer .columns { margin-bottom: 1rem; }
  footer .text-right { text-align: left; }
}

/* Medium and up */
@media only screen and (min-width: 40em) {
  .item-image:not(.part-images) img { max-width: 50%; }
  /* .masthead-content { padding: 0 34px; } */

  @supports (position: sticky) {
    .parts-list-wrapper { max-height: 520px; }
  }
}

/* Medium only */
@media only screen and (min-width: 40em) and (max-width: 63.9375em) {}

@media only screen and (max-width: 49.938em) {
  footer .chatlink { bottom: unset; margin: 1.5rem 0; position: initial; right: unset; }
}

/* Variable max-width; depends on size of the menubar */
@media only screen and (max-width: 53.063em) { }

/* Medium and lower */
@media only screen and (max-width: 1099px) {
  .mainmenu { display: none; }
  .pushy-menu-btn, a.pushy-menu-btn:not([href]) { display: block; }
  .topmods.searchbar { right: 3%; }
}

@media only screen and (max-width: 63.9375em) {
  .product-cell h3, .product-cell .h3 { font-size: 16px; }
  .item-image.pull-right { float: none; margin: 0 auto 1.5rem; width: 100%; }
}

/* Large and up */
@media only screen and (min-width: 64em) {

}

/* Large only */
@media only screen and (min-width: 64em) and (max-width: 74.9375em) {}

/* Xlarge and up */
@media only screen and (min-width: 75em) {

}

@media only screen and (max-width: 75em) {
  footer { padding-left: 3%; padding-right: 3%; }
}

/* Xxlarge and up */
@media only screen and (min-width: 90em) {}

@media only screen and (min-width: 62.500em) and (max-width: 1539px) {
  .topmods.searchbar { right: 3.125rem; }
}

@media screen /* and (min-width: 23.750em) */ and (max-width: 1539px) {
  .topmods.searchbar { bottom: -45px; }
}

@media only screen and (max-width: 1539px) {
  .mainmenu { text-transform: uppercase; width: calc(100% - 267px - 100px - 40px); }
  .topmods.searchbar { position: absolute; }
  .topmods.searchbar .input-group-label, .searchbar .input-group-field { font-size: 0.75rem; }
  .topmods.searchbar .input-group-field::placeholder { font-size: 0.75rem; }
  .topmods.searchbar .input-group-field::-ms-input-placeholder { font-size: 0.75rem; }
  .topmods.searchbar .input-group-field::-webkit-input-placeholder { font-size: 0.75rem; }
  .topmods.searchbar .input-group-label { line-height: calc(30 / 12); }
  .topmods.searchbar .input-group-field { height: 1.875rem; }
}

@media only screen and (min-width: 1540px) and (max-width: 103.688em) {
  .mainmenu { text-transform: uppercase; width: calc(100% - 267px - 100px - 40px - 368px - 80px); }
}

@media only screen and (max-width: 103.688em) {
  .topmods.searchbar { margin-right: 0; }
  .topmods.socialmedia { display: none; }
}
