/* Net Business Products V5 - responsive catalogue */
.nbw-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;width:100%;max-width:none;box-sizing:border-box}
.nbw-cols-1{grid-template-columns:1fr}.nbw-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nbw-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.nbw-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.nbw-card{background:#fff;border:1px solid #e7eee9;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px rgba(0,0,0,.06);display:flex;flex-direction:column;min-width:0}
.nbw-image{display:block;aspect-ratio:1/1;background:#f4f7f5;overflow:hidden;text-decoration:none!important}
.nbw-image img{width:100%;height:100%;object-fit:cover;display:block}
.nbw-no-image{height:100%;display:flex;align-items:center;justify-content:center;color:#82938c}
.nbw-body{padding:18px;display:flex;flex-direction:column;flex:1}
.nbw-cat{display:inline-block;align-self:flex-start;background:#11853e;color:#fff;border-radius:12px;padding:3px 9px;font-size:11px;margin-bottom:8px}
.nbw-body h3{margin:0 0 8px;color:#073b2a;font-size:20px;line-height:1.25}
.nbw-body p{margin:0 0 16px;color:#557066;font-size:14px;line-height:1.6}
.nbw-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}
.nbw-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:42px;padding:9px 16px;border-radius:24px;text-decoration:none!important;font-size:14px;font-weight:600;box-sizing:border-box}
.nbw-quote{background:#d9ff73;color:#073b2a!important}.nbw-call{background:#11853e;color:#fff!important}
.nbw-btn:hover{opacity:.9}

/* CATEGORY ARCHIVE: force the archive content to use the complete available browser width.
   This specifically fixes themes that reserve ~25% for an empty sidebar. */
body.tax-nbw_product_cat .site-content,
body.tax-nbw_product_cat .content-area,
body.tax-nbw_product_cat .site-main,
body.tax-nbw_product_cat main.site-main,
body.tax-nbw_product_cat #primary,
body.tax-nbw_product_cat .primary-content,
body.tax-nbw_product_cat .container,
body.tax-nbw_product_cat .content-container{
    width:100%!important;
    max-width:none!important;
    flex:0 0 100%!important;
    float:none!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
}
body.tax-nbw_product_cat .widget-area,
body.tax-nbw_product_cat #secondary,
body.tax-nbw_product_cat aside.sidebar,
body.tax-nbw_product_cat .sidebar{
    display:none!important;
}
body.tax-nbw_product_cat .nbw-category-page{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    box-sizing:border-box!important;
    background:#fff;
}
.nbw-category-inner{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:55px 5vw 70px!important;
    box-sizing:border-box!important;
}
.nbw-category-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}
.nbw-category-kicker{font-size:12px;font-weight:700;letter-spacing:1.2px;color:#11853e;margin-bottom:7px}
.nbw-category-heading h1{font-size:42px;line-height:1.12;margin:0;color:#073b2a}
.nbw-category-description{margin-top:12px;max-width:900px;color:#557066;line-height:1.7}
.nbw-category-description p{margin:0}
.nbw-category-count{background:#eef8e9;color:#11853e;font-weight:700;border-radius:25px;padding:11px 18px;white-space:nowrap}
.nbw-category-grid{width:100%!important;max-width:none!important}

/* Some themes wrap the main column inside another fixed-width element. */
body.tax-nbw_product_cat .nbw-category-page,
body.tax-nbw_product_cat .nbw-category-page *{box-sizing:border-box}

@media(max-width:1200px){
    .nbw-grid,.nbw-cols-4{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
    .nbw-grid,.nbw-cols-3,.nbw-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
    .nbw-category-inner{padding-left:30px!important;padding-right:30px!important}
}
@media(max-width:767px){
    .nbw-grid,.nbw-cols-1,.nbw-cols-2,.nbw-cols-3,.nbw-cols-4{grid-template-columns:1fr;gap:16px}
    .nbw-category-inner{padding:35px 16px 50px!important}
    .nbw-category-heading{display:block;margin-bottom:24px}
    .nbw-category-heading h1{font-size:30px}
    .nbw-category-count{display:inline-block;margin-top:15px}
    .nbw-actions{flex-direction:column}
    .nbw-btn{width:100%}
}


/* SINGLE PRODUCT PAGE - image left, content right */
body.single-nbw_product .site-content,
body.single-nbw_product .content-area,
body.single-nbw_product .site-main,
body.single-nbw_product main.site-main,
body.single-nbw_product #primary,
body.single-nbw_product .primary-content,
body.single-nbw_product .container,
body.single-nbw_product .content-container{
    width:100%!important;
    max-width:none!important;
    flex:0 0 100%!important;
    float:none!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
}
body.single-nbw_product .widget-area,
body.single-nbw_product #secondary,
body.single-nbw_product aside.sidebar,
body.single-nbw_product .sidebar{display:none!important}
body.single-nbw_product .nbw-single-page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff;box-sizing:border-box}
body.single-nbw_product .nbw-single-page *{box-sizing:border-box}
.nbw-single-inner{width:100%;max-width:1400px;margin:0 auto;padding:70px 5vw 90px}
.nbw-single-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:start}
.nbw-single-image-col{min-width:0}
.nbw-single-image{width:100%;aspect-ratio:1/1;background:#f5f7f6;border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.nbw-single-image img{width:100%;height:100%;object-fit:cover;display:block}
.nbw-single-no-image{font-size:16px;color:#718078}
.nbw-single-content{padding:25px 0 0;min-width:0}
.nbw-single-cat{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.nbw-single-cat a{display:inline-flex;background:#11853e;color:#fff!important;border-radius:18px;padding:6px 12px;font-size:12px;font-weight:700;text-decoration:none!important}
.nbw-single-content h1{font-size:46px;line-height:1.12;color:#073b2a;margin:0 0 20px}
.nbw-single-short{font-size:19px;line-height:1.65;color:#36564b;font-weight:500;margin-bottom:22px}
.nbw-single-description{font-size:16px;line-height:1.8;color:#526b61}
.nbw-single-description p:first-child{margin-top:0}
.nbw-single-description img{max-width:100%;height:auto}
.nbw-single-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.nbw-single-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 28px;border-radius:28px;text-decoration:none!important;font-size:16px;font-weight:700;transition:transform .2s ease,opacity .2s ease}
.nbw-single-btn:hover{transform:translateY(-2px);opacity:.92}
.nbw-single-quote{background:#ed0712;color:#fff!important}
.nbw-single-call{background:#082c8f;color:#fff!important}
@media(max-width:900px){.nbw-single-inner{padding:45px 30px 65px}.nbw-single-layout{grid-template-columns:1fr;gap:35px}.nbw-single-content{padding:0}.nbw-single-content h1{font-size:36px}}
@media(max-width:767px){.nbw-single-inner{padding:30px 16px 50px}.nbw-single-layout{gap:25px}.nbw-single-image{border-radius:12px}.nbw-single-content h1{font-size:30px}.nbw-single-short{font-size:17px}.nbw-single-actions{flex-direction:column}.nbw-single-btn{width:100%}}

/* RELATED PRODUCTS on single product page */
.nbw-related-products{width:100%;background:#f7faf8;border-top:1px solid #edf2ef;margin-top:0}
.nbw-related-inner{width:100%;max-width:1400px;margin:0 auto;padding:65px 5vw 80px;box-sizing:border-box}
.nbw-related-heading{margin-bottom:28px}
.nbw-related-kicker{font-size:12px;font-weight:800;letter-spacing:1.2px;color:#11853e;margin-bottom:7px}
.nbw-related-heading h2{font-size:36px;line-height:1.15;color:#073b2a;margin:0}
.nbw-related-grid{width:100%!important}
.nbw-related-card h3 a{color:inherit;text-decoration:none}
.nbw-related-card h3 a:hover{text-decoration:none}
@media(max-width:900px){.nbw-related-inner{padding:50px 30px 60px}.nbw-related-heading h2{font-size:30px}}
@media(max-width:767px){.nbw-related-inner{padding:40px 16px 50px}.nbw-related-heading h2{font-size:27px}}
