/* Server-led commerce. Shared typography and product showcase for both directions. */
body.brand-blueprint { font-size:19px; line-height:1.6; }
body.brand-blueprint :is(button,input,select,textarea,label,summary) { font-size:18px !important; }
body.brand-blueprint :is(.btn,.bp-text-link,.text-link,.bp-card-action,.view-toggle,.compare-btn) { font-size:18px !important; min-height:48px; }
body.brand-blueprint .btn { min-height:56px; padding:14px 22px; }
body.brand-blueprint :is(small,.smallcaps,.eyebrow,.bp-stock-tag,.bp-product-form,.photo-caption,.cx-mini-locations,.cx-catalogue-note,.cx-source-note,.prototype-note,.bp-utility,.bp-footer-bottom) { font-size:16px !important; line-height:1.5; }
body.brand-blueprint :is(.bp-collection-bar p,.bp-section-deck,.bp-productcard .productinfo>p,.bp-workloads .workload-copy p,.bp-process-grid p,.bp-faq details>p,.bp-cta p:not(.eyebrow),.bp-footer-top>div>p,.bp-footer-company p,.detail-specs p,.detail-tab-copy p,.shopheading p) { font-size:18px !important; line-height:1.65; }
body.brand-blueprint .bp-siteheader { gap:22px; }
body.brand-blueprint .bp-siteheader>nav { gap:22px; }
body.brand-blueprint .bp-siteheader>nav>a,
body.brand-blueprint .bp-siteheader .cx-nav-catalogue>summary,
body.brand-blueprint .bp-siteheader .bp-nav-quote,
body.brand-blueprint .bp-siteheader .basket { font-size:19px !important; font-weight:600; }
body.brand-blueprint .cx-mega-categories>a>span:not([aria-hidden]) { font-size:17px !important; }
body.brand-blueprint .cx-mega-brands { gap:22px; flex-wrap:wrap; }
body.brand-blueprint .cx-mega-brands>a { min-height:44px; font-size:18px; }
body.brand-blueprint .cx-mega-heading>a { min-height:48px; font-size:18px; }
body.brand-blueprint .catalogue-count>span { font-size:16px; line-height:1.5; }
body.brand-blueprint .bp-footer-bottom :is(span,i) { font-size:16px; }
body.brand-blueprint .bp-footer-top>div:first-child>span,
body.brand-blueprint .bp-footer-top>div:first-child>span i { font-size:16px; }
body.brand-blueprint .availability>div>span { font-size:16px; }
body.brand-blueprint :is(.admin-top>span,.admin-top b,.sectiontitle>span,.task-number,.origins-summary span,.origins-summary b,.bp-palette b) { font-size:16px; }
body.brand-blueprint :is(.bp-footer-top>div:not(:first-child)>a,.bp-footer-top>div:not(:first-child)>button,.bp-footer h3) { font-size:17px !important; }
body.brand-blueprint .bp-hero { display:block; padding:44px 6% 40px; min-height:0; background:linear-gradient(135deg,#0d202b,#153340); }
body.brand-blueprint .bp-hero-content { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:start; gap:6%; max-width:none; margin-bottom:36px; }
body.brand-blueprint .bp-hero h1 { font-size:clamp(48px,4.6vw,76px); line-height:1.08; margin:12px 0; white-space:normal; }
body.brand-blueprint .bp-hero-description { font-size:19px !important; line-height:1.65; }
body.brand-blueprint .cx-hero-intro { min-width:0; }
body.brand-blueprint .cx-hero-intro .bp-hero-description { margin-top:24px; max-width:58ch; }
body.brand-blueprint .cx-hero-buying { min-width:0; border-left:1px solid #486372; padding:8px 0 8px 32px; }
body.brand-blueprint .cx-hero-buying h2 { font-size:28px; line-height:1.25; margin:0 0 14px; }
body.brand-blueprint .cx-hero-search-intro { font-size:19px !important; line-height:1.6; color:#c4d2da; margin:0 0 22px; max-width:46ch; }
body.brand-blueprint .cx-hero-buying .bp-brand-links { gap:8px 24px; margin-top:12px; }
body.brand-blueprint .cx-hero-buying .bp-brand-links a { font-size:18px; }
body.brand-blueprint .cx-hero-consult { border-top:1px solid #486372; padding-top:18px; margin-top:20px; }
body.brand-blueprint .cx-hero-consult p { font-size:18px; line-height:1.5; margin:0 0 4px; color:#c4d2da; }
body.brand-blueprint .cx-hero-consult-actions { display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; gap:12px 22px; margin-top:14px; }
body.brand-blueprint .bp-hero .actions { margin:22px 0; }
body.brand-blueprint .bp-hero-brands { display:none; }
body.brand-blueprint .bp-hero .bp-grid { opacity:.13; }
body.brand-blueprint.brand-atelier .at-hero { padding:32px 6% 0; }
body.brand-blueprint.brand-atelier .at-hero-heading { padding:18px 0 32px; align-items:center; }
body.brand-blueprint.brand-atelier .at-hero h1 { font-size:clamp(48px,4.6vw,76px); }
body.brand-blueprint.brand-atelier .at-hero-heading>div>p { font-size:23px !important; }
body.brand-blueprint.brand-atelier .at-hero-heading>div>span { font-size:19px; }
body.brand-blueprint .cx-product-carousel { border:1px solid #627481; background:#102b39; border-radius:6px; box-shadow:0 24px 65px #0003; overflow:hidden; }
body.brand-blueprint .cx-carousel-heading { padding:15px 28px; text-transform:none; font-size:18px; letter-spacing:0; color:#edf2f0; }
body.brand-blueprint .cx-carousel-heading>a { display:flex; align-items:center; gap:18px; color:#e9b38a; font-size:17px; min-height:42px; }
body.brand-blueprint .cx-carousel-slide,
body.brand-blueprint.brand-atelier .cx-carousel-slide { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); grid-template-rows:auto; }
body.brand-blueprint .cx-carousel-photo,
body.brand-blueprint.brand-atelier .cx-carousel-photo { min-height:530px; background:#dce1de; }
body.brand-blueprint .cx-carousel-photo img { padding:76px 32px 100px; mix-blend-mode:multiply; object-fit:contain; transition:transform .45s ease; }
body.brand-blueprint .cx-carousel-photo:hover img { transform:scale(1.025); }
body.brand-blueprint .cx-carousel-photo.cx-board-stage { background:#09171f; }
body.brand-blueprint .cx-board-stage img { mix-blend-mode:screen; }
body.brand-blueprint .cx-stage-label { position:absolute; z-index:1; top:22px; left:28px; right:28px; font-size:17px; font-weight:600; color:#23404b; }
body.brand-blueprint .cx-stage-spec { position:absolute; z-index:1; bottom:24px; left:28px; right:28px; display:flex; flex-direction:column; gap:4px; color:#163540; }
body.brand-blueprint .cx-stage-spec strong { font-size:clamp(28px,3vw,48px); line-height:1.1; letter-spacing:-1px; font-weight:600; }
body.brand-blueprint .cx-stage-spec>span { font-size:18px; }
body.brand-blueprint .cx-board-stage :is(.cx-stage-label,.cx-stage-spec) { color:#e9efeb; }
body.brand-blueprint .cx-carousel-copy,
body.brand-blueprint.brand-atelier .cx-carousel-copy { padding:32px 36px 24px; border:0; }
body.brand-blueprint .cx-carousel-copy .smallcaps { color:#f0b185; letter-spacing:1.3px; }
body.brand-blueprint .cx-carousel-copy h2,
body.brand-blueprint.brand-atelier .cx-carousel-copy h2 { font-family:inherit; font-weight:500; font-size:clamp(28px,2.9vw,42px); line-height:1.13; letter-spacing:-1.2px; margin:12px 0 14px; overflow-wrap:anywhere; }
body.brand-blueprint.brand-atelier .cx-carousel-copy h2 { font-family:var(--font-sans); letter-spacing:-.8px; }
body.brand-blueprint .cx-carousel-copy>p { font-size:18px !important; color:#c2d1d9; line-height:1.5; margin:0 0 20px; }
body.brand-blueprint .cx-carousel-copy dl { margin-bottom:22px; }
body.brand-blueprint .cx-carousel-copy dl>div { padding:11px 0; gap:24px; }
body.brand-blueprint .cx-carousel-copy :is(dt,dd) { font-size:17px !important; line-height:1.4; }
body.brand-blueprint .cx-carousel-copy dt { flex-shrink:0; }
body.brand-blueprint .cx-carousel-copy dd { max-width:72%; }
body.brand-blueprint .cx-carousel-offer { display:block; padding-bottom:20px; }
body.brand-blueprint .cx-carousel-offer strong { font-size:26px; }
body.brand-blueprint .cx-carousel-offer>span { display:block; font-size:16px; padding-top:3px; }
body.brand-blueprint .cx-showcase-actions { width:100%; display:flex; flex-wrap:wrap; align-items:center; gap:16px 24px; }
body.brand-blueprint .cx-showcase-actions .primary { flex:1; white-space:nowrap; background:#e87932; border-color:#e87932; color:#102430; justify-content:space-between; gap:18px; }
body.brand-blueprint .cx-spec-link { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:48px; color:#f3efe7; font-size:18px; }
body.brand-blueprint .cx-carousel-credit { font-size:16px !important; margin-top:20px; }
body.brand-blueprint .cx-carousel-controls { grid-template-columns:52px minmax(0,1fr) 52px; padding:12px 20px; gap:16px; }
body.brand-blueprint .cx-carousel-controls>button { width:52px; height:64px; border-radius:4px; font-size:26px !important; }
body.brand-blueprint .cx-carousel-selectors { position:relative; display:flex; gap:6px; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#6c8490 transparent; scroll-padding-inline:8px; padding:0 0 6px; }
body.brand-blueprint .cx-carousel-selectors>button,
body.brand-blueprint.brand-atelier .cx-carousel-selectors>button { flex:0 0 225px; display:flex; flex-direction:row; align-items:center; justify-content:flex-start; text-align:left; gap:12px; padding:12px; border:1px solid transparent; border-bottom:3px solid transparent; border-radius:3px; }
body.brand-blueprint .cx-carousel-selectors>button:hover { background:#ffffff0c; }
body.brand-blueprint .cx-carousel-selectors>button[aria-pressed=true] { background:#ffffff0f; border-bottom-color:#e87932; }
body.brand-blueprint .cx-carousel-selectors img { width:72px; height:54px; flex-shrink:0; object-fit:contain; background:#e5e8e5; border-radius:2px; }
body.brand-blueprint .cx-carousel-selectors>button>span { display:flex; flex-direction:column; gap:3px; }
body.brand-blueprint .cx-carousel-selectors b,
body.brand-blueprint.brand-atelier .cx-carousel-selectors b { font-size:17px; }
body.brand-blueprint .cx-carousel-selectors span { font-size:16px; line-height:1.35; }
body.brand-blueprint .cx-server-shortcuts { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:26px 6%; background:var(--surface); border-bottom:1px solid var(--line); }
body.brand-blueprint .cx-server-shortcuts>span { margin-right:18px; font-size:18px; font-weight:600; }
body.brand-blueprint .cx-server-shortcuts a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:10px 16px; min-height:48px; border:1px solid var(--line); border-radius:3px; font-size:17px; }
body.brand-blueprint .cx-server-shortcuts a:hover { border-color:var(--accent); color:var(--accent); }
body.brand-blueprint .category-nav { margin-top:28px; }
body.brand-blueprint .category-nav button { padding:13px 18px; }
body.brand-blueprint .catalogue { grid-template-columns:275px minmax(0,1fr); gap:32px; }
body.brand-blueprint .catalogue .productgrid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
body.brand-blueprint .filters { padding:22px; display:block; align-self:start; }
body.brand-blueprint .cx-filter-title { display:flex; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line); padding-bottom:15px; }
body.brand-blueprint .cx-filter-title button { min-height:44px; text-decoration:underline; color:var(--accent); }
body.brand-blueprint .filters :is(input,select) { width:100%; min-height:52px; }
body.brand-blueprint .filters :is(label,legend) { font-size:18px !important; }
body.brand-blueprint .filters>label { margin-top:22px; }
body.brand-blueprint .cx-filter-fields { display:grid; grid-template-columns:1fr; gap:22px; padding-top:22px; }
body.brand-blueprint .cx-filter-fields label { display:grid; gap:8px; margin:0; }
body.brand-blueprint .cx-filter-toggle { display:none; }
body.brand-blueprint .bp-workloads .workload-tabs button { font-size:18px !important; }
body.brand-blueprint .filters small { font-size:16px !important; }
body.brand-blueprint .resultheading { gap:20px; flex-wrap:wrap; font-size:19px; }
body.brand-blueprint .bp-productcard .productinfo { padding:24px 24px 0; }
body.brand-blueprint .bp-productcard h3 { font-size:27px; line-height:1.25; overflow-wrap:anywhere; }
body.brand-blueprint .bp-productcard .productphoto { height:255px; }
body.brand-blueprint .cx-server-card .productphoto { background:#e4e8e5; margin:20px 20px 0; border-radius:3px; padding:20px 16px 46px; }
body.brand-blueprint .cx-server-card .productphoto img { mix-blend-mode:multiply; }
body.brand-blueprint .cx-server-card .bp-product-form { color:#163b49; bottom:12px; left:16px; right:16px; }
body.brand-blueprint .cx-card-specs :is(dt,dd) { font-size:17px !important; line-height:1.5; }
body.brand-blueprint .cx-card-specs dt { flex-shrink:0; }
body.brand-blueprint .cx-card-specs dd { max-width:73%; }
body.brand-blueprint .cx-card-actions { grid-template-columns:1fr; gap:10px; }
body.brand-blueprint .cx-card-actions .btn { font-size:18px !important; min-height:54px; }
body.brand-blueprint .cx-card-actions .secondary { order:2; }
body.brand-blueprint .bp-productcard .cardbottom small { font-size:16px !important; }
body.brand-blueprint .cx-category-grid :is(p,b) { font-size:18px; }
body.brand-blueprint .cx-server-visual,
body.brand-blueprint.brand-atelier .cx-server-visual { background:#dce1de; color:#17394a; }
body.brand-blueprint .cx-server-visual>img { mix-blend-mode:multiply; object-fit:contain; }
body.brand-blueprint .cx-server-visual :is(.photo-caption,.product-specband,.product-specband span,.product-specband b) { color:#234351; }
body.brand-blueprint .product-specband { flex-wrap:wrap; }
body.brand-blueprint .product-specband>div { min-width:0; }
body.brand-blueprint .cx-configuration-note { padding:18px 20px; background:var(--surface); border-left:3px solid var(--accent); font-size:17px !important; line-height:1.65; }
body.brand-blueprint .detail-specs :is(dt,dd),body.brand-blueprint .cx-document-list :is(dt,dd) { font-size:18px !important; overflow-wrap:anywhere; }
body.brand-blueprint .equipment-row { grid-template-columns:120px minmax(0,1fr) 180px; }
body.brand-blueprint .equipment-row .row-image { background:#e4e8e5; }
body.brand-blueprint .row-image img { mix-blend-mode:multiply; }
body.brand-blueprint .row-title h2 { font-size:25px !important; overflow-wrap:anywhere; }
body.brand-blueprint .row-buy>strong { font-size:21px !important; }
body.brand-blueprint .equipment-row :is(p,small,.smallcaps) { font-size:16px !important; }
@media(min-width:1550px){
 body.brand-blueprint .catalogue .productgrid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 body.brand-blueprint .cx-carousel-photo { min-height:550px; }
}
@media(max-width:1250px){
 body.brand-blueprint .cx-showcase-actions { flex-direction:column; align-items:stretch; gap:8px; }
 body.brand-blueprint .cx-carousel-copy,body.brand-blueprint.brand-atelier .cx-carousel-copy { padding:28px; }
 body.brand-blueprint .bp-collection .productgrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.brand-blueprint .catalogue { grid-template-columns:250px minmax(0,1fr); gap:24px; padding-left:4%; padding-right:4%; }
}
@media(max-width:1000px){
 body.brand-blueprint .bp-hero-content { grid-template-columns:1fr; gap:22px; }
 body.brand-blueprint .cx-hero-buying { border-left:0; border-top:1px solid #486372; padding:26px 0 0; }
 body.brand-blueprint .cx-carousel-slide,body.brand-blueprint.brand-atelier .cx-carousel-slide { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 body.brand-blueprint .cx-carousel-copy h2,body.brand-blueprint.brand-atelier .cx-carousel-copy h2 { font-size:30px; }
 body.brand-blueprint .cx-carousel-copy dl>div { display:block; }
 body.brand-blueprint .cx-carousel-copy dd { max-width:none; text-align:left; margin-top:4px; }
 body.brand-blueprint .catalogue .productgrid { grid-template-columns:1fr; }
 body.brand-blueprint .cx-stage-spec strong { font-size:32px; }
}
@media(max-width:760px){
 body.brand-blueprint { font-size:18px; }
 body.brand-blueprint .bp-hero,body.brand-blueprint.brand-atelier .at-hero { padding:28px 5%; }
 body.brand-blueprint .bp-hero h1,body.brand-blueprint.brand-atelier .at-hero h1 { font-size:clamp(40px,8.5vw,62px); }
 body.brand-blueprint .cx-carousel-heading { padding:12px 18px; flex-wrap:wrap; gap:2px 12px; }
 body.brand-blueprint .cx-carousel-slide,body.brand-blueprint.brand-atelier .cx-carousel-slide { grid-template-columns:1fr; grid-template-rows:330px auto; }
 body.brand-blueprint .cx-carousel-photo,body.brand-blueprint.brand-atelier .cx-carousel-photo { min-height:0; }
 body.brand-blueprint .cx-carousel-photo img { padding:58px 24px 84px; }
 body.brand-blueprint .cx-stage-label { top:18px; left:20px; right:20px; font-size:16px; }
 body.brand-blueprint .cx-stage-spec { left:20px; right:20px; bottom:18px; }
 body.brand-blueprint .cx-stage-spec strong { font-size:30px; }
 body.brand-blueprint .cx-stage-spec>span { font-size:17px; }
 body.brand-blueprint .cx-carousel-copy,body.brand-blueprint.brand-atelier .cx-carousel-copy { padding:24px 20px; }
 body.brand-blueprint .cx-carousel-copy dl>div { display:flex; gap:16px; }
 body.brand-blueprint .cx-carousel-copy dd { max-width:70%; text-align:right; margin:0; }
 body.brand-blueprint .cx-carousel-controls { grid-template-columns:44px minmax(0,1fr) 44px; padding:10px; gap:6px; }
 body.brand-blueprint .cx-carousel-controls>button { width:44px; height:56px; }
 body.brand-blueprint .cx-carousel-selectors>button,body.brand-blueprint.brand-atelier .cx-carousel-selectors>button { flex-basis:200px; padding:8px; }
 body.brand-blueprint .cx-carousel-selectors img { width:58px; height:48px; }
 body.brand-blueprint .cx-server-shortcuts { padding:22px 5%; }
 body.brand-blueprint .cx-server-shortcuts>span { width:100%; margin-bottom:6px; }
 body.brand-blueprint .cx-server-shortcuts a { flex:1 1 42%; }
 body.brand-blueprint .catalogue { grid-template-columns:1fr; padding:0 5% 40px; }
 body.brand-blueprint .filters { display:block; }
 body.brand-blueprint .cx-filter-toggle { display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; min-height:52px; margin-top:18px; border:1px solid var(--line); padding:10px 16px; }
 body.brand-blueprint .cx-filter-fields { display:none; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 18px; }
 body.brand-blueprint .filters.is-expanded .cx-filter-fields { display:grid; }
 body.brand-blueprint .filters :is(.cx-filter-title,.searchlabel,#search,small) { grid-column:1/-1; }
 body.brand-blueprint .bp-collection .productgrid { grid-template-columns:1fr; }
 body.brand-blueprint .cx-card-actions { grid-template-columns:1fr 1fr; }
 body.brand-blueprint .cx-card-actions .secondary { order:0; }
 body.brand-blueprint .result-controls { flex-wrap:wrap; gap:12px; }
 body.brand-blueprint .equipment-row { min-width:0; grid-template-columns:80px minmax(0,1fr); }
 body.brand-blueprint .equipment-row .row-buy { grid-column:1/-1; grid-row:auto; display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
 body.brand-blueprint .equipment-row .row-buy>strong { width:100%; }
 body.brand-blueprint .equipment-row .row-stock { grid-column:1/-1; }
}
@media(max-width:440px){
 body.brand-blueprint .cx-filter-fields { grid-template-columns:1fr; }
 body.brand-blueprint .cx-carousel-copy dl>div { display:block; }
 body.brand-blueprint .cx-carousel-copy dd { text-align:left; max-width:none; }
 body.brand-blueprint .cx-card-actions { grid-template-columns:1fr; }
 body.brand-blueprint .cx-card-actions .secondary { order:2; }
}
@media(prefers-reduced-motion:reduce){
 body.brand-blueprint .cx-carousel-photo img { transition:none; }
}
