/* Scoped catalog design; existing site fonts, image URLs and search behavior are reused. */
.vn-header,.vn-directory{--vn-ink:#15344b;--vn-blue:#174f88;--vn-muted:#617487;--vn-line:#dce5ec;--vn-wash:#f4f7fa;--vn-accent:#bd8547;font-family:IRANSans,Tahoma,sans-serif;color:var(--vn-ink);direction:rtl}
.vn-header *,.vn-directory *{box-sizing:border-box}
.vn-header a,.vn-directory a{color:inherit;text-decoration:none}
.vn-header button,.vn-header input,.vn-header summary,.vn-directory button,.vn-directory summary{font:inherit}
.vn-header button,.vn-header summary,.vn-directory summary{cursor:pointer}
.vn-header button{color:inherit}
.vn-header svg,.vn-directory svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.vn-header a:focus-visible,.vn-header button:focus-visible,.vn-header summary:focus-visible,.vn-header input:focus-visible,.vn-directory a:focus-visible,.vn-directory summary:focus-visible{outline:3px solid #b78344;outline-offset:4px;border-radius:5px}
:is(.vn-header,.vn-directory) .vn-shell{width:min(1240px,calc(100% - 64px));margin-inline:auto}
.vn-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--vn-line);isolation:isolate}
:is(.vn-header,.vn-directory) .vn-utility{background:#14334a;color:#e0eaf2;font-size:11px;line-height:30px}
:is(.vn-header,.vn-directory) .vn-utility .vn-shell{display:flex;justify-content:space-between;gap:20px}
:is(.vn-header,.vn-directory) .vn-utility span:last-child{color:#c1d1dc;letter-spacing:1px;font:10px/30px Arial,sans-serif}
:is(.vn-header,.vn-directory) .vn-mainbar{display:grid;grid-template-columns:238px minmax(250px,1fr) 190px;align-items:center;gap:32px;min-height:94px}
:is(.vn-header,.vn-directory) .vn-brand{display:flex;align-items:center;gap:10px;min-width:0}
:is(.vn-header,.vn-directory) .vn-brand img{display:block;width:88px;height:61px;object-fit:contain}
:is(.vn-header,.vn-directory) .vn-brand-copy{display:flex;flex-direction:column;gap:7px;white-space:nowrap}
:is(.vn-header,.vn-directory) .vn-brand-copy strong{font-size:14px}
:is(.vn-header,.vn-directory) .vn-brand-copy span{color:var(--vn-muted);font-size:10px}
:is(.vn-header,.vn-directory) .vn-search-zone{min-width:0}
:is(.vn-header,.vn-directory) .vn-search-clear{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:11px;color:var(--vn-blue)!important}
:is(.vn-header,.vn-directory) .vn-search{display:flex;align-items:center;gap:8px;background:var(--vn-wash);border:1px solid #e5ebf0;border-radius:10px;padding:6px 12px 6px 6px;min-width:0}
:is(.vn-header,.vn-directory) .vn-search>svg{width:21px;color:#7890a3}
:is(.vn-header,.vn-directory) .vn-search input{min-width:0;width:100%;height:38px;border:0;background:transparent;color:var(--vn-ink);font-size:12px;outline-offset:0}
:is(.vn-header,.vn-directory) .vn-search input::placeholder{color:#758899;opacity:1}
:is(.vn-header,.vn-directory) .vn-search button{height:38px;background:var(--vn-blue);border:0;color:#fff;padding:0 20px;border-radius:7px;font-size:12px}
:is(.vn-header,.vn-directory) .vn-rfq{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;border:1px solid #c7d7e4;border-radius:9px;font-size:12px;font-weight:700}
:is(.vn-header,.vn-directory) .vn-rfq:hover{background:#f1f6fb}
:is(.vn-header,.vn-directory) .vn-rfq svg{width:18px}
:is(.vn-header,.vn-directory) .vn-navrow{position:relative;display:flex;align-items:stretch;gap:22px;min-height:52px;border-top:1px solid #edf1f4}
:is(.vn-header,.vn-directory) .vn-catalog{position:static;flex:none}
:is(.vn-header,.vn-directory) .vn-catalog>summary{display:flex;align-items:center;gap:10px;list-style:none;height:52px;min-width:188px;font-weight:700;font-size:13px;color:var(--vn-blue);border-bottom:3px solid transparent;padding-top:3px}
:is(.vn-header,.vn-directory) .vn-catalog>summary::-webkit-details-marker,:is(.vn-header,.vn-directory) .vn-group>summary::-webkit-details-marker,:is(.vn-header,.vn-directory) .vn-more>summary::-webkit-details-marker{display:none}
:is(.vn-header,.vn-directory) .vn-catalog>summary .vn-chevron{width:15px;margin-inline-start:auto}
:is(.vn-header,.vn-directory) .vn-catalog[open]>summary{border-color:var(--vn-blue)}
:is(.vn-header,.vn-directory) .vn-catalog[open]>summary .vn-chevron{transform:rotate(180deg)}
:is(.vn-header,.vn-directory) .vn-navlinks{display:flex;align-items:center;gap:28px;margin:0;padding:0;list-style:none;font-size:12px;min-width:0}
:is(.vn-header,.vn-directory) .vn-navlinks a{display:flex;align-items:center;min-height:44px;white-space:nowrap}
:is(.vn-header,.vn-directory) .vn-navlinks a:hover{color:var(--vn-blue)}
:is(.vn-header,.vn-directory) .vn-call{display:flex;align-items:center;gap:8px;margin-inline-start:auto;font:600 14px/1.5 Arial,sans-serif;direction:ltr;white-space:nowrap}
:is(.vn-header,.vn-directory) .vn-call svg{width:16px;color:var(--vn-blue)}
:is(.vn-header,.vn-directory) .vn-sr{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
:is(.vn-header,.vn-directory) .vn-panel{position:absolute;inset-inline:0;top:100%;background:#fff;border:1px solid var(--vn-line);border-top:2px solid var(--vn-blue);border-radius:0 0 14px 14px;box-shadow:0 24px 40px #18374e20;z-index:2;max-height:calc(100dvh - var(--vn-header-bottom,176px) - 16px);overflow:auto}
:is(.vn-header,.vn-directory) .vn-panel-heading{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--vn-line);gap:12px}
:is(.vn-header,.vn-directory) .vn-panel-heading strong{font-size:14px}
:is(.vn-header,.vn-directory) .vn-panel-heading a{font-size:12px;color:var(--vn-blue);display:flex;align-items:center;gap:9px;min-height:32px}
:is(.vn-header,.vn-directory) .vn-panel-heading a svg{width:15px}
:is(.vn-header,.vn-directory) .vn-close{display:none;align-items:center;justify-content:center;border:1px solid var(--vn-line);background:#fff;border-radius:8px;width:44px;height:44px;flex:none}
:is(.vn-header,.vn-directory) .vn-selector{display:none}
:is(.vn-header,.vn-directory) .vn-groups{padding:20px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
:is(.vn-header,.vn-directory) .vn-group{border:1px solid var(--vn-line);border-radius:9px;min-width:0;background:#fff}
:is(.vn-header,.vn-directory) .vn-group>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:14px;font-size:13px;font-weight:700;min-height:50px}
:is(.vn-header,.vn-directory) .vn-group>summary>svg:last-child{margin-inline-start:auto;width:16px}
:is(.vn-header,.vn-directory) .vn-group[open]>summary>svg:last-child{transform:rotate(180deg)}
:is(.vn-header,.vn-directory) .vn-group-body{padding:16px}
:is(.vn-header,.vn-directory) .vn-group-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid #e7edf2;margin-bottom:20px}
:is(.vn-header,.vn-directory) .vn-group-top h2{font-size:23px;margin:0 0 8px;line-height:1.7}
:is(.vn-header,.vn-directory) .vn-group-top a{color:var(--vn-blue);font-size:12px;display:inline-flex;align-items:center;gap:8px;min-height:34px}
:is(.vn-header,.vn-directory) .vn-group-top a svg{width:14px}
:is(.vn-header,.vn-directory) .vn-group-top img{width:155px;height:105px;object-fit:contain;flex:none}
:is(.vn-header,.vn-directory) .vn-sublinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 24px;list-style:none;padding:0;margin:0}
:is(.vn-header,.vn-directory) .vn-sublinks a{display:flex;align-items:center;gap:10px;min-height:46px;font-size:12px;line-height:1.9;padding:8px 4px;border-bottom:1px solid #f0f3f6}
:is(.vn-header,.vn-directory) .vn-sublinks a svg{width:14px;color:#728aa0;margin-inline-start:auto}
:is(.vn-header,.vn-directory) .vn-sublinks a:hover{color:var(--vn-blue);background:#f6f9fc}
:is(.vn-header,.vn-directory) .vn-group-note{font-size:11px;line-height:2;color:var(--vn-muted);margin:24px 0 0;padding:12px 16px;background:var(--vn-wash);border-radius:7px}
.vn-header.vn-enhanced .vn-selector{display:flex;flex-direction:column;width:245px;flex:none;padding:10px;background:#f4f7fa;border-inline-end:1px solid var(--vn-line);overflow:auto;overscroll-behavior:contain}
.vn-header.vn-enhanced .vn-selector button{display:flex;align-items:center;gap:11px;padding:10px 12px;width:100%;text-align:right;min-height:47px;border:0;border-radius:7px;background:transparent;color:#465e72;font-size:12px;flex:none;line-height:1.8}
.vn-header.vn-enhanced .vn-selector button>svg{width:20px}
.vn-header.vn-enhanced .vn-selector button>span{flex:1}
.vn-header.vn-enhanced .vn-selector button>svg:last-child{width:13px;color:#899bab}
.vn-header.vn-enhanced .vn-selector button[aria-pressed=true]{color:var(--vn-blue);background:#fff;box-shadow:0 2px 5px #19374f08;font-weight:700}
.vn-header.vn-enhanced .vn-selector button:hover{background:#e9f0f6}
.vn-header.vn-enhanced .vn-panel-layout{display:flex;height:min(515px,calc(100dvh - var(--vn-header-bottom,176px) - 80px));min-height:180px}
.vn-header.vn-enhanced .vn-groups{display:block;overflow:auto;overscroll-behavior:contain;flex:1;padding:20px 32px}
.vn-header.vn-enhanced .vn-group{border:0}
.vn-header.vn-enhanced .vn-group>summary{display:none}
.vn-header.vn-enhanced .vn-group-body{padding:0}
.vn-header.vn-enhanced .vn-group[hidden]{display:none!important}
.vn-header.vn-enhanced .vn-close{display:flex}
.vn-directory{background:#f7f9fb;padding-bottom:60px;min-height:70vh}
:is(.vn-header,.vn-directory) .vn-crumb{display:flex;align-items:center;gap:10px;min-height:66px;font-size:11px;color:var(--vn-muted);margin:0;padding:0;list-style:none}
:is(.vn-header,.vn-directory) .vn-crumb svg{width:13px;color:#8e9dab}
:is(.vn-header,.vn-directory) .vn-crumb a:hover{color:var(--vn-blue)}
:is(.vn-header,.vn-directory) .vn-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:6px 0 29px;border-bottom:1px solid var(--vn-line)}
:is(.vn-header,.vn-directory) .vn-eyebrow{display:flex;align-items:center;gap:8px;color:var(--vn-muted);font-size:10px;margin:0 0 10px;letter-spacing:.3px}
:is(.vn-header,.vn-directory) .vn-eyebrow:before{content:'';height:2px;width:24px;background:var(--vn-accent)}
:is(.vn-header,.vn-directory) .vn-intro h1{font-size:32px;line-height:1.7;font-weight:700;margin:0 0 9px;letter-spacing:-1.4px}
:is(.vn-header,.vn-directory) .vn-intro p:not(.vn-eyebrow){font-size:12px;line-height:2.1;color:var(--vn-muted);margin:0;max-width:660px}
:is(.vn-header,.vn-directory) .vn-index-mark{display:flex;align-items:center;gap:14px;padding-bottom:2px;flex:none}
:is(.vn-header,.vn-directory) .vn-index-mark strong{font-size:46px;line-height:1;color:#b0bfcc;font-weight:400;letter-spacing:-2px}
:is(.vn-header,.vn-directory) .vn-index-mark span{font-size:11px;line-height:2;color:var(--vn-muted);border-inline-start:1px solid #cfdae3;padding-inline-start:14px}
.vn-directory .vn-directory-heading{display:flex;justify-content:space-between;align-items:center;margin:29px 0 18px;gap:20px}
.vn-directory .vn-directory-heading h2{font-size:15px;margin:0}
.vn-directory .vn-directory-heading p{font-size:11px;color:var(--vn-muted);margin:0}
:is(.vn-header,.vn-directory) .vn-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
:is(.vn-header,.vn-directory) .vn-card{position:relative;min-width:0;border:1px solid var(--vn-line);border-radius:12px;background:#fff;overflow:clip;transition:border-color .18s,box-shadow .18s}
:is(.vn-header,.vn-directory) .vn-card:hover{border-color:#a9bfd1;box-shadow:0 8px 20px #19374f09}
:is(.vn-header,.vn-directory) .vn-card-visual{display:flex;align-items:center;justify-content:center;height:167px;position:relative;margin:12px 12px 0;background:#f6f8fa;border-radius:8px;overflow:hidden}
:is(.vn-header,.vn-directory) .vn-card-visual img{height:139px;width:88%;object-fit:contain;mix-blend-mode:multiply;transition:transform .2s}
:is(.vn-header,.vn-directory) .vn-card:hover .vn-card-visual img{transform:translateY(-3px)}
:is(.vn-header,.vn-directory) .vn-card-number{position:absolute;right:13px;top:12px;z-index:1;color:#778d9f;font:10px Arial,sans-serif;letter-spacing:1px}
:is(.vn-header,.vn-directory) .vn-card-visual>svg{position:absolute;left:12px;top:12px;color:#8b9eaf;width:18px;height:18px}
:is(.vn-header,.vn-directory) .vn-card-content{padding:18px 22px 17px}
:is(.vn-header,.vn-directory) .vn-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:35px}
:is(.vn-header,.vn-directory) .vn-card-title h3{font-size:17px;line-height:1.8;margin:0;letter-spacing:-.5px}
:is(.vn-header,.vn-directory) .vn-card-title h3 a:hover{color:var(--vn-blue)}
:is(.vn-header,.vn-directory) .vn-card-title>span{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--vn-line);border-radius:50%;color:var(--vn-blue);flex:none}
:is(.vn-header,.vn-directory) .vn-card-title>span svg{width:15px}
:is(.vn-header,.vn-directory) .vn-card-count{margin:6px 0 12px;font-size:10px;color:var(--vn-muted)}
:is(.vn-header,.vn-directory) .vn-card-links{margin:0;padding:0;list-style:none;border-top:1px solid #edf1f5}
:is(.vn-header,.vn-directory) .vn-card-links a{display:flex;align-items:center;gap:8px;justify-content:space-between;min-height:40px;padding-block:6px;font-size:11px;line-height:1.9;color:#526a7d}
:is(.vn-header,.vn-directory) .vn-card-links a svg{width:13px;color:#99aab8}
:is(.vn-header,.vn-directory) .vn-card-links a:hover{color:var(--vn-blue)}
:is(.vn-header,.vn-directory) .vn-more>summary{display:flex;align-items:center;gap:7px;list-style:none;color:var(--vn-blue);font-size:11px;min-height:40px;border-top:1px solid #edf1f5}
:is(.vn-header,.vn-directory) .vn-more>summary svg{width:13px}
:is(.vn-header,.vn-directory) .vn-more[open]>summary svg{transform:rotate(180deg)}
:is(.vn-header,.vn-directory) .vn-card-action{display:flex;align-items:center;gap:8px;min-height:40px;margin-top:5px;color:var(--vn-blue)!important;font-size:11px;font-weight:700}
:is(.vn-header,.vn-directory) .vn-card-action svg{width:15px}
:is(.vn-header,.vn-directory) .vn-guidebar{margin-top:36px;padding:25px 30px;border:1px solid #cbdce9;border-radius:12px;background:#edf3f8;display:flex;align-items:center;gap:18px}
:is(.vn-header,.vn-directory) .vn-guidebar>.vn-guide-icon{display:grid;place-items:center;background:#fff;border:1px solid #d7e2eb;width:48px;height:48px;border-radius:10px;flex:none}
:is(.vn-header,.vn-directory) .vn-guidebar h2{font-size:15px;margin:0 0 7px}
:is(.vn-header,.vn-directory) .vn-guidebar p{font-size:11px;line-height:2;color:var(--vn-muted);margin:0}
:is(.vn-header,.vn-directory) .vn-guidebar>a{margin-inline-start:auto;flex:none;display:flex;align-items:center;gap:14px;font-size:12px;font-weight:700;color:var(--vn-blue);min-height:44px}
:is(.vn-header,.vn-directory) .vn-guidebar>a svg{width:16px}
@media(min-width:901px){.vn-header.vn-enhanced .vn-catalog[open]:after{content:'';position:fixed;inset:var(--vn-header-bottom,176px) 0 0;background:#0d26321c;z-index:-1;pointer-events:none}
}
@media(max-width:1100px){:is(.vn-header,.vn-directory) .vn-mainbar{grid-template-columns:205px minmax(220px,1fr) 157px;gap:18px}
:is(.vn-header,.vn-directory) .vn-brand-copy strong{font-size:12px}
:is(.vn-header,.vn-directory) .vn-brand-copy span{font-size:9px}
:is(.vn-header,.vn-directory) .vn-brand img{width:75px}
:is(.vn-header,.vn-directory) .vn-navlinks{gap:19px}
:is(.vn-header,.vn-directory) .vn-navrow{gap:15px}
:is(.vn-header,.vn-directory) .vn-call{font-size:12px}
:is(.vn-header,.vn-directory) .vn-shell{width:calc(100% - 40px)}
:is(.vn-header,.vn-directory) .vn-card-content{padding:16px}
:is(.vn-header,.vn-directory) .vn-card-title h3{font-size:15px}
:is(.vn-header,.vn-directory) .vn-grid{gap:16px}
}
@media(max-width:900px){:is(.vn-header,.vn-directory) .vn-utility{display:none}
:is(.vn-header,.vn-directory) .vn-mainbar{grid-template-columns:1fr auto;gap:8px;min-height:0;padding:10px 0}
:is(.vn-header,.vn-directory) .vn-brand img{width:68px;height:46px}
:is(.vn-header,.vn-directory) .vn-brand-copy strong{font-size:12px}
:is(.vn-header,.vn-directory) .vn-brand-copy span{font-size:9px}
:is(.vn-header,.vn-directory) .vn-rfq{min-height:40px;font-size:11px;padding:0 12px}
:is(.vn-header,.vn-directory) .vn-rfq svg{width:16px}
:is(.vn-header,.vn-directory) .vn-search-zone{grid-row:2;grid-column:1/-1;margin-top:3px}
:is(.vn-header,.vn-directory) .vn-search input{height:34px}
:is(.vn-header,.vn-directory) .vn-search button{height:34px;font-size:11px;padding-inline:16px}
:is(.vn-header,.vn-directory) .vn-navrow{gap:12px;min-height:47px}
:is(.vn-header,.vn-directory) .vn-catalog>summary{height:47px;min-width:167px;font-size:12px}
:is(.vn-header,.vn-directory) .vn-navlinks{gap:18px;font-size:11px}
:is(.vn-header,.vn-directory) .vn-call,:is(.vn-header,.vn-directory) .vn-navlinks .vn-secondary-link{display:none}
:is(.vn-header,.vn-directory) .vn-panel{top:100%;max-height:65dvh}
:is(.vn-header,.vn-directory) .vn-groups{display:block;padding:12px}
:is(.vn-header,.vn-directory) .vn-group{margin-bottom:8px}
:is(.vn-header,.vn-directory) .vn-group-top img{display:none}
:is(.vn-header,.vn-directory) .vn-group-top h2{font-size:19px}
:is(.vn-header,.vn-directory) .vn-group-top{margin-bottom:9px;padding-bottom:9px}
:is(.vn-header,.vn-directory) .vn-sublinks{grid-template-columns:1fr}
:is(.vn-header,.vn-directory) .vn-sublinks a{font-size:12px;min-height:46px}
.vn-header.vn-enhanced .vn-catalog[open] .vn-panel{position:fixed;inset:0;max-height:none;height:100dvh;border:0;border-radius:0;display:flex;flex-direction:column}
.vn-header.vn-enhanced .vn-selector{display:none}
.vn-header.vn-enhanced .vn-panel-layout{display:block;min-height:0;flex:1;height:auto;overflow:auto}
.vn-header.vn-enhanced .vn-groups{padding:12px 16px;overflow:visible}
.vn-header.vn-enhanced .vn-group{border:1px solid var(--vn-line)}
.vn-header.vn-enhanced .vn-group>summary{display:flex}
.vn-header.vn-enhanced .vn-group-body{padding:0 16px 14px}
.vn-header.vn-enhanced .vn-group-top h2{display:none}
.vn-header.vn-enhanced .vn-group-top{padding-bottom:5px;margin:0}
:is(.vn-header,.vn-directory) .vn-group-note{display:none}
:is(.vn-header,.vn-directory) .vn-panel-heading{padding:12px 16px;position:sticky;top:0;background:#fff;z-index:1}
:is(.vn-header,.vn-directory) .vn-panel-heading strong{font-size:13px}
:is(.vn-header,.vn-directory) .vn-panel-heading a{font-size:10px}
:is(.vn-header,.vn-directory) .vn-panel-heading a svg{display:none}
:is(.vn-header,.vn-directory) .vn-group>summary{min-height:56px}
:is(.vn-header,.vn-directory) .vn-intro h1{font-size:27px}
:is(.vn-header,.vn-directory) .vn-intro{align-items:center}
:is(.vn-header,.vn-directory) .vn-index-mark strong{font-size:38px}
:is(.vn-header,.vn-directory) .vn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
:is(.vn-header,.vn-directory) .vn-guidebar{padding:22px;flex-wrap:wrap}
:is(.vn-header,.vn-directory) .vn-guidebar>a{margin-inline-start:66px}
:is(.vn-header,.vn-directory) .vn-crumb{min-height:52px}
}
@media(max-width:520px){:is(.vn-header,.vn-directory) .vn-shell{width:calc(100% - 32px)}
:is(.vn-header,.vn-directory) .vn-brand-copy{gap:6px}
:is(.vn-header,.vn-directory) .vn-brand-copy strong{font-size:11px}
:is(.vn-header,.vn-directory) .vn-brand-copy span{font-size:8px}
:is(.vn-header,.vn-directory) .vn-brand{gap:7px}
:is(.vn-header,.vn-directory) .vn-brand img{width:62px;height:43px}
:is(.vn-header,.vn-directory) .vn-rfq{font-size:10px;padding-inline:9px;gap:6px}
:is(.vn-header,.vn-directory) .vn-rfq svg{width:14px}
:is(.vn-header,.vn-directory) .vn-navlinks{gap:17px;font-size:10px}
:is(.vn-header,.vn-directory) .vn-navlinks .vn-mobile-hide{display:none}
:is(.vn-header,.vn-directory) .vn-navrow{gap:17px}
:is(.vn-header,.vn-directory) .vn-catalog>summary{min-width:165px;font-size:11px;gap:8px}
:is(.vn-header,.vn-directory) .vn-catalog>summary>svg{width:18px}
:is(.vn-header,.vn-directory) .vn-search{gap:6px;padding-inline-start:9px}
:is(.vn-header,.vn-directory) .vn-search>svg{width:18px}
:is(.vn-header,.vn-directory) .vn-search input{font-size:10px}
:is(.vn-header,.vn-directory) .vn-intro{display:block;padding:3px 0 20px}
:is(.vn-header,.vn-directory) .vn-intro h1{font-size:25px;letter-spacing:-1px;margin-bottom:8px}
:is(.vn-header,.vn-directory) .vn-intro p:not(.vn-eyebrow){font-size:11px}
:is(.vn-header,.vn-directory) .vn-index-mark{display:none}
:is(.vn-header,.vn-directory) .vn-eyebrow{font-size:9px;margin-bottom:8px}
.vn-directory .vn-directory-heading{margin:23px 0 14px}
.vn-directory .vn-directory-heading h2{font-size:13px}
.vn-directory .vn-directory-heading p{font-size:9px}
:is(.vn-header,.vn-directory) .vn-grid{grid-template-columns:1fr;gap:15px}
:is(.vn-header,.vn-directory) .vn-card{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:start;padding:14px;column-gap:12px}
:is(.vn-header,.vn-directory) .vn-card-visual{grid-column:2;grid-row:1;margin:0;height:112px;width:110px}
:is(.vn-header,.vn-directory) .vn-card-visual img{width:100%;height:88px}
:is(.vn-header,.vn-directory) .vn-card-number{font-size:8px;top:8px;right:8px}
:is(.vn-header,.vn-directory) .vn-card-visual>svg{display:none}
:is(.vn-header,.vn-directory) .vn-card-content{display:contents}
:is(.vn-header,.vn-directory) .vn-card-title{grid-column:1;grid-row:1;align-self:start;min-height:0;padding:3px 0 0}
:is(.vn-header,.vn-directory) .vn-card-title h3{font-size:15px}
:is(.vn-header,.vn-directory) .vn-card-title>span{display:none}
:is(.vn-header,.vn-directory) .vn-card-count{grid-column:1;grid-row:1;margin:56px 0 0;align-self:start;font-size:9px}
:is(.vn-header,.vn-directory) .vn-card-links{grid-column:1/-1;margin-top:13px;display:grid;grid-template-columns:1fr 1fr;column-gap:12px}
:is(.vn-header,.vn-directory) .vn-card-links a{min-height:44px;font-size:10px;align-items:center}
:is(.vn-header,.vn-directory) .vn-card-links a svg{display:none}
:is(.vn-header,.vn-directory) .vn-card .vn-more{grid-column:1/-1}
:is(.vn-header,.vn-directory) .vn-card .vn-more .vn-card-links{margin-top:0;border-top:0}
:is(.vn-header,.vn-directory) .vn-card-action{grid-column:1;grid-row:1;align-self:end;margin:0 0 3px;font-size:10px;min-height:30px}
:is(.vn-header,.vn-directory) .vn-more>summary{min-height:44px;font-size:10px}
:is(.vn-header,.vn-directory) .vn-guidebar{margin-top:25px;padding:18px;gap:12px}
:is(.vn-header,.vn-directory) .vn-guidebar h2{font-size:13px}
:is(.vn-header,.vn-directory) .vn-guidebar p{font-size:10px}
:is(.vn-header,.vn-directory) .vn-guidebar>.vn-guide-icon{width:40px;height:40px}
:is(.vn-header,.vn-directory) .vn-guidebar>div:nth-child(2){flex:1;min-width:190px}
:is(.vn-header,.vn-directory) .vn-guidebar>a{font-size:11px;margin:0 52px 0 0}
.vn-directory{padding-bottom:32px}
}
:is(.vn-header,.vn-directory) .vn-search input{font-size:13px}
:is(.vn-header,.vn-directory) .vn-navlinks{font-size:13px}
:is(.vn-header,.vn-directory) .vn-catalog>summary{font-size:14px}
:is(.vn-header,.vn-directory) .vn-intro h1{font-size:34px}
:is(.vn-header,.vn-directory) .vn-intro p:not(.vn-eyebrow){font-size:14px}
:is(.vn-header,.vn-directory) .vn-index-mark strong{color:#6a8296}
:is(.vn-header,.vn-directory) .vn-sublinks a{font-size:13px}
:is(.vn-header,.vn-directory) .vn-card-links a,:is(.vn-header,.vn-directory) .vn-card-action,:is(.vn-header,.vn-directory) .vn-more>summary{font-size:12px}
:is(.vn-header,.vn-directory) .vn-card-count{font-size:11px}
:is(.vn-header,.vn-directory) .vn-card-title h3 a{display:flex;align-items:center;min-height:44px}
@media(max-width:900px){:is(.vn-header,.vn-directory) .vn-navlinks{font-size:12px}
:is(.vn-header,.vn-directory) .vn-catalog>summary{font-size:13px}
:is(.vn-header,.vn-directory) .vn-intro h1{font-size:28px}
:is(.vn-header,.vn-directory) .vn-intro p:not(.vn-eyebrow){font-size:13px}
}
@media(max-width:520px){:is(.vn-header,.vn-directory) .vn-navlinks{font-size:11px;gap:15px}
:is(.vn-header,.vn-directory) .vn-catalog>summary{font-size:12px;min-width:166px}
:is(.vn-header,.vn-directory) .vn-search input{font-size:12px}
:is(.vn-header,.vn-directory) .vn-intro h1{font-size:26px}
:is(.vn-header,.vn-directory) .vn-intro p:not(.vn-eyebrow){font-size:12px}
:is(.vn-header,.vn-directory) .vn-card-links a{font-size:12px}
:is(.vn-header,.vn-directory) .vn-card-action{font-size:11px}
:is(.vn-header,.vn-directory) .vn-card-count{font-size:10px}
:is(.vn-header,.vn-directory) .vn-more>summary{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.vn-header *,.vn-directory *{transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){:is(.vn-header,.vn-directory) .vn-card,:is(.vn-header,.vn-directory) .vn-search,:is(.vn-header,.vn-directory) .vn-panel,:is(.vn-header,.vn-directory) .vn-group,:is(.vn-header,.vn-directory) .vn-rfq{border:1px solid CanvasText}
:is(.vn-header,.vn-directory) .vn-catalog[open]>summary,:is(.vn-header,.vn-directory) .vn-selector button[aria-pressed=true]{outline:2px solid Highlight}
}


/* Integration with the existing layout and GET search. */
.vn-header { position:relative; z-index:110; width:100%; isolation:isolate; }
/* Existing theme gives every nav z-index:9999; raise only an open header panel. */
.vn-header:has(.vn-catalog[open]) { z-index:10001; }

.vn-header .vn-shell { width:100%; max-width:none; }

.vn-header .vn-mainbar { grid-template-columns:235px minmax(0,1fr) 180px; gap:24px; }

.vn-header .vn-search { display:flex; flex-wrap:nowrap; width:100%; max-width:none; margin:0; padding:6px 12px 6px 6px; }

.vn-header .vn-search input[type=search] { height:42px; min-height:42px; padding:6px 2px; border:0; border-radius:0; background:transparent; font:inherit; font-size:13px; }

.vn-header .vn-search button { flex:none; height:42px; min-height:42px; padding:0 18px; line-height:1.5; }

.vn-header .vn-search-clear { min-height:44px; padding:4px 8px; text-decoration:underline; text-underline-offset:3px; font-size:12px; }

.vn-header .vn-search-zone { align-self:center; }

.vn-header .vn-general { flex:1; min-width:0; }

.vn-header .vn-general > summary { display:none; list-style:none; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 10px; color:var(--vn-blue); }

.vn-header .vn-general > summary::-webkit-details-marker { display:none; }

.vn-header .vn-navlinks { flex-wrap:wrap; gap:4px 22px; min-height:52px; }

.vn-header .vn-navlinks a { white-space:normal; line-height:1.8; }

.vn-header .vn-navlinks a[aria-current] { color:var(--vn-blue); font-weight:700; }

.vn-header .vn-group-top > div { min-width:0; }

.vn-header .vn-group-top h2 { overflow-wrap:anywhere; }

.vn-header .vn-group > summary > span, .vn-header .vn-selector button > span { min-width:0; overflow-wrap:anywhere; text-align:start; }

.vn-header .vn-selector button { flex:none; min-height:48px; }

.vn-header .vn-sublinks > li { min-width:0; }

.vn-header .vn-sublinks a { overflow-wrap:anywhere; }

.vn-header .vn-sublinks .vn-sublinks { display:block; margin-inline-start:14px; padding-inline-start:10px; border-inline-start:1px solid var(--vn-line); }

.vn-header .vn-panel-heading { flex:none; }

.vn-header .vn-close { width:44px; min-height:44px; padding:0; }

.vn-directory .vn-card-description { color:var(--vn-muted); font-size:12px; line-height:2; margin:9px 0 12px; overflow-wrap:anywhere; }

.vn-directory .vn-image-fallback { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:10px; min-height:105px; padding:12px; text-align:center; color:var(--vn-muted); font-size:12px; line-height:1.8; }

.vn-directory .vn-image-fallback svg { width:42px; height:42px; }

.vn-directory .vn-card-title h3 { overflow-wrap:anywhere; }

.vn-directory .vn-card-links > li { min-width:0; }

.vn-directory .vn-card-links a { overflow-wrap:anywhere; }

.vn-directory .vn-card-links .vn-card-links { margin-inline-start:12px; padding-inline-start:8px; border-inline-start:1px solid var(--vn-line); border-top:0; }

.vn-directory .vn-crumb { flex-wrap:wrap; height:auto; line-height:1.9; }

.vn-directory .vn-crumb ol { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }

@media (max-width:1100px) {
  .vn-header .vn-mainbar { grid-template-columns:210px minmax(0,1fr) 155px; gap:16px; }

  .vn-header .vn-navlinks { gap:4px 17px; }

}

@media (max-width:900px) {
  .vn-header:has(.vn-general[open]) { z-index:10001; }
  .vn-header .vn-mainbar { grid-template-columns:minmax(0,1fr) auto; gap:8px 10px; }

  .vn-header .vn-brand-copy { white-space:normal; }

  .vn-header .vn-search-zone { grid-column:1/-1; grid-row:2; }

  .vn-header .vn-general { margin-inline-start:auto; flex:0 1 auto; }

  .vn-header .vn-general > summary { display:flex; }

  .vn-header .vn-general > .vn-navlinks { position:absolute; inset-inline:0; top:100%; background:#fff; border:1px solid var(--vn-line); border-radius:0 0 10px 10px; padding:12px 16px; box-shadow:0 14px 24px #18374e20; z-index:3; }
  .vn-header:not(.vn-enhanced) .vn-navrow { flex-wrap:wrap; }
  .vn-header:not(.vn-enhanced) .vn-general { flex-basis:100%; }
  .vn-header:not(.vn-enhanced) .vn-general > .vn-navlinks { position:static; padding:6px 0; border:0; box-shadow:none; }

  .vn-header .vn-navlinks li { min-width:calc(50% - 12px); }

  .vn-header .vn-search input[type=search] { font-size:16px; }

  .vn-header .vn-catalog > summary { min-width:0; width:auto; font-size:13px; }

  .vn-header .vn-panel { max-height:70vh; }

  .vn-header.vn-enhanced .vn-catalog[open] .vn-panel { height:100vh; height:100dvh; }

  .vn-header.vn-enhanced .vn-panel-layout { overflow:auto; overscroll-behavior:contain; }

  .vn-header.vn-enhanced .vn-groups { overflow:visible; }

  .vn-header .vn-panel-heading { padding:10px 12px; gap:8px; }

  .vn-header .vn-panel-heading strong { font-size:12px; }

  .vn-header .vn-panel-heading a { font-size:11px; line-height:1.8; text-align:center; }

}

@media (max-width:520px) {
  .vn-header .vn-mainbar { gap:6px 8px; }

  .vn-header .vn-brand img { width:58px; height:43px; }

  .vn-header .vn-brand-copy strong { font-size:10px; line-height:1.6; }

  .vn-header .vn-brand-copy > span { font-size:8px; line-height:1.5; }

  .vn-header .vn-brand-copy { gap:3px; }

  .vn-header .vn-rfq { font-size:10px; padding:7px; min-height:44px; gap:5px; }

  .vn-header .vn-rfq svg { width:15px; }

  .vn-header .vn-search { padding:4px 8px 4px 4px; gap:5px; }

  .vn-header .vn-search button { padding-inline:12px; font-size:12px; }

  .vn-header .vn-search > svg { width:17px; }

  .vn-header .vn-navrow { gap:12px; }

  .vn-header .vn-catalog > summary { gap:8px; font-size:12px; }

  .vn-directory .vn-card { display:block; padding:14px; }

  .vn-directory .vn-card-visual { float:left; width:98px; height:105px; margin:0 12px 8px 0; }

  .vn-directory .vn-card-visual img { height:90px; width:100%; }

  .vn-directory .vn-card-content { display:block; padding:0; }

  .vn-directory .vn-card-title { display:block; min-height:0; padding:0; }

  .vn-directory .vn-card-title h3 { font-size:16px; line-height:1.9; }

  .vn-directory .vn-card-count { display:block; margin:6px 0 8px; }

  .vn-directory .vn-card-description { clear:both; font-size:12px; }

  .vn-directory .vn-card-links { clear:both; margin-top:10px; display:block; }

  .vn-directory .vn-card-links a { min-height:44px; }

  .vn-directory .vn-card-action { min-height:44px; margin-top:5px; }

}


/* Readable catalog typography: use the existing real IRANSans Regular/Bold faces.
   The old site wrapper and heading rules otherwise inherit weight 300. */
.vn-header,
.vn-directory {
    --vn-ink:#17324D;
    --vn-blue:#124C7D;
    --vn-muted:#42566C;
    font-weight:400;
}
.vn-header .vn-brand-copy { white-space:normal; }
.vn-header .vn-brand-copy strong { color:var(--vn-ink); font-size:15px; font-weight:700; line-height:1.8; }
.vn-header .vn-brand-copy > span { color:var(--vn-muted); font-size:14px; line-height:1.8; }
.vn-header .vn-search input[type=search] { color:var(--vn-ink); font-size:15px; font-weight:400; }
.vn-header .vn-search input::placeholder { color:var(--vn-muted); opacity:1; }
.vn-header .vn-search button { font-size:15px; font-weight:700; min-height:46px; height:46px; }
.vn-header .vn-search-clear { font-size:14px; line-height:1.9; font-weight:400; }
.vn-header .vn-rfq { font-size:14px; line-height:1.8; min-height:48px; }
.vn-header .vn-navlinks { font-size:15px; }
.vn-header .vn-navlinks a { color:var(--vn-ink); font-weight:400; }
.vn-header .vn-navlinks a[aria-current] { color:var(--vn-blue); font-weight:700; }
.vn-header .vn-general > summary { font-size:14px; font-weight:700; }
.vn-header .vn-catalog > summary { font-size:15px; font-weight:700; min-height:52px; }
.vn-header .vn-panel-heading strong { color:var(--vn-ink); font-size:16px; font-weight:700; line-height:1.8; }
.vn-header .vn-panel-heading a { color:var(--vn-blue); font-size:14px; line-height:1.9; }
.vn-header.vn-enhanced .vn-selector { width:286px; }
.vn-header.vn-enhanced .vn-selector button {
    color:var(--vn-ink);
    font-size:15px;
    font-weight:700;
    line-height:1.9;
    min-height:56px;
    padding:11px 12px;
    border-inline-start:3px solid transparent;
}
.vn-header .vn-group > summary { color:var(--vn-ink); font-size:15px; font-weight:700; line-height:1.9; }
.vn-header .vn-group-top h2 { color:var(--vn-ink); font-size:24px; font-weight:700; line-height:1.8; }
.vn-header .vn-group-top a { color:var(--vn-blue); font-size:15px; font-weight:400; line-height:1.9; }
.vn-header .vn-sublinks a { color:var(--vn-blue); font-size:15px; font-weight:400; line-height:2; padding:9px 8px; border-inline-start:3px solid transparent; }
.vn-header .vn-group-note { color:var(--vn-muted); font-size:14px; font-weight:400; line-height:2; }
.vn-header .vn-selector button > svg:last-child,
.vn-header .vn-sublinks a svg { color:var(--vn-blue); }
.vn-header .vn-group .vn-family-icon,
.vn-header.vn-enhanced .vn-selector button .vn-family-icon,
.vn-directory .vn-family-icon {
    width:24px;
    height:24px;
    stroke-width:2;
    color:var(--vn-blue);
    flex:none;
}
.vn-header.vn-enhanced .vn-selector button:is(:hover,:focus-visible,[aria-pressed=true]),
.vn-header .vn-group > summary:is(:hover,:focus-visible),
.vn-header .vn-group[open] > summary {
    color:var(--vn-blue);
    background:#EDF4FA;
    border-inline-start-color:var(--vn-blue);
}
.vn-header .vn-group > summary { border-inline-start:3px solid transparent; }
.vn-header .vn-sublinks a:is(:hover,:focus-visible) { background:#EDF4FA; border-inline-start-color:var(--vn-blue); }
.vn-directory .vn-crumb { color:var(--vn-muted); font-size:14px; font-weight:400; }
.vn-directory .vn-crumb a { color:var(--vn-blue); }
.vn-directory .vn-eyebrow { color:var(--vn-muted); font-size:14px; font-weight:400; line-height:1.9; }
.vn-directory .vn-intro h1 { color:var(--vn-ink); font-weight:700; }
.vn-directory .vn-intro p:not(.vn-eyebrow) { color:var(--vn-muted); font-size:15px; font-weight:400; line-height:2; }
.vn-directory .vn-index-mark strong { color:var(--vn-muted); }
.vn-directory .vn-index-mark span { color:var(--vn-muted); font-size:14px; }
.vn-directory .vn-directory-heading h2 { color:var(--vn-ink); font-size:18px; font-weight:700; line-height:1.9; }
.vn-directory .vn-directory-heading p { color:var(--vn-muted); font-size:14px; line-height:1.9; }
.vn-directory .vn-card-title h3 { color:var(--vn-ink); font-size:18px; font-weight:700; line-height:1.9; }
.vn-directory .vn-card-count,
.vn-directory .vn-card-description { color:var(--vn-muted); font-size:14px; font-weight:400; line-height:2; }
.vn-directory .vn-card-number { color:var(--vn-muted); }
.vn-directory .vn-card-links a { color:var(--vn-blue); font-size:15px; font-weight:400; line-height:2; padding:8px 6px; border-inline-start:3px solid transparent; }
.vn-directory .vn-card-links a:is(:hover,:focus-visible) { background:#EDF4FA; border-inline-start-color:var(--vn-blue); }
.vn-directory .vn-card-links a svg { color:var(--vn-blue); }
.vn-directory .vn-card-action { color:var(--vn-blue); font-size:15px; line-height:1.9; }
.vn-directory .vn-more > summary { color:var(--vn-blue); font-size:14px; font-weight:400; line-height:1.9; }
.vn-directory .vn-guidebar h2 { color:var(--vn-ink); font-size:18px; font-weight:700; line-height:1.9; }
.vn-directory .vn-guidebar p { color:var(--vn-muted); font-size:14px; font-weight:400; line-height:2; }
.vn-directory .vn-guidebar > a { color:var(--vn-blue); font-size:15px; line-height:1.9; }
.vn-directory .vn-image-fallback { color:var(--vn-muted); font-size:14px; }
/* Keep the theme's lighter a:focus:not(.btn) color out of the catalog. */
:is(.vn-header,.vn-directory) a:is(:hover,:focus,:focus-visible,:active) { color:var(--vn-blue); }
/* The legacy a:focus rule uses !important; limit its override to these two components. */
:is(.vn-header,.vn-directory) :is(a,button,input,summary):focus-visible {
    outline:3px solid #124C7D !important;
    outline-offset:3px;
    box-shadow:0 0 0 2px #fff;
}
@media (max-width:900px) {
    .vn-header .vn-brand-copy strong { font-size:14px; }
    .vn-header .vn-brand-copy > span { font-size:14px; }
    .vn-header .vn-search input[type=search] { font-size:16px; }
    .vn-header .vn-search button { font-size:14px; }
    .vn-header .vn-navlinks { font-size:14px; }
    .vn-header .vn-catalog > summary { font-size:14px; }
    .vn-header .vn-panel-heading { flex-wrap:wrap; }
    .vn-header .vn-panel-heading strong { font-size:15px; flex:1; }
    .vn-header .vn-panel-heading a { font-size:14px; }
    .vn-header .vn-group > summary { font-size:14px; min-height:58px; }
    .vn-header .vn-group-top h2 { font-size:22px; }
    .vn-header .vn-group-top a,
    .vn-header .vn-sublinks a { font-size:14px; }
    .vn-directory .vn-intro p:not(.vn-eyebrow),
    .vn-directory .vn-card-links a,
    .vn-directory .vn-card-action { font-size:14px; }
    .vn-directory .vn-card-title h3 { font-size:17px; }
}
@media (max-width:520px) {
    .vn-header .vn-brand-copy { gap:2px; }
    .vn-header .vn-rfq { font-size:14px; padding:8px; gap:6px; }
    .vn-header .vn-rfq svg { width:18px; }
    .vn-header .vn-catalog > summary { gap:7px; }
    .vn-header .vn-panel-heading { gap:8px; }
    .vn-header .vn-panel-heading a { order:3; flex-basis:100%; justify-content:flex-start; min-height:36px; }
    .vn-directory .vn-directory-heading { align-items:flex-start; flex-wrap:wrap; gap:6px 16px; }
    .vn-directory .vn-directory-heading h2,
    .vn-directory .vn-guidebar h2 { font-size:17px; }
    .vn-directory .vn-guidebar > a { font-size:14px; margin-inline-start:0; }
}

/* Keep the brand in one readable row without squeezing the search field. */
.vn-header .vn-brand { flex-wrap:nowrap; gap:11px; width:max-content; justify-self:start; }
.vn-header .vn-brand img { width:78px; height:auto; flex:0 0 78px; }
.vn-header .vn-brand-copy { display:block; white-space:nowrap; }
.vn-header .vn-brand-copy strong { display:block; font-size:15px; font-weight:700; color:var(--vn-ink); white-space:nowrap; }
@media (min-width:901px) and (max-width:1100px) {
    .vn-header .vn-mainbar { grid-template-columns:225px minmax(0,1fr) 155px; }
}
@media (max-width:900px) {
    .vn-header .vn-brand img { width:72px; flex-basis:72px; }
    .vn-header .vn-brand-copy strong { font-size:14px; }
}
@media (max-width:520px) {
    .vn-header .vn-brand { grid-column:1/-1; }
    .vn-header .vn-rfq { grid-column:1/-1; justify-self:end; }
}
/* At native browser zoom the CSS viewport can be narrower than a phone. */
@media (max-width:260px) {
    #horizontal-menu > :is(.container,.container-wide) { padding-inline:6px; }
    .vn-header .vn-brand { gap:10px; }
    .vn-header .vn-brand img { width:clamp(30px,calc(100vw - 150px),72px); flex-basis:auto; }
    .vn-header .vn-search { display:grid; grid-template-columns:17px minmax(0,1fr); }
    .vn-header .vn-search button { grid-column:1/-1; width:100%; }
    .vn-header .vn-navrow { flex-wrap:wrap; gap:0; }
    .vn-header .vn-catalog, .vn-header .vn-general { flex-basis:100%; min-width:0; }
    .vn-header .vn-catalog > summary { height:auto; }
    .vn-header .vn-catalog > summary > span { min-width:0; white-space:normal; }
    .vn-header .vn-navlinks li { width:100%; }
    .vn-header .vn-panel-heading strong { min-width:0; }
    .vn-header .vn-group-top { flex-wrap:wrap; }
    .vn-header .vn-group-top img { max-width:100%; height:auto; }
    .vihan-topbar .vihan-contact-links { flex-wrap:wrap; justify-content:center; gap:0 10px; }
}
