/* Approved neutral design B, shared by public pages. */
/* Neutralize inherited interface colors without recoloring approved SVG artwork. */
.design-b .utility-bar{color:#ededed}.design-b .hero-visual figcaption>span{color:#dddddd}.design-b .hero-visual figcaption a{border-color:#858585}.design-b .all-brands a{border-color:#909090}.design-b .cta p{color:#d9d9d9}.design-b .cta .button:not(.primary){border-color:#858585}.design-b .catalog-card:hover{background:#fafafa}
body.design-b{--paper:#ffffff;--ink:#252525;--muted:#626262;--accent:#ba392b;--line:#dedede;--soft:#f3f3f3;--radius:7px;background:radial-gradient(ellipse at 90% 280px,#f5f5f550,transparent 760px),var(--paper)}
.design-b .site-header{background:#ffffff;border-color:#dedede}.design-b .brand strong{letter-spacing:-.055em}.design-b .header-inner{min-height:90px}.design-b .utility-bar{background:#303030}
.design-b .button{border-radius:5px;min-height:48px;transition:background .15s,color .15s,border-color .15s}.design-b .button.primary{box-shadow:0 5px 12px #0000000a}.design-b .button.primary:hover{background:#922d22;border-color:#922d22}
.design-b .b-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;font-size:.86rem;font-weight:600;line-height:1.4;text-decoration:underline;text-underline-offset:6px;min-height:44px}.design-b .b-text-link span{color:var(--accent)}
.design-b .eyebrow{color:var(--accent);font-size:.66rem;letter-spacing:.11em;font-weight:600}.design-b .hero{grid-template-columns:1.12fr .88fr;gap:50px;padding:34px 0 28px;align-items:center}
.design-b .hero h1{font-size:clamp(2.7rem,5.3vw,4.5rem);line-height:1.04;letter-spacing:-.06em;max-width:14ch;margin:24px 0;hyphens:none}
.design-b .hero h1 span{color:var(--accent)}.design-b .hero-lead{font-size:1.08rem;line-height:1.65;max-width:38rem;color:#505050}.design-b .hero .actions{margin:24px 0 18px}.design-b .hero-note{max-width:34rem;font-size:.8rem;line-height:1.65;margin-bottom:9px}
.design-b .hero-visual{max-width:400px;width:100%;justify-self:end;position:relative;background:#e8e8e8;border-radius:9px;overflow:visible;animation:none;margin:0 0 10px}
.design-b .hero-visual:before{width:72px;height:72px;left:-10px;top:-10px;border-width:2px 0 0 2px;border-color:var(--accent);pointer-events:none}
.design-b .hero-visual>a{display:block;border-radius:9px;overflow:hidden}.design-b .hero-visual img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;display:block;border-radius:9px}
.design-b .hero-visual figcaption{position:static;padding:14px 18px;background:var(--ink);color:#fff;border-radius:0 0 7px 7px;margin-top:-7px;transform:translateY(7px);gap:16px;font-size:.8rem}.design-b .hero-visual figcaption span{font-size:.59rem;letter-spacing:.1em}.design-b .hero-visual figcaption a{white-space:nowrap}
.design-b .facts-strip{border:0;background:var(--ink);color:#fff;padding:24px 30px;border-radius:7px;margin:16px 0 0;position:relative;overflow:hidden}.design-b .facts-strip:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent)}.design-b .facts-strip p{border-color:#575757}.design-b .facts-strip strong{font-size:1.55rem;font-weight:600}.design-b .facts-strip span{color:#d8d8d8;font-size:.76rem}
.design-b .task-entrances{margin:20px 0 42px;gap:16px;counter-reset:task}.design-b .task-entrances .catalog-card{padding:24px;background:#ffffff;position:relative;border:1px solid #dedede;gap:10px;box-shadow:0 7px 16px #0000000a;counter-increment:task}.design-b .task-entrances .catalog-card:before{content:"0" counter(task);font-size:.68rem;letter-spacing:.12em;color:var(--accent);margin-bottom:8px}.design-b .task-entrances .catalog-card h3{font-size:1.28rem;margin:0}.design-b .task-entrances .catalog-card p{font-size:.85rem}.design-b .task-entrances .catalog-card>span{font-size:.75rem}.design-b .task-entrances .catalog-card:first-child{border-top:1px solid #dedede}.design-b .task-entrances .catalog-card:hover{border-color:var(--accent);background:#fff}
.design-b .home-jumps{margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;justify-content:space-between;gap:20px}.design-b .home-jumps a{font-size:.82rem;font-weight:500}
.design-b .home-section,.design-b .service-picker{padding:48px 0;border:0}.design-b .section-heading{margin-bottom:28px}.design-b .section-heading h2,.design-b .home-section>h2{font-size:clamp(1.9rem,3.2vw,2.7rem);line-height:1.1;letter-spacing:-.05em}.design-b .home-section>p{font-size:.93rem;line-height:1.7}
.design-b #gallery{padding:8px 0 0}.design-b #gallery-preview{min-height:0;margin-top:24px}.design-b #gallery>.button{margin-top:22px}.design-b #gallery-preview.b-work-layout:not([hidden]){display:grid}.design-b .b-work-layout{grid-template-columns:1.9fr 1fr;gap:20px;align-items:start}
.design-b .b-case{display:grid;grid-template-columns:1fr;background:#f4f4f4;border:1px solid #dedede;border-radius:8px;overflow:hidden;min-width:0}.design-b .b-pair{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:12px 12px 0;color:#fff;background:#f4f4f4}.design-b .b-pair figure{position:relative;min-width:0}.design-b .b-pair img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;background:#e6e6e6;border-radius:4px}.design-b .b-pair figcaption{position:absolute;top:10px;left:10px;bottom:auto;padding:5px 11px;border-radius:3px;background:#252525e6;color:#fff;font-size:.67rem;line-height:1.5;width:auto;height:auto;display:block}.design-b .b-pair figure:last-child figcaption{background:#ba392b}
.design-b .b-case-copy{padding:25px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 22px;align-items:center}.design-b .b-case-copy .eyebrow{grid-column:1;margin-bottom:9px}.design-b .b-case-copy h3{font-size:1.45rem;line-height:1.2;margin:0 0 10px;grid-column:1;letter-spacing:-.035em}.design-b .b-case-copy>p:not(.eyebrow){font-size:.8rem;color:var(--muted);margin:0;grid-column:1}.design-b .b-case-copy>.button{grid-column:2;grid-row:1 / span 3;align-self:center;font-size:.76rem;padding:12px 14px}
.design-b .b-work-strip{display:grid;gap:20px;min-width:0}.design-b .b-work-strip figure{position:relative;background:#ffffff;border:1px solid var(--line);border-radius:7px;overflow:hidden}.design-b .b-work-strip a{display:block}.design-b .b-work-strip img{display:block;width:100%;height:205px;object-fit:cover;object-position:center 43%}.design-b .b-work-strip figcaption{display:flex;align-items:center;justify-content:space-between;gap:14px;height:auto;padding:13px 16px;font-size:.8rem;font-weight:600;line-height:1.4;overflow:visible}.design-b .b-work-strip figcaption span{font-size:.62rem;line-height:1.3;color:var(--muted);font-weight:400;max-width:9ch}
.design-b .b-pair.b-single{grid-template-columns:1fr}.design-b .b-pair.b-single img{aspect-ratio:4/3}
.design-b .b-work-strip .b-selected-work img{object-fit:contain;background:#f4f4f4}
.design-b .b-work-layout.b-no-sidecards{grid-template-columns:1fr}.design-b .b-work-strip:empty{display:none}
.design-b .b-more-works{grid-column:1/-1;border-bottom:1px solid var(--line);padding:0 0 16px}.design-b .b-more-works>summary{font-size:.85rem;font-weight:500;padding:10px 0}.design-b .b-more-works>summary:after{content:"+";display:inline-block;width:1em;margin-left:.3em;text-align:center;color:var(--accent)}.design-b .b-more-works[open]>summary:after{content:"−"}.design-b .b-more-works>summary[data-loading]:after{content:"…"}.design-b .b-more-works .gallery-grid img,.design-b .b-more-works .gallery-grid .media-placeholder{height:250px}.design-b .b-more-works figcaption{height:auto;display:block}
.gallery-preview-announcement{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:600px){.design-b .b-more-works .gallery-grid .media-placeholder{height:190px}}
.design-b .service-groups{border:0;gap:18px;background:transparent}.design-b .service-group{padding:28px;border:1px solid var(--line);border-radius:7px;background:#ffffff;position:relative;overflow:hidden}.design-b .service-group:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#ba392b}.design-b .service-group:nth-child(2):before{background:#8a8a8a}.design-b .service-group:nth-child(3):before{background:#303030}.design-b .group-number{font-size:.72rem;margin-bottom:20px}.design-b .service-group h3{font-size:1.55rem;line-height:1.12;min-height:3.6rem}.design-b .service-group li a{padding:13px 0}.design-b .all-brands{border-radius:7px;background:#303030}.design-b .all-brands p{color:#e1e1e1}.design-b .service-descriptions{margin-top:14px}
.design-b #products{padding:40px 30px;background:#f5f5f5;border:1px solid #dedede;border-radius:9px}.design-b #products article{border:1px solid #dedede;border-radius:6px;background:#fff;padding:20px}.design-b #products article:hover{border-color:var(--accent)}.design-b #products .posts{gap:14px}.design-b #products .image{height:145px}
.design-b .arrivals-grid{gap:20px}.design-b .arrivals-grid .image{border-radius:7px;border:1px solid var(--line);margin-bottom:14px}.design-b .arrivals-grid p{font-weight:500}.design-b #faq{background:#ffffff;padding:32px;border:1px solid var(--line);border-radius:9px}.design-b .faq-item>summary{font-weight:500}.design-b.home-page #contacti{border-radius:8px}
.design-b .breadcrumbs{padding-top:20px}.design-b .page-hero.page-hero-compact{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:40px;padding:28px 0}.design-b .page-hero h1{font-size:clamp(2.4rem,4.8vw,4rem);line-height:1.06;letter-spacing:-.055em;hyphens:none;margin-bottom:22px}.design-b .page-lead{font-size:1.06rem;line-height:1.7}.design-b .page-hero .actions{align-items:center;gap:22px;margin-bottom:0}.design-b .scope-badge{font-size:.78rem;margin-top:18px;padding-top:12px}
.design-b .b-service-photo{margin:0;width:100%;max-width:335px;justify-self:end;position:relative;border-radius:8px;overflow:hidden}.design-b .b-service-photo>a{display:block}.design-b .b-service-photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;display:block}.design-b .b-service-photo figcaption{position:static;background:var(--ink);color:#fff;padding:12px 15px;font-size:.7rem;line-height:1.4}
.design-b .b-contact-ribbon{display:flex;max-width:none;width:100%;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;margin:4px 0 24px;border:1px solid #dedede;border-radius:7px;background:#f3f3f3}.design-b .b-contact-ribbon>.eyebrow{display:none}.design-b .b-contact-ribbon>a:not(.button){font-size:1.2rem;margin:0}.design-b .b-contact-ribbon>p{font-size:.76rem;line-height:1.5;margin:0}.design-b .b-contact-ribbon .button{width:auto;white-space:nowrap;font-size:.8rem;min-height:44px;padding:11px 15px}
.design-b .page-context{border-color:#dedede;background:var(--paper);margin-bottom:24px}.design-b .context-up{background:#ffffff}.design-b .context-kicker{color:#696969}.design-b .page-toc li a{font-size:.79rem}.design-b .page-toc li a[aria-current=location]{font-weight:600}.design-b .content-section{padding:27px 0}.design-b .content-section h2{font-size:1.8rem;letter-spacing:-.04em}.design-b .content-section p,.design-b .content-section li{line-height:1.8}.design-b .features article{border-radius:6px;border-color:#dedede;border-top:3px solid #b3b3b3;background:#ffffff}.design-b .brand-message{background:#f3f3f3;border-color:#ba392b}.design-b .brand-examples{border-radius:6px}.design-b .cta{border-radius:7px;background:#303030}.design-b .cta .button.primary{background:var(--accent)}
.design-b .b-work-inset{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:28px;margin:30px 0;background:#f3f3f3;padding:28px;border:1px solid #dedede;border-radius:8px}.design-b .b-work-inset h2{font-size:1.85rem;line-height:1.15;max-width:14ch;letter-spacing:-.04em}.design-b .b-work-inset p:not(.eyebrow){font-size:.85rem;line-height:1.7;color:var(--muted);margin-bottom:22px}.design-b .b-work-inset>a{display:block}.design-b .b-work-inset img{width:100%;height:auto;display:block;aspect-ratio:3/4;object-fit:contain;border-radius:5px}.design-b .b-work-inset .button{font-size:.8rem;padding:12px 14px}
.design-b .b-product-photo{position:relative;width:100%;max-width:340px;justify-self:end;padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.design-b .b-product-photo:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--accent)}.design-b .b-product-photo picture{display:block}.design-b .b-product-photo img{display:block;width:100%;height:auto;object-fit:contain}.design-b .b-product-photo figcaption{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eeeeee;padding-top:14px;margin-top:12px;gap:16px;font-size:.76rem;font-weight:600}.design-b .b-product-photo figcaption span{font-weight:400;font-size:.68rem;color:var(--muted)}
.design-b.b-product-page .type-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;counter-reset:product}.design-b.b-product-page .product-type{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:18px;min-height:0;padding:18px 20px 24px;position:relative;counter-increment:product;border-radius:7px;background:#ffffff;border-color:#dedede}.design-b.b-product-page .product-type:before{content:"0" counter(product);font-size:.6rem;color:#727272;letter-spacing:.1em;position:absolute;top:14px;left:14px}.design-b.b-product-page .type-drawing{min-height:132px;margin:0 -5px;border-bottom:1px solid #e7e7e7;padding-bottom:16px;background:radial-gradient(ellipse at center,#f3f3f3,transparent 72%)}.design-b.b-product-page .product-type-icon{max-width:156px}.design-b.b-product-page .product-type :is(h3,h4){font-size:1rem;line-height:1.4;letter-spacing:-.02em;margin:0}.design-b.b-product-page .selection-note{border-color:#ba392b;background:#f3f3f3;border-radius:0 6px 6px 0}.design-b.b-product-page #request{background:var(--ink);color:#fff;padding:28px;border-radius:7px;margin-top:28px;border:0}.design-b.b-product-page #request .button:not(.primary){color:#fff;border-color:#8c8c8c}.design-b.b-product-page #request h2{font-size:1.8rem}
.design-b .site-footer{background:#252525;color:#f2f2f2}.design-b .footer-top>div>span,.design-b .footer-top p,.design-b .footer-bottom{color:#c8c8c8}.design-b .footer-bottom{border-color:#4f4f4f}
@media(min-width:801px){.design-b .hero-copy{animation:b-enter .45s ease-out}.design-b .hero-visual{animation:b-enter .6s ease-out}}
@keyframes b-enter{from{transform:translateY(10px)}to{transform:translateY(0)}}
@media(max-width:1100px){.design-b .header-inner{min-height:80px}.design-b .hero{gap:30px;grid-template-columns:1.1fr .9fr}.design-b .hero h1{font-size:clamp(2.5rem,5.2vw,3.5rem)}.design-b .hero-lead{font-size:1rem}.design-b .facts-strip strong{font-size:1.3rem}.design-b .b-case-copy{display:block}.design-b .b-case-copy>.button{margin-top:18px}.design-b .b-work-strip img{height:205px}.design-b .page-hero.page-hero-compact{gap:28px}.design-b .page-hero h1{font-size:2.8rem}.design-b.b-product-page .type-list{grid-template-columns:repeat(2,minmax(0,1fr))}.design-b .service-group{padding:24px}}
@media(max-width:800px){.design-b .hero{gap:26px;grid-template-columns:1fr 1fr;align-items:center;padding-top:26px}.design-b .hero h1{font-size:clamp(2.2rem,5vw,2.8rem)}.design-b .hero-lead{font-size:.92rem}.design-b .hero .actions{gap:10px}.design-b .hero .button{font-size:.79rem;padding:11px 13px}.design-b .hero-visual figcaption{display:block;padding:12px}.design-b .hero-visual figcaption>span{display:none}.design-b .facts-strip{padding:20px}.design-b .facts-strip p{padding:0 18px}.design-b .facts-strip strong{font-size:1.12rem}.design-b .facts-strip span{font-size:.68rem}.design-b .task-entrances{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.design-b .task-entrances .catalog-card{padding:17px}.design-b .task-entrances .catalog-card h3{font-size:1.07rem}.design-b .task-entrances .catalog-card p{font-size:.76rem}.design-b .b-work-layout{grid-template-columns:1fr}.design-b .b-work-strip{grid-template-columns:1fr 1fr;gap:14px}.design-b .b-work-strip img{height:240px}.design-b .b-case-copy{display:grid}.design-b .b-case-copy>.button{margin:0}.design-b .service-group h3{min-height:0}.design-b .page-hero.page-hero-compact{grid-template-columns:1.15fr .85fr;padding:24px 0;gap:24px}.design-b .page-hero h1{font-size:2.3rem}.design-b .page-lead{font-size:.95rem}.design-b .b-contact-ribbon{flex-wrap:wrap;gap:14px}.design-b .b-contact-ribbon>p{margin-left:auto}.design-b .b-contact-ribbon .button{margin-left:auto}.design-b .page-toc{border-bottom:0;margin-bottom:24px}.design-b .page-toc>p{display:none}.design-b .page-toc ol{padding-bottom:8px}.design-b .page-toc li{background:#ffffff;border-radius:4px;flex-basis:165px}.design-b #products{padding:30px 22px}.design-b .home-section,.design-b .service-picker{padding:36px 0}.design-b #faq{padding:26px}.design-b .b-product-photo{padding:18px}.design-b .b-product-photo figcaption{display:block}.design-b .b-product-photo figcaption span{display:block;margin-top:5px}}
@media(max-width:600px){.design-b .hero{grid-template-columns:1fr;gap:24px;padding:22px 0 16px}.design-b .hero h1{font-size:clamp(2.65rem,9.4vw,3.5rem);max-width:16ch;margin:18px 0;line-height:1.06}.design-b .hero-lead{font-size:1rem;line-height:1.7;max-width:36rem}.design-b .hero-note{font-size:.76rem}.design-b .hero-visual{max-width:none;width:100%;display:grid;grid-template-columns:minmax(0,1fr) 98px;margin:0;border-radius:7px;background:var(--ink)}.design-b .hero-visual:before{display:none}.design-b .hero-visual>a{border-radius:7px 0 0 7px}.design-b .hero-visual img{height:320px;aspect-ratio:auto;object-fit:cover;object-position:center 38%;border-radius:7px 0 0 7px}.design-b .hero-visual figcaption{position:static;transform:none;display:flex;flex-direction:column;align-items:start;justify-content:end;margin:0;padding:18px 12px;border-radius:0 7px 7px 0}.design-b .hero-visual figcaption>span{display:block;line-height:1.5;max-width:7ch;font-size:.52rem}.design-b .hero-visual figcaption a{font-size:.69rem;line-height:1.5;white-space:normal}.design-b .hero-visual figcaption a span{display:block;font-size:1rem;margin-top:8px}.design-b .facts-strip{padding:18px 14px;margin-top:12px}.design-b .facts-strip p{padding:0 12px}.design-b .facts-strip strong{font-size:.9rem;line-height:1.3}.design-b .facts-strip span{font-size:.6rem;line-height:1.45}.design-b .task-entrances{grid-template-columns:1fr;margin:18px 0 30px;gap:10px}.design-b .task-entrances .catalog-card{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px 12px;padding:17px 18px;box-shadow:none}.design-b .task-entrances .catalog-card:before{grid-column:1;grid-row:1 / span 3;margin-top:4px}.design-b .task-entrances .catalog-card h3{grid-column:2;font-size:1.12rem}.design-b .task-entrances .catalog-card p{grid-column:2;font-size:.8rem}.design-b .task-entrances .catalog-card>span{grid-column:2;font-size:.7rem}.design-b .b-case-copy{display:block;padding:20px}.design-b .b-case-copy>.button{margin-top:16px}.design-b .b-case-copy h3{font-size:1.5rem}.design-b .b-pair{padding:7px 7px 0;gap:3px}.design-b .b-pair figcaption{top:7px;left:7px;font-size:.6rem;padding:3px 8px}.design-b .b-work-strip img{height:190px}.design-b .b-work-strip figcaption{display:block;font-size:.78rem;padding:11px}.design-b .b-work-strip figcaption span{display:block;max-width:none;margin-top:4px}.design-b .b-more-works .gallery-grid img{height:190px}.design-b .home-jumps{justify-content:start;font-size:.78rem;gap:24px;margin-top:26px}.design-b .home-jumps a{font-size:.78rem}.design-b .section-heading h2,.design-b .home-section>h2{font-size:2rem;line-height:1.15}.design-b .service-group{padding:24px}.design-b .service-group h3{font-size:1.7rem}.design-b .service-group>p{min-height:0}.design-b #products{padding:26px 16px}.design-b #products .posts{gap:10px}.design-b #products article{padding:13px}.design-b #products .image{height:108px}.design-b #products h3{font-size:.85rem}.design-b .arrivals-grid{gap:18px 12px}.design-b .arrivals-grid .image{height:145px}.design-b #faq{padding:24px 18px}.design-b.home-page #contacti{margin-top:30px}.design-b .page-hero.page-hero-compact{grid-template-columns:1fr;gap:24px}.design-b .page-hero h1{font-size:clamp(2.2rem,9vw,3rem);line-height:1.08;max-width:18ch}.design-b .page-hero .actions{gap:10px 18px;margin-top:20px}.design-b .page-lead{font-size:1rem}.design-b .b-service-photo{max-width:100%;display:grid;grid-template-columns:minmax(0,1fr) 100px;background:var(--ink)}.design-b .b-service-photo img{height:290px;aspect-ratio:auto;object-fit:cover;object-position:center 38%}.design-b .b-service-photo figcaption{align-self:end;font-size:.68rem;line-height:1.6}.design-b .b-contact-ribbon{padding:18px;display:grid;grid-template-columns:1fr}.design-b .b-contact-ribbon>p{margin:0}.design-b .b-contact-ribbon .button{margin:0;width:100%;grid-column:1;grid-row:auto}.design-b .b-work-inset{grid-template-columns:1fr;gap:22px;padding:22px}.design-b .b-work-inset h2{font-size:1.8rem;max-width:18ch}.design-b .b-work-inset img{max-height:360px;object-fit:contain;background:#e1e1e1}.design-b .content-section h2{font-size:1.5rem}.design-b .b-product-photo{max-width:100%;padding:20px}.design-b .b-product-photo img{width:100%;max-height:215px}.design-b .b-product-photo figcaption{display:flex}.design-b.b-product-page .type-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.design-b.b-product-page .product-type{padding:15px 13px 20px;gap:14px}.design-b.b-product-page .type-drawing{min-height:112px;padding:7px 0 12px;margin:0}.design-b.b-product-page .product-type-icon{max-width:132px}.design-b.b-product-page .product-type :is(h3,h4){font-size:.87rem;line-height:1.45;hyphens:auto}.design-b.b-product-page .product-type:before{top:10px;left:10px}.design-b.b-product-page #request{padding:22px}.design-b .header-inner{min-height:74px}}
@media(max-width:350px){.design-b.b-product-page .type-list{grid-template-columns:1fr}.design-b .hero h1{font-size:2.45rem}.design-b .facts-strip{padding:15px 10px}.design-b .facts-strip p{padding:0 8px}.design-b .b-work-strip{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.design-b *, .design-b *:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Text-only headings keep their full width; services retain the contact panel. */
.design-b:not(.service-page):not(.b-media-page) .page-hero{grid-template-columns:minmax(0,1fr)}
.design-b .catalog-search,.design-b .catalog-card,.design-b .form-wrap{border-color:var(--line)}
.design-b input:not([type=checkbox]):not([type=hidden]):not([type=submit]),.design-b textarea,.design-b select{border-color:#aaaaaa}

/* Keep multi-product photographs legible without the compact single-product cap. */
.design-b .b-assortment-photo img{max-height:none}

/* Selection notes use the same reading order on desktop and narrow screens. */
.selection-facts{margin:20px 0;border-top:1px solid var(--line)}
.selection-facts>div{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,2fr);gap:12px 24px;padding:16px 0;border-bottom:1px solid var(--line)}
.selection-facts dt{font-weight:650;line-height:1.5}
.selection-facts dd{margin:0;line-height:1.7;color:var(--muted)}
.selection-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;margin:20px 0}
.type-group{margin-top:24px}.type-group>h3{font-size:1.1rem;margin:0 0 12px}.content-section .type-group .type-list{margin-top:0}
.design-b.b-product-page #types:has(.type-group){counter-reset:product}.design-b.b-product-page .type-group .type-list{counter-reset:none}
.selection-cards>div{padding:22px;border:1px solid var(--line);border-radius:7px;background:#fafafa;min-width:0}
.selection-cards h3{font-size:1.08rem;line-height:1.4;margin:0 0 10px}
.selection-cards p{font-size:.9rem;margin:0}
.type-card-link{color:inherit}
.design-b .b-topic-drawing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}
.design-b .b-topic-drawing .product-type-icon{max-width:240px;width:100%;height:auto;aspect-ratio:120/88}
.design-b .b-topic-drawing figcaption{width:100%}
/* Stretch the single semantic link over the card without nesting links or adding JS. */
.type-card-link:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.type-card-link:focus-visible{outline:none}
.type-card-link:focus-visible:after{outline:3px solid #1c6684;outline-offset:4px}
.design-b .product-type[data-linked]:hover,.design-b .product-type[data-linked]:focus-within{border-color:var(--accent);background:#fafafa}
.type-link-label{display:block;margin-top:12px;color:var(--accent);font-size:.8rem;font-weight:600}
.type-more-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:8px;color:var(--accent);font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.type-card-link:hover,.type-more-link:hover{color:var(--accent)}
.type-guide{margin-top:8px;min-width:0}
.design-b.b-product-page .type-list:has(.type-guide[open]){align-items:start}
.type-guide>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;color:var(--accent);font-size:.85rem;font-weight:600;cursor:pointer}
.type-guide>summary:after{content:"+";font-size:1.2rem;flex:none}
.type-guide[open]>summary:after{content:"\2212"}
.type-guide>summary:focus-visible,.type-guide-body>a:focus-visible{outline:3px solid #1c6684;outline-offset:3px}
.type-guide-body{border-top:1px solid var(--line);padding-top:14px;overflow-wrap:anywhere}
.design-b.b-product-page .type-guide-body p,.type-guide-body dd{font-size:.88rem;line-height:1.65;color:var(--muted);margin:0 0 14px}
.type-guide-body dl{margin:0}.type-guide-body dt{font-size:.8rem;font-weight:650;margin-bottom:4px}
.type-guide-body>a{display:inline-flex;align-items:center;min-height:44px;font-size:.85rem;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.design-b.b-product-page .product-type:has(.type-guide[open]){grid-column:1/-1}.design-b.b-product-page .type-guide-body p,.type-guide-body dd{font-size:.94rem}}
@media(max-width:620px){.selection-facts>div{grid-template-columns:1fr;gap:6px;padding:14px 0}.selection-cards>div{padding:18px}}
@media(max-width:600px){.design-b.catalog-page .page-hero h1{hyphens:auto}}
.catalog-supplement .selection-note{display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;align-items:start}.catalog-supplement .product-type-icon{width:96px}.catalog-supplement .selection-note p+p{margin-top:12px}.catalog-supplement a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:480px){.catalog-supplement .selection-note{grid-template-columns:1fr;gap:12px}.catalog-supplement .product-type-icon{max-width:96px}}

/* A shorter mobile entrance, not a second mobile copy of the content. */
.design-b .mobile-service-actions{display:none}
@media(max-width:800px){
  .design-b .page-toc{display:none}
  .design-b .page-context{scroll-margin-top:var(--site-header-height)}
  .design-b .context-panel{max-height:calc(100dvh - var(--site-header-height) - var(--page-context-height) - 84px - env(safe-area-inset-bottom))}
}
@media(max-width:600px){
  .design-b .breadcrumbs{padding-top:8px;gap:0;font-size:.8rem}
  .design-b .breadcrumbs>*{display:none}
  .design-b .breadcrumbs>a:last-of-type{display:inline-flex;gap:8px;min-height:44px;line-height:1.4}
  .design-b .breadcrumbs>a:last-of-type:before{content:"\2190";text-decoration:none}
  .design-b .page-hero.page-hero-compact{padding:8px 0 16px;gap:14px}
  .design-b .page-hero .eyebrow{display:none}
  .design-b .page-hero h1{font-size:clamp(1.8rem,7.5vw,2.2rem);line-height:1.12;max-width:none;margin:0 0 12px;overflow-wrap:anywhere}
  .design-b .page-lead{font-size:.95rem;line-height:1.55}
  .design-b .page-hero .actions{gap:4px 14px;margin:14px 0 0}
  .design-b .page-hero .actions a{min-height:44px}
  .design-b .page-hero .b-text-link{display:inline-flex;align-items:center;font-size:.85rem}
  .design-b .scope-badge{padding:0;border:0;margin:10px 0 0;font-size:.78rem}
  .design-b .mobile-service-actions{display:flex}
  .design-b .service-contact{display:block;padding:0;margin:0;border:0;background:transparent}
  .design-b .service-contact>.eyebrow,.design-b .service-contact>a{display:none}
  .design-b .service-contact>p{font-size:.78rem;line-height:1.5;margin:0}
  .design-b .b-contact-ribbon{margin:0 0 12px}
  .design-b .b-service-photo{grid-template-columns:110px minmax(0,1fr);max-width:none;justify-self:stretch}
  .design-b .b-service-photo img{height:146px;object-fit:contain}
  .design-b .b-service-photo figcaption{align-self:center;font-size:.8rem;padding:12px 16px}
  .design-b .b-product-photo{max-width:none;padding:12px}
  .design-b .b-product-photo img,.design-b .b-assortment-photo img{height:150px;max-height:150px;width:100%;object-fit:contain}
  .design-b .b-product-photo figcaption{padding-top:8px;margin-top:8px;font-size:.72rem;gap:12px}
  .design-b .b-topic-drawing{gap:8px}
  .design-b .b-topic-drawing .product-type-icon{height:110px;width:auto;max-width:100%}
  .design-b .page-context{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:4px 0;min-height:54px;margin-bottom:12px}
  .design-b .context-up{grid-column:1;grid-row:1;padding:7px 8px;font-size:.75rem}
  .design-b .context-location{grid-column:2;grid-row:1}
  .design-b .context-location>a{font-size:.78rem;line-height:1.35}
  .design-b .context-kicker{display:none}
  .design-b .context-menu{grid-column:3;grid-row:1}
  .design-b .context-menu>summary{font-size:.75rem;gap:5px;padding:8px 2px}
  .design-b{--page-context-height:62px}
  .design-b:not(:has([data-page-context])){--page-context-height:0px}
  .design-b .content-section:first-child{padding-top:12px}
  .design-b .hero{padding:16px 0;gap:14px}
  .design-b .hero h1{font-size:clamp(2rem,8.3vw,2.7rem);margin:10px 0 14px;line-height:1.08}
  .design-b .hero .eyebrow{font-size:.59rem;margin:0;letter-spacing:.06em}
  .design-b .hero-lead{font-size:.95rem;line-height:1.55;margin-bottom:14px}
  .design-b .hero .actions{margin:14px 0}
  .design-b .hero-note{font-size:.76rem;line-height:1.5;margin:0}
  .design-b .hero-copy>.b-text-link{display:inline-flex;align-items:center;min-height:44px;font-size:.8rem}
  .design-b .hero-visual{grid-template-columns:110px minmax(0,1fr)}
  .design-b .hero-visual img{height:146px;object-fit:contain;border-radius:7px 0 0 7px}
  .design-b .hero-visual figcaption{justify-content:center;padding:14px 18px}
  .design-b .hero-visual figcaption>span{max-width:none;font-size:.62rem}
  .design-b .hero-visual figcaption a{font-size:.85rem}
  .design-b .hero-visual figcaption a span{display:inline;margin:0 0 0 8px}
  .design-b .facts-strip{margin:0;padding:12px 10px}
  .design-b .facts-strip p{padding:0 8px}
  .design-b .facts-strip strong{font-size:.8rem}
  .design-b .facts-strip span{font-size:.65rem}
}
