:root{--bsp-red:#D42027;--bsp-ink:#111214;--bsp-wash:#F5F6F7;--bsp-line:#E3E5E7;--bsp-muted:#6C7176}.bsp-product-badges,.bsp-product-certifications{display:flex;flex-wrap:wrap;gap:10px}.bsp-chip{display:inline-flex;align-items:center;min-height:36px;padding:7px 14px;border:1px solid currentColor;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.bsp-chip.is-solid{background:var(--bsp-red);border-color:var(--bsp-red);color:#fff}.bsp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px}.bsp-stat{padding:28px 0;border-top:1px solid var(--bsp-line)}.bsp-stat__value{font-size:clamp(2.25rem,4vw,3rem);font-weight:800;line-height:1;color:var(--bsp-red)}.bsp-stat__label{margin-top:12px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--bsp-muted)}.bsp-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.bsp-gallery__item{margin:0}.bsp-gallery__image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.bsp-gallery figcaption{margin-top:8px;color:var(--bsp-muted);font-size:.8125rem}.bsp-gallery__link,.bsp-product-card a,.bsp-download-card,.bsp-family-group header a{display:block}.bsp-gallery__link:focus-visible,.bsp-product-card a:focus-visible,.bsp-download-card:focus-visible,.bsp-family-group header a:focus-visible{outline:3px solid var(--bsp-red);outline-offset:3px}.bsp-components{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}.bsp-component{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--bsp-line)}.bsp-component__number{flex:0 0 28px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bsp-red);color:#fff;font-weight:800}.bsp-component__image{width:56px;height:56px;object-fit:contain}.bsp-component h3{margin:0 0 5px;font-size:1rem}.bsp-component p{margin:0;color:var(--bsp-muted)}.bsp-table-wrap{overflow:auto}.bsp-table{width:100%;border-collapse:collapse;min-width:720px}.bsp-table th{text-align:left;padding:14px 16px;border-bottom:2px solid var(--bsp-ink);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.bsp-table td{padding:16px;border-bottom:1px solid var(--bsp-line)}.bsp-table td:first-child{color:var(--bsp-red);font-weight:800}.bsp-configurations th[data-column="model"],.bsp-configurations td[data-column="model"]{width:18%;min-width:120px}.bsp-configurations th[data-column="notes"],.bsp-configurations td[data-column="notes"]{width:auto}.bsp-decoder{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.bsp-decoder__item{border:1px solid var(--bsp-line);border-top:3px solid var(--bsp-red);padding:18px}.bsp-decoder__pattern{font-size:1.7rem;font-weight:800}.bsp-specifications{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;margin:0}.bsp-specification{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--bsp-line)}.bsp-specification dt{color:var(--bsp-muted)}.bsp-specification dd{margin:0;font-weight:700;text-align:right}.bsp-downloads{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.bsp-download-card{border:1px solid var(--bsp-line);padding:24px;color:var(--bsp-ink);text-decoration:none}.bsp-download-card:hover{border-color:var(--bsp-red);background:var(--bsp-wash)}.bsp-download-card span{display:block;color:var(--bsp-red);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.bsp-download-card strong,.bsp-download-card small{display:block;margin-top:8px}.bsp-download-card small{color:var(--bsp-muted)}.bsp-family-group{margin-bottom:64px}.bsp-family-group header{display:flex;justify-content:space-between;gap:24px;align-items:end;border-bottom:2px solid var(--bsp-ink);padding-bottom:14px;margin-bottom:18px}.bsp-family-group header h2{margin:0}.bsp-family-group header a{min-height:44px;color:var(--bsp-red);font-weight:700;text-decoration:none}.bsp-product-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.bsp-product-card{border:1px solid var(--bsp-line);background:#fff}.bsp-product-card a{height:100%;color:var(--bsp-ink);text-decoration:none;padding:0 18px 20px}.bsp-product-card__image{display:block;width:calc(100% + 36px);max-width:none;margin:0 -18px 18px;aspect-ratio:4/3;object-fit:cover}.bsp-product-card__series{display:block;color:var(--bsp-red);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.bsp-product-card h3{margin:7px 0;font-size:1.1rem}.bsp-product-card p{margin:0;color:var(--bsp-muted)}@media(max-width:767px){.bsp-components,.bsp-specifications{grid-template-columns:1fr}.bsp-family-group header{display:block}.bsp-family-group header a{margin-top:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* v1.1.4 — Product hero media */
.bsp-product-hero-media{width:100%;height:100%;overflow:hidden}
.bsp-product-hero-image{display:block;width:100%;height:100%;min-height:320px;object-fit:cover}

/* v1.1.4 — Featured product gallery */
.bsp-gallery--featured{display:block}
.bsp-gallery__featured{margin:0}
.bsp-gallery__link--featured{display:block;background:#111214}
.bsp-gallery__image--primary{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.bsp-gallery--featured figcaption{margin-top:8px;color:var(--bsp-muted);font-size:.875rem;line-height:1.5}
.bsp-gallery__thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}
.bsp-gallery__thumb{display:block;min-width:44px;min-height:44px;border:2px solid transparent;background:#111214}
.bsp-gallery__thumb:hover{border-color:var(--bsp-red)}
.bsp-gallery__thumb:focus-visible{outline:3px solid var(--bsp-red);outline-offset:2px}
.bsp-gallery__thumb-image{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}

/* Accessible lightbox */
html.bsp-lightbox-open{overflow:hidden}
.bsp-lightbox[hidden]{display:none!important}
.bsp-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px}
.bsp-lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88)}
.bsp-lightbox__panel{position:relative;z-index:1;display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;width:min(94vw,1400px);max-height:92vh}
.bsp-lightbox__figure{margin:0;min-width:0;text-align:center}
.bsp-lightbox__image{display:block;max-width:100%;max-height:78vh;width:auto;height:auto;margin:0 auto;object-fit:contain}
.bsp-lightbox__caption{margin:12px auto 0;max-width:80ch;color:#fff;font-size:.9375rem;line-height:1.55}
.bsp-lightbox__counter{margin-top:8px;color:#d6dadf;font-size:.8125rem;font-weight:700;letter-spacing:.08em}
.bsp-lightbox__close,.bsp-lightbox__nav{appearance:none;border:2px solid #fff;background:#111214;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;font:inherit}
.bsp-lightbox__close{position:absolute;right:0;top:-58px;font-size:2rem;line-height:1}
.bsp-lightbox__nav{font-size:2.4rem;line-height:1}
.bsp-lightbox__close:hover,.bsp-lightbox__nav:hover{background:var(--bsp-red);border-color:var(--bsp-red)}
.bsp-lightbox__close:focus-visible,.bsp-lightbox__nav:focus-visible{outline:3px solid #fff;outline-offset:3px}

@media(max-width:767px){
  .bsp-product-hero-image{min-height:220px}
  .bsp-gallery__thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bsp-lightbox{padding:12px}
  .bsp-lightbox__panel{grid-template-columns:48px minmax(0,1fr) 48px;width:100%}
  .bsp-lightbox__close{top:-54px}
}
@media(prefers-reduced-motion:reduce){
  .bsp-lightbox *{transition:none!important;animation:none!important}
}


/* v1.1.6 — Product Family homepage/index API */
.bsp-product-cards{grid-template-columns:repeat(var(--bsp-card-columns,3),minmax(0,1fr))}
.bsp-product-card__models{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.bsp-product-card__models span{display:inline-flex;align-items:center;min-height:26px;padding:4px 7px;border:1px solid var(--bsp-line);font-size:.6875rem;font-weight:700;line-height:1;letter-spacing:.06em;color:var(--bsp-ink);background:#fff}
.bsp-family-single__header{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}
.bsp-family-single__header h2{margin:0}
.bsp-family-single__header p{margin:8px 0 0;color:var(--bsp-muted)}
.bsp-family-single__header a{display:inline-flex;align-items:center;min-height:44px;color:var(--bsp-red);font-weight:700;text-decoration:none}
.bsp-family-single__header a:focus-visible{outline:3px solid var(--bsp-red);outline-offset:3px}
@media(max-width:980px){.bsp-product-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.bsp-product-cards{grid-template-columns:1fr}.bsp-family-single__header{display:block}.bsp-family-single__header a{margin-top:10px}}


/* v1.2.0 — managed product assets + card polish */
.bsp-product-featured-media{width:100%;overflow:hidden}
.bsp-product-featured-image{display:block;width:100%;height:auto}
.bsp-product-featured-image__link{display:block}
.bsp-product-featured-image__link:focus-visible{outline:3px solid var(--bsp-red);outline-offset:3px}

.bsp-product-card{position:relative;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.bsp-product-card:hover{border-color:var(--bsp-red);box-shadow:0 10px 28px rgba(12,13,15,.10);transform:translateY(-2px)}
.bsp-product-card a{display:flex;flex-direction:column}
.bsp-product-card__image{aspect-ratio:16/8;transition:transform .22s ease}
.bsp-product-card:hover .bsp-product-card__image{transform:scale(1.025)}
.bsp-product-card__models{margin-top:auto;padding-top:14px}
.bsp-product-card__models span{border-color:#c9cdd2;background:#f7f8f9}
.bsp-product-card--images-featured .bsp-product-card__series{margin-top:2px}

.bsp-configurations th[data-column="model"],
.bsp-configurations td[data-column="model"]{width:21%;min-width:150px}
.bsp-configurations td[data-column="model"]{white-space:nowrap}


/* v1.2.5 — in-place product gallery selection */
.bsp-gallery__thumb{cursor:pointer}
.bsp-gallery__thumb.is-active,
.bsp-gallery__thumb[aria-current="true"]{border-color:var(--bsp-red,#d42027)}


/* ==========================================================
   v1.3.0 — Related Products
   ========================================================== */

.bsp-related-products {
    margin-top: clamp(48px, 6vw, 84px);
}

.bsp-related-products__header {
    margin-bottom: 24px;
}

.bsp-related-products__heading {
    margin: 0;
    font-size: clamp(1.7rem, 2.8vw, 2.6rem);
    line-height: 1.08;
    text-transform: uppercase;
}

.bsp-related-products__header > p {
    max-width: 760px;
    margin: 14px 0 0;
    color: var(--bsp-muted, #5c6675);
}

.bsp-related-products__grid {
    display: grid;
    grid-template-columns: repeat(var(--bsp-related-columns, 3), minmax(0, 1fr));
    gap: clamp(16px, 2vw, 24px);
}

.bsp-related-product-card {
    min-width: 0;
    border: 1px solid var(--bsp-line, #d8dde2);
    background: #fff;
    overflow: hidden;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.bsp-related-product-card:hover {
    border-color: var(--bsp-red, #d42027);
    box-shadow: 0 10px 28px rgba(12,13,15,.10);
    transform: translateY(-2px);
}

.bsp-related-product-card__link {
    display: flex;
    flex-direction: column;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.bsp-related-product-card__link:focus-visible {
    outline: 3px solid var(--bsp-red, #d42027);
    outline-offset: -3px;
}

.bsp-related-product-card__media {
    width: 100%;
    aspect-ratio: 16 / 8;
    overflow: hidden;
    background: #eef0f2;
}

.bsp-related-product-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .22s ease;
}

.bsp-related-product-card:hover .bsp-related-product-card__image {
    transform: scale(1.025);
}

.bsp-related-product-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 20px;
}

.bsp-related-product-card__relationship {
    margin-bottom: 7px;
    color: var(--bsp-red, #d42027);
    font-size: .7rem;
    line-height: 1.25;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bsp-related-product-card__series {
    margin-bottom: 6px;
    color: var(--bsp-red, #d42027);
    font-size: .69rem;
    line-height: 1.25;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bsp-related-product-card h3 {
    margin: 0;
    font-size: clamp(1.15rem, 1.5vw, 1.45rem);
    line-height: 1.1;
    text-transform: uppercase;
}

.bsp-related-product-card p {
    margin: 12px 0 0;
    color: var(--bsp-muted, #5c6675);
    font-size: .9rem;
    line-height: 1.5;
}

.bsp-related-product-card__models {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 16px;
}

.bsp-related-product-card__models span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 4px 7px;
    border: 1px solid #c9cdd2;
    background: #f7f8f9;
    color: var(--bsp-ink, #111214);
    font-size: .6875rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .05em;
}

.bsp-related-product-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding-top: 20px;
    color: var(--bsp-red, #d42027);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

@media (max-width: 980px) {
    .bsp-related-products__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .bsp-related-products {
        margin-top: 42px;
    }

    .bsp-related-products__grid {
        grid-template-columns: 1fr;
    }

    .bsp-related-product-card__media {
        aspect-ratio: 16 / 8;
    }
}


/* ==========================================================
   v1.3.2 — Technical document cards
   ========================================================== */

.bsp-downloads{align-items:stretch}

.bsp-download-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:190px;
    padding:24px 26px 22px;
    border:1px solid var(--bsp-line,#d8dde2);
    border-top:3px solid var(--bsp-red,#d42027);
    background:#fff;
    color:var(--bsp-ink,#111214);
    text-decoration:none;
    transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease
}

.bsp-download-card:hover{
    border-color:var(--bsp-red,#d42027);
    background:#fff;
    box-shadow:0 10px 28px rgba(12,13,15,.08);
    transform:translateY(-2px)
}

.bsp-download-card__header{
    display:flex!important;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
    margin:0!important;
    color:var(--bsp-red,#d42027)!important;
    font-size:.72rem!important;
    font-weight:800!important;
    line-height:1.25;
    letter-spacing:.09em!important;
    text-transform:uppercase
}

.bsp-download-card__format{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-width:36px;
    min-height:25px;
    padding:4px 7px;
    border:1px solid currentColor;
    color:var(--bsp-red,#d42027)!important;
    line-height:1!important
}

.bsp-download-card__separator{color:#8b9198!important}
.bsp-download-card__type{color:var(--bsp-red,#d42027)!important}

.bsp-download-card__title{
    display:block;
    margin-top:16px!important;
    font-size:1.08rem;
    line-height:1.28;
    font-weight:800
}

.bsp-download-card__metadata{
    display:flex!important;
    flex-wrap:wrap;
    gap:0;
    margin-top:12px!important;
    color:var(--bsp-muted,#5c6675)!important;
    font-size:.78rem;
    line-height:1.5
}

.bsp-download-card__meta-separator{
    padding:0 6px;
    color:#9aa0a6
}

.bsp-download-card__action{
    display:block!important;
    margin-top:auto!important;
    padding-top:20px;
    color:var(--bsp-ink,#111214)!important;
    font-size:.7rem!important;
    font-weight:800!important;
    line-height:1.2;
    letter-spacing:.08em!important;
    text-transform:uppercase
}

.bsp-download-card:hover .bsp-download-card__action{
    color:var(--bsp-red,#d42027)!important
}

@media(max-width:767px){
    .bsp-download-card{
        min-height:0;
        padding:22px
    }
}


/* ==========================================================
   v1.3.3 — Global BSP Document Library
   ========================================================== */

.bsp-document-library{
    width:100%
}

.bsp-document-library__section{
    margin:0 0 clamp(54px,7vw,88px)
}

.bsp-document-library__section:last-child{
    margin-bottom:0
}

.bsp-document-library__header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:20px;
    padding-bottom:13px;
    border-bottom:2px solid var(--bsp-ink,#111214)
}

.bsp-document-library__header h2{
    margin:0;
    font-size:clamp(1.45rem,2.4vw,2rem);
    line-height:1.08;
    font-weight:800;
    text-transform:uppercase
}

.bsp-document-library__count{
    flex:0 0 auto;
    color:var(--bsp-muted,#5c6675);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.1em
}

.bsp-downloads--library{
    grid-template-columns:repeat(var(--bsp-document-columns,3),minmax(0,1fr))
}

.bsp-downloads--library .bsp-download-card{
    min-width:0
}

@media(max-width:980px){
    .bsp-downloads--library{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

@media(max-width:767px){
    .bsp-document-library__section{
        margin-bottom:48px
    }

    .bsp-document-library__header{
        align-items:center
    }

    .bsp-downloads--library{
        grid-template-columns:1fr
    }
}

/* ==========================================================
   v1.3.4 — Compact global document library UX
   Product-page document cards intentionally remain unchanged.
   ========================================================== */
.bsp-document-library--compact .bsp-document-library__tools{display:flex;flex-direction:column;gap:14px;margin:0 0 42px}
.bsp-document-library__filters{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--bsp-line,#d8dde2)}
.bsp-document-library__filters button{appearance:none;border:0;border-bottom:3px solid transparent;background:transparent;padding:12px 15px 10px;color:var(--bsp-muted,#5c6675);font:inherit;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.bsp-document-library__filters button span{margin-left:5px;font-size:.65rem}
.bsp-document-library__filters button:hover,.bsp-document-library__filters button.is-active{color:var(--bsp-ink,#111214);border-bottom-color:var(--bsp-red,#d42027)}
.bsp-document-library__filters button:focus-visible,.bsp-library-row__action a:focus-visible,.bsp-document-library__search input:focus-visible{outline:3px solid var(--bsp-red,#d42027);outline-offset:3px}
.bsp-document-library__search{display:block;max-width:620px}
.bsp-document-library__search input{width:100%;min-height:42px;padding:9px 12px;border:1px solid #737980;background:#fff;color:var(--bsp-ink,#111214);font:inherit}
.bsp-document-library--compact .bsp-document-library__section{margin:0 0 clamp(42px,5vw,64px)}
.bsp-document-library--compact .bsp-document-library__header{margin-bottom:0;padding-bottom:12px;border-bottom:2px solid var(--bsp-ink,#111214)}
.bsp-library-rows{width:100%}
.bsp-library-row{display:grid;grid-template-columns:58px minmax(220px,1.55fr) minmax(180px,1fr) minmax(180px,1fr) 112px;gap:18px;align-items:center;min-height:82px;padding:14px 10px;border-bottom:1px solid var(--bsp-line,#d8dde2);background:#fff}
.bsp-library-row:hover{background:var(--bsp-wash,#f5f6f7)}
.bsp-library-row__file span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:30px;padding:4px 6px;border:1px solid var(--bsp-red,#d42027);color:var(--bsp-red,#d42027);font-size:.66rem;font-weight:800;letter-spacing:.06em}
.bsp-library-row__document,.bsp-library-row__product,.bsp-library-row__details{min-width:0}
.bsp-library-row strong,.bsp-library-row small{display:block}
.bsp-library-row__document strong{font-size:.95rem;line-height:1.25;color:var(--bsp-ink,#111214)}
.bsp-library-row__product strong,.bsp-library-row__details strong{font-size:.68rem;line-height:1.3;letter-spacing:.055em;text-transform:uppercase;color:var(--bsp-red,#d42027)}
.bsp-library-row small{margin-top:4px;color:var(--bsp-muted,#5c6675);font-size:.7rem;line-height:1.35}
.bsp-library-row__action{text-align:right}
.bsp-library-row__action a{display:inline-block;padding:9px 11px;border:1px solid var(--bsp-ink,#111214);color:var(--bsp-ink,#111214);font-size:.66rem;font-weight:800;letter-spacing:.06em;text-decoration:none;white-space:nowrap}
.bsp-library-row__action a:hover{border-color:var(--bsp-red,#d42027);background:var(--bsp-red,#d42027);color:#fff}
.bsp-document-library__empty{padding:28px 0;color:var(--bsp-muted,#5c6675);font-weight:700}
@media(max-width:980px){.bsp-library-row{grid-template-columns:48px minmax(0,1.5fr) minmax(0,1fr) 105px}.bsp-library-row__details{grid-column:2/4}.bsp-library-row__action{grid-column:4;grid-row:1/3}}
@media(max-width:767px){.bsp-document-library--compact .bsp-document-library__tools{margin-bottom:32px}.bsp-document-library__filters{overflow-x:auto;flex-wrap:nowrap}.bsp-document-library__filters button{flex:0 0 auto}.bsp-library-row{grid-template-columns:44px minmax(0,1fr);gap:10px 14px;padding:16px 4px}.bsp-library-row__file{grid-row:1/3}.bsp-library-row__product,.bsp-library-row__details,.bsp-library-row__action{grid-column:2}.bsp-library-row__action{grid-row:auto;text-align:left;margin-top:4px}.bsp-document-library--compact .bsp-document-library__header h2{font-size:1.25rem}}


/* ==========================================================
   v1.3.5 — Global library file statistics
   ========================================================== */

.bsp-library-row__stats{
    min-width:0
}

.bsp-library-row__stats strong{
    color:var(--bsp-muted,#5c6675);
    font-size:.72rem;
    line-height:1.35;
    font-weight:700;
    letter-spacing:.035em;
    text-transform:uppercase
}

@media(max-width:980px){
    .bsp-library-row__stats{
        grid-column:2/4
    }
}

@media(max-width:767px){
    .bsp-library-row__stats{
        grid-column:2
    }
}

/* ==========================================================
   v1.3.6 — Downloads library filters/search + document icons
   ========================================================== */
.bsp-document-library .bsp-library-is-hidden{display:none !important}

/* Keep the controls visually tied together: filters first, search directly below. */
.bsp-document-library--compact .bsp-document-library__tools{
    gap:12px;
    margin-bottom:34px
}
.bsp-document-library__filters{
    align-items:flex-end
}
.bsp-document-library__search{
    margin-top:0
}

/* Purpose icon + actual file-format badge. Font Awesome is supplied by the BSP site. */
.bsp-library-row__file{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    color:var(--bsp-red,#d42027)
}
.bsp-library-row__file i{
    display:block;
    font-size:1.15rem;
    line-height:1
}
.bsp-library-row__file span{
    min-width:34px;
    min-height:20px;
    padding:2px 5px;
    font-size:.58rem
}

@media(max-width:767px){
    .bsp-document-library--compact .bsp-document-library__tools{margin-bottom:28px}
    .bsp-library-row__file{align-self:start;padding-top:3px}
}


/* v1.3.7 — Structured product warranty */
.bsp-warranty__terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--bsp-line,#d8dde2);border:1px solid var(--bsp-line,#d8dde2)}
.bsp-warranty__term{display:flex;flex-direction:column;gap:5px;padding:16px 18px;background:#fff}
.bsp-warranty__term span{font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--bsp-muted,#5c6675)}
.bsp-warranty__term strong{font-size:1rem;color:var(--bsp-ink,#111214)}
.bsp-warranty__qualifier{margin-top:12px;font-weight:700}
.bsp-warranty__note,.bsp-warranty__conditions{margin-top:12px;color:var(--bsp-muted,#5c6675)}
.bsp-warranty__conditions{padding-top:12px;border-top:1px solid var(--bsp-line,#d8dde2);font-size:.85rem}
.bsp-warranty-summary__value{font-size:clamp(1.8rem,3vw,2.7rem);font-weight:800;line-height:1}
.bsp-warranty-summary__label{margin-top:7px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}


/* v1.3.8 — Warranty component presentation */
.bsp-warranty{margin-top:28px}
.bsp-warranty__header{margin-bottom:14px}
.bsp-warranty__eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--bsp-red,#d42027)}
.bsp-warranty__description{margin-top:5px;font-size:.9rem;color:var(--bsp-muted,#5c6675)}
.bsp-warranty__term-label,.bsp-warranty__detail-label{display:block;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--bsp-muted,#5c6675)}
.bsp-warranty__term-value{display:block;margin-top:5px;font-size:1rem;color:var(--bsp-ink,#111214)}
.bsp-warranty__detail{margin-top:12px;padding-bottom:12px;border-bottom:1px solid var(--bsp-line,#d8dde2);color:var(--bsp-ink,#111214)}
.bsp-warranty__detail strong{display:block;margin-top:5px}
.bsp-warranty__note p{margin:5px 0 0}


/* ==========================================================
   v1.3.9 — Warranty emphasis + qualifier-only state
   ========================================================== */

.bsp-warranty{
    margin-top:32px
}

.bsp-warranty__header{
    margin-bottom:16px
}

.bsp-warranty__eyebrow{
    font-size:.78rem;
    font-weight:850;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--bsp-red,#d42027)
}

.bsp-warranty__description{
    margin-top:6px;
    font-size:.95rem;
    line-height:1.45;
    color:var(--bsp-muted,#5c6675)
}

.bsp-warranty__terms{
    gap:1px;
    background:var(--bsp-line,#d8dde2);
    border:1px solid var(--bsp-line,#d8dde2)
}

.bsp-warranty__term{
    padding:19px 20px;
    background:#f7f7f7
}

.bsp-warranty__term-label,
.bsp-warranty__detail-label{
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
    color:var(--bsp-muted,#5c6675)
}

.bsp-warranty__term-value{
    margin-top:7px;
    font-size:1.18rem;
    line-height:1.25;
    font-weight:800;
    color:var(--bsp-ink,#111214)
}

.bsp-warranty__detail{
    margin-top:12px;
    padding:17px 20px;
    border:1px solid var(--bsp-line,#d8dde2);
    background:#f7f7f7;
    color:var(--bsp-ink,#111214)
}

.bsp-warranty__detail strong{
    margin-top:7px;
    font-size:1.05rem;
    line-height:1.35;
    font-weight:800
}

.bsp-warranty__note p{
    margin:7px 0 0;
    font-size:.9rem;
    line-height:1.5
}

.bsp-warranty__conditions{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid var(--bsp-line,#d8dde2);
    color:var(--bsp-muted,#5c6675);
    font-size:.8rem;
    line-height:1.5
}

.bsp-warranty--qualifier-only .bsp-warranty__qualifier{
    margin-top:0
}

@media(max-width:767px){
    .bsp-warranty{
        margin-top:26px
    }

    .bsp-warranty__term,
    .bsp-warranty__detail{
        padding:16px
    }

    .bsp-warranty__term-value{
        font-size:1.08rem
    }
}


/* ==========================================================
   v1.4.0 — BSP Hero Slider
   ========================================================== */
.bsp-hero-slider{
    position:relative;
    width:100%;
    overflow:hidden;
    background:#0c0d0f;
    color:#fff
}
.bsp-hero-slider__track{display:grid;width:100%}
.bsp-hero-slide{
    grid-area:1/1;
    display:grid;
    grid-template-columns:minmax(0,46%) minmax(0,54%);
    height:var(--bsp-hero-height,clamp(440px,36vw,590px));
    min-height:0;
    position:relative;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .65s ease,visibility .65s ease
}
.bsp-hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:2}
.bsp-hero-slide__content{
    grid-column:1;
    grid-row:1;
    align-self:center;
    position:relative;
    z-index:4;
    padding:clamp(44px,5.5vw,78px) 0 clamp(58px,6vw,86px) clamp(28px,5vw,72px)
}
.bsp-hero-slide__media{
    grid-column:2;
    grid-row:1;
    position:relative;
    min-width:0;
    margin-left:-24%;
    overflow:hidden;
    background:#0c0d0f
}
.bsp-hero-slide__media:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    pointer-events:none;
    background:linear-gradient(90deg,#0c0d0f 0%,rgba(12,13,15,.96) 12%,rgba(12,13,15,.72) 31%,rgba(12,13,15,.25) 52%,rgba(12,13,15,0) 72%)
}
.bsp-hero-slide__image{
    display:block;
    width:100%;
    height:100%;
    min-height:100%;
    object-fit:cover;
    object-position:var(--bsp-hero-x,center) var(--bsp-hero-y,center)
}
.bsp-hero-slide__eyebrow{
    margin-bottom:14px;
    color:#fff;
    font-size:.72rem;
    font-weight:800;
    line-height:1.3;
    letter-spacing:.12em;
    text-transform:uppercase
}
.bsp-hero-slide__eyebrow:before{
    content:"";
    display:block;
    width:92px;
    height:3px;
    margin-bottom:14px;
    background:var(--bsp-red,#d42027)
}
.bsp-hero-slide__headline{
    max-width:760px;
    margin:0;
    color:#fff;
    font:inherit;
    font-size:clamp(2.35rem,4.6vw,4.7rem);
    font-weight:800;
    line-height:.98;
    letter-spacing:-.035em;
    text-transform:uppercase
}
.bsp-hero-slide__headline-white,.bsp-hero-slide__headline-red{display:inline}
.bsp-hero-slide__headline-red{color:var(--bsp-red,#d42027)}
.bsp-hero-slide__body{
    max-width:640px;
    margin-top:20px;
    color:#f5f5f5;
    font-size:clamp(.98rem,1.25vw,1.14rem);
    line-height:1.55
}
.bsp-hero-slide__buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.bsp-hero-slide__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:10px 16px;
    border:1px solid transparent;
    font-size:.72rem;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.045em;
    text-decoration:none;
    text-transform:uppercase
}
.bsp-hero-slide__button--red{background:var(--bsp-red,#d42027);border-color:var(--bsp-red,#d42027);color:#fff}
.bsp-hero-slide__button--black{background:#0c0d0f;border-color:#fff;color:#fff}
.bsp-hero-slide__button:hover{filter:brightness(1.08)}
.bsp-hero-slide__button:focus-visible,.bsp-hero-slider__arrow:focus-visible,.bsp-hero-slider__dot:focus-visible{outline:3px solid #fff;outline-offset:3px}
.bsp-hero-slide__callouts{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.bsp-hero-slide__callout{
    display:inline-flex;
    align-items:center;
    min-height:27px;
    padding:5px 8px;
    border:1px solid #6f7479;
    font-size:.62rem;
    font-weight:800;
    line-height:1.1;
    letter-spacing:.045em;
    text-transform:uppercase
}
.bsp-hero-slide__callout--red{background:var(--bsp-red,#d42027);border-color:var(--bsp-red,#d42027);color:#fff}
.bsp-hero-slide__callout--black{background:rgba(12,13,15,.72);color:#fff}
.bsp-hero-slider__arrow{
    appearance:none;
    position:absolute;
    top:50%;
    z-index:8;
    width:42px;
    height:54px;
    margin-top:-27px;
    border:1px solid rgba(255,255,255,.35);
    background:rgba(12,13,15,.42);
    color:#fff;
    font-size:2rem;
    line-height:1;
    cursor:pointer
}
.bsp-hero-slider__arrow:hover{background:rgba(12,13,15,.82);border-color:#fff}
.bsp-hero-slider__arrow--prev{left:12px}.bsp-hero-slider__arrow--next{right:12px}
.bsp-hero-slider__dots{
    position:absolute;
    left:50%;
    bottom:18px;
    z-index:9;
    display:flex;
    gap:9px;
    transform:translateX(-50%)
}
.bsp-hero-slider__dot{
    appearance:none;
    width:8px;
    height:8px;
    padding:0;
    border:1px solid rgba(255,255,255,.7);
    border-radius:50%;
    background:transparent;
    cursor:pointer
}
.bsp-hero-slider__dot.is-active{background:var(--bsp-red,#d42027);border-color:var(--bsp-red,#d42027)}

@media(max-width:980px){
    .bsp-hero-slide{grid-template-columns:minmax(0,52%) minmax(0,48%)}
    .bsp-hero-slide__media{margin-left:-32%}
    .bsp-hero-slide__content{padding-left:clamp(28px,5vw,48px)}
}

@media(max-width:767px){
    .bsp-hero-slide{
        grid-template-columns:1fr;
        grid-template-rows:auto clamp(220px,58vw,390px);
        height:auto;
        min-height:0
    }
    .bsp-hero-slide__content{
        grid-column:1;
        grid-row:1;
        padding:36px 24px 34px
    }
    .bsp-hero-slide__media{
        grid-column:1;
        grid-row:2;
        margin-left:0;
        min-height:clamp(220px,58vw,390px)
    }
    .bsp-hero-slide__media:after{display:none}
    .bsp-hero-slide__headline{font-size:clamp(2.15rem,10vw,3.3rem)}
    .bsp-hero-slide__body{font-size:1rem}
    .bsp-hero-slider__arrow{top:auto;bottom:calc(clamp(220px,58vw,390px)/2 - 27px)}
    .bsp-hero-slider__arrow--prev{left:8px}.bsp-hero-slider__arrow--next{right:8px}
    .bsp-hero-slider__dots{bottom:12px}
}

@media(prefers-reduced-motion:reduce){
    .bsp-hero-slide{transition:none}
}
