/* InSouto industrial workspace. Local Roboto, Emporium navy/cyan, compact app navigation. */
:root { --ink:#192735; --navy:#131923; --accent:#1fa0bd; --accent-dark:#14687b; --paper:#f4f7fa; --white:#fff; --soft:#edf3f7; --line:#e3eaf0; --muted:#6d7c8a; --radius:14px; --sidebar:216px; --container:1260px; --font:'Roboto',Arial,sans-serif; --font-display:var(--font); --green:var(--accent); --green-ink:var(--accent-dark); --ink-deep:var(--navy); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:85px; }
body { margin:0; background:var(--paper); color:var(--ink); font:400 14px/1.55 var(--font); -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button,a,input,select { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
img { display:block; max-width:100%; }
svg { flex-shrink:0; }
h1,h2,h3,p { margin:0; }
h1,h2,h3 { line-height:1.3; }
h1 { font-size:28px; font-weight:650; letter-spacing:-.035em; }
h2 { font-size:21px; font-weight:600; letter-spacing:-.025em; }
h3 { font-size:15px; font-weight:600; }
em { font-style:normal; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
[hidden] { display:none!important; }
.sr-only,.visually-hidden { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; top:8px; left:8px; z-index:2000; padding:11px 18px; background:var(--accent); color:var(--navy); border-radius:9px; transform:translateY(-160%); }
.skip-link:focus { transform:translateY(0); }
.container { width:calc(100% - 56px); max-width:var(--container); margin-inline:auto; }
.app-sidebar { position:fixed; left:0; top:0; bottom:0; z-index:60; width:var(--sidebar); padding:23px 14px 18px; background:var(--navy); color:#afbac9; display:flex; flex-direction:column; }
.app-brand { display:block; width:154px; padding:3px 4px; margin:0 13px 22px; }
.app-brand img { width:100%; height:auto; }
.app-brand .brand-icon { display:none; }
.sidebar-caption { font-size:10px; font-weight:500; text-transform:uppercase; letter-spacing:1.1px; color:#718194; padding:0 14px; margin-bottom:13px; }
.app-navigation { display:flex; flex-direction:column; gap:5px; }
.app-nav-link { display:flex; align-items:center; gap:13px; min-height:46px; padding:11px 14px; border-radius:11px; font-size:13px; font-weight:450; transition:background .15s,color .15s; }
.app-nav-link svg { width:19px; height:19px; }
.app-nav-link:hover { background:#ffffff08; color:white; }
.app-nav-link.is-active { color:#66d0e8; background:#1fa0bd20; }
.app-nav-link.is-active svg { color:#43bed8; }
.sidebar-bottom { margin-top:auto; border-top:1px solid #ffffff0b; padding-top:13px; }
.sidebar-bottom p { font-size:10px; padding:17px 14px 0; color:#718194; line-height:1.7; }
.app-workspace { margin-left:var(--sidebar); min-width:0; }
.app-topbar { position:sticky; top:0; z-index:50; height:64px; background:#ffffffee; backdrop-filter:blur(14px); border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:20px; padding-inline:28px; }
.workspace-context { display:flex; align-items:center; gap:15px; color:#98a4b0; font-size:12px; }
.workspace-context strong { color:#5e6d7b; font-weight:450; }
.topbar-actions { display:flex; align-items:center; gap:13px; }
.language-link { display:grid; place-items:center; min-height:36px; min-width:36px; border:1px solid var(--line); border-radius:9px; font-size:11px; font-weight:600; background:white; }
.language-link:hover { background:var(--soft); }
.account-action { display:flex; align-items:center; gap:8px; font-size:12px; min-height:38px; padding:8px 12px; background:var(--soft); border-radius:10px; color:#526476; }
.account-action svg { width:17px; height:17px; }
.account-action:hover { background:#e2eef4; }
.mobile-brand,.app-dock { display:none; }
.workspace-main { min-height:65vh; padding-top:24px; }
.workspace-main:focus { outline:0; }
.workspace-heading { display:flex; justify-content:space-between; align-items:center; gap:22px; margin-bottom:22px; }
.workspace-heading p:not(.eyebrow) { color:var(--muted); font-size:13px; margin-top:6px; max-width:640px; }
.eyebrow { color:var(--accent-dark); font-size:10px; font-weight:600; letter-spacing:.65px; margin-bottom:5px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:10px 17px; min-height:42px; border:1px solid transparent; border-radius:11px; font-size:12px; font-weight:500; line-height:1.35; white-space:nowrap; transition:background .15s; }
.button svg { width:17px; height:17px; }
.button-primary,.button-dark { background:var(--accent-dark); color:white; border-color:var(--accent-dark); }
.button-primary:hover,.button-dark:hover { background:#0e596a; border-color:#0e596a; }
.button-soft { color:#476078; background:white; border-color:var(--line); }
.button-soft:hover { background:#eaf4f8; border-color:#cbe1e9; }
.text-link { color:var(--accent-dark); font-size:12px; font-weight:500; display:inline-flex; align-items:center; gap:8px; line-height:1.5; flex-shrink:0; }
.text-link:hover { text-decoration:underline; text-underline-offset:3px; }
.workspace-discovery { position:relative; margin-bottom:45px; }
.discovery-banner { overflow:hidden; border-radius:18px; background:var(--navy); min-height:120px; }
.discovery-banner:empty { min-height:170px; }
.industry-search { position:relative; z-index:5; display:flex; gap:10px; align-items:center; margin:-26px auto 0; width:calc(100% - 76px); max-width:770px; background:white; padding:10px; border:1px solid #e4ebf0; border-radius:16px; box-shadow:0 8px 28px #233e5512; }
.industry-field { display:flex; align-items:center; gap:12px; flex:1; min-width:0; padding-left:11px; }
.industry-field svg { width:21px; height:21px; color:var(--accent-dark); }
.industry-field select { appearance:auto; width:100%; min-width:0; min-height:44px; background:white; border:0; padding:8px 4px; color:#4d6172; font-size:14px; cursor:pointer; }
.industry-search .button { min-height:44px; padding-inline:20px; }
.industry-shortcuts { margin-bottom:27px; }
.section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:15px; }
.section-heading p { color:var(--muted); font-size:12px; margin-top:4px; }
.compact-heading h2 { font-size:18px; }
.industry-buttons { display:flex; flex-wrap:wrap; gap:9px; }
.industry-button { display:flex; align-items:center; gap:9px; background:white; border:1px solid var(--line); padding:10px 13px; border-radius:12px; min-height:42px; font-size:12px; font-weight:500; transition:background .15s,border-color .15s; }
.industry-button > svg { width:16px; height:16px; color:#7190a5; }
.industry-button:hover,.industry-button.is-active { background:#eaf7fb; border-color:#b0dbe6; color:var(--accent-dark); }
.industry-button-arrow { color:#8da5b5; font-size:13px; }
.content-section { margin-bottom:29px; }
.card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.directory-card { display:flex; flex-direction:column; min-width:0; position:relative; background:white; border:1px solid var(--line); border-radius:14px; overflow:hidden; transition:border-color .15s,box-shadow .15s; }
.directory-card:hover { border-color:#bddde7; box-shadow:0 4px 15px #28455e09; }
.card-image { height:150px; background:white; padding:15px; border-bottom:1px solid #edf2f6; display:flex; align-items:center; justify-content:center; }
.card-image img { width:100%; height:100%; object-fit:contain; }
.card-mark { display:flex; flex-direction:column; align-items:center; justify-content:center; height:105px; gap:9px; background:#eff4f8; color:#8ea4b5; border-bottom:1px solid var(--line); }
.card-mark svg { width:28px; height:28px; stroke-width:1.3; }
.card-mark span { font-size:10px; }
.card-content { display:flex; flex-direction:column; flex:1; padding:13px; }
.card-eyebrow { display:flex; align-items:center; justify-content:space-between; gap:7px; margin-bottom:8px; min-width:0; }
.kind-badge { display:inline-block; padding:2px 6px; border-radius:5px; background:#eef7fa; color:#458099; font-size:9px; font-weight:500; white-space:nowrap; }
.card-reference { color:#8e9ba6; font-size:9px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:48%; }
.card-title { font-size:14px; line-height:1.4; font-weight:550; margin-bottom:5px; overflow-wrap:anywhere; }
.card-title a { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.card-title a:after { content:''; position:absolute; inset:0; }
.supplier-card-save { position:relative; z-index:2; margin-top:10px; }
.supplier-save-form { margin:0; }
.supplier-save-button,.supplier-save-login { min-height:40px; padding:8px 12px; width:100%; font-size:12px; text-align:center; }
.supplier-save-button[aria-pressed="true"] { border-color:var(--industry-accent); color:var(--industry-accent); background:var(--industry-tint); }
.saved-suppliers-section { padding-top:12px; }
.saved-supplier-item { min-width:0; }
.saved-supplier-item > .directory-card { height:100%; }
.card-title a:focus-visible { outline:0; }
.card-title a:focus-visible:after { outline:3px solid var(--accent); outline-offset:-3px; border-radius:14px; }
.card-supplier { color:var(--accent-dark); font-size:11px; margin-bottom:6px; }
.card-summary { font-size:12px; color:var(--muted); line-height:1.55; margin-bottom:10px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.card-location { display:flex; align-items:center; gap:4px; color:#85939e; font-size:10px; margin-bottom:8px; }
.card-bottom { margin-top:auto; border-top:1px solid #edf2f6; padding-top:9px; display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--accent-dark); font-size:10px; font-weight:500; }
.card-arrow { display:grid; place-items:center; height:25px; width:25px; border-radius:8px; background:#edf7fa; font-size:14px; }
.card-suppliers .card-image { height:110px; padding:20px; }
.card-suppliers .card-mark { height:100px; }
.unavailable-document { color:var(--muted); }
.catalogue-callout { display:flex; align-items:center; gap:15px; padding:18px 20px; background:#e7f3f8; border:1px solid #d5e8f0; border-radius:14px; margin-bottom:24px; }
.callout-icon { display:grid; place-items:center; width:42px; height:42px; background:white; color:var(--accent-dark); border-radius:12px; }
.catalogue-callout > span:nth-child(2) { flex:1; min-width:0; }
.catalogue-callout strong { display:block; font-size:14px; font-weight:550; }
.catalogue-callout small { display:block; color:#648092; font-size:12px; margin-top:3px; }
.catalogue-callout > span:last-child { font-size:22px; color:var(--accent-dark); }
.catalogue-callout:hover { background:#dcedf5; }
.breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:8px; font-size:11px; color:#8b9aa7; margin-bottom:16px; }
.breadcrumbs a:hover { color:var(--accent-dark); }
.breadcrumbs span[aria-current] { color:#5f7282; }
.directory-filter { display:flex; flex-wrap:wrap; align-items:end; gap:10px; padding:15px; border:1px solid var(--line); background:white; border-radius:14px; margin:18px 0; }
.filter-query { flex:1.4; min-width:170px; }
.filter-select { flex:1; min-width:140px; }
.directory-filter label { display:block; color:#698093; font-size:10px; font-weight:500; margin-bottom:5px; }
.directory-filter input,.directory-filter select { width:100%; min-height:40px; min-width:0; border:1px solid var(--line); background:#f8fafc; border-radius:9px; color:#526779; padding:8px 11px; font-size:12px; }
.filter-submit { min-height:40px; }
.subcategory-section { margin:20px 0 15px; }
.subcategory-section h2 { font-size:12px; font-weight:500; color:#7c8d9c; margin-bottom:9px; letter-spacing:0; }
.subcategory-chips { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:15px; }
.filter-chip { display:inline-flex; align-items:center; padding:7px 12px; min-height:34px; border:1px solid var(--line); border-radius:18px; color:#637b8d; background:white; font-size:11px; }
.filter-chip:hover { border-color:#bbdbe6; background:#ecf7fa; }
.filter-chip.is-active { background:var(--accent-dark); border-color:var(--accent-dark); color:white; }
.results-header { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:12px; color:#7b8c9a; padding-bottom:14px; }
.results-header strong { color:#425c70; font-weight:550; }
.clear-filter { color:var(--accent-dark); font-size:11px; white-space:nowrap; }
.directory-results { margin-bottom:22px; }
.pagination { display:flex; align-items:center; justify-content:center; gap:20px; padding-top:6px; }
.pagination-pages { display:flex; gap:5px; }
.pagination-number { display:grid; place-items:center; min-width:35px; height:35px; padding:4px; font-size:12px; border:1px solid var(--line); border-radius:9px; background:white; color:#6a7e8f; }
.pagination-number:hover { background:#e8f5f9; }
.pagination-number.is-current { background:var(--accent-dark); color:white; border-color:var(--accent-dark); }
.pagination-direction { display:flex; align-items:center; gap:7px; font-size:11px; color:#668093; min-height:38px; }
.pagination-status { text-align:center; color:#8fa0ad; font-size:10px; margin:9px 0 22px; }
.empty-state { padding:35px 25px; text-align:center; background:white; border:1px dashed #d3e1ea; border-radius:14px; margin-bottom:24px; }
.empty-icon { display:grid; place-items:center; width:42px; height:42px; margin:0 auto 12px; border-radius:12px; background:var(--soft); color:#6a8da5; }
.empty-state h2 { font-size:19px; margin-bottom:7px; }
.empty-state p { color:#7d8e9d; font-size:12px; margin-bottom:14px; }
.compact-empty { padding:22px; }
.compact-empty p { margin:0; }
.app-footer { width:calc(100% - 56px); max-width:var(--container); margin:10px auto 0; border-top:1px solid var(--line); padding:18px 0 22px; color:#97a4af; font-size:10px; }
.footer-summary { display:flex; align-items:center; flex-wrap:wrap; gap:15px; }
.footer-summary > span { margin-right:auto; }
.platform-credit { display:inline-block; margin-left:5px; font-size:9px; color:#97a4af; text-decoration:underline; text-underline-offset:2px; }
.footer-summary a:hover { color:var(--accent-dark); }
.footer-more { margin-top:10px; }
.footer-more summary { cursor:pointer; color:#8296a6; font-size:10px; }
.footer-information { display:flex; flex-wrap:wrap; gap:10px 17px; padding-top:13px; }
.footer-information a { color:#728a9b; font-size:10px; }
.footer-information a span { display:none; }
.detail-container { padding-bottom:24px; }
.detail-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:25px; margin-bottom:18px; }
.detail-heading h1 { font-size:26px; max-width:820px; overflow-wrap:anywhere; }
.detail-heading .eyebrow { display:inline-block; padding:3px 8px; background:#e6f4f8; border-radius:6px; margin-bottom:8px; font-size:10px; letter-spacing:0; }
.detail-supplier { font-size:12px; color:var(--muted); margin-top:8px; }
.detail-supplier a { color:var(--accent-dark); }
.detail-back { margin-top:9px; }
.detail-grid { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:18px; align-items:start; }
.detail-main { min-width:0; }
.detail-media-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,1fr); gap:20px; background:white; border:1px solid var(--line); border-radius:15px; padding:20px; margin-bottom:16px; }
.detail-media-panel.image-only { display:block; }
.detail-image { display:flex; justify-content:center; align-items:center; height:240px; padding:15px; background:white; border:1px solid #edf2f6; border-radius:11px; }
.detail-image img { width:100%; height:100%; object-fit:contain; }
.detail-gallery { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.detail-gallery a { width:56px; height:56px; padding:6px; border:1px solid var(--line); border-radius:9px; background:white; }
.detail-gallery img { width:100%; height:100%; object-fit:contain; }
.detail-gallery a:hover { border-color:var(--accent); }
.detail-summary h2 { font-size:17px; margin-bottom:10px; }
.detail-summary p { color:#718597; font-size:13px; line-height:1.7; white-space:pre-line; }
.detail-section { padding:20px; background:white; border:1px solid var(--line); border-radius:14px; margin-bottom:16px; }
.detail-section h2 { font-size:17px; margin-bottom:12px; }
.detail-description { color:#61798b; font-size:13px; line-height:1.85; white-space:pre-line; overflow-wrap:anywhere; }
.detail-category-grid { display:flex; flex-wrap:wrap; gap:7px; }
.category-tile { display:inline-flex; gap:9px; align-items:center; padding:7px 11px; background:#f3f7fa; border:1px solid var(--line); color:#658096; font-size:11px; border-radius:18px; }
.category-tile:hover { background:#e7f4f9; border-color:#b4d7e4; }
.specification-list { margin:0; }
.specification-list > div { display:grid; grid-template-columns:minmax(130px,1fr) 1.5fr; gap:20px; padding:10px 0; border-top:1px solid #edf2f6; font-size:12px; }
.specification-list > div:first-child { border:0; padding-top:0; }
.specification-list dt { color:#7c91a0; }
.specification-list dd { margin:0; color:#496477; overflow-wrap:anywhere; }
.catalogue-list { display:grid; gap:8px; }
.catalogue-link { display:flex; align-items:center; gap:12px; padding:12px; background:#f5f9fc; border:1px solid var(--line); border-radius:11px; }
.document-symbol { display:grid; place-items:center; width:34px; height:39px; color:var(--accent-dark); }
.catalogue-link > span:nth-child(2) { flex:1; min-width:0; }
.catalogue-link strong { display:block; font-size:12px; font-weight:500; }
.catalogue-link small { display:block; color:#8aa0b0; font-size:11px; margin-top:2px; }
.catalogue-link:hover { background:#eaf5fa; }
.detail-sidebar { position:sticky; top:85px; }
.detail-facts { background:white; border:1px solid var(--line); border-radius:14px; padding:18px; }
.detail-facts h2 { font-size:17px; }
.detail-facts dl { margin:13px 0 0; }
.detail-facts dl > div { padding:11px 0; border-top:1px solid #edf2f6; }
.detail-facts dt { font-size:10px; color:#8ca0af; margin-bottom:3px; }
.detail-facts dd { font-size:12px; color:#506e84; margin:0; overflow-wrap:anywhere; }
.contact-button { display:flex; margin-top:15px; width:100%; }
.sidebar-explore { display:flex; gap:10px; align-items:center; background:#e9f4f8; border:1px solid #d9e9f0; padding:14px; border-radius:12px; margin-top:12px; color:#668496; font-size:11px; }
.sidebar-explore p { flex:1; }
.sidebar-explore .text-link { font-size:10px; }
.information-empty { font-size:12px; color:#90a0ac; }
.related-section { margin-top:10px; }
.contact-request-section { padding-bottom:25px; }
.contact-request-heading { margin-bottom:20px; }
.contact-request-heading h1 { font-size:26px; }
.contact-request-heading p:last-child { color:var(--muted); font-size:13px; margin-top:7px; }
.contact-request-grid { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:20px; align-items:start; }
.technical-request-form { background:white; border:1px solid var(--line); padding:22px; border-radius:14px; }
.request-label { display:block; font-size:13px; font-weight:550; margin-bottom:6px; }
.request-label span { font-size:11px; color:#90a1ad; font-weight:400; }
.request-hint { font-size:11px; color:#7c91a1; margin-bottom:12px; }
.technical-request-form textarea { width:100%; min-height:180px; font:400 13px/1.7 var(--font); padding:12px; color:var(--ink); border:1px solid var(--line); background:#fafcfd; border-radius:10px; resize:vertical; }
.request-consent { display:flex; align-items:flex-start; gap:9px; font-size:11px; color:#758e9f; margin-top:15px; line-height:1.7; }
.request-consent input { flex-shrink:0; margin:4px 0 0; width:16px; height:16px; accent-color:var(--accent-dark); }
.request-submit { margin-top:17px; }
.request-context { background:#e8f4f8; border:1px solid #d9e9ef; padding:20px; border-radius:14px; }
.request-context h2 { font-size:17px; margin-bottom:10px; }
.request-context p { color:#6d8799; font-size:12px; line-height:1.8; margin-bottom:13px; }
.request-context .crosshair { display:none; }
.request-success { background:white; border:1px solid #d0e5ed; border-radius:14px; padding:28px; }
.request-success h2 { font-size:22px; margin-bottom:9px; }
.request-success p { color:#6b8597; font-size:13px; margin-bottom:17px; }
.message-error { font-size:12px; color:#a13e3e; margin-bottom:12px; }
.suggestion-anchor { position:relative; }
.industrial-suggestions { position:absolute; top:calc(100% + 5px); left:0; width:100%; z-index:70; margin:0; padding:5px 0; list-style:none; color:#49687d; background:white; border:1px solid var(--line); border-radius:12px; box-shadow:0 8px 25px #203c5514; }
.industrial-suggestions a { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:10px 13px; min-height:44px; font-size:12px; line-height:1.5; }
.industrial-suggestions small { color:#8ea1b0; font-size:10px; flex-shrink:0; }
.industrial-suggestions li[aria-selected='true'],.industrial-suggestions a:hover { background:#eaf6fa; color:var(--accent-dark); }
/* Editorial widgets use actual migrated images and remain readable without JavaScript. */
.industrial-banner { position:relative; }
.industrial-banner [data-slider-item] { position:relative; overflow:hidden; }
.industrial-banner-image { display:block; width:100%; }
.industrial-banner-image img,.industrial-banner picture img { width:100%; height:auto; }
.industrial-banner-copy { position:absolute; left:24px; right:24px; bottom:20px; padding:9px 13px; border-radius:9px; background:#131923bd; color:white; font-size:13px; }
.industrial-banner-copy h2 { font-size:19px; margin-bottom:5px; }
.industrial-banner-copy p { font-size:12px; }
.directory-body > .industrial-banner,.directory-page-content > .industrial-banner { overflow:hidden; border-radius:14px; margin-bottom:18px; }
.industrial-carousel { position:relative; margin-bottom:28px; }
.industrial-carousel h2 { font-size:21px; }
.industrial-carousel-track { display:flex; gap:15px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; padding:3px 1px 10px; }
.industrial-carousel [data-slider-item] { flex:0 0 calc((100% - 45px)/4); min-width:0; scroll-snap-align:start; }
.industrial-carousel .directory-card { height:100%; }
.industrial-slider-controls { display:flex; align-items:center; gap:6px; justify-content:flex-end; margin-top:10px; }
.industrial-slider-controls button { display:grid; place-items:center; min-width:34px; height:34px; padding:5px 9px; border:1px solid var(--line); border-radius:9px; background:white; color:#6f8a9e; font-size:11px; }
.industrial-slider-controls button:hover { background:#eaf5f9; }
@media (max-width:1280px) { :root { --sidebar:198px; } .app-sidebar { padding-inline:12px; } .app-brand { width:145px; margin-inline:11px; } .card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .industrial-carousel [data-slider-item] { flex-basis:calc((100% - 30px)/3); } .detail-grid { grid-template-columns:minmax(0,1fr) 245px; } .detail-media-panel { grid-template-columns:1fr; } .detail-image { height:210px; } }
@media (max-width:1000px) { :root { --sidebar:76px; } .app-sidebar { padding:21px 10px; align-items:center; } .app-brand { width:42px; margin:0 0 25px; padding:0; height:42px; } .app-brand .brand-full { display:none; } .app-brand .brand-icon { display:block; width:100%; height:100%; object-fit:contain; border-radius:8px; } .sidebar-caption,.app-nav-link span,.sidebar-bottom p { display:none; } .app-navigation,.sidebar-bottom { width:100%; } .app-nav-link { justify-content:center; gap:0; padding:12px; } .sidebar-bottom { padding-top:11px; } .app-topbar { padding-inline:24px; } .container,.app-footer { width:calc(100% - 48px); } .detail-heading h1 { font-size:25px; } .detail-grid { grid-template-columns:minmax(0,1fr) 220px; } .contact-request-grid { grid-template-columns:minmax(0,1fr) 220px; } .directory-filter { gap:9px; } }
@media (max-width:767px) { .app-sidebar { display:none; } .app-workspace { margin-left:0; padding-bottom:72px; } .app-topbar { height:61px; padding-inline:18px; } .workspace-context { display:none; } .mobile-brand { display:block; width:112px; background:var(--navy); padding:5px 9px; border-radius:9px; } .mobile-brand img { width:100%; height:auto; } .account-action { padding:9px; min-width:37px; height:37px; justify-content:center; } .account-action span { display:none; } .language-link { min-width:33px; min-height:33px; } .topbar-actions { gap:8px; } .app-dock { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); position:fixed; z-index:100; bottom:0; left:0; right:0; height:calc(66px + env(safe-area-inset-bottom)); padding:5px 8px calc(5px + env(safe-area-inset-bottom)); background:#ffffffef; border-top:1px solid var(--line); backdrop-filter:blur(14px); } .app-dock a { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:4px; color:#8aa0b1; border-radius:10px; font-size:9px; min-width:0; } .app-dock a svg { width:19px; height:19px; } .app-dock a.is-active { color:var(--accent-dark); background:#eaf6fa; } .container,.app-footer { width:calc(100% - 36px); } .workspace-main { padding-top:20px; } .workspace-heading { margin-bottom:17px; } h1 { font-size:25px; } .workspace-heading p:not(.eyebrow) { font-size:13px; line-height:1.6; } .desktop-action { display:none; } .card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .detail-grid { grid-template-columns:minmax(0,1fr) 220px; } .industry-search { width:calc(100% - 36px); } .detail-heading h1 { font-size:24px; } }
@media (max-width:600px) { body { font-size:14px; } .workspace-heading { gap:12px; } h1 { font-size:25px; } h2 { font-size:20px; } .eyebrow { font-size:10px; } .workspace-discovery { margin-bottom:37px; } .discovery-banner { border-radius:14px; min-height:105px; } .industry-search { width:calc(100% - 22px); padding:8px; gap:5px; margin-top:-19px; border-radius:13px; } .industry-field { gap:8px; padding-left:5px; } .industry-field svg { width:18px; height:18px; } .industry-field select { min-height:40px; font-size:12px; padding-inline:0; } .industry-search .button { min-height:40px; padding-inline:13px; font-size:11px; gap:5px; } .industry-search .button svg { width:14px; height:14px; } .industry-shortcuts { margin-bottom:23px; } .industry-buttons { gap:7px; } .industry-button { padding:9px 10px; min-height:38px; font-size:11px; gap:7px; border-radius:10px; } .industry-button > svg { width:14px; height:14px; } .industry-button-arrow { display:none; } .section-heading { margin-bottom:12px; gap:12px; } .section-heading h2 { font-size:19px; } .section-heading p { font-size:11px; } .compact-heading h2 { font-size:17px; } .text-link { font-size:11px; } .content-section { margin-bottom:24px; } .card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } .directory-card { border-radius:12px; } .card-image { height:118px; padding:12px; } .card-content { padding:11px; } .card-title { font-size:13px; line-height:1.45; } .card-eyebrow { gap:4px; margin-bottom:7px; } .kind-badge { font-size:8px; padding:2px 5px; } .card-reference { font-size:8px; } .card-supplier { font-size:10px; } .card-summary { font-size:11px; -webkit-line-clamp:2; } .card-mark { height:92px; } .card-suppliers .card-image { height:95px; padding:17px; } .card-bottom { font-size:9px; padding-top:8px; } .card-arrow { height:22px; width:22px; border-radius:6px; font-size:13px; } .card-location { font-size:9px; } .catalogue-callout { padding:15px; gap:10px; border-radius:12px; } .callout-icon { width:35px; height:35px; border-radius:10px; } .catalogue-callout strong { font-size:13px; } .catalogue-callout small { font-size:11px; } .directory-filter { padding:12px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-block:16px; } .filter-query { grid-column:1/-1; min-width:0; } .filter-select { min-width:0; } .filter-submit { align-self:end; } .directory-filter input,.directory-filter select { font-size:12px; min-height:39px; padding:8px 9px; } .results-header { font-size:11px; align-items:baseline; } .clear-filter { font-size:10px; } .filter-chip { font-size:10px; min-height:32px; padding:6px 10px; } .subcategory-chips { gap:6px; } .pagination { gap:12px; } .pagination-number { width:31px; min-width:31px; height:33px; font-size:11px; } .pagination-direction span { display:none; } .detail-heading { margin-bottom:16px; gap:12px; } .detail-heading h1 { font-size:24px; } .detail-back { font-size:0; gap:0; } .detail-back span { font-size:18px; } .detail-grid { display:flex; flex-direction:column; gap:15px; } .detail-main,.detail-sidebar { width:100%; } .detail-sidebar { position:static; } .detail-media-panel { grid-template-columns:1fr; padding:15px; gap:15px; border-radius:13px; } .detail-image { height:220px; } .detail-summary p { font-size:13px; } .detail-section { padding:17px; border-radius:13px; } .detail-section h2 { font-size:17px; } .detail-description { font-size:13px; } .detail-facts { padding:17px; } .detail-facts dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; } .specification-list > div { gap:14px; font-size:11px; grid-template-columns:1fr 1.3fr; } .catalogue-link strong { font-size:12px; } .contact-request-heading h1 { font-size:25px; } .contact-request-grid { display:flex; flex-direction:column; gap:15px; } .technical-request-form,.request-context { width:100%; padding:18px; } .request-context { padding:17px; } .request-consent { font-size:11px; } .request-success { padding:21px; } .empty-state { padding:25px 19px; } .app-footer { padding:15px 0 18px; } .footer-summary { gap:12px; font-size:9px; } .platform-credit { font-size:8px; margin-left:3px; } .footer-more summary { font-size:9px; } .industrial-carousel [data-slider-item] { flex-basis:calc((100% - 10px)/2); } .industrial-carousel-track { gap:10px; } .industrial-banner-copy { left:15px; right:15px; bottom:12px; font-size:11px; padding:8px 10px; } .industrial-banner-copy h2 { font-size:16px; } }
@media (max-width:350px) { .container,.app-footer { width:calc(100% - 28px); } .industry-search { width:calc(100% - 14px); } .industry-search .button { padding-inline:10px; } .industry-search .button svg { display:none; } .card-grid { gap:8px; } .card-content { padding:9px; } .card-title { font-size:12px; } .app-dock { padding-inline:4px; } .app-dock a { font-size:8px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*:before,*:after { animation:none!important; transition:none!important; } }
@media print { .app-sidebar,.app-topbar,.app-dock,.app-footer,.industry-search,.industrial-slider-controls,.directory-filter,.contact-button { display:none!important; } .app-workspace { margin:0; padding:0; } body { background:white; } .container { width:100%; max-width:none; } .workspace-main { padding:0; } .detail-grid { display:block; } .detail-sidebar { position:static; } .directory-card,.detail-section { break-inside:avoid; } }
/* Compact secondary filters and migrated widget controls. */
.more-filters { position:relative; min-width:125px; }
.more-filters summary { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:40px; padding:8px 12px; border:1px solid var(--line); border-radius:9px; background:#f8fafc; color:#70899b; cursor:pointer; font-size:11px; list-style:none; }
.more-filters summary::-webkit-details-marker { display:none; }
.more-filters[open] summary { background:#ebf6fa; color:var(--accent-dark); }
.more-filter-fields { position:absolute; z-index:35; top:calc(100% + 6px); right:0; width:240px; padding:14px; border:1px solid var(--line); border-radius:11px; background:white; box-shadow:0 8px 24px #203e5514; }
.industrial-banner .industrial-slider-controls { position:absolute; z-index:7; top:10px; right:10px; margin:0; padding:3px; border-radius:10px; background:#1319235c; }
.industrial-banner .industrial-slider-controls button { background:#ffffffeb; min-width:28px; height:28px; border:0; font-size:10px; }
.industrial-banner .industrial-slider-controls [data-slider-status] { padding-inline:6px; color:white; font-size:9px; }
.industrial-carousel > h2 { margin-bottom:12px; }
.industrial-carousel > p { margin-bottom:13px; color:var(--muted); font-size:12px; }
.related-section .pagination { padding-top:20px; }
@media(max-width:600px) { .more-filters { grid-column:1/-1; grid-row:3; min-width:0; } .more-filters summary { min-height:29px; padding:5px 8px; display:inline-flex; background:transparent; border:0; font-size:10px; } .more-filter-fields { left:0; right:auto; width:min(290px,100%); } .filter-submit { grid-column:2; grid-row:2; } .industrial-banner .industrial-slider-controls { top:7px; right:7px; } .industrial-banner .industrial-slider-controls button { height:24px; min-width:24px; padding:3px 6px; font-size:9px; } }

/* Premium industrial discovery: source-backed visual cards, generous mobile rhythm and Business identity. */
:root { --navy:#102f3b; --ink:#102432; --accent:#209fb5; --accent-dark:#087b92; --paper:#f3f6f9; --line:#d5e0e8; --muted:#607585; }
.discovery-home { padding-top:12px; }
.discovery-intro { max-width:900px; padding:8px 0 27px; margin-bottom:12px; }
.discovery-intro .eyebrow { font-size:11px; letter-spacing:.8px; margin-bottom:12px; color:#648191; }
.discovery-intro h1 { max-width:650px; font-size:38px; font-weight:600; line-height:1.18; letter-spacing:-.04em; }
.discovery-description { color:#687f8f; font-size:15px; line-height:1.75; max-width:640px; margin-top:15px; }
.discovery-search { margin-top:25px; max-width:730px; }
.discovery-search-field,.directory-query-field { display:flex; align-items:center; gap:13px; width:100%; padding:8px 9px 8px 18px; border:1px solid #cddde7; background:white; border-radius:16px; box-shadow:0 4px 16px #173c4f05; }
.discovery-search-field > svg,.directory-query-field > svg { color:#7393a6; width:21px; height:21px; }
.discovery-search-field input,.directory-query-field input { min-width:0; width:100%; flex:1; min-height:44px; padding:4px 0; border:0; background:transparent; color:#27475a; font-size:14px; outline-offset:4px; }
.discovery-search-field input::placeholder,.directory-query-field input::placeholder { color:#7f99a9; opacity:1; }
.discovery-search-field button,.directory-query-field button { display:grid; place-items:center; min-width:44px; height:44px; padding:8px; border:0; border-radius:12px; background:var(--accent-dark); color:white; }
.discovery-search-field button:hover,.directory-query-field button:hover { background:#065f72; }
.discovery-section { margin-bottom:43px; }
.discovery-section .section-heading { align-items:center; margin-bottom:19px; }
.discovery-section .section-heading h2 { font-size:24px; font-weight:600; letter-spacing:-.035em; }
.discovery-section .section-heading p { font-size:13px; color:#758e9e; margin-top:6px; }
.heading-dot { color:var(--accent); }
.industry-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.supplier-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.solution-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.catalogue-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.directory-card { border:1px solid #dce7ed; border-radius:17px; background:white; box-shadow:none; overflow:hidden; }
.directory-card:hover { border-color:#9dccd9; box-shadow:0 7px 23px #244c6309; }
.directory-card .card-title { font-size:16px; font-weight:550; line-height:1.4; letter-spacing:-.015em; }
.directory-card .card-title a { -webkit-line-clamp:2; }
.directory-card .card-title a:focus-visible:after { border-radius:17px; }
.directory-card .card-summary { font-size:13px; line-height:1.7; color:#718999; -webkit-line-clamp:2; }
.industry-card { display:block; }
.industry-card-media { height:180px; background:#e9f1f5; overflow:hidden; }
.industry-card-media img { width:100%; height:100%; object-fit:cover; }
.industry-card-placeholder { display:grid; place-items:center; width:100%; height:100%; background:linear-gradient(145deg,#e9f3f6,#dae9f0); color:#6294a9; }
.industry-card-placeholder svg { width:48px; height:48px; stroke-width:1.35; }
.industry-card-content { position:relative; padding:17px 45px 18px 18px; }
.industry-card-content .card-title { margin:0; }
.industry-card-content .card-summary { margin:7px 0 0; }
.industry-card-arrow { position:absolute; right:18px; top:20px; font-size:19px; color:#7899ab; }
.supplier-card { display:flex; flex-direction:column; padding:21px; }
.supplier-card-heading { display:flex; align-items:center; gap:15px; margin-bottom:15px; }
.supplier-card-logo { display:flex; align-items:center; justify-content:center; width:66px; height:66px; flex-shrink:0; padding:9px; background:white; border:1px solid #e3ecf1; border-radius:14px; color:#75a0b3; }
.supplier-card-logo img { width:100%; height:100%; object-fit:contain; }
.supplier-card-logo svg { width:26px; height:26px; stroke-width:1.4; }
.supplier-card-identity { min-width:0; }
.supplier-card-identity .card-title { margin-bottom:5px; }
.supplier-card-location { color:#7e95a4; font-size:12px; line-height:1.5; }
.supplier-card-areas { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
.supplier-card-areas span { padding:4px 8px; border-radius:7px; background:#f0f6f8; color:#52798d; font-size:11px; line-height:1.45; }
.supplier-card-summary { margin:0 0 15px; font-size:13px; line-height:1.7; color:#768e9e; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.supplier-card-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding-top:12px; border-top:1px solid #ebf1f5; font-size:12px; color:var(--accent-dark); }
.supplier-card-footer span:last-child { font-size:18px; }
.solution-card { position:relative; display:flex; flex-direction:column; padding:0; }
.solution-card-media { height:165px; padding:19px; display:flex; align-items:center; justify-content:center; background:#fafcfd; border-bottom:1px solid #edf2f5; }
.solution-card-media img { width:100%; height:100%; object-fit:contain; }
.solution-card-placeholder { display:grid; place-items:center; width:100%; height:100%; color:#96b1c0; }
.solution-card-placeholder svg { width:30px; height:30px; stroke-width:1.25; }
.solution-card-content { padding:17px 19px 19px; flex:1; min-width:0; }
.card-category { color:#7392a5; font-size:10px; margin:0 0 7px; line-height:1.5; }
.solution-card-content .card-title { margin-bottom:6px; }
.solution-card-content .card-supplier { font-size:12px; color:var(--accent-dark); margin-bottom:8px; }
.solution-card-content .card-summary { margin-bottom:9px; }
.solution-reference { display:block; font-size:10px; color:#93a7b4; padding-right:21px; }
.solution-card-arrow { position:absolute; right:17px; bottom:17px; font-size:19px; color:#759bac; }
.catalogue-card { display:flex; flex-direction:row; align-items:center; gap:15px; padding:19px; }
.catalogue-card-symbol { display:grid; place-items:center; width:48px; height:60px; flex-shrink:0; background:#eaf5f8; color:var(--accent-dark); border-radius:11px; }
.catalogue-card-symbol svg { width:25px; height:25px; stroke-width:1.4; }
.catalogue-card-content { flex:1; min-width:0; }
.catalogue-card-content .card-category { margin-bottom:4px; }
.catalogue-card-content .card-title { margin-bottom:4px; font-size:15px; }
.catalogue-card-content .card-supplier { margin:0; color:#7b95a5; font-size:12px; }
.catalogue-card-arrow { align-self:flex-start; margin-top:3px; color:#759bae; font-size:18px; }
.editorial-discovery-banner { border-radius:16px; overflow:hidden; margin:5px 0 35px; }
.editorial-discovery-banner:empty { display:none; }
.desktop-widgets { margin-top:25px; }
.directory-query-form { margin:15px 0 14px; max-width:820px; }
.directory-query-field { min-height:53px; border-radius:13px; box-shadow:none; }
.directory-query-field input { min-height:35px; font-size:14px; }
.directory-query-field button { height:36px; min-width:36px; border-radius:9px; }
.mobile-filters { position:relative; margin:12px 0 18px; }
.filter-panel-trigger { display:inline-flex; align-items:center; gap:9px; min-height:42px; padding:9px 15px; border:1px solid #cddfe8; background:white; border-radius:11px; color:#51778b; font-size:13px; cursor:pointer; list-style:none; }
.filter-panel-trigger::-webkit-details-marker { display:none; }
.filter-panel-trigger svg { width:18px; height:18px; }
.filter-active-count { display:grid; place-items:center; min-width:20px; height:20px; border-radius:50%; background:#e7f4f8; color:var(--accent-dark); font-size:10px; }
.filter-sheet { margin-top:12px; padding:20px; background:white; border:1px solid #d9e5ec; border-radius:14px; }
.filter-sheet-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:18px; }
.filter-sheet-heading h2 { font-size:20px; }
.icon-button { display:grid; place-items:center; width:40px; height:40px; padding:7px; border:1px solid #d7e5ed; border-radius:11px; color:#65889c; background:white; cursor:pointer; }
.filter-sheet .directory-filter { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:0; padding:0; border:0; border-radius:0; }
.filter-sheet .filter-select { min-width:0; }
.filter-sheet .directory-filter label { font-size:12px; margin-bottom:8px; color:#688798; }
.filter-sheet .directory-filter select { min-height:45px; font-size:14px; padding:9px 12px; border-color:#ccdee8; background:#fafcfd; }
.filter-sheet-actions { display:flex; justify-content:flex-end; gap:10px; grid-column:1/-1; padding-top:6px; }
.filter-sheet-actions .button { min-height:44px; font-size:13px; }
.search-result-group { margin:27px 0 30px; }
.search-result-group > h2 { margin-bottom:15px; font-size:21px; }
.industrial-suggestions { border-radius:13px; padding:6px 0; border-color:#d3e4ed; box-shadow:0 10px 30px #214f6514; }
.industrial-suggestions a { min-height:51px; padding:12px 15px; font-size:14px; }
.industrial-suggestions small { font-size:11px; }
form[aria-busy='true'] { cursor:progress; }
form[aria-busy='true'] button[type='submit'] { opacity:.7; cursor:progress; }
/* Supplier/industry profile sections are continuous content, without nested mobile dashboard panels. */
.supplier-profile,.industry-overview { margin-bottom:29px; }
.supplier-identity { display:flex; align-items:flex-start; gap:24px; margin-bottom:24px; }
.supplier-logo { display:flex; align-items:center; justify-content:center; width:126px; height:126px; flex-shrink:0; padding:17px; border:1px solid #dae6ed; background:white; border-radius:18px; }
.supplier-logo img { width:100%; height:100%; object-fit:contain; }
.supplier-logo svg { width:38px; height:38px; color:#749caf; }
.supplier-summary { flex:1; min-width:0; }
.supplier-summary h1,.industry-heading h1 { font-size:32px; font-weight:600; line-height:1.25; letter-spacing:-.035em; }
.supplier-summary p { color:#6e899a; font-size:14px; line-height:1.8; margin-top:10px; }
.profile-sections { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:20px 0 29px; }
.profile-section-links { display:flex; flex-wrap:wrap; gap:10px; }
.profile-section-links a { display:inline-flex; align-items:center; min-height:42px; padding:9px 14px; border:1px solid #cee1ea; border-radius:11px; color:#4d7a92; background:white; font-size:13px; }
.profile-section-links a:hover { background:#eaf6f9; }
.industry-heading { margin-bottom:24px; }
.industry-heading p { color:#6a8698; font-size:14px; line-height:1.8; margin-top:11px; }
.industry-suppliers { margin:28px 0; }
.discovery-detail-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; align-items:start; }
.discovery-detail-grid:has(> .detail-sidebar) { grid-template-columns:minmax(0,1fr) 280px; }
@media (max-width:1100px) { .industry-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; } .industry-card-media { height:145px; } .solution-card-grid { gap:14px; } .supplier-card { padding:18px; } }
@media (max-width:767px) {
  body { background:white; font-size:15px; }
  .app-workspace { padding-bottom:85px; background:white; }
  .app-topbar { height:70px; padding-inline:21px; border-bottom:1px solid #ecf2f5; background:#ffffffed; }
  .mobile-brand { display:flex; align-items:center; gap:9px; width:auto; padding:0; background:transparent; border-radius:0; }
  .mobile-brand img { display:block; width:100%; height:auto; border-radius:0; object-fit:contain; }
  .mobile-brand span { color:#163543; font-size:24px; font-weight:450; letter-spacing:-1.1px; line-height:1; }
  .topbar-actions { gap:10px; }
  .language-link { min-width:35px; min-height:35px; font-size:11px; border-radius:10px; }
  .account-action { display:none; }
  .app-dock { grid-template-columns:repeat(4,minmax(0,1fr)); height:calc(74px + env(safe-area-inset-bottom)); padding:8px 13px calc(8px + env(safe-area-inset-bottom)); background:#fffffff5; border-top:1px solid #e7eff4; box-shadow:0 -5px 18px #193d4f04; }
  .app-dock a { gap:5px; font-size:10px; color:#7694a7; border-radius:12px; }
  .app-dock a svg { width:22px; height:22px; stroke-width:1.65; }
  .app-dock a.is-active { color:var(--accent-dark); background:#eef8fa; }
  html[data-keyboard='open'] .app-dock { display:none; }
  .container,.app-footer { width:calc(100% - 40px); }
  .workspace-main { padding-top:17px; }
  .discovery-home { padding-top:7px; }
  .discovery-intro { padding:10px 0 24px; margin-bottom:3px; }
  .discovery-intro .eyebrow { font-size:10px; letter-spacing:.65px; margin-bottom:12px; }
  .discovery-intro h1 { font-size:32px; font-weight:550; line-height:1.2; letter-spacing:-.045em; max-width:490px; }
  .discovery-description { font-size:14px; line-height:1.8; margin-top:15px; max-width:520px; }
  .discovery-search { margin-top:23px; }
  .discovery-search-field { border-radius:15px; padding:8px 8px 8px 14px; gap:10px; }
  .discovery-search-field input { font-size:16px; min-height:44px; }
  .discovery-search-field input::placeholder { font-size:13px; }
  .discovery-search-field button { height:43px; min-width:43px; border-radius:11px; }
  .discovery-section { margin-bottom:34px; }
  .discovery-section .section-heading { gap:12px; margin-bottom:18px; align-items:baseline; }
  .discovery-section .section-heading h2 { font-size:23px; font-weight:550; line-height:1.35; letter-spacing:-.03em; }
  .discovery-section .section-heading p { font-size:12px; line-height:1.65; margin-top:7px; }
  .section-heading .text-link { font-size:11px; gap:5px; }
  .industry-card-grid { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 14px)/2); grid-template-columns:none; gap:14px; overflow-x:auto; padding:2px 1px 13px; scroll-snap-type:x mandatory; scrollbar-width:thin; }
  .industry-card { scroll-snap-align:start; border-radius:15px; min-width:0; }
  .industry-card-media { height:122px; }
  .industry-card-placeholder svg { width:39px; height:39px; }
  .industry-card-content { padding:15px 26px 16px 13px; }
  .industry-card-content .card-title { font-size:15px; line-height:1.4; }
  .industry-card-content .card-summary { display:none; }
  .industry-card-arrow { right:12px; top:16px; font-size:16px; }
  .supplier-card-grid { display:grid; grid-auto-flow:column; grid-auto-columns:min(88%,340px); grid-template-columns:none; gap:14px; overflow-x:auto; padding:2px 1px 13px; scroll-snap-type:x mandatory; scrollbar-width:thin; }
  .supplier-card { padding:18px; border-radius:16px; scroll-snap-align:start; min-width:0; }
  .supplier-card-heading { gap:13px; margin-bottom:15px; }
  .supplier-card-logo { width:58px; height:58px; padding:8px; border-radius:13px; }
  .supplier-card-identity .card-title { font-size:17px; line-height:1.4; }
  .supplier-card-location { font-size:12px; }
  .supplier-card-areas span { font-size:11px; padding:5px 8px; }
  .supplier-card-summary { font-size:13px; line-height:1.75; }
  .supplier-card-footer { font-size:12px; padding-top:12px; }
  .solution-card-grid,.catalogue-card-grid { grid-template-columns:1fr; gap:13px; }
  .solution-card { display:flex; flex-direction:row; align-items:flex-start; padding:15px; gap:15px; border-radius:15px; }
  .solution-card-media { width:95px; min-width:95px; height:110px; padding:9px; border:1px solid #e7eff4; border-radius:11px; background:#f9fbfc; }
  .solution-card-content { padding:0 12px 0 0; min-width:0; }
  .solution-card-content .card-title { font-size:15px; line-height:1.45; margin-bottom:6px; }
  .solution-card-content .card-category { font-size:10px; margin-bottom:5px; }
  .solution-card-content .card-supplier { font-size:11px; margin-bottom:6px; }
  .solution-card-content .card-summary { font-size:12px; line-height:1.65; margin:0 0 7px; -webkit-line-clamp:2; }
  .solution-reference { font-size:9px; }
  .solution-card-arrow { right:12px; bottom:12px; font-size:17px; }
  .catalogue-card { padding:17px 15px; gap:12px; border-radius:14px; }
  .catalogue-card-symbol { width:43px; height:55px; border-radius:10px; }
  .catalogue-card-content .card-title { font-size:15px; line-height:1.45; }
  .catalogue-card-content .card-supplier { font-size:12px; }
  .editorial-discovery-banner { margin:8px 0 28px; border-radius:13px; }
  .desktop-widgets { display:none; }
  .directory-body .workspace-heading h1 { font-size:29px; line-height:1.25; }
  .directory-body .workspace-heading p { font-size:14px; line-height:1.75; }
  .directory-query-field { padding:7px 8px 7px 14px; min-height:55px; border-radius:13px; }
  .directory-query-field input { font-size:16px; }
  .directory-query-field input::placeholder { font-size:13px; }
  .mobile-filters { margin:13px 0 21px; }
  .filter-panel-trigger { min-height:42px; font-size:13px; padding:9px 13px; border-radius:11px; }
  .mobile-filters[open]:before { content:''; position:fixed; inset:0; z-index:140; background:#102f3b73; }
  .mobile-filters[open] > summary { position:relative; z-index:145; }
  .mobile-filters[open] .filter-sheet { position:fixed; z-index:150; left:0; right:0; bottom:0; max-height:85dvh; margin:0; padding:24px 22px calc(24px + env(safe-area-inset-bottom)); overflow-y:auto; overscroll-behavior:contain; border:0; border-radius:23px 23px 0 0; background:white; box-shadow:0 -10px 36px #163c4f20; }
  .filter-sheet-heading { margin-bottom:24px; }
  .filter-sheet-heading h2 { font-size:23px; }
  .filter-sheet .directory-filter { display:grid; grid-template-columns:1fr; gap:22px; }
  .filter-sheet .directory-filter label { font-size:13px; margin-bottom:9px; }
  .filter-sheet .directory-filter select { min-height:48px; font-size:16px; border-radius:11px; }
  .filter-sheet-actions { display:grid; grid-template-columns:1fr 1.7fr; gap:12px; padding-top:4px; }
  .filter-sheet-actions .button { min-height:48px; font-size:14px; border-radius:11px; }
  .directory-results { grid-template-columns:1fr; gap:15px; }
  .results-categories { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
  .results-categories .industry-card-media { height:118px; }
  .results-suppliers .supplier-card { padding:20px; }
  .search-result-group { margin:28px 0 32px; }
  .search-result-group > h2 { font-size:22px; font-weight:550; margin-bottom:16px; }
  .results-header { font-size:12px; padding-bottom:17px; }
  .clear-filter { font-size:11px; }
  .subcategory-chips { flex-wrap:nowrap; overflow-x:auto; padding-bottom:6px; scrollbar-width:thin; }
  .filter-chip { flex-shrink:0; min-height:37px; font-size:12px; padding:7px 13px; }
  .app-footer { margin-top:24px; padding-bottom:26px; }
  .platform-credit { font-size:9px; color:#748c9d; }
  .footer-summary { font-size:10px; }
  .supplier-identity { flex-direction:column; align-items:flex-start; gap:18px; margin-bottom:26px; }
  .supplier-logo { width:99px; height:99px; padding:14px; border-radius:18px; }
  .supplier-summary h1,.industry-heading h1 { font-size:30px; line-height:1.25; font-weight:550; }
  .supplier-summary p,.industry-heading p { font-size:14px; line-height:1.85; }
  .profile-sections { margin:23px 0 29px; gap:10px; }
  .profile-section-links { gap:9px; }
  .profile-section-links a { font-size:13px; min-height:44px; padding:10px 13px; border-radius:11px; }
  .discovery-detail-grid { display:block; }
  .detail-heading h1 { font-size:29px; line-height:1.25; }
  .detail-main .detail-section { border:0; border-radius:0; background:transparent; padding:22px 0; margin-bottom:6px; border-top:1px solid #e6eef3; }
  .detail-main .detail-section h2 { font-size:22px; margin-bottom:15px; }
  .detail-main .detail-description { font-size:14px; line-height:1.9; }
  .detail-media-panel { padding:0; border:0; border-radius:0; background:transparent; margin-bottom:23px; }
  .detail-image { height:250px; padding:20px; border-radius:15px; border:1px solid #e6edf2; background:#fafcfd; }
  .detail-facts { border-radius:14px; border-color:#e1eaf0; padding:20px; }
  .detail-facts h2 { font-size:20px; }
  .detail-facts dt { font-size:11px; }
  .detail-facts dd { font-size:13px; }
  .related-section .card-grid { grid-template-columns:1fr; gap:14px; }
}
@media (max-width:350px) { .container,.app-footer { width:calc(100% - 32px); } .discovery-intro h1 { font-size:29px; } .mobile-brand span { font-size:22px; } .industry-card-grid { grid-auto-columns:calc((100% - 12px)/2); gap:12px; } .industry-card-media { height:108px; } .industry-card-content { padding:13px 23px 14px 11px; } .industry-card-content .card-title { font-size:14px; } .supplier-card-grid { grid-auto-columns:92%; } .solution-card { padding:12px; gap:11px; } .solution-card-media { width:82px; min-width:82px; height:100px; } }

/* The desktop home is a dense workspace; mobile discovery and other pages retain their card scale. */
@media (min-width:768px) {
  .discovery-home { padding-top:4px; }
  .discovery-home .discovery-intro { max-width:none; padding:4px 0 17px; margin-bottom:0; }
  .discovery-home .discovery-intro .eyebrow { margin-bottom:7px; font-size:10px; }
  .discovery-home .discovery-intro h1 { max-width:none; font-size:29px; line-height:1.2; }
  .discovery-home .discovery-description { margin-top:9px; font-size:13px; line-height:1.6; }
  .discovery-home .discovery-search { margin-top:16px; }
  .discovery-home .discovery-section { margin-bottom:25px; }
  .discovery-home .discovery-section .section-heading { margin-bottom:12px; }
  .discovery-home .discovery-section .section-heading h2 { font-size:19px; line-height:1.3; }
  .discovery-home .discovery-section .section-heading p { font-size:12px; margin-top:4px; }
  .discovery-home .industry-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
  .discovery-home .industry-card { border-radius:12px; }
  .discovery-home .industry-card-media { height:72px; }
  .discovery-home .industry-card-placeholder svg { width:29px; height:29px; }
  .discovery-home .industry-card-content { min-height:48px; padding:6px 30px 6px 11px; }
  .discovery-home .industry-card-content .card-title { font-size:13px; line-height:1.35; }
  .discovery-home .industry-card-content .card-summary { display:none; }
  .discovery-home .industry-card-arrow { right:11px; top:12px; font-size:16px; }
  .discovery-home .supplier-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .discovery-home .supplier-card { padding:12px; min-height:160px; border-radius:12px; }
  .discovery-home .supplier-card-heading { gap:9px; margin-bottom:8px; }
  .discovery-home .supplier-card-logo { width:40px; height:40px; padding:5px; border-radius:9px; }
  .discovery-home .supplier-card-logo svg { width:20px; height:20px; }
  .discovery-home .supplier-card-identity .card-title { font-size:13px; line-height:1.35; margin-bottom:3px; }
  .discovery-home .supplier-card-location { font-size:11px; line-height:1.35; }
  .discovery-home .supplier-card-areas { flex-wrap:nowrap; overflow:hidden; gap:4px; margin-bottom:8px; }
  .discovery-home .supplier-card-areas span { min-width:0; max-width:100%; padding:3px 6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:10px; }
  .discovery-home .supplier-card-summary { font-size:12px; line-height:1.45; -webkit-line-clamp:2; margin-bottom:8px; }
  .discovery-home .supplier-card-footer { font-size:11px; padding-top:8px; }
  .discovery-home .supplier-card-footer span:last-child { font-size:16px; }
}
@media (min-width:1100px) {
  .discovery-home .industry-card-grid,.discovery-home .supplier-card-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

/* Business button geometry and stable industry tones, supplied by the validated model palette. */
.industrial-page { --industry-accent:#087b92; --industry-tint:#eaf7f9; --industry-action:color-mix(in srgb,var(--industry-accent) 68%,#102432); background:white; }
.industry-colored-card,.sidebar-industry-link { --industry-action:color-mix(in srgb,var(--industry-accent,#087b92) 68%,#102432); }
.button { min-height:44px; border-radius:4px; font-weight:600; box-shadow:0 3px 9px #153c4b0b; }
.button-primary,.button-dark { background:#087b92; border-color:#087b92; box-shadow:0 5px 14px #087b9228,inset 0 1px 0 #ffffff18; }
.button-primary:hover,.button-dark:hover { background:#065f72; border-color:#065f72; }
.button-soft { border-color:#abc5d1; color:#075c6c; background:white; }
.button-soft:hover { border-color:#209fb5; background:#eaf7f9; }
.app-industry-context .button-primary { background:var(--industry-action); border-color:var(--industry-action); box-shadow:0 5px 15px color-mix(in srgb,var(--industry-accent) 22%,transparent); }
.app-industry-context .button-primary:hover { background:color-mix(in srgb,var(--industry-action) 86%,#102432); }
.app-industry-context .button-soft { color:var(--industry-action); border-color:color-mix(in srgb,var(--industry-accent) 42%,#d5e0e8); background:color-mix(in srgb,var(--industry-tint) 52%,white); }
.app-industry-context :is(a,button,summary,input,select,textarea):focus-visible { outline-color:var(--industry-accent); }
.app-industry-context .app-workspace { --accent:var(--industry-accent); --accent-dark:var(--industry-action); }
.app-industry-context .app-workspace :is(.text-link,.clear-filter,.detail-back,.detail-supplier a,.card-supplier) { color:var(--industry-action); }
.app-industry-context .app-workspace .pagination-number.is-current { background:var(--industry-action); border-color:var(--industry-action); }
.app-industry-context .app-workspace .language-menu nav a:hover,.app-industry-context .app-workspace .language-menu nav a[aria-current='page'] { color:var(--industry-action); background:var(--industry-tint); }
.app-industry-context .app-dock a.is-active { color:var(--industry-action); background:var(--industry-tint); }
.directory-card { border-color:color-mix(in srgb,var(--industry-accent,#087b92) 20%,#d5e0e8); border-top:3px solid var(--industry-accent,#087b92); box-shadow:0 6px 20px #153c4b0c; }
.directory-card:hover { border-color:color-mix(in srgb,var(--industry-accent,#087b92) 50%,#d5e0e8); box-shadow:0 10px 26px color-mix(in srgb,var(--industry-accent,#087b92) 12%,transparent); transform:translateY(-2px); }
.industry-card-content { background:linear-gradient(115deg,white,var(--industry-tint)); }
.industry-card-placeholder { color:var(--industry-action); background:var(--industry-tint); }
.industry-card-arrow,.supplier-card-footer,.solution-card-arrow,.catalogue-card-arrow { color:var(--industry-action); }
.supplier-card-logo { border-color:color-mix(in srgb,var(--industry-accent,#087b92) 23%,#d5e0e8); background:linear-gradient(145deg,white,var(--industry-tint)); }
.supplier-card-areas span { color:var(--industry-action); background:var(--industry-tint); }
.catalogue-card-symbol { color:var(--industry-action); background:var(--industry-tint); }
.solution-card-content .card-category { color:var(--industry-action); }
.app-sidebar { overflow-y:auto; scrollbar-width:thin; scrollbar-color:#527b8b transparent; box-shadow:6px 0 24px #0b283313; }
.app-navigation { gap:3px; }
.app-navigation .app-nav-link { min-height:39px; padding-block:8px; border-radius:4px; }
.sidebar-industries-caption { margin-top:24px; margin-bottom:10px; }
.sidebar-industry-navigation { display:flex; flex-direction:column; gap:4px; }
.sidebar-industry-link { gap:10px; min-height:40px; padding:6px 9px; border-radius:4px; font-size:13px; line-height:1.4; }
.sidebar-industry-symbol { display:grid; place-items:center; width:29px; height:29px; flex-shrink:0; border-radius:4px; background:color-mix(in srgb,var(--industry-accent) 30%,#102f3b); color:color-mix(in srgb,var(--industry-accent) 50%,white); }
.sidebar-industry-symbol svg { width:17px; height:17px; }
.sidebar-industry-link.is-active { color:white; background:color-mix(in srgb,var(--industry-accent) 28%,#102f3b); box-shadow:inset 3px 0 var(--industry-accent),0 4px 12px #06151d24; }
.sidebar-industry-link.is-active svg { color:white; }
.sidebar-industry-link.is-active .sidebar-industry-symbol { background:var(--industry-action); }
.sidebar-bottom { margin-top:22px; }
.sidebar-bottom .app-nav-link { min-height:38px; padding-block:7px; font-size:11px; border-radius:4px; }
.sidebar-bottom p { padding-top:10px; }
.language-menu { position:relative; }
.language-menu summary { display:flex; gap:7px; padding-inline:10px; cursor:pointer; list-style:none; border-radius:4px; }
.language-menu summary::-webkit-details-marker { display:none; }
.language-menu nav { position:absolute; right:0; top:calc(100% + 9px); z-index:85; min-width:195px; padding:7px; background:white; border:1px solid #d5e0e8; border-radius:8px; box-shadow:0 12px 30px #10243224; }
.language-menu nav a { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:42px; padding:9px 12px; border-radius:4px; font-size:13px; color:#405c6d; }
.language-menu nav a span { font-size:10px; color:#7792a1; }
.language-menu nav a:hover,.language-menu nav a[aria-current='page'] { color:#075c6c; background:#eaf7f9; }
.workspace-content-grid { min-width:0; }
.workspace-content-grid > .workspace-main { min-width:0; }
.workspace-highlights { display:grid; gap:17px; width:calc(100% - 56px); max-width:var(--container); margin:22px auto; grid-template-columns:repeat(2,minmax(0,1fr)); }
.industry-highlight-card { position:relative; overflow:hidden; padding:20px; border:1px solid color-mix(in srgb,var(--industry-accent) 25%,#d5e0e8); border-top:4px solid var(--industry-accent); border-radius:9px; background:linear-gradient(140deg,white 36%,var(--industry-tint)); box-shadow:0 8px 25px #10243212; }
.highlight-symbol { display:grid; place-items:center; width:39px; height:39px; margin-bottom:15px; color:var(--industry-action); background:var(--industry-tint); border:1px solid color-mix(in srgb,var(--industry-accent) 25%,white); border-radius:6px; }
.highlight-symbol svg { width:22px; height:22px; }
.industry-highlight-card .eyebrow { color:var(--industry-action); font-size:9px; }
.industry-highlight-card h2 { font-size:18px; line-height:1.35; margin-bottom:10px; }
.industry-highlight-card > p:not(.eyebrow) { font-size:12px; line-height:1.7; color:#607585; margin-bottom:16px; }
.industry-highlight-card .button { width:100%; font-size:12px; padding:9px 10px; }
.highlight-information { background:white; }
.industry-panel-heading { justify-content:flex-start; padding:20px; gap:17px; border:1px solid color-mix(in srgb,var(--industry-accent) 25%,#d5e0e8); border-left:5px solid var(--industry-accent); border-radius:9px; background:linear-gradient(115deg,white 35%,var(--industry-tint)); box-shadow:0 8px 24px #1024320d; }
.industry-panel-heading .eyebrow { color:var(--industry-action); }
.industry-panel-symbol { display:grid; place-items:center; flex-shrink:0; width:57px; height:57px; border-radius:8px; color:var(--industry-action); background:var(--industry-tint); border:1px solid color-mix(in srgb,var(--industry-accent) 25%,white); }
.industry-panel-symbol svg { width:29px; height:29px; }
.industry-panel-heading h1 { font-size:28px; }
.industry-panel .subcategory-section { margin:19px 0; }
.industry-subcategory-buttons { display:flex; gap:9px; flex-wrap:wrap; max-width:100%; }
.industry-subcategory-buttons .button,.industry-subcategory-buttons .filter-chip { min-height:44px; border-radius:4px; color:var(--industry-action); border:1px solid color-mix(in srgb,var(--industry-accent) 40%,#d5e0e8); background:var(--industry-tint); padding:10px 14px; font-weight:600; box-shadow:0 3px 10px #153c4b0b; }
.industry-subcategory-buttons .button:hover,.industry-subcategory-buttons .filter-chip:hover { background:color-mix(in srgb,var(--industry-tint) 80%,var(--industry-accent)); }
.industry-subcategory-buttons .is-active { color:white; background:var(--industry-action); border-color:var(--industry-action); }
.industry-supplier-carousel { margin:28px 0; padding:18px; border:1px solid #d5e0e8; border-radius:9px; background:white; box-shadow:0 7px 23px #1024320d; }
.industry-supplier-carousel .section-heading h2 { font-size:19px; }
.industry-supplier-carousel .industrial-carousel-track { gap:13px; padding:4px 2px 13px; }
.industry-supplier-carousel [data-slider-item] { flex-basis:calc((100% - 26px)/3); min-width:190px; }
.industry-supplier-carousel .supplier-card { height:100%; padding:13px; border-radius:8px; }
.industry-supplier-carousel .supplier-card-heading { gap:9px; margin-bottom:9px; }
.industry-supplier-carousel .supplier-card-logo { width:43px; height:43px; padding:6px; border-radius:6px; }
.industry-supplier-carousel .card-title { font-size:13px; }
.industry-supplier-carousel .supplier-card-summary { display:none; }
.industry-supplier-carousel .supplier-card-areas { flex-wrap:nowrap; overflow:hidden; margin-bottom:9px; gap:4px; }
.industry-supplier-carousel .supplier-card-areas span { min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:10px; }
.industry-supplier-carousel .supplier-card-footer { font-size:11px; padding-top:9px; }
.industrial-slider-controls button { border-radius:4px; min-height:35px; color:var(--industry-action); border-color:color-mix(in srgb,var(--industry-accent) 35%,#d5e0e8); box-shadow:0 3px 9px #1024320b; }
.industry-context-banner { margin:23px 0; border-radius:8px; overflow:hidden; }
.industry-context-banner:empty { display:none; }
.industry-context-banner .industrial-banner-image img { width:100%; max-height:125px; object-fit:cover; }
.industry-context-banner .industrial-banner { border-radius:8px; }
.industry-context-banner .industrial-banner-copy { font-size:12px; }
.supplier-profile-clean { padding:22px; border:1px solid color-mix(in srgb,var(--industry-accent) 26%,#d5e0e8); border-left:5px solid var(--industry-accent); border-radius:9px; box-shadow:0 8px 25px #10243210; background:linear-gradient(120deg,white 62%,var(--industry-tint)); }
.supplier-profile-clean .supplier-identity { align-items:center; margin-bottom:14px; }
.supplier-profile-clean .supplier-areas { margin:14px 0; }
.supplier-profile-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:18px; }
.supplier-about { margin:18px 0 27px; border:1px solid #d5e0e8; border-radius:8px; background:white; box-shadow:0 5px 18px #10243208; }
.supplier-about > summary { padding:14px 17px; font-size:15px; font-weight:600; color:var(--industry-action); cursor:pointer; }
.supplier-about .detail-description { padding:0 17px 17px; }
.app-industry-context .detail-heading h1 { color:var(--industry-action); }
.app-industry-context .specification-list { border-color:color-mix(in srgb,var(--industry-accent) 25%,#d5e0e8); }
@media (min-width:1200px) {
  .workspace-content-grid.has-highlights { display:grid; grid-template-columns:minmax(0,1fr) 220px; gap:18px; align-items:start; padding-right:28px; }
  .has-highlights .workspace-highlights { position:sticky; top:88px; grid-template-columns:1fr; width:100%; margin-top:24px; }
  .has-highlights .industry-solutions { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:768px) and (max-width:1000px) {
  .sidebar-industries-caption { display:none; }
  .sidebar-industry-link { padding:5px; }
  .sidebar-industry-symbol { width:32px; height:32px; }
}
@media (max-width:767px) {
  .workspace-highlights { display:none; }
  .language-menu summary { min-width:44px; min-height:40px; padding-inline:8px; }
  .language-menu nav { min-width:190px; }
  .directory-card:hover { transform:none; }
  .industry-panel-heading { padding:18px 16px; gap:12px; align-items:flex-start; border-radius:10px; }
  .industry-panel-heading h1 { font-size:27px; line-height:1.25; }
  .industry-panel-heading p:not(.eyebrow) { font-size:13px; }
  .industry-panel-symbol { width:42px; height:42px; border-radius:6px; }
  .industry-panel-symbol svg { width:23px; height:23px; }
  .industry-subcategory-buttons { flex-wrap:nowrap; }
  .industry-subcategory-buttons .button,.industry-subcategory-buttons .filter-chip { min-height:44px; font-size:12px; padding:10px 12px; }
  .industry-supplier-carousel { padding:15px 13px; margin:25px 0; }
  .industry-supplier-carousel .section-heading h2 { font-size:19px; }
  .industry-supplier-carousel [data-slider-item] { flex-basis:85%; min-width:0; }
  .industry-supplier-carousel .supplier-card { padding:15px; }
  .industry-supplier-carousel .card-title { font-size:15px; }
  .industry-context-banner .industrial-banner-image img { max-height:110px; }
  .supplier-profile-clean { padding:20px 17px; border-radius:11px; }
  .supplier-profile-clean .supplier-identity { gap:15px; }
  .supplier-profile-actions .button { min-height:44px; font-size:13px; }
  .supplier-about > summary { font-size:15px; padding:16px; }
  .supplier-about .detail-description { padding:0 16px 17px; }
}

.discovery-search-field button,.directory-query-field button { min-width:44px; min-height:44px; height:44px; border-radius:4px; background:#087b92; box-shadow:0 4px 12px #087b9220; }
.app-industry-context .directory-query-field button { background:var(--industry-action); }
.app-industry-context .workspace-context strong { color:var(--industry-action); }
.app-industry-context .app-dock a.is-active { color:var(--industry-action); background:var(--industry-tint); }
.sidebar-highlights { display:grid; gap:12px; margin-top:20px; }
.sidebar-highlights .industry-highlight-card { color:#102432; padding:14px; border-radius:7px; box-shadow:0 7px 20px #031c2b45; }
.sidebar-highlights .highlight-symbol { width:30px; height:30px; margin-bottom:10px; }
.sidebar-highlights .highlight-symbol svg { width:18px; height:18px; }
.sidebar-highlights .industry-highlight-card h2 { font-size:14px; margin-bottom:7px; }
.sidebar-highlights .industry-highlight-card > p:not(.eyebrow) { font-size:11px; line-height:1.55; margin-bottom:11px; }
.sidebar-highlights .industry-highlight-card .button { min-height:38px; font-size:11px; padding:7px 8px; }
.sidebar-widget-zone:empty { display:none; }
.sidebar-widget-zone .industrial-banner { border-radius:7px; }
.sidebar-widget-zone .industrial-slider-controls { position:static; margin-top:7px; }
.sidebar-widget-zone .industrial-slider-controls button { font-size:10px; }
.industry-subcategory-buttons .button,.industry-subcategory-buttons .filter-chip { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.industry-overview-strip { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:84px; max-height:100px; margin:24px 0; padding:16px 20px; border:1px solid color-mix(in srgb,var(--industry-accent) 25%,#d5e0e8); border-left:5px solid var(--industry-accent); border-radius:8px; color:#102432; background:linear-gradient(115deg,white 28%,var(--industry-tint)); box-shadow:0 7px 23px #10243210; }
.industry-overview-strip svg { width:32px; height:32px; color:var(--industry-action); }
.industry-overview-strip h2 { font-size:18px; line-height:1.3; }
.industry-overview-strip p,.industry-overview-strip dl { font-size:12px; color:#607585; }
.industry-overview-strip strong { color:var(--industry-action); }
@media (min-width:1001px) { :root { --sidebar:248px; } }
@media (min-width:768px) and (max-width:1000px) { .sidebar-highlights { display:none; } }
@media (max-width:767px) {
  .industry-subcategory-buttons { flex-wrap:nowrap; overflow-x:auto; padding-bottom:7px; scrollbar-width:thin; }
  .industry-subcategory-buttons > a { flex-shrink:0; }
  .industry-overview-strip { min-height:84px; gap:12px; padding:14px; margin:23px 0; }
  .industry-overview-strip h2 { font-size:16px; }
  .industry-overview-strip p,.industry-overview-strip dl { font-size:11px; }
}

/* Lightweight responsive photograph behind the discovery search panel. */
.workspace-main:has(> .discovery-hero) { padding-top:0; }
.discovery-hero { position:relative; display:flex; align-items:center; justify-content:center; min-height:260px; padding:30px 28px; margin-bottom:29px; background:#e7f1f5; }
.discovery-hero-media { position:absolute; inset:0; overflow:hidden; }
.discovery-hero-picture { display:block; width:100%; height:100%; }
.discovery-hero-picture img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.discovery-hero .discovery-hero-content { position:relative; z-index:2; width:100%; max-width:1400px; margin:0; padding:18px 28px; border:1px solid #ffffffc7; border-radius:10px; background:#fffffff0; box-shadow:0 9px 28px #10243220; text-align:center; }
.discovery-hero-content .eyebrow { margin-bottom:8px; color:#476979; }
.discovery-hero .discovery-hero-content h1 { max-width:none; font-size:29px; line-height:1.25; }
.discovery-hero-content .discovery-description { max-width:740px; margin:10px auto 0; font-size:13px; line-height:1.65; color:#4c6878; }
.discovery-hero-content .discovery-search { max-width:none; margin:21px auto 0; }
.discovery-search-with-industry .discovery-search-field { display:grid; grid-template-columns:minmax(0,1fr) minmax(150px,230px) 44px; gap:10px; padding:8px; border-color:#a9c7d4; border-radius:6px; background:white; box-shadow:0 4px 15px #10243212; }
.discovery-search-query { display:flex; align-items:center; gap:10px; min-width:0; padding-left:7px; text-align:left; }
.discovery-search-query > svg { width:20px; height:20px; color:#608798; }
.discovery-search-query input { min-width:0; min-height:44px; font-size:14px; }
.discovery-search-industry { min-width:0; border-left:1px solid #d5e0e8; padding-left:6px; }
.discovery-search-industry select { width:100%; min-width:0; min-height:44px; padding:8px 5px; border:0; background:white; color:#294c60; font-size:13px; }
.discovery-search-with-industry .industrial-suggestions { text-align:left; }
.discovery-home { padding-top:0; }
.sidebar-widget-zone { margin-top:18px; }
@media (max-width:767px) {
  .discovery-hero { min-height:325px; padding:38px 18px 27px; margin-bottom:27px; }
  .discovery-hero .discovery-hero-content { padding:21px 17px; border-radius:10px; }
  .discovery-hero .discovery-hero-content h1 { font-size:29px; line-height:1.23; }
  .discovery-hero-content .eyebrow { font-size:9px; margin-bottom:9px; }
  .discovery-hero-content .discovery-description { font-size:13px; line-height:1.65; margin-top:10px; }
  .discovery-hero-content .discovery-search { margin-top:18px; }
  .discovery-search-with-industry .discovery-search-field { grid-template-columns:minmax(0,1fr) 44px; gap:7px; padding:7px; border-radius:6px; }
  .discovery-search-query { grid-column:1/-1; min-width:0; border-bottom:1px solid #dce8ef; padding:0 5px 4px; }
  .discovery-search-query input { font-size:16px; }
  .discovery-search-query input::placeholder { font-size:13px; }
  .discovery-search-industry { border-left:0; padding-left:0; }
  .discovery-search-industry select { font-size:16px; padding-inline:5px; }
}
@media (max-width:350px) { .discovery-hero { padding-inline:14px; } .discovery-hero .discovery-hero-content { padding:18px 13px; } .discovery-hero .discovery-hero-content h1 { font-size:26px; } }

/* Brand-led supplier cards and an open company canvas. */
.industry-card-hit { display:block; min-height:100%; color:inherit; text-decoration:none; }
.industry-card-hit:focus-visible { outline:3px solid var(--industry-accent); outline-offset:-3px; }
.supplier-card .supplier-card-profile { display:block; position:static; color:inherit; text-decoration:none; }
.supplier-card-profile:after { content:''; position:absolute; inset:0; }
.supplier-card-profile:focus-visible:after { outline:3px solid var(--industry-accent); outline-offset:-3px; border-radius:inherit; }
.supplier-card .supplier-card-heading { display:flex; flex-direction:column; align-items:center; gap:14px; margin:0 0 15px; text-align:center; }
.supplier-card .supplier-card-logo { width:140px; height:100px; padding:8px; border:0; border-radius:0; background:white; }
.supplier-card .supplier-card-logo svg { width:48px; height:48px; }
.supplier-card .supplier-card-identity { width:100%; }
.supplier-card .supplier-card-identity .card-title { font-size:15px; line-height:1.45; margin:0 0 4px; }
.supplier-card .supplier-card-location { font-size:11px; line-height:1.4; margin:0; }
.supplier-card .supplier-card-areas { justify-content:center; margin:0 0 12px; }
.supplier-card .supplier-card-save { margin-top:auto; padding-top:4px; }
.supplier-detail .supplier-profile-clean { padding:8px 0 30px; background:white; border:0; border-radius:0; box-shadow:none; }
.supplier-detail .supplier-identity { display:grid; grid-template-columns:220px minmax(0,1fr); align-items:center; gap:38px; margin:0; }
.supplier-detail .supplier-logo { width:220px; height:190px; padding:8px; border:0; border-radius:0; background:white; }
.supplier-detail .supplier-logo img { width:100%; height:100%; object-fit:contain; }
.supplier-detail .supplier-logo svg { width:72px; height:72px; }
.supplier-profile-content { min-width:0; }
.supplier-profile-content h1 { font-size:clamp(26px,3vw,38px); }
.supplier-profile-content .supplier-profile-actions { margin:20px 0 15px; }
.supplier-profile-content .supplier-areas { margin:0; }
.supplier-company-content { margin:0 0 38px; padding:0; border:0; border-radius:0; background:white; box-shadow:none; min-width:0; display:flow-root; contain:layout style; overflow:clip; }
.supplier-company-content > :first-child { margin-top:0; }
.supplier-company-content img { max-width:100%; height:auto; }
@media (max-width:767px) {
  .supplier-card .supplier-card-logo { width:118px; max-width:100%; height:90px; padding:5px; }
  .supplier-card .supplier-card-heading { gap:10px; }
  .supplier-card .supplier-card-identity .card-title { font-size:13px; }
  .supplier-detail .supplier-identity { grid-template-columns:128px minmax(0,1fr); gap:18px; align-items:start; }
  .supplier-detail .supplier-logo { width:128px; height:118px; padding:4px; }
  .supplier-profile-content h1 { font-size:24px; }
  .supplier-profile-content .supplier-profile-actions { gap:8px; }
  .supplier-profile-content .supplier-save-form { width:100%; }
}
@media (max-width:479px) {
  .supplier-detail .supplier-identity { grid-template-columns:1fr; gap:15px; }
  .supplier-detail .supplier-logo { width:185px; height:120px; }
  .supplier-profile-content .supplier-save-form { width:auto; }
}

/* Full-width industry canvas, textured sector title and elevated solution cards. */
.app-topbar { background:var(--navy); color:#f4fbfd; border-bottom:1px solid #ffffff14; backdrop-filter:none; }
.app-topbar .workspace-context { color:#b6ced7; }
.app-topbar .workspace-context strong { color:#f4fbfd; }
.app-topbar .language-link,.app-topbar .account-action { color:#f4fbfd; background:#ffffff09; border:1px solid #ffffff24; border-radius:8px; }
.app-topbar .language-link:hover,.app-topbar .account-action:hover { background:#ffffff16; }
.app-topbar .language-link { min-height:40px; padding:9px 13px; font-size:12px; gap:12px; }
.language-chevron { width:16px; height:16px; transition:transform .18s ease; }
.language-menu[open] .language-chevron { transform:rotate(180deg); }
.language-menu nav { border:0; border-radius:12px; padding:8px; box-shadow:0 12px 36px #10243230; }
.language-menu nav a { border-radius:7px; }
.app-topbar .mobile-brand { color:white; }
.app-topbar .mobile-brand span { color:#f4fbfd; }
.industry-detail.container { width:calc(100% - 64px); max-width:none; }
.industry-panel-heading { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1fr); place-items:center; justify-content:stretch; min-height:180px; padding:38px 30px; overflow:hidden; border:0; border-radius:12px; text-align:center; background-color:var(--industry-accent); background-image:radial-gradient(circle at 1px 1px,#ffffff15 1px,transparent 1.5px),repeating-linear-gradient(135deg,transparent 0 35px,#ffffff05 35px 36px),linear-gradient(115deg,color-mix(in srgb,var(--industry-accent) 74%,#102432),color-mix(in srgb,var(--industry-accent) 94%,#102432)); background-size:18px 18px,auto,auto; box-shadow:0 10px 26px color-mix(in srgb,var(--industry-accent) 18%,transparent); }
.industry-panel-heading > div { position:relative; z-index:1; min-width:0; width:100%; }
.app-workspace .industry-panel-heading h1 { max-width:none; margin-inline:auto; color:white; font-size:clamp(28px,3.2vw,52px); font-weight:700; line-height:1.16; text-transform:uppercase; letter-spacing:.045em; overflow-wrap:anywhere; }
.app-workspace .industry-panel-heading .eyebrow { display:inline-block; margin:0 0 12px; padding:4px 9px; color:#ffffffde; background:#ffffff12; border-radius:4px; font-size:10px; line-height:1.4; text-transform:uppercase; letter-spacing:1.5px; }
.industry-panel-heading .industry-summary { color:#ffffffde; max-width:70ch; margin:14px auto 0; }
.industry-panel-heading .industry-cover { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.12; z-index:0; }
.industry-subcategory-buttons { gap:12px; }
.industry-subcategory-buttons .button,.industry-subcategory-buttons .filter-chip { padding:13px 21px; min-height:48px; border:0; border-radius:6px; color:white; background:linear-gradient(110deg,color-mix(in srgb,var(--industry-accent) 92%,#102432),var(--industry-action)); box-shadow:0 5px 13px color-mix(in srgb,var(--industry-accent) 24%,transparent),inset 0 1px 0 #ffffff20; transition:box-shadow .18s,transform .18s; }
.industry-subcategory-buttons .button:hover,.industry-subcategory-buttons .filter-chip:hover { color:white; background:linear-gradient(110deg,var(--industry-accent),var(--industry-action)); box-shadow:0 8px 18px color-mix(in srgb,var(--industry-accent) 28%,transparent); transform:translateY(-2px); }
.industry-detail .solution-card-grid { grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr)); gap:24px; }
.directory-card.solution-card { display:flex; flex-direction:column; padding:0; gap:0; border:0; border-radius:8px; background:white; box-shadow:0 3px 8px #10243209,0 16px 26px -12px #10243238; transition:transform .18s,box-shadow .18s; }
.directory-card.solution-card:hover,.directory-card.solution-card:focus-within { transform:translateY(-4px); box-shadow:0 6px 12px #1024320d,0 22px 32px -12px #10243248; }
.solution-card .solution-card-media { width:100%; min-width:0; height:auto; aspect-ratio:1; padding:22px; flex-shrink:0; border:0; border-bottom:1px solid #edf2f5; border-radius:0; background:#fafcfd; }
.solution-card .solution-card-content { display:flex; flex-direction:column; padding:20px 20px 64px; min-width:0; }
.solution-card .solution-reference { margin-top:auto; padding-right:0; overflow-wrap:anywhere; }
.solution-card .solution-card-arrow { display:grid; place-items:center; width:40px; height:40px; right:17px; bottom:16px; border:1px solid color-mix(in srgb,var(--industry-accent) 20%,white); border-radius:50%; color:var(--industry-action); background:var(--industry-tint); pointer-events:none; transition:background .18s,color .18s,transform .18s; }
.solution-card-arrow svg { width:22px; height:22px; }
.solution-card:hover .solution-card-arrow,.solution-card:focus-within .solution-card-arrow { color:white; background:var(--industry-action); transform:translateX(3px); }
@media (max-width:1000px) {
  .industry-detail.container { width:calc(100% - 40px); }
  .industry-detail .solution-card-grid { gap:20px; }
}
@media (max-width:767px) {
  .app-topbar { padding-inline:16px; gap:10px; }
  .app-topbar .mobile-brand { flex:1; min-width:0; max-width:112px; padding:0; }
  .app-topbar .topbar-actions { gap:7px; flex-shrink:0; }
  .app-topbar .language-link { font-size:11px; gap:7px; padding:8px 10px; }
  .language-link > span { max-width:130px; line-height:1.25; }
  .language-chevron { width:14px; height:14px; }
  .industry-detail.container { width:calc(100% - 32px); }
  .industry-panel-heading { min-height:148px; padding:26px 18px; }
  .app-workspace .industry-panel-heading h1 { font-size:clamp(24px,6.3vw,34px); letter-spacing:.025em; }
  .industry-subcategory-buttons .button,.industry-subcategory-buttons .filter-chip { min-height:44px; padding:11px 17px; }
  .industry-detail .solution-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 14px; }
  .solution-card .solution-card-media { padding:13px; }
  .solution-card .solution-card-content { padding:14px 12px 57px; }
  .directory-card.solution-card .card-title { font-size:13px; line-height:1.4; }
  .solution-card .solution-card-arrow { width:34px; height:34px; right:12px; bottom:12px; }
  .solution-card-arrow svg { width:19px; height:19px; }
}
@media (max-width:350px) {
  .app-topbar { padding-inline:12px; }
  .app-topbar .mobile-brand { max-width:85px; }
  .mobile-brand span { font-size:17px; }
  .mobile-brand img { width:100%; height:auto; }
  .app-topbar .language-link { padding:7px; }
  .language-link > span { max-width:108px; }
}
@media (prefers-reduced-motion:reduce) {
  .language-chevron,.industry-subcategory-buttons .button,.industry-subcategory-buttons .filter-chip,.directory-card.solution-card,.solution-card .solution-card-arrow { transition:none; }
  .industry-subcategory-buttons .button:hover,.industry-subcategory-buttons .filter-chip:hover,.directory-card.solution-card:hover,.directory-card.solution-card:focus-within,.solution-card:hover .solution-card-arrow,.solution-card:focus-within .solution-card-arrow { transform:none; }
}

/* Shared editorial elevation, compact supplier cards and a soft sector backdrop. */
.industry-panel-heading { background-image:radial-gradient(ellipse at 94% 5%,#ffffff25,transparent 58%),repeating-linear-gradient(135deg,transparent 0 42px,#ffffff05 42px 43px),linear-gradient(115deg,color-mix(in srgb,var(--industry-accent) 48%,#102432),color-mix(in srgb,var(--industry-accent) 94%,#102432)); background-size:auto; }
.industry-panel-heading:after { content:''; position:absolute; pointer-events:none; z-index:0; width:460px; height:460px; top:-340px; right:8%; border:1px solid #ffffff18; border-radius:64px; transform:rotate(-24deg); box-shadow:0 0 0 45px #ffffff05,0 0 0 90px #ffffff03; }
.directory-card.supplier-card { border:0; border-radius:8px; padding:16px; min-height:0; background:white; box-shadow:0 3px 8px #10243209,0 16px 26px -12px #10243238; transition:transform .18s,box-shadow .18s; }
.directory-card.supplier-card:hover,.directory-card.supplier-card:focus-within { transform:translateY(-3px); box-shadow:0 6px 12px #1024320d,0 22px 32px -12px #10243248; }
.directory-card.supplier-card .supplier-card-heading { gap:8px; margin:0 0 9px; }
.directory-card.supplier-card .supplier-card-logo { width:min(100%,200px); height:104px; padding:4px; }
.directory-card.supplier-card .supplier-card-identity .card-title { margin-bottom:3px; }
.directory-card.supplier-card .supplier-card-areas { margin-bottom:8px; gap:5px; }
.directory-card.supplier-card .supplier-card-save { padding-top:3px; }
@media (max-width:767px) {
  .directory-card.supplier-card { padding:13px; }
  .directory-card.supplier-card .supplier-card-logo { width:min(100%,154px); height:88px; padding:2px; }
  .industry-panel-heading:after { width:310px; height:310px; top:-220px; right:-100px; border-radius:42px; box-shadow:0 0 0 30px #ffffff05,0 0 0 60px #ffffff03; }
}
@media (prefers-reduced-motion:reduce) {
  .directory-card.supplier-card { transition:none; }
  .directory-card.supplier-card:hover,.directory-card.supplier-card:focus-within { transform:none; }
}

/* Industry shortcuts: white circular medallions, real root colors and a fluid home. */
.discovery-home.container { width:calc(100% - 64px); max-width:none; }
.app-workspace .industry-card-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr)); grid-auto-flow:row; grid-auto-columns:auto; overflow:visible; gap:20px 16px; }
.directory-card.industry-card { border:0; border-radius:0; background:white; box-shadow:none; overflow:visible; }
.directory-card.industry-card:hover { border:0; background:white; box-shadow:none; }
.industry-card .industry-card-hit { padding:8px 4px; text-align:center; border-radius:12px; }
.industry-card .industry-card-media { display:grid; place-items:center; width:106px; height:106px; margin-inline:auto; padding:10px; border:1.5px dashed var(--industry-accent); border-radius:50%; background:white; }
.industry-card .industry-card-placeholder { background:white; color:var(--industry-accent); border-radius:50%; }
.industry-card .industry-card-placeholder svg { width:52px; height:52px; stroke-width:1.5; }
.industry-card .industry-card-media img { border-radius:50%; }
.industry-card .industry-card-content { min-height:0; padding:12px 0 4px; background:white; }
.industry-card .industry-card-content .card-title { margin:0; font-size:14px; font-weight:600; line-height:1.4; color:#111; text-align:center; }
.industry-card .industry-card-arrow { display:none; }
.industry-card .industry-card-content .card-summary { display:none; }
.industry-card .industry-card-hit:hover .industry-card-media { border-style:solid; }
@media (max-width:1000px) {
  .discovery-home.container { width:calc(100% - 40px); }
}
@media (max-width:767px) {
  .discovery-home.container { width:calc(100% - 32px); }
  .app-workspace .industry-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 10px; }
  .industry-card .industry-card-hit { padding:4px 0; }
  .industry-card .industry-card-media { width:80px; height:80px; padding:8px; }
  .industry-card .industry-card-placeholder svg { width:40px; height:40px; }
  .industry-card .industry-card-content .card-title { font-size:11px; }
}
@media (max-width:350px) {
  .industry-card .industry-card-media { width:70px; height:70px; }
  .industry-card .industry-card-placeholder svg { width:36px; height:36px; }
}

.business-navigation{list-style:none;margin:12px 0 0;padding:0;width:100%;font-size:12px;color:#d3e6ec}.business-navigation:empty{display:none}.business-navigation a{color:inherit}.business-navigation>li{list-style:none}.business-navigation details[open]>div{left:0;right:auto!important}
@media(min-width:768px) and (max-width:1000px){.business-navigation{display:none}}

/* Full-width sector masthead and compact company actions. */
.industry-panel-page .workspace-main { padding-top:0; }
.industry-detail.container { --industry-gutter:32px; }
.industry-edge-heading { width:calc(100% + var(--industry-gutter)*2); margin-inline:calc(-1*var(--industry-gutter)); margin-bottom:16px; padding:20px var(--industry-gutter) 30px; min-height:200px; border-radius:0; box-shadow:none; gap:20px; }
.industry-edge-heading > .breadcrumbs { position:relative; z-index:1; display:flex; align-self:start; justify-self:stretch; width:100%; margin:0; text-align:left; color:#ffffffbe; font-size:11px; line-height:1.6; }
.industry-edge-heading > .breadcrumbs a,.industry-edge-heading > .breadcrumbs span[aria-current] { color:inherit; }
.industry-edge-heading > .breadcrumbs a:hover { color:white; text-decoration:underline; }
.industry-edge-heading > .breadcrumbs a:focus-visible { outline-color:white; }
.industry-edge-heading + .detail-back { display:inline-flex; margin-bottom:10px; }
.supplier-profile-content .supplier-profile-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.supplier-profile-actions > .supplier-save-form { width:auto; flex:0 1 auto; max-width:100%; }
.supplier-profile-actions .supplier-save-button,.supplier-profile-actions > .supplier-save-login { width:auto; max-width:100%; white-space:normal; padding-inline:17px; }

/* Progressive industry chooser: the native select remains the submitted field. */
.discovery-search-with-industry .discovery-search-field { grid-template-columns:minmax(0,1fr) minmax(245px,290px) 44px; }
.industry-picker { position:relative; text-align:left; min-width:0; }
.industry-picker > summary { display:grid; grid-template-columns:minmax(0,1fr) 14px; align-content:center; column-gap:12px; min-height:46px; padding:4px 13px; cursor:pointer; list-style:none; border-radius:8px; color:#143c4b; }
.industry-picker > summary::-webkit-details-marker { display:none; }
.industry-picker > summary:hover,.industry-picker[open] > summary { background:#edf7fa; }
.industry-picker-caption { grid-column:1; color:#76929e; font-size:10px; font-weight:500; line-height:1.5; }
.industry-picker-chosen { grid-column:1; font-size:13px; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.industry-picker-chevron { grid-column:2; grid-row:1/3; align-self:center; width:8px; height:8px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); transition:transform .16s; }
.industry-picker[open] .industry-picker-chevron { transform:rotate(225deg); }
.industry-picker-panel { position:absolute; z-index:45; right:0; top:calc(100% + 14px); width:max(100%,340px); max-width:calc(100vw - 44px); max-height:min(480px,65vh); overflow:auto; padding:8px; border:1px solid #e4edf2; border-radius:16px; background:white; box-shadow:0 12px 24px #10243215,0 28px 60px -18px #10243248; scrollbar-width:thin; }
.discovery-search .industry-picker-panel .industry-picker-option { --picker-accent:#087b92; display:grid; grid-template-columns:36px minmax(0,1fr) 18px; align-items:center; justify-items:start; gap:11px; width:100%; height:auto; min-height:52px; margin:0; padding:9px 12px; border:0; border-radius:10px; color:#18313f; background:white; box-shadow:none; font-size:13px; font-weight:500; text-align:left; white-space:normal; }
.discovery-search .industry-picker-panel .industry-picker-option:hover,.discovery-search .industry-picker-panel .industry-picker-option:focus-visible { background:#f1f7fa; color:#102f3b; }
.discovery-search .industry-picker-panel .industry-picker-option[aria-pressed='true'] { background:#edf7fa; color:#0b6176; }
.industry-picker-option[aria-pressed='true']:after { content:'✓'; color:#087b92; font-size:17px; }
.industry-picker-symbol { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; color:var(--picker-accent); background:color-mix(in srgb,var(--picker-accent) 8%,white); font-size:24px; }
.industry-picker-symbol svg { width:21px; height:21px; }
@media (max-width:1000px) {
  .industry-detail.container { --industry-gutter:20px; }
  .discovery-search-with-industry .discovery-search-field { grid-template-columns:minmax(0,1fr) minmax(210px,250px) 44px; }
}
@media (max-width:767px) {
  .industry-detail.container { --industry-gutter:16px; }
  .industry-edge-heading { min-height:180px; padding:16px var(--industry-gutter) 26px; gap:22px; }
  .industry-edge-heading > .breadcrumbs { font-size:10px; gap:6px; }
  .discovery-search-with-industry .discovery-search-field { grid-template-columns:minmax(0,1fr) 44px; }
  .industry-picker > summary { padding-inline:6px; }
  .industry-picker-panel { left:-4px; right:auto; width:calc(100% + 60px); max-width:calc(100vw - 62px); max-height:55vh; }
  .industry-picker-chosen { font-size:14px; }
  .discovery-search .industry-picker-panel .industry-picker-option { min-height:48px; padding:8px; gap:8px; font-size:12px; }
}
@media (prefers-reduced-motion:reduce) { .industry-picker-chevron { transition:none; } }

/* Guest invitation stays inside the workspace; industry navigation remains available. */
.guest-access-gate { position:fixed; z-index:80; inset:0 0 0 var(--sidebar); display:grid; align-items:center; justify-items:center; padding:30px; overflow:auto; background:#edf3f6b8; backdrop-filter:blur(5px); }
.guest-access-gate[hidden] { display:none; }
body:has(.guest-access-gate:not([hidden])) { overflow:hidden; }
body:has(.guest-access-gate:not([hidden])) .app-workspace { filter:blur(5px); pointer-events:none; user-select:none; }
body:has(.guest-access-gate:not([hidden])) .insouto-ai,body:has(.guest-access-gate:not([hidden])) .insouto-ai__noscript { display:none!important; }
.guest-access-card { position:relative; width:min(100%,470px); padding:38px; border:1px solid #ffffff; border-radius:22px; background:white; box-shadow:0 12px 30px #1024320c,0 34px 90px -22px #10243240; text-align:center; }
.guest-access-mark { display:grid; place-items:center; width:62px; height:62px; margin:0 auto 22px; border:1px solid #d6eef3; border-radius:20px; color:var(--industry-accent); background:linear-gradient(145deg,#f1fafc,white); }
.guest-access-mark svg { width:28px; height:28px; }
.guest-access-card .eyebrow { color:#64808e; font-size:10px; letter-spacing:1.1px; }
.guest-access-card h2 { margin:10px 0 14px; color:#102f3b; font-size:clamp(24px,2.3vw,30px); line-height:1.18; letter-spacing:-.035em; }
.guest-access-card h2:focus { outline:none; }
.guest-access-description { margin:0 auto 26px; max-width:35ch; color:#6d8592; font-size:14px; line-height:1.75; }
.guest-access-actions { display:grid; gap:10px; }
.guest-access-actions .button { min-height:48px; white-space:normal; border-radius:9px; font-size:13px; }
.guest-access-actions .button-primary { justify-content:center; text-align:center; padding-inline:20px; }
.guest-access-card form { margin:17px 0 0; }
.guest-access-continue,.guest-access-explore { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:40px; border:0; padding:7px 10px; background:transparent; color:#728895; font:inherit; font-size:12px; cursor:pointer; text-decoration:underline; text-underline-offset:4px; }
.guest-access-explore { margin-top:17px; }
.guest-access-continue:hover,.guest-access-explore:hover { color:#087b92; }
.guest-access-continue:disabled { opacity:.55; cursor:wait; }
@media (max-width:767px) {
  .guest-access-gate { left:0; bottom:calc(74px + env(safe-area-inset-bottom)); padding:24px 18px; }
  .guest-access-card { padding:27px 23px; border-radius:18px; }
  .guest-access-mark { width:52px; height:52px; margin-bottom:18px; border-radius:16px; }
  .guest-access-description { font-size:13px; margin-bottom:22px; }
}
@media (prefers-reduced-transparency:reduce) {
  .guest-access-gate { background:#edf3f6f5; backdrop-filter:none; }
}
.app-topbar .session-signout { display:grid; place-items:center; flex-shrink:0; width:42px; height:42px; border:1px solid #ff84922e; border-radius:9px; color:#ff8492; background:#ff849208; }
.app-topbar .session-signout:hover { color:#ffb4bd; background:#ff84921c; }
.session-signout svg { width:20px; height:20px; }
.customer-signout-mobile { display:none; }
.supplier-email-form { flex-shrink:0; margin:0; }
.supplier-email-notice { margin:0 0 22px; padding:14px 18px; border:1px solid #cce6ed; border-radius:10px; color:#17667a; background:#f1fafc; font-size:13px; }
.sidebar-business-link { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; min-height:46px; padding:12px; border:1px solid #27a4b94d; border-radius:8px; background:linear-gradient(115deg,#087b92,#086378); color:white; box-shadow:0 5px 14px #00000015; font-size:10px; font-weight:600; line-height:1.45; letter-spacing:.03em; }
.sidebar-business-link:hover { color:white; background:#098aa3; }
.sidebar-business-link svg { flex-shrink:0; width:19px; height:19px; }
@media (min-width:768px) and (max-width:1000px) { .sidebar-business-link { justify-content:center; padding:10px; } .sidebar-business-link span { display:none; } }
@media (max-width:767px) {
  .app-topbar .session-signout { display:none; }
  .customer-signout-mobile { display:list-item; }
  .native-industrial-page .block-account-navigation .customer-signout-mobile a { min-height:46px; color:#bd3546; font-size:13px; font-weight:600; }
  .customer-signout-mobile svg { width:20px; height:20px; }
  .native-industrial-page .block-account-navigation .list { display:flex; flex-wrap:wrap; overflow:visible; }
  .native-industrial-page .block-account-navigation li { min-width:0; }
  .native-industrial-page .block-account-navigation .customer-saved-suppliers,.native-industrial-page .block-account-navigation .customer-signout-mobile { flex:0 0 100%; }
  .native-industrial-page .block-account-navigation .customer-saved-suppliers { margin-top:5px; }
  .native-industrial-page .block-account-navigation .customer-saved-suppliers > a,.native-industrial-page .block-account-navigation .customer-signout-mobile > a { width:100%; min-height:44px; padding:10px 12px; border:0; border-radius:8px; background:#f4f8fa; font-size:13px; }
  .native-industrial-page .block-account-navigation .customer-signout-mobile > a { color:#bd3546; background:#fff4f5; }
  .saved-suppliers-section .workspace-heading { align-items:flex-start; flex-wrap:wrap; }
  .supplier-email-form .button { min-height:44px; }
}

/* Keep the scrollable sidebar action above the fixed support launcher. */
@media (min-width:768px) { .sidebar-bottom { padding-bottom:72px; } }

.sidebar-sourcing-navigation { margin:0; }
.sidebar-sourcing-navigation > li > details { min-width:0!important; }
.sidebar-sourcing-navigation > li > a,.sidebar-sourcing-navigation > li > details > summary { display:flex!important; flex-direction:row!important; justify-content:flex-start!important; align-items:center!important; gap:11px!important; width:100%; min-width:0!important; min-height:36px; padding:7px 12px; text-align:left!important; border-radius:6px; font-size:12.5px; }
.sidebar-sourcing-navigation > li > a:hover,.sidebar-sourcing-navigation > li > details > summary:hover { background:#ffffff0a; color:white; }
.sidebar-sourcing-navigation > li > a > span:first-child,.sidebar-sourcing-navigation > li > details > summary > span:first-child { width:19px!important; height:19px!important; flex-shrink:0; }
.sidebar-sourcing-navigation svg { width:19px; height:19px; }
.sidebar-sourcing-navigation details[open] > div { position:static!important; min-width:0!important; margin-top:6px; }
.topbar-messages { display:grid; place-items:center; position:relative; width:42px; height:42px; border:1px solid #ffffff26; border-radius:8px; color:#e0f1f6; background:#ffffff03; flex-shrink:0; }
.topbar-messages:hover { background:#ffffff10; color:white; }
.topbar-messages:focus-visible { outline:2px solid #63d4ec; outline-offset:3px; }
.topbar-message-count { position:absolute; top:-5px; right:-5px; min-width:18px; padding:2px 4px; border-radius:12px; background:#14a6bd; color:white; font-size:10px; text-align:center; }
@media (min-width:768px) and (max-width:1000px) { .business-navigation.sidebar-sourcing-navigation { display:block; } .sidebar-sourcing-navigation > li > a,.sidebar-sourcing-navigation > li > details > summary { justify-content:center!important; padding-inline:0; } .sidebar-sourcing-navigation > li > a > span:last-child,.sidebar-sourcing-navigation > li > details > summary > span:last-child { display:none; } .sidebar-sourcing-navigation > li > a { min-width:40px!important; } }
@media (max-width:767px) { .topbar-messages { width:36px; height:37px; } }

/* Fluid industry directory and its brand statement. */
.industry-directory-page.container { width:calc(100% - 64px); max-width:none; }
.directory-page-content { min-width:0; }
.app-workspace .industry-directory-page .results-categories { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr)); grid-auto-flow:row; grid-auto-columns:auto; overflow:visible; gap:28px 20px; align-items:start; }
.industry-directory-page .directory-query-form { max-width:820px; }
.industry-statement { position:relative; align-self:start; min-width:0; min-height:460px; margin-top:32px; padding:34px; overflow:hidden; background:radial-gradient(ellipse at top right,#27607066,transparent 70%),linear-gradient(145deg,#143945,#102f3b); border:1px solid #264f5c; border-radius:12px; box-shadow:0 16px 36px #102f3b15; color:#f3fafc; }
.industry-statement::before { content:""; position:absolute; width:280px; height:280px; left:30px; bottom:-110px; transform:rotate(45deg); border:1px solid #bde7ed18; pointer-events:none; }
.industry-statement::after { content:""; position:absolute; top:27px; right:27px; width:8px; height:8px; transform:rotate(45deg); border:1.5px solid #68dce8; box-shadow:0 0 18px #41d3e544; pointer-events:none; }
.industry-statement > * { position:relative; }
.industry-statement-eyebrow { margin:0 12px 36px 0; color:#94e4ed; font-size:10px; line-height:1.8; text-transform:uppercase; letter-spacing:.16em; font-weight:700; }
.industry-statement-symbol { display:block; width:44px; height:44px; color:#65deea; margin-bottom:32px; }
.industry-statement-symbol svg { width:100%; height:100%; }
.industry-statement h2 { margin:0; max-width:18ch; color:#f3fafc; font-size:clamp(28px,2vw,36px); font-weight:500; line-height:1.23; letter-spacing:-.03em; }
.industry-statement h2 span { color:#8ce6ee; }
@media (min-width:1440px) { .industry-directory-page { display:grid; grid-template-columns:minmax(0,1fr) clamp(300px,20vw,360px); gap:36px; align-items:start; } .industry-directory-page .industry-statement { margin-top:0; position:sticky; top:88px; } }
@media (max-width:1000px) { .industry-directory-page.container { width:calc(100% - 40px); } }
@media (max-width:767px) { .industry-directory-page.container { width:calc(100% - 32px); } .app-workspace .industry-directory-page .results-categories { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px 10px; } .industry-statement { padding:28px; min-height:330px; } .industry-statement-eyebrow { margin-bottom:22px; } .industry-statement-symbol { margin-bottom:22px; } .industry-statement h2 { font-size:30px; max-width:22ch; } }
/* Fill supplier rows with up to five available companies, without empty slots. */
@media (min-width:768px) { .industry-supplier-carousel .supplier-carousel-track { --supplier-visible:var(--supplier-visible-3,3); } .industry-supplier-carousel [data-slider-item] { min-width:0; flex-basis:calc((100% - (var(--supplier-visible) - 1) * 13px) / var(--supplier-visible)); } }
@media (min-width:1400px) { .industry-supplier-carousel .supplier-carousel-track { --supplier-visible:var(--supplier-visible-4,4); } }
@media (min-width:1800px) { .industry-supplier-carousel .supplier-carousel-track { --supplier-visible:var(--supplier-visible-5,5); } }
/* The sourcing entry has its own emphasis in both sidebar shells. */
.sidebar-sourcing-navigation { margin-top:8px; }
.sidebar-sourcing-navigation > li > a,.sidebar-sourcing-navigation > li > details > summary { border:1px solid #53cad56b; background:linear-gradient(110deg,#087b925c,#07566966); color:#effbfc; font-weight:600; box-shadow:inset 3px 0 0 #51d5e1; }
.sidebar-sourcing-navigation > li > a:hover,.sidebar-sourcing-navigation > li > details > summary:hover { background:linear-gradient(110deg,#087b92b0,#075669a0); color:white; border-color:#75e1e9; }
.sidebar-sourcing-navigation > li > a:focus-visible,.sidebar-sourcing-navigation > li > details > summary:focus-visible { outline:2px solid #79edf2; outline-offset:3px; }
@media print { .industry-directory-page { display:block; } .industry-statement { display:none; } }

/* Sidebar sections: discovery first, personal workspace below industries. */
.sidebar-industries-caption,.sidebar-workspace-caption { color:#79dce7; font-weight:600; font-size:12px; }
.sidebar-workspace-caption { margin-top:24px; margin-bottom:10px; }

.sidebar-sourcing-navigation > li + li { margin-top:2px; }
.sidebar-sourcing-navigation > li > a.sourcing-public-link,.sidebar-sourcing-navigation > li > a.sourcing-secondary-link { background:transparent; border-color:transparent; box-shadow:none; color:#afbac9; font-weight:500; }
.sidebar-sourcing-navigation > li > a.sourcing-public-link:hover,.sidebar-sourcing-navigation > li > a.sourcing-secondary-link:hover { background:#ffffff0a; color:white; border-color:#53cad540; }

/* Supply request shortcut below the industry heading. */
.industry-page-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.industry-page-actions .detail-back { margin:0; }
.industry-supply-request { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px; padding:12px 22px; border:1px solid #07839a; border-radius:5px; background:linear-gradient(110deg,#0799b0,#08758a); color:white; font-size:13px; font-weight:600; line-height:1.35; text-align:center; box-shadow:0 7px 18px #087b922b; transition:background .18s,box-shadow .18s; }
.industry-supply-request svg { flex-shrink:0; }
.industry-supply-request:hover { color:white; background:linear-gradient(110deg,#07869c,#08677b); box-shadow:0 8px 20px #087b9238; }
.industry-supply-request:focus-visible { outline:3px solid #39bfd3; outline-offset:3px; }
@media (max-width:767px) { .industry-page-actions { gap:10px; margin-bottom:16px; align-items:center; } .industry-supply-request { gap:7px; min-height:36px; padding:8px 10px; max-width:260px; font-size:11px; box-shadow:none; } .industry-supply-request svg { width:15px; height:15px; } }
@media print { .industry-supply-request { display:none; } }

/* Give the home industry shortcuts more breathing room. */
.discovery-home .home-industries { padding-block:28px; margin-bottom:56px; }
@media (max-width:767px) { .discovery-home .home-industries { padding-block:20px; margin-bottom:40px; } }

/* Clearer home headings and denser product rows on wide screens. */
.discovery-home .discovery-section .section-heading h2,.discovery-home .industrial-carousel > h2 { display:block; font-size:28px; line-height:1.3; font-weight:600; }
.home-heading-icon { display:none; }
.discovery-home .home-heading-icon { margin-right:10px; vertical-align:middle; display:inline-flex; align-items:center; justify-content:center; flex:0 0 30px; width:30px; height:30px; color:#087b92; }
.discovery-home .home-heading-icon svg { width:26px; height:26px; }
.discovery-home .home-solutions .solution-card-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:24px; }
@media (min-width:1600px) { .discovery-home .industrial-carousel [data-slider-item] { flex-basis:calc((100% - 45px)/4); } }
@media (min-width:1800px) { .discovery-home .industrial-carousel [data-slider-item] { flex-basis:calc((100% - 60px)/5); } }
@media (min-width:2200px) { .discovery-home .industrial-carousel [data-slider-item] { flex-basis:calc((100% - 75px)/6); } }
@media (max-width:767px) { .discovery-home .discovery-section .section-heading h2,.discovery-home .industrial-carousel > h2 { font-size:22px; gap:8px; } .discovery-home .home-heading-icon { flex-basis:24px; width:24px; height:24px; } .discovery-home .home-heading-icon svg { width:22px; height:22px; } .discovery-home .home-solutions .solution-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } }
/* Corresponding pastel hues for category decoration; text keeps its contrast. */
.industry-colored-card,.sidebar-industry-link,.industry-detail { --industry-pastel:color-mix(in srgb,var(--industry-accent,#087b92) 48%,#e5eaf0); }
.industry-card .industry-card-media { border-color:var(--industry-pastel); background:color-mix(in srgb,var(--industry-pastel) 10%,white); }
.industry-card .industry-card-placeholder { color:color-mix(in srgb,var(--industry-accent) 65%,#b0bdc5); background:transparent; }
.sidebar-industry-symbol { background:color-mix(in srgb,var(--industry-pastel) 22%,#102f3b); color:var(--industry-pastel); }
.sidebar-industry-link.is-active { background:color-mix(in srgb,var(--industry-pastel) 24%,#102f3b); box-shadow:inset 3px 0 var(--industry-pastel); }
.sidebar-industry-link.is-active .sidebar-industry-symbol { background:color-mix(in srgb,var(--industry-pastel) 35%,#102f3b); }
.industry-panel-heading { background-color:var(--industry-pastel); background-image:radial-gradient(ellipse at 94% 5%,#ffffff80,transparent 58%),repeating-linear-gradient(135deg,transparent 0 42px,#ffffff20 42px 43px),linear-gradient(115deg,color-mix(in srgb,var(--industry-pastel) 72%,white),var(--industry-pastel)); }
.app-workspace .industry-panel-heading h1 { color:#173642; }
.app-workspace .industry-panel-heading .eyebrow { color:#294f5d; background:#ffffff60; }
.industry-subcategory-buttons .button,.industry-subcategory-buttons .filter-chip { color:#173642; background:linear-gradient(110deg,color-mix(in srgb,var(--industry-pastel) 65%,white),var(--industry-pastel)); box-shadow:0 4px 12px #102f3b12; }
.industry-subcategory-buttons .button:hover,.industry-subcategory-buttons .filter-chip:hover { color:#173642; background:color-mix(in srgb,var(--industry-pastel) 85%,white); }

.industry-edge-heading > .breadcrumbs { color:#294f5d; }
.industry-edge-heading > .breadcrumbs a:hover { color:#102f3b; }
.industry-edge-heading > .breadcrumbs a:focus-visible { outline-color:#102f3b; }
.industry-panel-heading .industry-summary { color:#294f5d; }

/* The decorative photograph needs no playback code or compositing effects. */
.discovery-hero-media::after { content:""; position:absolute; inset:0; background:rgba(5,27,37,.52); pointer-events:none; }

.industry-directory-page .results-solutions { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr)); gap:24px; }
@media (max-width:767px) { .industry-directory-page .results-solutions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } }

@media (min-width:768px) { .discovery-hero { min-height:288px; padding-block:44px; } }

/* Trivialtex: structured presentation of the existing supplier-authored description. */
.supplier-company-content .supplier-story { color:#193844; font-size:14px; line-height:1.75; }
.supplier-company-content .supplier-story p { margin:0 0 16px; color:#526c79; line-height:1.8; }
.supplier-company-content .supplier-story h2,.supplier-company-content .supplier-story h3 { color:#173642; font-family:var(--font); text-align:left; letter-spacing:-.025em; }
.supplier-company-content .supplier-story h2 { font-size:clamp(26px,2.7vw,38px); line-height:1.2; margin:12px 0 18px; }
.supplier-company-content .supplier-story h3 { font-size:24px; line-height:1.3; margin:8px 0 14px; }
.supplier-story-intro { display:grid; grid-template-columns:minmax(0,1fr) 240px; align-items:center; gap:40px; padding:36px; border:1px solid #dce9ec; border-radius:12px; background:linear-gradient(120deg,#edf7f8,#f8fbfc); }
.supplier-story-intro-copy { max-width:780px; }
.supplier-story-intro-copy > div > div:first-child { color:#087b92; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.09em; }
.supplier-story-intro-copy p { font-size:15px; }
.supplier-story-intro-copy a { display:inline-flex; align-items:center; justify-content:center; padding:10px 16px; margin:0 8px 8px 0; border:1px solid #bcd8df; border-radius:5px; color:#087086; background:white; font-size:13px; font-weight:600; }
.supplier-story-intro-copy a:first-child { background:#087b92; border-color:#087b92; color:white; }
.supplier-story-brand { padding:28px 20px; border:1px solid #e0eaed; border-radius:9px; background:white; text-align:center; }
.supplier-story-brand img { width:100%; max-width:220px; margin:auto; }
.supplier-story-brand img + div { margin-top:18px; color:#6b828e; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.supplier-story-navigation { display:flex; flex-wrap:wrap; gap:6px 22px; padding:18px 0; margin-bottom:22px; border-bottom:1px solid #e0e9ed; }
.supplier-story-navigation a { padding:5px 0; color:#426573; font-size:13px; font-weight:500; }
.supplier-company-content .supplier-story a { text-decoration:none; }
.supplier-company-content .supplier-story a:hover { text-decoration:underline; }
.supplier-story-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:40px; }
.supplier-story-facts > div { padding:18px; border:1px solid #e1eaed; border-radius:8px; background:#f8fbfc; }
.supplier-story-facts > div > div:first-child { color:#6b828e; font-size:12px; margin-bottom:5px; }
.supplier-story-facts > div > div:last-child { font-size:14px; font-weight:600; }
.supplier-story-company { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.6fr); gap:36px; padding-bottom:28px; }
.supplier-story-section-heading > div:first-child { color:#087b92; font-size:11px; letter-spacing:.1em; text-transform:uppercase; font-weight:600; }
.supplier-story-section-heading > div:last-child { color:#6b828e; font-size:13px; }
.supplier-story-highlights { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0 0 36px; }
.supplier-story-highlights > div { padding:20px; border:1px solid #dfe9ed; border-radius:8px; }
.supplier-story-highlights > div > div:first-child { font-size:15px; font-weight:600; margin-bottom:8px; }
.supplier-story-highlights > div > div:last-child { color:#617b87; font-size:13px; line-height:1.65; }
.supplier-story-sustainability { display:grid; grid-template-columns:1.2fr 1fr; gap:28px; padding:28px; margin-bottom:36px; background:#eef7f5; border:1px solid #dceae6; border-radius:10px; }
.supplier-story-sustainability > div:first-child > div:first-child { color:#49776e; text-transform:uppercase; letter-spacing:.1em; font-size:11px; font-weight:600; }
.supplier-story-tags { display:flex; flex-wrap:wrap; gap:8px; align-content:center; }
.supplier-story-tags span,.supplier-story-topic-body span { display:inline-block; padding:6px 10px; border:1px solid #dce8e8; border-radius:5px; background:#f6fafb; color:#456976; font-size:12px; margin:3px 5px 3px 0; }
.supplier-story-solutions { margin-bottom:36px; }
.supplier-story-solutions > div:first-child { color:#087b92; font-size:11px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.supplier-story-topic { border:1px solid #dce7eb; border-radius:8px; margin-top:12px; overflow:hidden; background:white; }
.supplier-story-topic > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px; color:#224651; font-size:15px; font-weight:600; cursor:pointer; list-style:none; }
.supplier-story-topic > summary::-webkit-details-marker { display:none; }
.supplier-story-topic > summary::after { content:"+"; color:#087b92; font-size:22px; font-weight:400; }
.supplier-story-topic[open] > summary { background:#f5f9fa; border-bottom:1px solid #e2ebee; }
.supplier-story-topic[open] > summary::after { content:"−"; }
.supplier-story-topic > summary:focus-visible { outline:3px solid #39bfd3; outline-offset:-3px; }
.supplier-story-topic-body { padding:20px; color:#526c79; }
.supplier-story-product-families { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.supplier-story-family { padding:18px; border:1px solid #e1eaed; border-radius:7px; background:#fbfcfd; font-size:13px; }
.supplier-story-family > div:first-child { color:#244b58; font-size:15px; font-weight:600; margin-bottom:8px; }
.supplier-story-topic-body > div:has(> div + div) { margin-bottom:14px; }
.supplier-story-contact-link { color:#087b92; font-weight:600; }
.supplier-story-contacts { display:grid; grid-template-columns:1fr 1fr; border:1px solid #dce7eb; border-radius:10px; overflow:hidden; }
.supplier-story-contacts > div { padding:28px; }
.supplier-story-contacts > div + div { background:#f5f9fa; }
.supplier-story-contacts > div > div { margin-bottom:12px; }
.supplier-story-contacts > div:first-child > div:first-child { color:#087b92; font-size:11px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.supplier-story-contacts > div:last-child > div:first-child { font-size:17px; font-weight:600; }
.supplier-story-contacts span { display:inline-block; min-width:86px; color:#6b828e; font-size:12px; }
.supplier-story-contacts a { color:#087b92; }
.supplier-story-catalogue { margin-top:32px; padding-top:24px; border-top:1px solid #dce7eb; }
.supplier-story-catalogue > div { color:#087b92; font-size:11px; text-transform:uppercase; letter-spacing:.1em; font-weight:600; }
@media (max-width:1000px) { .supplier-story-intro { grid-template-columns:minmax(0,1fr) 180px; padding:26px; gap:24px; } .supplier-story-facts,.supplier-story-highlights { grid-template-columns:repeat(2,minmax(0,1fr)); } .supplier-story-company { grid-template-columns:1fr; gap:20px; } .supplier-story-product-families { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .supplier-story-intro { grid-template-columns:1fr; padding:22px; gap:18px; } .supplier-story-brand { max-width:240px; padding:20px; } .supplier-company-content .supplier-story h2 { font-size:26px; } .supplier-company-content .supplier-story h3 { font-size:22px; } .supplier-story-facts,.supplier-story-highlights { gap:10px; } .supplier-story-facts > div,.supplier-story-highlights > div { padding:14px; } .supplier-story-sustainability,.supplier-story-contacts { grid-template-columns:1fr; } .supplier-story-sustainability { padding:22px; } .supplier-story-navigation { gap:6px 16px; } .supplier-story-product-families { grid-template-columns:1fr; } .supplier-story-topic > summary { padding:15px; font-size:14px; } .supplier-story-topic-body { padding:15px; } .supplier-story-contacts > div { padding:22px; } }

/* Category search and compact navigation refinements. */
@media (min-width:1001px) { :root { --sidebar:264px; } }
.industry-category-search { margin:22px 0 18px; }
.industry-category-search .discovery-search { width:100%; max-width:none; margin:0; }
.industry-category-search .discovery-search-field { box-shadow:0 5px 18px #163f4c08; }
.detail-back { min-width:36px; min-height:36px; align-items:center; justify-content:center; }
.detail-back > span { display:inline-flex; justify-content:center; align-items:center; width:30px; height:30px; font-size:24px; font-weight:600; border:1px solid #c9e0e5; border-radius:50%; background:#eef7f9; }
.profile-review-date { margin-top:40px; padding:20px 0 4px; border-top:1px solid #e1eaee; color:#728894; font-size:12px; }
.profile-technical-facts,.profile-countries { margin-top:30px; }
.profile-technical-facts h2,.profile-countries h2 { font-size:20px; margin-bottom:16px; }
.profile-technical-facts dl { margin:0; border-top:1px solid #e1eaee; }
.profile-technical-facts dl > div { display:grid; grid-template-columns:minmax(130px,.35fr) 1fr; gap:20px; padding:14px 0; border-bottom:1px solid #e1eaee; }
.profile-technical-facts dt { color:#536f7a; font-weight:500; }
.profile-technical-facts dd { margin:0; white-space:pre-line; }
.supplier-register-invitation { display:flex; align-items:center; gap:24px; width:calc(100% - 56px); max-width:var(--container); margin:24px auto; padding:20px 24px; border:1px solid #d4e6ea; border-radius:10px; background:#f4fafb; }
.supplier-register-invitation p { margin:5px 0 0; font-size:13px; color:#607b87; }
.supplier-register-invitation .button { margin-left:auto; }
.supplier-register-invitation > button { border:0; background:transparent; font-size:24px; color:#587583; }
.sidebar-hover-label { position:fixed; z-index:220; max-width:300px; padding:10px 15px; border:1px solid #375b66; border-radius:6px; color:#e9f5f8; background:#173b47; box-shadow:0 8px 24px #102f3b30; font-size:13px; line-height:1.4; pointer-events:none; }
.contact-slide-dialog { margin:0 0 0 auto; inset:0; width:min(720px,calc(100vw - 90px)); max-width:none; height:100dvh; max-height:none; padding:0; border:0; box-shadow:-12px 0 50px #112f3b30; }
.contact-slide-dialog::backdrop { background:#0c293b66; }
.contact-slide-dialog[open] { display:flex; flex-direction:column; animation:contact-slide-in .24s ease-out; }
.contact-slide-dialog > header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px; border-bottom:1px solid #deeaee; }
.contact-slide-dialog > header button { border:0; background:#edf6f8; border-radius:50%; width:36px; height:36px; font-size:24px; }
.contact-slide-dialog iframe { display:block; border:0; width:100%; flex:1; background:white; }
@keyframes contact-slide-in { from { transform:translateX(100%); } to { transform:translateX(0); } }
@media (prefers-reduced-motion:reduce) { .contact-slide-dialog[open] { animation:none; } }
@media (max-width:600px) {
 .industry-category-search { margin:16px 0 12px; }
 .industry-page-actions .industry-supply-request { font-size:11px; padding:8px 11px; min-height:32px; gap:6px; }
 .industry-page-actions .industry-supply-request svg { width:14px; height:14px; }
 .detail-back > span { width:32px; height:32px; font-size:24px; }
 .supplier-register-invitation { width:calc(100% - 32px); padding:16px; gap:12px; flex-wrap:wrap; }
 .supplier-register-invitation .button { margin-left:0; }
 .supplier-register-invitation > button { margin-left:auto; }
 .profile-technical-facts dl > div { grid-template-columns:1fr; gap:5px; }
}

/* Supplier editorial content uses only scoped classes after HTML sanitization. */
.industrial-rich-supplier-story { font-size:14px; line-height:1.75; color:#526c79; }
.industrial-rich-supplier-story .industrial-rich-story-intro { display:flex; align-items:center; gap:28px; padding:32px; border:1px solid #dce9ec; border-radius:12px; background:linear-gradient(120deg,#edf7f8,#f8fbfc); }
.industrial-rich-supplier-story h2 { font-family:var(--font); font-size:clamp(23px,2.1vw,31px); line-height:1.25; margin:8px 0 18px; color:#173642; letter-spacing:-.02em; }
.industrial-rich-supplier-story h3 { font-family:var(--font); font-size:16px; color:#254d5b; line-height:1.4; margin:0; }
.industrial-rich-supplier-story p { margin:0 0 12px; line-height:1.8; }
.industrial-rich-supplier-story .industrial-rich-story-eyebrow { font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:#087b92; font-weight:600; margin-bottom:8px; }
.industrial-rich-story-brand { flex:0 0 190px; padding:22px; background:white; border:1px solid #dfe9ed; border-radius:8px; }
.industrial-rich-story-brand img { width:100%; max-height:150px; object-fit:contain; }
.industrial-rich-story-links { display:flex; gap:24px; flex-wrap:wrap; padding:18px 0; border-bottom:1px solid #dfe9ed; font-size:13px; color:#087b92; }
.industrial-rich-story-overview { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:24px 0 32px; }
.industrial-rich-story-overview > div { border:1px solid #e1eaed; border-radius:8px; padding:20px; background:#f8fbfc; }
.industrial-rich-story-overview p:last-child { margin-bottom:0; }
.industrial-rich-story-families { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:22px 0 36px; }
.industrial-rich-story-family { padding:24px; border:1px solid #dfe9ed; border-radius:8px; background:white; }
.industrial-rich-story-project { padding:28px; border:1px solid #dce7eb; border-radius:10px; background:#f5f9fa; }
.industrial-rich-story-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.industrial-rich-story-actions a { display:inline-flex; padding:10px 16px; border:1px solid #bcd8df; border-radius:5px; color:#087086; background:white; font-size:13px; font-weight:600; text-decoration:none; }
.industrial-rich-story-actions a:first-child { background:#087b92; border-color:#087b92; color:white; }
.industrial-model-immersive-actions { display:flex; gap:14px; align-items:center; flex-wrap:wrap; padding:12px 20px 0; }
.industrial-model-immersive-actions span { color:#687f8a; font-size:12px; }
.industrial-model-ar { position:absolute; bottom:20px; right:20px; padding:12px 18px; border:1px solid #b6dce3; border-radius:6px; background:white; color:#087086; }
@media (max-width:767px) { .industrial-rich-supplier-story .industrial-rich-story-intro { flex-direction:column; align-items:stretch; padding:22px; } .industrial-rich-story-brand { flex-basis:auto; max-width:220px; } .industrial-rich-story-overview { grid-template-columns:1fr; } .industrial-rich-story-families { grid-template-columns:1fr; gap:10px; margin-bottom:25px; } .industrial-rich-story-family { padding:18px; } .industrial-rich-story-project { padding:22px; } }
.industrial-rich-story-contact-details { margin-top:30px; padding-top:24px; border-top:1px solid #dfe9ed; } .industrial-rich-supplier-story .industrial-rich-story-contact-details h2 { font-size:22px; } .industrial-rich-supplier-story .industrial-rich-story-contact-details p { margin-bottom:6px; }

/* Mobile navigation uses the same full sidebar in an overlay. */
.mobile-menu-toggle,.mobile-menu-close,.mobile-menu-backdrop { display:none; }
@media (max-width:767px) {
 .app-topbar { position:sticky; justify-content:space-between; }
 .mobile-menu-toggle { display:grid; place-items:center; flex:0 0 40px; width:40px; height:40px; padding:8px; color:#c4dce2; border:1px solid #ffffff30; border-radius:8px; background:transparent; }
 .mobile-menu-toggle svg { width:24px; height:24px; }
 .app-topbar .mobile-brand { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:112px; max-width:112px; flex:none; }
 .app-topbar .topbar-actions { margin-left:auto; }
 .app-sidebar { display:flex; align-items:stretch; width:min(308px,86vw); padding:24px 16px; z-index:140; transform:translateX(-105%); visibility:hidden; transition:transform .22s ease,visibility .22s; }
 .mobile-nav-open .app-sidebar { transform:translateX(0); visibility:visible; box-shadow:12px 0 48px #071e2c55; }
 .app-sidebar .app-brand { width:156px; height:auto; margin:0 0 24px 8px; padding:0; }
 .app-sidebar .app-brand .brand-full { display:block; }
 .app-sidebar .app-brand .brand-icon { display:none; }
 .app-sidebar .sidebar-caption,.app-sidebar .app-nav-link span,.app-sidebar .sidebar-sourcing-navigation > li > a > span:last-child { display:block; }
 .app-sidebar .app-nav-link { justify-content:flex-start; gap:12px; padding:10px; }
 .app-sidebar .sidebar-sourcing-navigation > li > a { justify-content:flex-start!important; gap:12px!important; padding:10px!important; }
 .app-sidebar .sidebar-caption { margin-top:20px; }
 .mobile-menu-close { display:grid; place-items:center; position:absolute; right:12px; top:21px; width:36px; height:36px; color:#c4dce2; background:transparent; border:1px solid #ffffff30; border-radius:8px; font-size:25px; }
 .mobile-menu-backdrop:not([hidden]) { display:block; position:fixed; inset:0; z-index:130; background:#071e2c99; backdrop-filter:blur(2px); }
 body.mobile-nav-open { overflow:hidden; }
 body.mobile-nav-open .insouto-ai { visibility:hidden; }
 .mobile-menu-toggle:focus-visible,.mobile-menu-close:focus-visible { outline:3px solid #76d8e6; outline-offset:3px; }
}
@media (max-width:420px) { .app-topbar .topbar-messages { display:none; } .app-topbar .mobile-brand { width:100px; max-width:100px; } }
@media (prefers-reduced-motion:reduce) { .app-sidebar { transition:none; } }
@media print { .mobile-menu-toggle,.mobile-menu-close,.mobile-menu-backdrop { display:none!important; } }

/* Compact coverage groups, with the complete country list still in the document. */
.profile-country-groups { display:flex; flex-wrap:wrap; gap:10px; }
.profile-country-group { position:relative; min-width:0; }
.profile-country-group > summary { display:flex; align-items:center; gap:12px; padding:11px 15px; border:1px solid #cadfe5; border-radius:10px; color:#255665; background:#eff7f9; cursor:pointer; list-style:none; font-size:14px; font-weight:600; }
.profile-country-group > summary::-webkit-details-marker { display:none; }
.profile-country-group > summary small { color:#647f8b; font-size:11px; font-weight:400; white-space:nowrap; }
.profile-country-group > summary:hover,.profile-country-group[open] > summary { background:#e4f1f5; border-color:#83b7c3; }
.profile-country-group > summary:focus-visible { outline:3px solid #087b9233; outline-offset:3px; }
.country-group-chevron { color:#648594; font-size:18px; }
.country-group-balloon { position:absolute; top:calc(100% + 9px); left:0; width:min(500px,calc(100vw - 40px)); max-height:min(360px,55vh); overflow:auto; z-index:40; padding:18px; border:1px solid #d5e4e9; border-radius:14px; background:white; box-shadow:0 12px 38px #12374326; color:#355765; scrollbar-width:thin; }
.profile-country-group.opens-up .country-group-balloon { top:auto; bottom:calc(100% + 9px); }
.profile-country-group.align-right .country-group-balloon { left:auto; right:0; }
.country-group-balloon > header { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:12px; font-size:14px; }
.country-group-balloon button { display:grid; place-items:center; flex:0 0 28px; height:28px; border:0; border-radius:50%; background:#edf5f7; color:#355765; cursor:pointer; font-size:20px; }
.country-group-balloon button:focus-visible { outline:2px solid #087b92; outline-offset:2px; }
.country-group-balloon ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 18px; margin:0; padding:0; list-style:none; font-size:12px; line-height:1.5; }
.country-group-balloon li { overflow-wrap:anywhere; }
.profile-country-extra-label { margin:16px 0 8px; color:#647f8b; font-size:12px; }
.profile-country-extras { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.profile-country-extras li { padding:7px 11px; border:1px solid #e0e8ec; border-radius:8px; background:#fafcfd; font-size:12px; color:#496875; }
@media(max-width:480px) { .profile-country-group { max-width:100%; } .profile-country-group > summary { flex-wrap:wrap; gap:6px 10px; } .profile-country-group > summary > span:first-child { flex:1 1 100%; } .country-group-balloon ul { grid-template-columns:minmax(0,1fr); } }

/* Supplier facts are a compact introduction before the long description. */
.profile-countries,.profile-technical-facts { margin-block:0 32px; padding:24px; border:1px solid #dde8ed; border-radius:14px; background:white; box-shadow:0 4px 18px #12374304; }
.profile-countries .profile-facts-heading,.profile-technical-facts .profile-facts-heading { display:flex; align-items:center; gap:12px; margin:0 0 22px; color:#234552; font-size:20px; font-weight:600; line-height:1.35; }
.profile-facts-icon { display:grid; place-items:center; flex:0 0 36px; height:36px; color:#087b92; background:#eaf5f8; border-radius:9px; }
.profile-facts-icon svg { width:21px; height:21px; }
.profile-technical-facts { margin-bottom:48px; }
.profile-technical-facts dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; border:0; }
.profile-technical-facts dl > div { display:block; min-width:0; padding:16px 18px; border:1px solid #e5edf1; border-radius:10px; background:#f7fafb; }
.profile-technical-facts dt { color:#597581; font-size:12px; font-weight:600; line-height:1.5; }
.profile-technical-facts dd { margin:7px 0 0; color:#294b59; font-size:14px; line-height:1.7; white-space:pre-line; overflow-wrap:anywhere; }
@media(max-width:650px) { .profile-countries,.profile-technical-facts { padding:20px; margin-bottom:28px; } .profile-technical-facts { margin-bottom:38px; } .profile-countries .profile-facts-heading,.profile-technical-facts .profile-facts-heading { font-size:18px; gap:10px; } .profile-technical-facts dl { grid-template-columns:minmax(0,1fr); } .profile-technical-facts dl > div { padding:14px 16px; } }

/* Explicit portal promotions; ordinary cards use the same visual treatment. */
.directory-card[data-featured] { position:relative; }
.industrial-featured-badge { position:absolute; top:12px; left:12px; z-index:2; padding:5px 10px; border:1px solid #67d7e5; border-radius:999px; background:var(--navy,#102f3b); color:#fff; font-size:11px; line-height:1.4; font-weight:600; box-shadow:0 2px 8px #102f3b18; }
.supplier-card[data-featured="true"] { padding-top:48px; }
