/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.031
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* GLOBAL */
.elementor-widget-theme-post-content ul {padding:0 0 0 1.25em; margin:0 0 1.4em; list-style-type:disc;}
.elementor-widget-theme-post-content ul li {padding-bottom:12px;}
.elementor-widget-theme-post-content .wp-block-rank-math-toc-block ul {list-style:none; padding:0 0 12px;}
.elementor-widget-text-editor ul {padding:0 0 0 1.25em; margin:0 0 1.4em; list-style-type:disc;}
.elementor-widget-text-editor ul li {padding-bottom:12px;}
.elementor-widget-theme-post-content ul li::marker, .elementor-widget-text-editor ul li::marker, .wc-tab ul li::marker {color:#222;}
.light ul li::marker, .elementor-widget-text-editor.light ul li::marker {color:#fff;}

.elementor-widget-theme-post-content ol, .elementor-widget-text-editor ol {padding:0; margin:0 0 1em; list-style:none; counter-reset:ol-counter;}
.elementor-widget-theme-post-content ol li, .elementor-widget-text-editor ol li {padding:0 0 12px 1.25em; counter-increment:ol-counter; position:relative;}
.elementor-widget-theme-post-content ol li::before, .elementor-widget-text-editor ol li::before {
  content:counter(ol-counter);
  color:#222; font-weight:700;
  padding:0; margin-right:15px;
  width:1.5em; line-height:1.8em;
  display:block; position:absolute; left:0; top:.45em;
  text-align:left; font-size:.7em;
}

.elementor-widget-theme-post-content h2 {margin-top:2.3em;}
.elementor-widget-theme-post-content h3 {margin-top:1.6em;}

.elementor-widget-theme-post-content strong,
.elementor-widget-text-editor strong {color:#222; font-weight:600;}
.light strong {color:#fff !important;}
small {font-size:.4em;}
legend {border-bottom:0 !important;}

.elementor-widget-theme-post-content a,
.elementor-widget-text-editor a:not(.nohighlight .elementor-widget-text-editor a) {
  color:#3b7cae;
  font-weight:500;
  text-shadow:1px 1px 0 #fff, -1px 1px 0 #fff;
  text-decoration:none;
  background-image:linear-gradient(#ffffff, #ffffff),
    linear-gradient(#89BCE3, #89BCE3),
    linear-gradient(#3b7cae, #3b7cae);
  background-size:10px 2px, 100% 2px, 0 2px;
  background-position:calc(10px * -1) 100%, 100% 100%, 0 100%;
  background-repeat:no-repeat;
  transition:background-size 1.5s ease-out, background-position 1.5s ease-out;
}
.elementor-widget-theme-post-content a:hover,
.elementor-widget-text-editor a:not(.nohighlight .elementor-widget-text-editor a):hover {
  background-size:10px 2px, 0 2px, 100% 2px;
  background-position:calc(100% + 10px) 100%, 100% 100%, 0 100%;
}

.elementor-widget-text-editor p, .elementor-widget-theme-post-content p,
.elementor-widget-text-editor ul, .elementor-widget-theme-post-content ul,
.elementor-widget-text-editor ol, .elementor-widget-theme-post-content ol {
  margin-bottom:1.7em;
  margin-top:1.3em;
}
.elementor-widget-text-editor .elementor-widget-container > p:last-of-type:last-child,
.elementor-widget-text-editor .elementor-widget-container > ul:last-of-type:last-child,
.elementor-widget-text-editor .elementor-widget-container > ol:last-of-type:last-child,
.elementor-widget-text-editor .elementor-widget-container .elementor-inline-editing p:last-of-type:last-child,
.elementor-widget-text-editor .elementor-widget-container .elementor-inline-editing ul:last-of-type:last-child,
.elementor-widget-text-editor .elementor-widget-container .elementor-inline-editing ol:last-of-type:last-child {
  margin-bottom:0;
  margin-top:0;
}


/* ANCHOR LINKS */
html, body {scroll-padding-top:180px;}
@media (min-width:1024px) and (max-width:1366px){
  html, body {scroll-padding-top:200px;}
}


/* HEADER */
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {font-size:130% !important; padding:5px !important;}


/* HOME */
.product-titles {columns:4; column-gap:50px; padding:0; margin:0; list-style:none; line-height:19px;}
.product-title {break-inside:avoid; margin:0 0 10px; padding:0;}
.product-title a {text-decoration:none; color:inherit; font-size:13px; color:#000; font-weight:500;}
.product-title a:hover {text-decoration:underline;}

@media (max-width:1366px) {
  .product-titles {columns:3; column-gap:35px;}
}
@media (max-width:767px) {
  .product-titles {columns:2; column-gap:25px; margin:0 0 7px;}
  .product-title a {font-size:12px;}
}


/* PRODUCT LISTING */
.productcat {
  background:#fff;
  background:-webkit-linear-gradient(rgba(233,233,229,1) 0%, rgba(255,255,255,1) 100%);
  background:-o-linear-gradient(rgba(233,233,229,1) 0%, rgba(255,255,255,1) 100%);
  background:linear-gradient(rgba(233,233,229,1) 0%, rgba(255,255,255,1) 100%);
  background-size:100% 300px;
  background-repeat:no-repeat;
  text-align:center; padding:60px 10% 10px;
}
.productcat a {color:#000;}
.productcat a:hover {text-decoration:underline;}
.productcat h1 {margin:0 0 20px;}
.productdescription {max-width:768px; margin:0 auto 35px; font-size:14px;}
.productcat div:nth-of-type(2):before {
  content:"Product Types";
  position:relative; text-align:center; border-bottom:1px solid #ccc;
  width:100%; display:block; padding:3px 0;
  text-transform:uppercase; font-size:11px; letter-spacing:1px; background:#ddd;
}
.producttypes {list-style:none; font-size:13px; padding:0; border-bottom:1px solid #ccc;}
.producttypes a {padding:8px 0; display:inline-block;}

.productlisting {padding:0; margin:0 auto; display:flex; flex-wrap:wrap; justify-content:center; max-width:1280px;}
.productlisting::after, .productresources::before, #productwrap::after, .productcontent::after {content:' '; display:table; clear:both;}
.productlisting .productheading, .productresources h3 {
  width:100%;
  background:#f2f2ef; color:#000;
  font-weight:300; text-align:center;
  border-top:1px solid #e9e9e1; border-bottom:1px solid #e9e9e1;
  padding:10px; margin-top:30px;
}
.productlisting .productsubheading {width:100%; text-align:center; font-weight:300; color:#000; border-bottom:1px solid #e9e9e1; padding:5px 0;}
.cmproduct {width:50%; align-items:center;}
.cmproduct a {
  display:block; height:100%;
  padding:20px 10px 30px; margin:5px 0; text-align:center; color:#000;
  font-size:15px; line-height:20px; font-weight:600;
  -webkit-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;
  border-radius:4px;
}
.cmproduct a img {
  margin:0 auto 20px; display:block; width:100%;
  border:20px solid #fff; border-radius:10px; box-shadow:0 10px 50px 0 rgba(0, 0, 0, 0.2);
  transition:all 0.3s ease; max-width:210px;
}
.cmproduct a:hover img {box-shadow:0 10px 50px 0 rgba(0, 0, 0, 0.5);}
.cmproduct a span {display:block;}
.cmproduct a span strong {
  color:#fff;
  display:block;
  padding:4px;
  max-width:100px;
  margin:0 auto 5px;
  background:#7F1418;
  font-weight:600;
  font-size:13px;
  border-radius:3px;
}
.cmproduct a small {display:block; color:#666; font-size:12px !important; font-weight:400; max-width:200px; margin:5px auto;}
.usamade, .cmproduct a .usamade {color:#666; font-size:12px; font-weight:400; padding-top:7px; display:flex; justify-content:center;}
.usamade picture, .cmproduct a .usamade picture {line-height:0;}
.usamade img, .cmproduct a .usamade img {display:inline-block; width:30px; border-radius:3px 0 0 3px; margin:0; border:none !important; box-shadow:none !important;}
.usamade span, .cmproduct a .usamade span {background:#E9E9E1; padding:0 15px; border-radius:0 3px 3px 0;}

a.getquote {background:#3B7CAE; color:#fff; display:inline-block; padding:4px 12px; border-radius:5px; font-size:12px; letter-spacing:1px;
-webkit-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;}
a.getquote:hover {text-decoration:none; background:#1f537a;}

.productlistcontent {max-width:750px; margin:0 auto 50px; padding:20px;}

@media (max-width:767px){
  .cmproduct a {min-height:230px;}
}
@media (min-width:768px){
  .productcat {text-align:center; padding:120px 120px 20px; margin:0 auto;}
  .productdescription {font-size:16px;}
}
@media (min-width:1024px){
  .productcat div:nth-of-type(2):before {display:none;}
  .producttypes {font-size:13px; padding:0; border-bottom:none; display:inline-block;}
  .producttypes a {padding:0 10px; line-height:15px; display:inline-block; border-right:1px solid #ccc;}
  .productcat div:last-of-type a {border-right:0;}
  .cmproduct {width:33.3%;}
  .productlisting .productheading {padding:20px; margin-top:60px; margin-bottom:20px;}
}
@media (min-width:1280px){
  .cmproduct {width:25%;}
}
@media (min-width:1600px){
  .cmproduct {width:20%;}
}


/* PRODUCTS */
.madeusa .elementor-heading-title {white-space:nowrap;}
figure.product-ad {margin:3.5em 0; overflow:hidden; border-radius:25px; box-shadow:0 10px 50px 0 rgba(0, 0, 0, 0.2);}
table thead td {background:#e5e5e5; font-weight:500; color:#000;}

.relatedproducts .productlisting {display:flex; flex-wrap:wrap; justify-content:flex-start; column-gap:30px; row-gap:60px;}
.relatedproducts .cmproduct {width:calc((100% - (1 * 30px)) / 2); align-items:center; position:relative;}
.relatedproducts .cmproduct a {
  display:block; height:100%;
  padding:0; margin:0; text-align:center; color:#000;
  font-size:15px; line-height:20px; font-weight:700;
  -webkit-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;
  border-radius:4px;
}
.relatedproducts .cmproduct a:hover {text-decoration:none;}
.relatedproducts .cmproduct a span {display:block;}
.relatedproducts .cmproduct a .usamade {display:flex;}
.relatedproducts .cmproduct a span strong {color:#fff; display:block; padding:4px; max-width:100px; margin:0 auto;}
.relatedproducts .cmproduct a small {display:block; color:#666; font-size:13px !important; font-weight:400; margin:5px auto;}
.relatedproducts .madeusa {margin-top:15px;}

@media (min-width:1024px){
  .relatedproducts .cmproduct {width:calc((100% - (2 * 30px)) / 3);}
}
@media (min-width:1280px){
  .relatedproducts .cmproduct {width:calc((100% - (3 * 30px)) / 4);}
}
@media (min-width:1600px){
  .relatedproducts .cmproduct {width:calc((100% - (4 * 30px)) / 5);}
}


/* FORMS */
#quickquote .elementor-widget-text-editor a {color:#fff; text-decoration:underline;}
#quickquote .elementor-widget-text-editor a:hover {text-decoration:none;}
.gform_required_legend {display:none !important;}
.gform-theme--foundation .gform_fields {row-gap:15px !important;}
.gform-theme--foundation textarea.small {height:80px !important; min-block-size:0 !important;}
.gform-theme--foundation input.gform_button {
  background:#7f1417 !important; font-size:20px !important; inline-size:100% !important; line-height:70px !important; font-weight:700 !important; transition:all 0.3s ease !important; border:0 !important; border-radius:3px !important; text-align:center !important; box-shadow:0 0 35px 15px rgba(255, 255, 255, 0.5) !important;
}
.gform-theme--foundation input.gform_button:hover {background:#000 !important;}