/* Original layouts on the shared FencingWise template components. */
:root{--brand:#0044d7;--brand-strong:#0038b0;--brand-light:#0044d7;--bs-primary:#0044d7;--bs-primary-rgb:0,68,215;--swiper-theme-color:#0044d7}
:root{--action-height:48px;--action-radius:6px;--action-font:15px;--action-padding:24px;--action-min-width:180px}
.rw-main{color:#111}
.rw-main .rw-kicker{display:block;margin-bottom:22px;font-size:11px;letter-spacing:.065em;font-weight:600;color:#111}
.rw-kicker:before{content:"";display:inline-block;width:20px;height:3px;background:var(--brand);margin-right:12px;vertical-align:middle}
:where(.rw-main > [class^="rw-"]) h1{font-size:clamp(36px,4.15vw,60px);line-height:1.1;letter-spacing:-.045em;font-weight:700;color:#111}
:where(.rw-main > [class^="rw-"]) h2{font-size:clamp(28px,2.7vw,39px);line-height:1.18;letter-spacing:-.035em;font-weight:600;color:#111}
:where(.rw-main > [class^="rw-"]) h3{font-size:20px;line-height:1.35;letter-spacing:-.018em;font-weight:600;color:#111}
:where(.rw-main > [class^="rw-"]) p{line-height:1.7}
.rw-section{padding:80px 0;border-top:1px solid #e5e5e5}
.rw-soft{background:#f8f8f8}
.rw-section-heading{margin-bottom:30px;max-width:800px}
.rw-section-heading h2{margin:0}
.rw-section-heading .rw-kicker{margin-bottom:18px}
.rw-intro{font-size:19px;line-height:1.65;max-width:570px}
.rw-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font-size:14px;font-weight:600;color:#111;padding-bottom:9px;border-bottom:1px solid #aaa}
.rw-text-link span,.rw-arrow,.rw-product-link span,.rw-guide-more span{color:var(--brand)}
.rw-text-link:hover{border-color:var(--brand)}
.rw-heading-note{display:flex;justify-content:space-between;align-items:start;gap:32px;margin-bottom:32px}
.rw-heading-note>p{max-width:670px;margin:0;font-size:16px}
.rw-heading-note>a{flex-shrink:0}
.rw-home-hero{padding:58px 0 0;background:#fff}
.rw-hero-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:54px;align-items:center}
.rw-hero-copy h1{margin-bottom:26px}
.rw-hero-intro{font-size:19px;max-width:470px;margin-bottom:17px}
.rw-hero-detail{font-size:15px;max-width:440px;margin-bottom:0}
.rw-hero-copy .site-cta-group{margin-top:30px!important;justify-content:flex-start!important}
.rw-hero-copy .site-cta{padding:11px 20px!important;font-size:14px}
.rw-hero-showcase{background:#f6f6f5;min-width:0;border:1px solid #e5e5e3}
.rw-showcase-heading{display:flex;justify-content:space-between;padding:22px 26px;font-size:10px;letter-spacing:.08em}
.rw-showcase-count{color:#333}
.rw-showcase-art{padding:0 8px;aspect-ratio:620/380;display:flex;align-items:center;justify-content:center}
.rw-showcase-image{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.rw-showcase-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 26px 24px}
.rw-showcase-link{font-size:16px;font-weight:600;color:#111}
.rw-showcase-link span{color:var(--brand);margin-left:12px}
.rw-showcase-caption>span{font-size:10px;white-space:nowrap}
.rw-showcase-controls{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ddd;background:white}
.rw-showcase-controls button{border:0;border-top:2px solid transparent;background:white;text-align:left;padding:18px 14px;font-size:10px;color:#111;display:flex;gap:9px;align-items:baseline}
.rw-showcase-controls button+button{border-left:1px solid #e5e5e5}
.rw-showcase-controls button span{font-size:12px;font-weight:600}
.rw-showcase-controls button[aria-pressed=true]{border-top-color:var(--brand);color:var(--brand)}
.rw-showcase-controls button:hover{background:#fafafa}
.rw-hero-foot{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:22px;border-top:1px solid #ddd;padding:24px 0;margin-top:48px;align-items:center}
.rw-hero-foot>span{font-size:10px;letter-spacing:.06em}
.rw-hero-foot>p{font-size:13px;margin:0;border-left:1px solid #ddd;padding-left:22px}
.rw-category-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ddd;border-left:1px solid #ddd}
.rw-category{display:grid;grid-template-columns:24px 1fr 15px;align-items:start;gap:12px;padding:27px 22px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;color:#111;background:#fff}
.rw-category:hover{background:#f8f8f8}
.rw-index{font-size:11px;color:var(--brand);padding-top:4px}
.rw-category h3{font-size:17px;margin-bottom:10px}
.rw-category p{font-size:13px;margin:0}
.rw-application-layout,.rw-supply-layout,.rw-spec-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.rw-application-list>a{display:flex;justify-content:space-between;gap:20px;padding:21px 0;border-bottom:1px solid #d5d5d5}
.rw-application-list>a:first-child{padding-top:0}
.rw-application-list h3{margin-bottom:6px}
.rw-application-list p{font-size:14px;margin:0}
.rw-application-list>a>span{color:var(--brand);font-size:20px}
.rw-facts{display:grid;grid-template-columns:1fr 1fr;margin:30px 0;border-top:1px solid #ddd;padding-top:22px}
.rw-facts dt{font-size:12px;font-weight:400;margin-bottom:10px}
.rw-facts dd{font-size:28px;font-weight:600;letter-spacing:-.03em;margin:0}
.rw-process{padding:0;margin:0;list-style:none}
.rw-process li{display:flex;gap:22px;padding:22px 0;border-bottom:1px solid #ddd}
.rw-process li:first-child{padding-top:0}
.rw-process li>span{font-size:12px;color:var(--brand);padding-top:5px}
.rw-process h3{margin-bottom:6px}
.rw-process p{font-size:14px;margin:0}
.rw-guides{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.rw-guides>a{display:flex;flex-direction:column;align-items:start;border-top:2px solid #111;padding:22px 0 0;color:#111}
.rw-guides>a:hover{border-top-color:var(--brand)}
.rw-guides>a>span:first-child{font-size:11px;margin-bottom:15px}
.rw-guides h3{font-size:23px;margin-bottom:14px}
.rw-guides p{font-size:14px;margin-bottom:25px}
.rw-guide-more{font-size:13px;font-weight:600;margin-top:auto}
.rw-guide-more span{margin-left:15px}
.rw-category-hero{padding:46px 0;background:white}
.rw-category-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}
.rw-category-intro h1{font-size:clamp(35px,3.8vw,52px);margin-bottom:22px}
.rw-category-intro p:last-child{max-width:510px;font-size:14px;margin:0}
.rw-category-visual{background:#f7f7f7;padding:20px;display:flex;flex-direction:column;align-items:center}
.rw-category-visual img{width:100%;mix-blend-mode:multiply}
.rw-category-visual>span{font-size:10px}
.rw-products-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.rw-product{display:grid;grid-template-columns:42% 1fr;border:1px solid #ddd;min-width:0;background:#fff;color:#111}
.rw-product-art{display:flex;align-items:center;background:#f7f7f7;padding:8px}
.rw-product-art img{width:100%;mix-blend-mode:multiply}
.rw-product-copy{padding:24px}
.rw-product-copy h3{font-size:19px;margin-bottom:12px}
.rw-product-copy p{font-size:13px;margin-bottom:20px}
.rw-product-link{font-size:12px;font-weight:600}
.rw-product-link span{margin-left:15px}
.rw-product:hover{border-color:var(--brand)}
.rw-definition-list{margin:0}
.rw-definition-list>div{padding:17px 0;border-bottom:1px solid #d9d9d9}
.rw-definition-list>div:first-child{padding-top:0}
.rw-definition-list dt{font-size:16px;font-weight:600;margin-bottom:7px}
.rw-definition-list dd{font-size:14px;line-height:1.7;margin:0}
.rw-simple-links{display:flex;flex-direction:column;gap:26px}
.rw-topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 60px}
.rw-detail-topic{padding:28px 0;border-top:1px solid #ddd}
.rw-detail-topic h3{margin-bottom:15px}
.rw-detail-topic p,.rw-detail-topic li{font-size:14px;line-height:1.75}
.rw-detail-topic ul{list-style:disc;padding-left:18px;margin-top:16px}
.rw-detail-topic li{margin-bottom:14px}
.rw-about-hero{padding:65px 0 45px}
.rw-about-hero h1{max-width:850px;margin-bottom:25px}
.rw-about-hero .rw-intro{max-width:830px}
.rw-about-facts{display:grid;grid-template-columns:1fr 1fr 1.3fr;border-top:1px solid #ddd;padding-top:30px;margin:45px 0 0;gap:30px}
.rw-about-facts dt{font-size:12px;font-weight:400;margin-bottom:12px}
.rw-about-facts dd{font-size:30px;font-weight:600;letter-spacing:-.025em;margin:0}
.rw-company-row{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;border-bottom:1px solid #ddd;padding:40px 0}
.rw-company-row:first-child{padding-top:0}
.rw-company-row h2{font-size:29px}
.rw-company-row h3{margin-top:20px}
.rw-company-row p,.rw-company-row li{font-size:15px;line-height:1.75}
.rw-company-row ul{padding-left:18px;list-style:disc}
.rw-company-row li{margin-top:16px}
.rw-directory-heading{padding:55px 0 35px;border-bottom:1px solid #ddd}
.rw-directory-heading h1{max-width:900px;font-size:48px;margin-bottom:24px}
.rw-directory-heading .rw-heading-note{margin:0}
/* Existing protected product opening, CTA and FAQ keep their original type scale. */


@media(max-width:1199.98px){.rw-hero-grid{gap:32px}.rw-home-hero{padding-top:40px}.rw-hero-copy h1{font-size:45px}.rw-showcase-caption{padding-left:18px;padding-right:18px}.rw-showcase-link{font-size:14px}.rw-showcase-controls button{padding:16px 9px;gap:6px}.rw-showcase-controls button span{font-size:11px}.rw-application-layout,.rw-supply-layout,.rw-spec-layout,.rw-category-intro,.rw-company-row{gap:45px}.rw-product{grid-template-columns:1fr}.rw-product-art img{max-height:240px}}
@media(max-width:767.98px){.rw-home-hero{padding-top:34px}.rw-hero-grid,.rw-category-intro,.rw-application-layout,.rw-supply-layout,.rw-spec-layout,.rw-company-row{grid-template-columns:1fr;gap:32px}.rw-hero-copy h1{font-size:42px;max-width:520px}.rw-main .rw-kicker{font-size:10px;margin-bottom:20px}.rw-hero-intro{font-size:17px}.rw-hero-detail{font-size:14px}.rw-hero-copy .site-cta-group{margin-top:23px!important}.rw-hero-copy .site-cta{padding:10px 18px!important;font-size:13px}.rw-showcase-art{aspect-ratio:620/350}.rw-showcase-controls button{padding:16px 12px}.rw-showcase-controls button span{font-size:11px}.rw-showcase-caption{padding-bottom:20px}.rw-showcase-heading{padding:18px}.rw-showcase-caption>span{font-size:9px}.rw-hero-foot{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px;padding:20px 0}.rw-hero-foot>span{grid-column:1/-1}.rw-hero-foot>p{font-size:11px;padding-left:10px}.rw-hero-foot>p:nth-child(2){padding-left:0;border-left:0}.rw-section{padding:48px 0}.rw-section-heading{margin-bottom:25px}:where(.rw-main > [class^="rw-"]) h2{font-size:29px}.rw-heading-note{display:block;margin-bottom:25px}.rw-heading-note>a{margin-top:20px}.rw-heading-note>p{font-size:14px}.rw-category-grid{grid-template-columns:1fr}.rw-category{padding:23px 18px;grid-template-columns:24px 1fr 18px}.rw-category h3{font-size:18px}.rw-category p{font-size:13px}.rw-intro{font-size:17px}.rw-guides{grid-template-columns:1fr;gap:30px}.rw-guides h3{font-size:23px}.rw-guides p{margin-bottom:16px}.rw-category-hero{padding:35px 0}.rw-category-intro h1{font-size:38px}.rw-category-visual img{max-height:240px}.rw-products-grid{grid-template-columns:1fr;gap:20px}.rw-product{grid-template-columns:1fr}.rw-product-art img{max-height:220px}.rw-topic-grid{grid-template-columns:1fr}.rw-about-hero{padding:35px 0}.rw-about-hero h1{font-size:40px}.rw-about-facts{grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.rw-about-facts>div:last-child{grid-column:1/-1}.rw-about-facts dd{font-size:26px}.rw-company-row{gap:20px;padding:30px 0}.rw-company-row h2{font-size:26px}.rw-directory-heading{padding:35px 0}.rw-directory-heading h1{font-size:36px}}
/* Shared action sizing; navigation toggles, gallery controls and FAQ keep their own geometry. */
body.fw-template-blue :is(a.btn_dan,.site-cta,.button,.product-quote-btn){
  box-sizing:border-box;display:inline-flex!important;align-items:center;justify-content:center;
  min-height:var(--action-height)!important;height:auto;min-width:var(--action-min-width)!important;max-width:100%;
  padding:12px var(--action-padding)!important;border-width:1px!important;border-style:solid!important;
  border-radius:var(--action-radius)!important;font-size:var(--action-font)!important;
  line-height:22px!important;font-weight:600;text-align:center;white-space:normal;
  text-decoration:none;box-shadow:none!important;transform:none!important;opacity:1;
}
body.fw-template-blue :is(a.btn_dan,.site-cta,.button,.product-quote-btn):hover{opacity:1}
body.fw-template-blue :is(a.btn_dan,.site-cta,.product-quote-btn).bg_zi,
body.fw-template-blue .button:not(.outline){background:var(--brand)!important;border-color:var(--brand)!important;color:#fff!important}
body.fw-template-blue :is(a.btn_dan,.site-cta,.product-quote-btn).bg_zi:hover,
body.fw-template-blue .button:not(.outline):hover{background:var(--brand-strong)!important;border-color:var(--brand-strong)!important;color:#fff!important}
body.fw-template-blue :is(.site-cta.bg_he,.button.outline,.cta_light_btn){background:#fff!important;border-color:#bbb!important;color:#111!important}
body.fw-template-blue :is(.site-cta.bg_he,.button.outline,.cta_light_btn):hover{background:#f3f3f3!important;border-color:#999!important;color:#111!important}
/* Restore readable white type on the original blue CTA surfaces. */
body.fw-template-blue :is(main section.bg_zi,.callout,.blue-panel){background:var(--brand)!important;color:#fff!important}
body.fw-template-blue :is(main section.bg_zi,.callout,.blue-panel) :is(h2,h3,p,div,span){color:#fff!important}
body.fw-template-blue :is(main section.bg_zi,.callout) :is(.cta_light_btn,.button){background:#fff!important;border-color:#fff!important;color:#0044d7!important}
body.fw-template-blue :is(main section.bg_zi,.callout) :is(.cta_light_btn,.button):hover{background:#eef3ff!important;border-color:#eef3ff!important;color:#0038b0!important}
body.fw-template-blue :is(main section.bg_zi,.callout) :is(.cta_light_btn,.button) span{color:inherit!important}
@media(max-width:767.98px){
  :root{--action-height:44px;--action-font:14px;--action-padding:18px;--action-min-width:160px}
  body.fw-template-blue :is(a.btn_dan,.site-cta,.button,.product-quote-btn){padding-top:10px!important;padding-bottom:10px!important;line-height:22px!important}
  /* A compact header action keeps the existing mobile navigation on one row. */
  body.fw-template-blue header a.btn_dan{min-height:36px!important;min-width:0!important;width:108px;padding:5px 8px!important;font-size:12px!important;line-height:16px!important}
}
@media(max-width:359.98px){body.fw-template-blue header a.btn_dan{width:86px}}
@media(min-width:1200px){
  header>.container>.row>div:first-child{flex:0 0 210px;width:210px}
  .header-menu .header-menu-ul{gap:6px}
  .header-menu .header-menu-ul>li>a{font-size:14px;font-weight:600;padding:15px 10px}
  body.fw-template-blue header a.btn_dan{min-height:42px!important;min-width:132px!important;padding:9px 18px!important}
}
body.fw-template-blue :is(header,#mobile_right_nav,footer) .fw-brand-wise{color:var(--brand)!important}
