/* MERCURY GROUP 1.3.0 — all selectors are scoped; no global Elementor/theme overrides. */
.komgd-directory {
  --komgd-accent: #173bd6;
  --komgd-ink: #15171c;
  --komgd-muted: #6d7583;
  --komgd-line: #e8ebf0;
  box-sizing: border-box;
  display: block;
  width: 100%; max-width: none; min-width: 0;
  margin: 0; padding: 0;
  color: var(--komgd-ink);
  font-family: "Inter Tight", "Inter", Arial, sans-serif;
  font-size: 16px; font-weight: 400; line-height: 1.45;
  text-align: left; font-style: normal;
  container-name: ko-mercury; container-type: inline-size;
  -webkit-font-smoothing: antialiased;
}
.komgd-directory *, .komgd-directory *::before, .komgd-directory *::after { box-sizing: border-box; }
.komgd-directory .komgd-section-head { display:block; margin:0 auto 42px; padding:0 16px; max-width:940px; text-align:center; background:none; border:0; }
.komgd-directory .komgd-section-pill { display:inline-flex; align-items:center; margin:0 0 22px; font-size:14px; line-height:1; white-space:nowrap; }
.komgd-directory .komgd-section-number { display:flex; align-items:center; justify-content:center; min-width:76px; height:40px; padding:0 24px; border-radius:999px; background:var(--komgd-accent); color:#fff; font-weight:600; }
.komgd-directory .komgd-section-label { display:flex; align-items:center; min-height:40px; padding:0 28px; margin-left:-16px; border:1px solid #dedfe5; border-radius:999px; color:#5f6269; background:linear-gradient(100deg,#b9c4ef 0%,#f9f9fb 32%,#f9f9fb 100%); }
.komgd-directory .komgd-section-label:first-child { margin-left:0; }
.komgd-directory .komgd-section-title { margin:0 0 18px; padding:0; border:0; background:none; color:var(--komgd-ink); font-family:inherit; font-size:clamp(30px,4vw,54px); font-weight:600; line-height:1.08; letter-spacing:-.038em; text-transform:none; overflow-wrap:anywhere; }
.komgd-directory .komgd-section-description { display:block; max-width:790px; margin:0 auto; color:var(--komgd-muted); font-family:inherit; font-size:16px; line-height:1.5; font-weight:400; }
.komgd-directory .komgd-shell { width:100%; min-width:0; margin:0; padding:22px; border:1px solid #e2e5eb; border-radius:30px; background:linear-gradient(145deg,#f3f4f6,#f5f6f8); }
.komgd-directory .komgd-company { width:100%; min-width:0; margin:0 0 18px; padding:18px; border:1px solid rgba(255,255,255,.9); border-radius:24px; background:#fff; box-shadow:0 6px 28px rgba(24,36,68,.025); }
.komgd-directory .komgd-company:last-child { margin-bottom:0; }
.komgd-directory .komgd-company-head { display:grid; grid-template-columns:150px minmax(0,1.05fr) minmax(0,1fr); align-items:center; gap:26px; min-height:120px; margin:0 0 14px; padding:4px 12px 10px; border:0; background:none; }
.komgd-directory .komgd-logo-zone { display:flex; align-items:center; justify-content:center; width:150px; height:100px; margin:0; padding:10px 16px 10px 0; border:0; border-right:1px solid var(--komgd-line); overflow:hidden; }
.komgd-directory .komgd-company-logo { display:block; width:100% !important; height:100% !important; min-width:0; max-width:100% !important; max-height:100% !important; margin:0; padding:0; border:0; border-radius:0; object-fit:contain; object-position:50% 50%; transform:scale(var(--komgd-logo-scale,1)); box-shadow:none; background:#fff; }
.komgd-directory .komgd-placeholder-logo { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; color:#44628a; }
.komgd-directory .komgd-placeholder-logo svg { display:block; width:52px; height:52px; fill:none; }
.komgd-directory .komgd-placeholder-logo span { color:#8994a3; font-size:8px; font-weight:600; letter-spacing:.12em; white-space:nowrap; }
.komgd-directory .komgd-company-identity { display:block; min-width:0; margin:0; padding:0; }
.komgd-directory .komgd-company-title { display:block; margin:0 0 7px; padding:0; font-family:inherit; font-size:20px; font-weight:600; line-height:1.22; letter-spacing:-.016em; text-transform:none; color:var(--komgd-ink); overflow-wrap:anywhere; }
.komgd-directory .komgd-company-inn { display:block; margin:0; padding:0; font-size:14px; line-height:1.4; color:var(--komgd-muted); font-variant-numeric:tabular-nums; }
.komgd-directory .komgd-company-description { display:block; min-width:0; margin:0; padding:0 0 0 26px; border:0; border-left:1px solid var(--komgd-line); color:var(--komgd-muted); font-size:15px; line-height:1.45; overflow-wrap:anywhere; white-space:pre-line; }
.komgd-directory .komgd-sites { display:flex; flex-direction:column; gap:7px; margin:0 !important; padding:0 !important; list-style:none !important; }
.komgd-directory .komgd-site-entry { display:block; min-width:0; margin:0 !important; padding:0 !important; list-style:none !important; background:none; border:0; }
.komgd-directory .komgd-site-entry::before, .komgd-directory .komgd-site-entry::marker { content:none !important; }
.komgd-directory .komgd-site { display:grid; grid-template-columns:48px minmax(0,1.3fr) minmax(0,.88fr) 44px; align-items:center; gap:17px; width:100%; min-width:0; min-height:76px; margin:0; padding:10px 12px; border:1px solid var(--komgd-line); border-radius:17px; background:#fff; box-shadow:none; color:var(--komgd-ink); font-family:inherit; font-size:16px; line-height:1.4; text-decoration:none !important; text-transform:none; transition:border-color .22s ease,box-shadow .22s ease,background-color .22s ease; }
.komgd-directory a.komgd-site { cursor:pointer; }
.komgd-directory .komgd-site-icon { display:flex; align-items:center; justify-content:center; flex-shrink:0; width:46px; height:46px; border:1px solid #e9ebee; border-radius:50%; color:#383c42; background:linear-gradient(145deg,#f5f6f8,#eceef1); }
.komgd-directory .komgd-site-icon svg { display:block; width:34px; height:34px; margin:0; padding:0; fill:none; }
.komgd-directory .komgd-site-copy { display:block; min-width:0; }
.komgd-directory .komgd-site-title { display:block; margin:0; font-size:16px; line-height:1.3; font-weight:500; color:var(--komgd-ink); letter-spacing:-.008em; overflow-wrap:anywhere; }
.komgd-directory .komgd-site-description { display:block; margin:4px 0 0; font-size:13px; line-height:1.4; font-weight:400; color:#6f7785; overflow-wrap:anywhere; white-space:pre-line; }
.komgd-directory .komgd-site-domain { display:block; min-width:0; padding:5px 8px 5px 23px; border-left:1px solid var(--komgd-line); color:var(--komgd-accent); font-size:15px; font-weight:500; line-height:1.35; overflow-wrap:anywhere; word-break:normal; }
.komgd-directory .komgd-site-arrow { display:flex; align-items:center; justify-content:center; width:44px; height:44px; margin:0; padding:10px; border:1px solid #b8c5fa; border-radius:50%; background:#fff; color:var(--komgd-accent); transition:background-color .22s ease,color .22s ease,border-color .22s ease; }
.komgd-directory .komgd-site-arrow svg { display:block; width:22px; height:22px; fill:none; }
.komgd-directory .komgd-site-pending .komgd-site-domain, .komgd-directory .komgd-site-pending .komgd-site-arrow { color:#959baa; }
.komgd-directory .komgd-site-pending .komgd-site-arrow { border-color:var(--komgd-line); }
.komgd-directory .komgd-empty { display:flex; align-items:center; gap:10px; margin:0; padding:17px 16px; border:1px dashed #dee4ed; border-radius:15px; font-size:14px; color:#6f7b8d; background:#fafbfd; }
.komgd-directory .komgd-empty-dot { width:7px; height:7px; flex:0 0 7px; border-radius:50%; background:#a3b5d8; }
.komgd-directory .komgd-sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }
.komgd-directory a.komgd-site:focus-visible { outline:3px solid var(--komgd-accent); outline-offset:3px; }
@media (hover:hover) {
  .komgd-directory a.komgd-site:hover { border-color:#bdc9ef; background:#fdfdff; box-shadow:0 5px 18px rgba(25,53,128,.07); }
  .komgd-directory a.komgd-site:hover .komgd-site-arrow { background:var(--komgd-accent); color:#fff; border-color:var(--komgd-accent); }
}
@media (prefers-reduced-motion:reduce) { .komgd-directory .komgd-site, .komgd-directory .komgd-site-arrow { transition:none; } }

@media (max-width:900px) {

.komgd-directory .komgd-shell { padding:16px; border-radius:25px; }
.komgd-directory .komgd-company { padding:16px; border-radius:21px; }
.komgd-directory .komgd-company-head { grid-template-columns:124px minmax(0,1fr); gap:16px 22px; padding:0 4px 8px; }
.komgd-directory .komgd-logo-zone { width:124px; height:92px; }
.komgd-directory .komgd-company-description { grid-column:1/-1; border-left:0; border-top:1px solid var(--komgd-line); padding:13px 0 0; font-size:14px; }
.komgd-directory .komgd-site { grid-template-columns:44px minmax(0,1.1fr) minmax(0,.9fr) 44px; gap:12px; padding:10px; }
.komgd-directory .komgd-site-icon { width:42px; height:42px; }
.komgd-directory .komgd-site-domain { padding-left:14px; font-size:14px; }

}

@container ko-mercury (max-width:900px) {

.komgd-directory .komgd-shell { padding:16px; border-radius:25px; }
.komgd-directory .komgd-company { padding:16px; border-radius:21px; }
.komgd-directory .komgd-company-head { grid-template-columns:124px minmax(0,1fr); gap:16px 22px; padding:0 4px 8px; }
.komgd-directory .komgd-logo-zone { width:124px; height:92px; }
.komgd-directory .komgd-company-description { grid-column:1/-1; border-left:0; border-top:1px solid var(--komgd-line); padding:13px 0 0; font-size:14px; }
.komgd-directory .komgd-site { grid-template-columns:44px minmax(0,1.1fr) minmax(0,.9fr) 44px; gap:12px; padding:10px; }
.komgd-directory .komgd-site-icon { width:42px; height:42px; }
.komgd-directory .komgd-site-domain { padding-left:14px; font-size:14px; }

}

@media (max-width:620px) {

.komgd-directory .komgd-section-head { margin-bottom:26px; padding:0 4px; }
.komgd-directory .komgd-section-title { font-size:32px; line-height:1.1; margin-bottom:14px; }
.komgd-directory .komgd-section-description { font-size:14px; line-height:1.5; }
.komgd-directory .komgd-section-pill { margin-bottom:18px; font-size:13px; }
.komgd-directory .komgd-section-label { padding:0 22px; }
.komgd-directory .komgd-shell { padding:8px; border-radius:23px; }
.komgd-directory .komgd-company { padding:12px; border-radius:19px; margin-bottom:12px; }
.komgd-directory .komgd-company-head { grid-template-columns:88px minmax(0,1fr); gap:14px; min-height:0; padding:2px 0 0; margin-bottom:14px; }
.komgd-directory .komgd-logo-zone { width:88px; height:78px; padding:5px 10px 5px 0; }
.komgd-directory .komgd-placeholder-logo svg { width:44px; height:44px; }
.komgd-directory .komgd-placeholder-logo span { font-size:6px; letter-spacing:.04em; }
.komgd-directory .komgd-company-title { font-size:17px; line-height:1.22; margin-bottom:6px; }
.komgd-directory .komgd-company-inn { font-size:12px; }
.komgd-directory .komgd-company-description { padding-top:12px; font-size:13px; line-height:1.45; }
.komgd-directory .komgd-sites { gap:8px; }
.komgd-directory .komgd-site { grid-template-columns:38px minmax(0,1fr) 42px; grid-template-areas:"icon copy arrow" "domain domain arrow"; gap:8px 9px; min-height:110px; padding:12px 10px; border-radius:15px; }
.komgd-directory .komgd-site-icon { grid-area:icon; width:36px; height:36px; align-self:start; }
.komgd-directory .komgd-site-icon svg { width:28px; height:28px; }
.komgd-directory .komgd-site-copy { grid-area:copy; }
.komgd-directory .komgd-site-title { font-size:15px; line-height:1.3; }
.komgd-directory .komgd-site-description { font-size:12px; line-height:1.4; margin-top:4px; }
.komgd-directory .komgd-site-domain { grid-area:domain; border:0; padding:3px 0 0; font-size:14px; line-height:1.4; }
.komgd-directory .komgd-site-arrow { grid-area:arrow; width:42px; height:42px; padding:10px; }
.komgd-directory .komgd-empty { padding:14px 10px; font-size:13px; }

}

@container ko-mercury (max-width:620px) {

.komgd-directory .komgd-section-head { margin-bottom:26px; padding:0 4px; }
.komgd-directory .komgd-section-title { font-size:32px; line-height:1.1; margin-bottom:14px; }
.komgd-directory .komgd-section-description { font-size:14px; line-height:1.5; }
.komgd-directory .komgd-section-pill { margin-bottom:18px; font-size:13px; }
.komgd-directory .komgd-section-label { padding:0 22px; }
.komgd-directory .komgd-shell { padding:8px; border-radius:23px; }
.komgd-directory .komgd-company { padding:12px; border-radius:19px; margin-bottom:12px; }
.komgd-directory .komgd-company-head { grid-template-columns:88px minmax(0,1fr); gap:14px; min-height:0; padding:2px 0 0; margin-bottom:14px; }
.komgd-directory .komgd-logo-zone { width:88px; height:78px; padding:5px 10px 5px 0; }
.komgd-directory .komgd-placeholder-logo svg { width:44px; height:44px; }
.komgd-directory .komgd-placeholder-logo span { font-size:6px; letter-spacing:.04em; }
.komgd-directory .komgd-company-title { font-size:17px; line-height:1.22; margin-bottom:6px; }
.komgd-directory .komgd-company-inn { font-size:12px; }
.komgd-directory .komgd-company-description { padding-top:12px; font-size:13px; line-height:1.45; }
.komgd-directory .komgd-sites { gap:8px; }
.komgd-directory .komgd-site { grid-template-columns:38px minmax(0,1fr) 42px; grid-template-areas:"icon copy arrow" "domain domain arrow"; gap:8px 9px; min-height:110px; padding:12px 10px; border-radius:15px; }
.komgd-directory .komgd-site-icon { grid-area:icon; width:36px; height:36px; align-self:start; }
.komgd-directory .komgd-site-icon svg { width:28px; height:28px; }
.komgd-directory .komgd-site-copy { grid-area:copy; }
.komgd-directory .komgd-site-title { font-size:15px; line-height:1.3; }
.komgd-directory .komgd-site-description { font-size:12px; line-height:1.4; margin-top:4px; }
.komgd-directory .komgd-site-domain { grid-area:domain; border:0; padding:3px 0 0; font-size:14px; line-height:1.4; }
.komgd-directory .komgd-site-arrow { grid-area:arrow; width:42px; height:42px; padding:10px; }
.komgd-directory .komgd-empty { padding:14px 10px; font-size:13px; }

}
