:root{--green:#142b4a;--lime:#ffe6a4;--ink:#0b1d33;--muted:#5d6d7e;--line:#dce2e9;--paper:#f5f7fa;--white:#fff}button:hover,.btn:hover{background:#243f61}.topbar{background:#0b1d33;border-bottom:3px solid #ffb602}.hero{background:#fff4d8}.heroart{background:linear-gradient(145deg,#fff8e8,#e8edf4)}.hero p{color:#4c5d70}.secondary{background:#e9edf3;color:#142b4a}.secondary:hover{background:#dae2ed}.departments summary{background:#ffb602!important;color:#0b1d33!important}.logo img{height:68px}.adminnav{background:#0b1d33}.adminnav button.active{background:#ffb602;color:#0b1d33}.btn,button{border-radius:6px}.hero{border-radius:12px}.hero h1{letter-spacing:-1.4px}
.safety-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;padding:30px 0}.safety-pagination button{min-width:43px;padding:10px 14px}.safety-pagination .currentpage{background:#ffb602;color:#0b1d33}.pagecount{font-size:13px;color:var(--muted);width:100%;text-align:center}.home-catalogue{border-top:1px solid var(--line);margin-top:45px;padding-top:35px}.promo-layout.safety-has-ads{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(240px,1fr);gap:20px}.safety-ad-column{display:grid;gap:18px}.safety-ad{background:#0b1d33;border-radius:10px;overflow:hidden;color:#fff;display:grid;grid-template-columns:1fr;position:relative}.safety-ad img{width:100%;height:160px;object-fit:cover;display:block}.safety-ad>div{padding:18px}.safety-ad .eyebrow{color:#ffcf54}.safety-ad h2{font-size:23px;margin:8px 0}.safety-ad p{font-size:14px;margin-bottom:12px}.safety-ad .btn{background:#ffb602;color:#0b1d33;margin-top:10px}.safety-ad strong{display:block}.safety-ad-banner{grid-template-columns:1fr 2fr;align-items:center;margin:30px 0;background:#142b4a}.safety-ad-banner img{height:220px}.safety-ad-banner>div{padding:25px 35px}@media(max-width:950px){.promo-layout.safety-has-ads{grid-template-columns:1fr}.safety-ad-column{grid-template-columns:1fr 1fr}}@media(max-width:550px){.safety-ad-column,.safety-ad-banner{grid-template-columns:1fr}.safety-pagination{gap:5px}.safety-pagination button{min-width:35px;padding:9px}.safety-ad-banner>div{padding:20px}}

/* Approved Safety Hubs design: marketing artwork never changes stock records. */
body:not(.adminbody){background:#fff}body:not(.adminbody) main{max-width:1680px;width:100%;padding:24px 32px 65px}body:not(.adminbody) header{padding:18px 32px;min-height:112px;border-bottom:1px solid var(--line)}body:not(.adminbody) .logo{width:240px}body:not(.adminbody) .logo img{height:76px}body:not(.adminbody) header .departments{position:absolute;top:100%;left:0;width:260px;z-index:61}body:not(.adminbody) header .departments>summary{border-radius:0;height:49px;padding:14px 22px;font-size:16px;text-transform:uppercase}body:not(.adminbody) nav#navigation{padding:15px 24px 15px 285px;background:#fff;border-bottom:1px solid var(--line);gap:32px;text-transform:uppercase;font-weight:bold}body:not(.adminbody) .search button{background:#ffb602;color:#0b1d33}body:not(.adminbody) .topbar{padding:7px 32px;font-size:12px;letter-spacing:.3px}.safety-home{padding:0 0 65px!important}.safety-landing-grid{display:grid;grid-template-columns:260px minmax(0,1fr) 330px;min-height:435px;gap:5px}.safety-dept-sidebar{background:#0b1d33;color:white;display:flex;flex-direction:column;padding:5px 18px}.safety-dept-sidebar>a{display:flex;align-items:center;gap:12px;border-bottom:1px solid #ffffff25;padding:12px 4px;font-size:14px;line-height:1.3;flex:1}.safety-dept-sidebar b{margin-left:auto;font-size:20px;font-weight:400}.safety-dept-symbol{font-size:22px;width:24px;text-align:center}.safety-main-hero{background:#0b1d33;color:white;position:relative;overflow:hidden;min-height:435px}.safety-main-hero #safetyherostage{position:absolute;inset:0}.safety-hero-art{position:absolute;inset:0;overflow:hidden}.safety-hero-art img{position:absolute;width:100%;height:100%;object-fit:cover}.safety-hero-art.art-hero img{width:192.6579%;height:278.1903%;max-width:none;left:-40.3818%;top:-44.7796%;object-fit:fill}.safety-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#071e34 0%,#071e34f8 40%,#071e34a0 58%,transparent 78%)}.safety-hero-copy{position:relative;z-index:2;padding:85px 30px 70px;max-width:90%}.safety-hero-copy h1{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(38px,4.6vw,72px);font-weight:800;letter-spacing:-1px;line-height:1.03;margin:0 0 16px}.safety-hero-copy h1 span{color:#ffb602}.safety-hero-copy p{font-size:20px;margin-bottom:22px;color:white}.safety-hero-copy .btn{background:#ffb602;color:#0b1d33;border-radius:2px;font-size:17px}.safety-hero-controls{position:absolute;bottom:18px;left:23px;display:flex;gap:9px;z-index:3;align-items:center}.safety-hero-controls button[data-safety-slide]{padding:0;width:11px;height:11px;border-radius:50%;background:#ddd;box-shadow:0 0 0 1px #ffffff60}.safety-hero-controls button[aria-current=true]{background:#ffb602}.safety-hero-controls #safetyheropause{padding:4px 8px;font-size:12px;background:#ffffff20;color:white}.safety-landing-grid>.safety-ad-column{gap:5px}.safety-ad{border-radius:0}.safety-landing-grid .safety-ad{min-height:215px;display:block;position:relative;overflow:hidden}.safety-landing-grid .safety-ad>a{position:absolute;inset:0;overflow:hidden}.safety-landing-grid .safety-ad img{height:100%;object-fit:cover}.safety-landing-grid .safety-ad>div{position:relative;z-index:2;padding:20px;max-width:75%;background:linear-gradient(90deg,#071e34ed,#071e34c0 60%,transparent)}.safety-landing-grid .safety-ad h2{font-size:27px;margin:14px 0 8px;line-height:1.05}.safety-landing-grid .safety-ad p{max-width:145px;line-height:1.3;font-size:14px}.safety-ad .btn{border-radius:2px;padding:10px 14px}.safety-ad .eyebrow{font-size:9px;letter-spacing:2px}.safety-ad.art-boots img{width:372.727%;height:555.09%;left:-272.727%;top:-89.351%;max-width:none;position:absolute;object-fit:fill}.safety-ad.art-gloves img{width:372.727%;height:562.91%;left:-272.727%;top:-192.958%;max-width:none;position:absolute;object-fit:fill}.safety-category-ribbon{display:grid;grid-template-columns:repeat(6,1fr);background:#f6f7f9;padding:15px 25px}.safety-category-ribbon a{border-right:1px solid #d8dee5;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 8px 6px;font-size:14px}.safety-category-ribbon a:last-child{border:0}.safety-category-art{height:115px;width:100%;display:block;background-image:url('/static/safety-assets/design/approved-artwork.png');background-size:601.8349% 1042.61%;background-position-y:58.856%;background-repeat:no-repeat}.cat-art-0{background-position-x:0}.cat-art-1{background-position-x:20%}.cat-art-2{background-position-x:40%}.cat-art-3{background-position-x:60%}.cat-art-4{background-position-x:80%}.cat-art-5{background-position-x:100%}.home-featured{padding:25px 28px}.home-featured .sectionhead{margin:0 0 14px}.home-featured h2{font-size:23px}.home-featured .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.home-featured .card{padding:14px;border-radius:2px;box-shadow:0 1px 6px #0b1d3308;display:grid;grid-template-columns:40% minmax(0,1fr);column-gap:12px;position:relative}.home-featured .card .productimage{grid-row:1/8;height:165px;align-self:center}.home-featured .card .productimage img{height:100%;object-fit:contain}.home-featured .card h3{font-size:14px}.home-featured .card .price{font-size:21px}.home-featured .card .muted{font-size:11px}.home-featured .card .btn{background:#ffb602;color:#0b1d33;padding:9px;font-size:12px;text-align:center;border-radius:2px}.home-featured .card .badge{position:absolute;top:5px;left:5px}.safety-home>.safety-ad-banner{margin:5px 0 0;min-height:110px;display:block;padding:20px 30px;position:relative;overflow:hidden}.safety-home>.safety-ad-banner>a:first-child{position:absolute;inset:0;opacity:.6}.safety-home>.safety-ad-banner img{width:100%;height:100%;object-fit:cover}.safety-home>.safety-ad-banner.art-banner img{width:100%;height:1033.62%;top:-882.7586%;left:0;position:absolute;max-width:none;object-fit:fill}.safety-home>.safety-ad-banner>div{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0;background:linear-gradient(90deg,#071e34 0%,#071e34 50%,transparent)}.safety-ad-banner .eyebrow{display:none}.safety-home>.safety-ad-banner h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:34px;margin:0;color:#ffb602;max-width:45%}.safety-home>.safety-ad-banner p{font-size:14px;max-width:230px;margin:0}.safety-home>.safety-ad-banner .btn{white-space:nowrap}.safety-services{padding:22px 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-bottom:1px solid #dce2e9}.safety-services strong,.safety-services span{display:block;font-size:13px}.safety-services span{color:var(--muted)}.safety-home .home-catalogue{margin:0;padding:32px}.safety-home .home-catalogue h1{font-size:30px}.safety-home .home-catalogue .breadcrumb{display:none}.safety-pagination .currentpage{border-radius:2px}.safety-home .card .productimage{background:#fff}
@media(min-width:1680px){.safety-hero-copy{padding-top:105px}}@media(max-width:1200px){.safety-landing-grid{grid-template-columns:210px minmax(0,1fr) 260px}.safety-dept-sidebar{padding:5px 12px}.safety-dept-sidebar>a{font-size:12px}.safety-hero-copy{padding:80px 23px}.safety-hero-copy p{font-size:16px}.safety-landing-grid .safety-ad h2{font-size:23px}.safety-landing-grid .safety-ad>div{padding:17px;max-width:85%}.home-featured .card{display:block}.home-featured .card .productimage{height:140px}.home-featured .card .price{font-size:22px}}
@media(max-width:900px){.safety-landing-grid{grid-template-columns:190px minmax(0,1fr)}.safety-landing-grid>.safety-ad-column{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.safety-landing-grid .safety-ad{min-height:210px}.safety-main-hero{min-height:405px}.safety-hero-copy h1{font-size:58px}.safety-category-ribbon{grid-template-columns:repeat(3,1fr)}.home-featured .grid{grid-template-columns:repeat(2,1fr)}body:not(.adminbody) .logo{width:175px}body:not(.adminbody) header{padding:15px 20px}.safety-home>.safety-ad-banner>div{flex-wrap:wrap}.safety-home>.safety-ad-banner h2{max-width:100%;font-size:30px}}
@media(max-width:600px){body:not(.adminbody) header .departments{width:175px}body:not(.adminbody) nav#navigation{padding-left:190px;font-size:11px;gap:20px}body:not(.adminbody) header .departments>summary{font-size:12px;height:48px;padding:14px}.safety-landing-grid{grid-template-columns:1fr}.safety-dept-sidebar{display:none}.safety-main-hero{min-height:390px}.safety-hero-copy{padding:95px 22px 55px}.safety-hero-copy h1{font-size:52px}.safety-hero-copy p{font-size:17px}.safety-landing-grid .safety-ad-column{grid-template-columns:1fr 1fr}.safety-landing-grid .safety-ad>div{padding:15px;max-width:100%}.safety-landing-grid .safety-ad h2{font-size:23px}.safety-landing-grid .safety-ad p{font-size:12px}.safety-landing-grid .safety-ad .btn{font-size:11px}.safety-category-ribbon{padding:12px 10px}.safety-category-ribbon strong{font-size:12px}.safety-category-art{height:90px}.home-featured{padding:24px 15px}.home-featured h2{font-size:21px}.home-featured .sectionhead>a{font-size:12px}.safety-home .home-catalogue{padding:25px 15px}.safety-services{padding:20px 15px;grid-template-columns:1fr;gap:12px}.safety-home>.safety-ad-banner{padding:25px 18px}.safety-home>.safety-ad-banner p{max-width:100%;flex:1 1 100%}body:not(.adminbody) main{padding:25px 15px}body:not(.adminbody) .topbar{padding:8px 15px}}

body:not(.adminbody) .logo{display:flex;align-items:center;gap:6px}body:not(.adminbody) .logo img{width:65px;height:76px;flex:0 0 65px}body:not(.adminbody) .logo .safety-brand-name{font-size:23px;font-weight:900;letter-spacing:-1px;white-space:nowrap;text-transform:uppercase}body:not(.adminbody) .logo .safety-brand-name b{color:#f6ac00}@media(max-width:900px){body:not(.adminbody) .logo .safety-brand-name{font-size:17px}body:not(.adminbody) .logo img{width:48px;flex-basis:48px;height:65px}}

/* Shared navy treatment applies to replacement promotional photos too. */
.safety-hero-art:after,.safety-ad>a:first-child:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(7,30,52,.30),rgba(7,30,52,.16));mix-blend-mode:multiply}
.safety-ad>a:first-child{overflow:hidden}.safety-ad>a:first-child img{filter:saturate(.86)}
.safety-category-custom{height:115px;width:100%;object-fit:contain}.safety-no-art .safety-hero-art{display:none}
.safety-landing-grid:not(:has(.safety-ad-column)){grid-template-columns:260px minmax(0,1fr)}
@media(max-width:900px){.safety-landing-grid:not(:has(.safety-ad-column)){grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:600px){.safety-landing-grid:not(:has(.safety-ad-column)){grid-template-columns:1fr}.safety-category-custom{height:90px}}

/* Update 4: each department label owns its full height. */
body:not(.adminbody) header .menudepartment>summary{position:static;width:100%;height:auto;min-height:49px;padding:12px 14px;white-space:normal;line-height:1.4;overflow-wrap:anywhere;align-items:flex-start;gap:12px}
.menudepartment{break-inside:avoid;margin-bottom:8px}.menudepartment summary span{flex:0 0 auto}.departmentlist{max-width:calc(100vw - 24px)}
body:not(.adminbody) .logo{width:285px;gap:8px}body:not(.adminbody) .logo img{width:105px;height:100px;flex-basis:105px}body:not(.adminbody) .logo .safety-brand-name{font-size:21px}
.adminbody aside>img{width:170px;height:110px;object-fit:contain}
@media(max-width:900px){body:not(.adminbody) header{flex-wrap:wrap;gap:14px}body:not(.adminbody) .logo{width:250px}body:not(.adminbody) .logo img{width:90px;height:88px;flex-basis:90px}body:not(.adminbody) .logo .safety-brand-name{font-size:19px}body:not(.adminbody) header .search{flex-basis:100%;max-width:none}}
@media(max-width:400px){body:not(.adminbody) .logo{width:210px}body:not(.adminbody) .logo img{width:80px;flex-basis:80px}body:not(.adminbody) .logo .safety-brand-name{font-size:16px}}

/* Clip the banner to its artwork area; no baked-in pagination strip. */
.safety-home>.safety-ad-banner.art-banner>a:first-child{bottom:0;overflow:hidden}
.safety-home>.safety-ad-banner.art-banner img{height:1199%;top:-1024%}
.safety-home-pages{display:flex;justify-content:center;align-items:center;gap:18px;padding:26px;white-space:normal;flex-wrap:wrap}

.safety-monthly-specials{padding:24px 28px}.safety-monthly-specials h2{color:#0b1d33}.safety-special-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding:10px 0}.safety-special-track>.card{flex:0 0 270px;scroll-snap-align:start}.safety-special-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.special-saving{font-size:13px;margin:8px 0}.special-saving del{color:#65766d;margin-right:8px}.special-saving strong{background:#ffdf73;color:#102337;padding:4px 7px;border-radius:4px}

.safety-banner-prices{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0;color:white}.safety-banner-prices del{font-size:19px;opacity:.8}.safety-banner-prices strong{font-size:32px;color:#ffb602}.safety-banner-prices span{background:#ffb602;color:#0b1d33;padding:5px 9px;font-weight:bold}.safety-main-hero:has(.safety-banner-prices) .safety-hero-copy{padding-top:45px}.safety-main-hero:has(.safety-banner-prices) h1{font-size:clamp(28px,3.1vw,46px)}

#safetycommunity{max-width:1400px;margin:auto;padding:28px}#safetycommunity>section{margin:20px 0}.safety-client-logos{display:flex;gap:25px;flex-wrap:wrap}.safety-client-logos figure{margin:0;text-align:center;width:150px}.safety-client-logos img{width:150px;height:90px;object-fit:contain}#safetyreviewlist{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:15px}#safetyreviewlist blockquote{margin:0;background:#f5f7fa;border:1px solid #dce2e9;padding:20px;overflow-wrap:anywhere}#safetyreviewform{max-width:650px}#safetyreviewform input[type=checkbox]{width:auto}

/* Sidebar subdivisions: native click/keyboard/touch and mouse hover. */
.safety-side-department{border-bottom:1px solid #ffffff25;min-width:0}.safety-side-department>summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;padding:12px 4px;font-size:14px;line-height:1.4;min-height:48px;overflow-wrap:anywhere}.safety-side-department>summary::-webkit-details-marker{display:none}.safety-side-department>summary>span:nth-child(2){flex:1;min-width:0}.safety-side-department>summary>b{margin-left:auto}.safety-side-department[open]>summary{color:#ffb602}.safety-side-subcategories{padding:3px 0 12px 14px;background:#102b46}.safety-side-subcategories a{display:block;padding:9px 12px;font-size:13px;white-space:normal;overflow-wrap:anywhere}.safety-side-subcategories a:hover,.safety-side-subcategories a:focus-visible{background:#ffb602;color:#0b1d33}.safety-side-department summary:focus-visible{outline:2px solid #ffb602;outline-offset:-2px}
@media(max-width:600px){.safety-dept-sidebar{display:flex;order:2;padding:10px 18px}.safety-side-department>summary{font-size:14px}.safety-landing-grid>.safety-ad-column{order:1}}

/* Slightly larger shared logo, with wrapping space on narrow screens. */
body:not(.adminbody) .logo{width:305px}body:not(.adminbody) .logo img{width:120px;flex-basis:120px;height:112px}
.adminbody .adminbrand img{width:180px;max-width:100%;height:120px;object-fit:contain}
@media(max-width:900px){body:not(.adminbody) .logo{width:275px}body:not(.adminbody) .logo img{width:105px;flex-basis:105px;height:98px}}
@media(max-width:400px){body:not(.adminbody) .logo{width:230px}body:not(.adminbody) .logo img{width:95px;flex-basis:95px;height:90px}}
.safety-variant-panel .formgrid{margin-top:16px}.safety-option-pictures{display:flex;gap:10px;flex-wrap:wrap}.safety-option-pictures img{width:75px;height:75px;object-fit:contain;border:1px solid #dce2e9;padding:4px;border-radius:6px}

.dromex-gallery{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;max-height:260px;overflow:auto}.dromex-gallery button{padding:3px;background:white;border:1px solid #d6dce4;border-radius:7px;width:74px;height:80px}.dromex-gallery img{width:100%;height:100%;object-fit:contain}.dromex-gallery button:focus{outline:3px solid #cda600}

/* Real photos preserve their proportions. Placeholder labels are never burned into feed images. */
.picture-coming-soon{display:block;text-align:center;font-size:13px;font-weight:600;color:#526071;padding:8px;background:#f5f6f8}.image-pending{object-fit:contain!important;background:white}.card img,.detailimage>img{object-fit:contain}.safety-hero-art{background:#edf0f3}.safety-hero-art img{object-fit:contain!important;object-position:85% center!important;width:100%!important;height:100%!important;filter:none!important}.safety-hero-shade{background:linear-gradient(90deg,rgba(10,27,46,.97) 0%,rgba(10,27,46,.86) 37%,rgba(10,27,46,0) 68%)!important}.safety-ad>a img{object-fit:contain!important;background:white;filter:none!important}.safety-category-custom{object-fit:contain!important;background:white!important;height:115px;width:100%;}.safety-category-ribbon a{background:white!important}@media(max-width:650px){.safety-category-custom{height:90px}.safety-hero-art img{object-position:90% center!important}}

/* Keep the restored firefighter photograph visible in the slideshow. */
.safety-hero-art.firefighter-restore18 img{object-fit:cover!important;object-position:52% center!important}
