/*
Theme Name: Buffers USA
Theme URI:
Author URI:
Version: 1.0.1
Tags: Sidebar, Slider, Custom Menu
*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
strong {font-weight: bold;}
em {font-style: italic;}
a {text-decoration: none;}
* {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; outline: none;}
/* GLOBALS */
.wrapper /*.elementor-location-single*/ {overflow: hidden;}
.elementor-location-header {position: relative; z-index: 999;}
.elementor-location-header.sticky {box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.05);}

/*
.elementor-widget-text-editor.page-styles h2 {font-size: 36px;}
.elementor-widget-text-editor.page-styles h3 {font-size: 32px;}
.elementor-widget-text-editor.page-styles h4 {font-size: 28px;}
.elementor-widget-text-editor.page-styles h5 {font-size: 24px;}
.elementor-widget-text-editor.page-styles h5 {font-size: 20px;}*/
.elementor-widget-text-editor.page-styles ul,
.elementor-widget-text-editor.page-styles ol {font-size: 18px; margin-bottom: 5px; font-weight: 400;}
.elementor-widget-text-editor.page-styles ul li {position: relative; padding-left: 30px; margin-bottom: 5px;}
.elementor-widget-text-editor.page-styles ul li::before {content: "\f111"; font-size: 10px; color: #03497a; position: absolute; left: 0; top: -1px; font-weight: 400; font-family: 'Font Awesome 5 Free';}
.elementor-widget-text-editor.page-styles ol li {margin-bottom: 5px; counter-increment: inst; position: relative; padding-left: 20px;}
.elementor-widget-text-editor.page-styles ol li:before {content: counter(inst); position: absolute; left: 0;}
.elementor-widget-text-editor.page-styles p a {color: #000; text-decoration: underline; font-weight: 700;}

/*.page-styles ul,
.page-styles ol {font-size: 18px; margin-bottom: 25px; font-weight: 400;}
.page-styles ul li {position: relative; padding-left: 20px; margin-bottom: 10px;}
.page-styles ul li::before {content: "\f111"; font-size: 7px; color: #03497a; position: absolute; left: 0; top: -1px; font-weight: 700; font-family: 'Font Awesome 5 Free';}
.page-styles ol li {margin-bottom: 10px; counter-increment: inst; position: relative; padding-left: 20px;}
.page-styles ol li:before {content: counter(inst); position: absolute; left: 0;}
.page-styles ul li a {color: #000; text-decoration: underline; font-weight: 700;}
.page-styles.custom ul {text-transform: uppercase;}*/

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"], 
.gform_wrapper input[type="tel"],
.gform_wrapper textarea,
.gform_wrapper select {background: #fff !important; width: 100% !important; border: none !important; border-radius: 4px !important; padding: 20px 20px !important; font-size: 18px !important; height: 60px !important; font-weight: 400 !important; font-family: "DM Sans", Sans-serif;}
.gform_wrapper textarea {min-block-size: 120px !important;}
.gform_wrapper select {padding: 12px 25px !important;}
.gform_wrapper .gfield_label.gform-field-label {font-size: 18px !important; margin-top: 10px !important; font-weight: 700 !important;}
.gform_wrapper .gform_fields {row-gap: 20px !important;}
.gform_wrapper input[type="submit"] {font-size: 20px !important; letter-spacing: 2px !important; background: #0054a4 !important; color: #fff !important; padding: 20px 25px !important; text-transform: uppercase !important; width: 100% !important; max-width: 50%; font-weight: 700 !important; font-family: "Square721BT", Sans-serif !important;}
.gform_wrapper input[type="submit"]:hover {color: #fff !important; background: #03497a !important;}
.gform_wrapper .ginput_container.ginput_container_select {position: relative; cursor: pointer;}
.gform_wrapper .ginput_container.ginput_container_select:after {position: absolute; right: 15px; top: 50%; margin-top: -7px; z-index: 9; color: #000; pointer-events: none; font-size: 15px; content: "\f0d7"; font-weight: 900; font-family: 'FontAwesome';}
.gform_wrapper input[type=file] {width: 100% !important; height: auto !important; padding: 0 !important; border: none !important; background: transparent !important; border: 2px dashed #fff !important; padding: 3px !important;}
.gform_wrapper input[type=file]::file-selector-button {font-size: 15px !important; color: #010101 !important; background: #d9d9d9 !important; width: 100%; padding: 15px 30px !important; cursor: pointer !important; -webkit-border-radius: 4px !important; -moz-border-radius: 4px !important; border-radius: 4px !important;}
.gform_wrapper .gform_heading {display: none;}
.gform_wrapper .gform-footer {margin-top: 20px !important;}
.gform_careers .gform_wrapper span.gfield_description.gform_fileupload_rules {color: #fff;}
.gform_careers .gform_wrapper .gform-footer {display: flex; justify-content: center;}

@media (max-width: 1024px) {
	.gform_wrapper .gform-theme--foundation .gfield--width-half {grid-column: span 12 !important;}
}

/* -------------------- Category Products Styles---------------- */

.nested-category-list .current-cat > .category-link {
    background-color: #e6f0fa;
    color: #0054a4;
    font-weight: 700;
}

ul.leaf-products:before {
    content: "Download the Product PDF";
    position: absolute;
    top: -20px;
    font-weight: 500;
    font-size: 22px;
    left: 0px;
}

a:has(+ .leaf-products) {
    display: none !important;
}

ul.parent-product-cat .leaf-products li a {
    display: block !important;
}

.nested-category-list .ancestor-cat > .category-link {
    background-color: #f3f7fb; 
    color: #003366;
    font-weight: 600;
}

.nested-category-list,
.nested-category-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.has-children.open {
    background-color: #dde7f0;
}

.left-sidebar-product {
    border: 1px solid #e0e0e0;
    background: #fafafa;
}

.container-dv h1 {
    padding-left: 10px;
}

.category-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 15px;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    color: #003366;
    transition: background 0.2s ease;
}

.sub-categories {
    background: #f9f9f9;
}

.sub-categories .category-item {
    border: none;
    margin: 0;
}

.sub-categories .category-link {
    font-weight: 500;
    text-transform: none;
    font-size: 14px;
    padding: 6px 20px;
    color: #003366;
}

.sub-categories .category-link:hover {
    background: transparent;
    text-decoration: underline;
}

.sub-categories .sub-categories {
    padding-left: 15px;
    border-left: 2px solid #ddd;
}

.nested-category-list li.has-children > .category-link {
    position: relative;
    padding-right: 25px;
}

.nested-category-list li.has-children > .category-link::after {
    content: "\25BC";
    font-size: 12px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    transition: transform 0.2s ease;
    color: #003366;
}

.nested-category-list li.has-children.open > .category-link::after {
    transform: translateY(-50%) rotate(0deg);
}

ul.leaf-products {
    position: relative;
}

ul.leaf-products li {
    padding: 0px !important;
    border-bottom: 1px solid #eee !important;
    position: relative;
}

ul.parent-product-cat ul.leaf-products li {
    padding: 10px 0px !important;
}

section.breadcrum-sec {
    background-color: #eeeeee;
    padding: 15px;
}

.breadcrumb-sec {
    width: 100%;
    max-width: 1590px;
    margin: auto;
}

.container-dv {
    width: 1590px;
    margin: auto;
    position: relative;
}

.container-dv h1 {
    text-align: left;
}

nav.breadcrumb a {
    color: #0054a4;
    font-weight: 700;
}

section.category-banner-sec {
    padding: 0px 0px !important;
    height: 400px;
    text-align: center;
    background-color: #0054a4;
    color: #fff;
    margin-top: 80px;
	background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    padding-top: 90px !important;
}

section.category-banner-sec .bg-imgg:after {
    content: "";
    background-size: cover;
    position: absolute;
    width: 85%;
    top: -80px;
    height: 100%;
    right: 0px;
    border-radius: 8px;
}

section.main-cat-sec {
    max-width: 1590px;
    margin: auto;
    display: flex;
    gap: 60px;
    justify-content: space-between;
}

section.search-bar-live {
    max-width: 750px;
    margin: auto;
    padding: 50px 0px;
}

.left-sidebar-product {
    width: 30%;
    height: fit-content;
}

.right-section-product {
    width: 70%;
}

ul.parent-product-cat li {
    padding: 15px 0px !important;
}

.right-section-product .parent-product-cat {
    margin-top: 25px;
}

.right-section-product a {
    color: #0054a4 !important;
}

li.category-item.cat-30:nth-child(2) {
    display: none;
}

.searchwp-form-input-container.swp-items-stretch input {
    line-height: 45px;
    font-size: 18px;
}

#searchwp-form-2 input[type=submit] {
    border: 3px solid #0054a4 !important;
    border-radius: 5px !important;
    width: 20%;
    background: #0054a4;
    color: #fff !important;
    border-radius: 5px;
    font-family: "Square721BT", Sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
}

.nested-category-list li.has-children > ul.sub-categories,
.nested-category-list li.has-children > ul.nested-category-list {
    display: none;
    padding-left: 0;
    margin: 0;
}

.nested-category-list li.has-children.open > ul.sub-categories,
.nested-category-list li.has-children.open > ul.nested-category-list {
    display: block;
}

.nested-category-list li.has-children > ul.nested-category-list {
    padding-left: 0px;
}

@media only screen and (max-width: 1024px) {

	section.main-cat-sec {gap: 30px;}
	form.searchwp-form .swp-flex--row {flex-direction: column !important;}
	#searchwp-form-2 input[type=submit] {width: 100%; min-height: 50px;}
}

@media only screen and (max-width: 767px) {
    section.main-cat-sec {
        display: block;
    }

    .left-sidebar-product {
        width: 100% !important;
    }

    li.cat-8.active-head {
        margin-left: 0px !important;
    }

    .right-section-product {
        width: 100% !important;
        margin-top: 50px;
    }
}
ul.sub-categories.nested-category-list {
    border: none;
}

.left-coll > .nested-category-list > li.has-children.open > .category-link,
.left-coll > .nested-category-list > li > .category-link.active {
    background-color: #e6f0fa !important;
    color: #0054a4 !important;
    font-weight: 700 !important;
}

.left-coll .nested-category-list .nested-category-list > li > .category-link.active,
.left-coll .nested-category-list .nested-category-list > li.has-children.open > .category-link {
    background: #f9f9f9  !important;
    color: #003366 !important;
    font-weight: 500 !important;
    
}
