.esol-section{--esol-ink:#081a2d;--esol-ink2:#10283f;--esol-blue:#1769e0;--esol-teal:#13a4a4;--esol-muted:#607082;--esol-line:#dce5ee;--esol-white:#fff;--esol-max:1220px;position:relative;color:var(--esol-ink);font-family:inherit}.esol-section *{box-sizing:border-box}.esol-inner{width:min(var(--esol-max),calc(100% - 40px));margin:0 auto}.esol-eyebrow,.esol-small-kicker{display:inline-flex;align-items:center;gap:9px;color:#0f7780;font-size:.74rem;font-weight:850;letter-spacing:.105em;text-transform:uppercase}.esol-eyebrow i{width:8px;height:8px;border-radius:50%;background:#19a974;box-shadow:0 0 0 5px rgb(25 169 116 / .11)}.esol-related{margin:68px 0 0;padding:58px 0 10px;border-top:1px solid #e8eef4}.esol-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px}.esol-heading-row h2{margin:7px 0 0;color:var(--esol-ink);font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.08;letter-spacing:-.04em}.esol-heading-row p{max-width:720px;margin:10px 0 0;color:var(--esol-muted);line-height:1.65}.esol-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.esol-card{position:relative;display:flex;min-height:174px;flex-direction:column;padding:21px;border:1px solid #dbe5ee;border-radius:18px;background:#fff;color:var(--esol-ink)!important;text-decoration:none!important;box-shadow:0 10px 30px rgb(16 40 63 / .055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.esol-card:hover{transform:translateY(-3px);border-color:#b8cce0;box-shadow:0 18px 38px rgb(16 40 63 / .09)}.esol-card-type{color:#16878c;font-size:.7rem;font-weight:850;letter-spacing:.085em;text-transform:uppercase}.esol-card-title{margin-top:15px;color:#122a40;font-size:1.02rem;font-weight:800;line-height:1.42}.esol-card-open{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:20px;color:#1769e0;font-size:.82rem;font-weight:820}.esol-card-open span{display:grid;width:29px;height:29px;place-items:center;border-radius:50%;background:#f0f5fa;color:#46627e}.esol-card:hover .esol-card-open span{background:#1769e0;color:#fff}.esol-premium-directory{width:100vw;max-width:none;margin-inline:calc(50% - 50vw);padding:92px 0 86px;overflow:hidden;border-top:1px solid #dfe9f2;background:linear-gradient(180deg,#f7fbff 0%,#ffffff 38%,#f6fafc 100%)}.esol-directory-glow{position:absolute;border-radius:50%;pointer-events:none;filter:blur(2px)}.esol-directory-glow-one{right:-220px;top:-250px;width:620px;height:620px;background:radial-gradient(circle,rgb(23 105 224 / .12),#fff0 68%)}.esol-directory-glow-two{left:-260px;bottom:-330px;width:680px;height:680px;background:radial-gradient(circle,rgb(19 164 164 / .09),#fff0 68%)}.esol-directory-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.55fr);gap:64px;align-items:end;padding-bottom:56px}.esol-directory-copy h2{max-width:850px;margin:15px 0 18px;color:var(--esol-ink);font-size:clamp(2.65rem,5vw,5.2rem);line-height:.98;letter-spacing:-.06em}.esol-directory-copy h2 span{color:#718396}.esol-directory-copy>p{max-width:760px;margin:0;color:#53677a;font-size:1rem;line-height:1.76}.esol-directory-search{position:relative;display:flex;align-items:center;max-width:760px;height:58px;margin-top:28px;border:1px solid #cbd9e7;border-radius:15px;background:#fff;box-shadow:0 15px 42px rgb(16 40 63 / .08)}.esol-directory-search:focus-within{border-color:#8db7e9;box-shadow:0 15px 42px rgb(16 40 63 / .09),0 0 0 4px rgb(23 105 224 / .08)}.esol-directory-search svg{width:20px;height:20px;margin-left:17px;fill:none;stroke:#6a7b8d;stroke-width:1.8;flex:none}.esol-directory-search input{flex:1;min-width:0;height:100%;border:0!important;outline:0!important;background:transparent!important;padding:0 12px!important;color:var(--esol-ink)!important;font:inherit!important;box-shadow:none!important}.esol-directory-search input::placeholder{color:#8b99a7}.esol-search-count{flex:none;margin-right:12px;padding:5px 8px;border-radius:8px;background:#f2f6fa;color:#637587;font-size:.72rem;font-weight:800}.esol-filter-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.esol-filter-pills button{min-height:34px;padding:0 11px;border:1px solid #d6e1ea;border-radius:999px;background:#fff;color:#526a80;font:800 .75rem/1 inherit;cursor:pointer}.esol-filter-pills button:hover{border-color:#aac3dc;color:#0c5db5}.esol-filter-pills button.is-active{border-color:#1769e0;background:#1769e0;color:#fff}.esol-directory-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:13px;border:1px solid rgb(197 214 230 / .95);border-radius:22px;background:rgb(255 255 255 / .9);box-shadow:0 26px 65px rgb(10 36 60 / .105)}.esol-stat{min-height:118px;padding:16px;border:1px solid #e0e7ee;border-radius:14px;background:#fbfdff}.esol-stat-primary{grid-column:1/-1;min-height:130px;background:linear-gradient(140deg,#0b2137,#113d5f);border-color:#fff0}.esol-stat span{display:block;color:#738596;font-size:.72rem;font-weight:780}.esol-stat strong{display:block;margin-top:8px;color:#10283f;font-size:2.2rem;line-height:1;font-variant-numeric:tabular-nums}.esol-stat small{display:block;margin-top:6px;color:#8a9aa8;font-size:.7rem}.esol-stat-primary span{color:#a8bfd2}.esol-stat-primary strong{color:#fff;font-size:3rem}.esol-stat-primary small{color:#b9cbda}.esol-recent-block,.esol-library-group{position:relative;margin-top:22px;padding:30px;border:1px solid #dce6ef;border-radius:24px;background:rgb(255 255 255 / .92);box-shadow:0 16px 42px rgb(16 40 63 / .05)}.esol-subhead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px;padding-bottom:17px;border-bottom:1px solid #e7edf3}.esol-subhead h3{margin:6px 0 0;color:#10283f;font-size:1.45rem;letter-spacing:-.025em}.esol-subhead>span{color:#8291a0;font-size:.75rem;font-weight:750}.esol-recent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.esol-recent-card{display:flex;min-height:180px;flex-direction:column;padding:18px;border:1px solid #dfe7ef;border-radius:15px;background:linear-gradient(180deg,#fff,#fbfdff);color:inherit!important;text-decoration:none!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.esol-recent-card:hover{transform:translateY(-2px);border-color:#b8cde1;box-shadow:0 13px 30px rgb(16 40 63 / .08)}.esol-recent-type{color:#16878c;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.esol-recent-card strong{margin-top:13px;color:#163049;font-size:.95rem;line-height:1.42}.esol-recent-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:18px}.esol-recent-bottom small{color:#8998a6;font-size:.7rem}.esol-recent-bottom b{color:#1769e0;font-size:1rem}.esol-analysis-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.esol-directory-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:12px 14px;border:1px solid #e0e8f0;border-radius:12px;background:#fff;color:#29465f!important;text-decoration:none!important;font-size:.86rem;font-weight:720;line-height:1.4;transition:border-color .16s ease,background .16s ease,transform .16s ease}.esol-directory-link:hover{transform:translateY(-1px);border-color:#b8cde1;background:#f8fbff;color:#0d5fbf!important}.esol-directory-link b{flex:none;display:grid;width:27px;height:27px;place-items:center;border-radius:50%;background:#f1f5f9;color:#5d7690}.esol-directory-link:hover b{background:#1769e0;color:#fff}.esol-country-head{margin-bottom:15px}.esol-alpha-nav{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 24px}.esol-alpha-nav a{display:grid;min-width:30px;height:30px;place-items:center;padding:0 8px;border:1px solid #dce5ee;border-radius:8px;background:#f8fafc;color:#50697f!important;text-decoration:none!important;font-size:.73rem;font-weight:850}.esol-alpha-nav a:hover{border-color:#98b9d9;background:#eef6ff;color:#0c5db5!important}.esol-alpha-groups{display:grid;gap:20px}.esol-alpha-group{display:grid;grid-template-columns:58px 1fr;gap:16px;scroll-margin-top:100px}.esol-alpha-letter{display:grid;width:48px;height:48px;place-items:center;border-radius:13px;background:linear-gradient(145deg,#0b2137,#123d5e);color:#fff;font-size:1.15rem;font-weight:900;box-shadow:0 9px 22px rgb(8 32 55 / .12)}.esol-country-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.esol-empty{margin-top:22px;padding:28px;border:1px dashed #c8d7e5;border-radius:18px;background:rgb(255 255 255 / .75);text-align:center}.esol-empty strong,.esol-empty span{display:block}.esol-empty strong{color:#20384f}.esol-empty span{margin-top:5px;color:#758798;font-size:.85rem}.esol-auto-note{display:flex;align-items:flex-start;gap:11px;margin-top:18px;padding:15px 17px;border:1px solid #dce7ee;border-radius:13px;background:rgb(255 255 255 / .72)}.esol-auto-dot{flex:none;width:8px;height:8px;margin-top:6px;border-radius:50%;background:#19a974;box-shadow:0 0 0 5px rgb(25 169 116 / .1)}.esol-auto-note p{margin:0;color:#66798a;font-size:.78rem;line-height:1.55}.esol-auto-note strong{color:#2d485f}.esol-recent-card[hidden],.esol-directory-link[hidden],.esol-library-group[hidden],.esol-alpha-group[hidden],.esol-recent-block[hidden]{display:none!important}@media(max-width:1050px){.esol-directory-hero{grid-template-columns:1fr;gap:35px}.esol-directory-stats{max-width:720px}.esol-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.esol-analysis-links,.esol-country-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.esol-inner{width:min(100% - 28px,var(--esol-max))}.esol-premium-directory{padding:68px 0 62px}.esol-directory-copy h2{font-size:clamp(2.55rem,12vw,4rem)}.esol-card-grid,.esol-analysis-links,.esol-country-links{grid-template-columns:1fr}.esol-recent-block,.esol-library-group{padding:22px 18px;border-radius:19px}.esol-subhead{align-items:flex-start;flex-direction:column;gap:7px}.esol-alpha-group{grid-template-columns:44px 1fr;gap:10px}.esol-alpha-letter{width:38px;height:38px;border-radius:10px;font-size:.95rem}}@media(max-width:520px){.esol-inner{width:min(100% - 20px,var(--esol-max))}.esol-premium-directory{padding-top:54px}.esol-directory-copy h2{font-size:2.7rem}.esol-directory-search{height:55px}.esol-search-count{display:none}.esol-directory-stats{grid-template-columns:1fr}.esol-stat-primary{grid-column:auto}.esol-recent-grid{grid-template-columns:1fr}.esol-recent-card{min-height:145px}.esol-related{padding-top:46px}.esol-card-grid{grid-template-columns:1fr}.esol-card{min-height:140px}}@media(prefers-reduced-motion:reduce){.esol-section *{scroll-behavior:auto!important;transition:none!important}}