.glv20-directory{width:min(1440px,calc(100% - 80px));margin:auto;padding:40px 0 48px;color:#172544;overflow-wrap:break-word}
.glv20-directory *{box-sizing:border-box}.glv20-directory [hidden]{display:none!important}
.glv20-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:end;border-bottom:1px solid #d4dbeb;padding-bottom:30px}
.glv20-eyebrow{font:600 12px/1.4 var(--font-mono,monospace);letter-spacing:.14em;color:#2457ff;margin:0 0 18px}
.glv20-hero h1{font-size:clamp(38px,4.7vw,68px);letter-spacing:-.055em;line-height:1.06;margin:0;color:#101622;max-width:980px}
.glv20-hero h1 em{font-style:normal;color:#2457ff}.glv20-hero p:not(.glv20-eyebrow){font-size:17px;line-height:1.65;color:#536179;margin:20px 0 0}
.glv20-totals{display:flex;align-items:center;gap:16px;padding-bottom:4px}.glv20-totals strong{font-size:52px;line-height:1;font-weight:650;letter-spacing:-.05em;color:#2457ff}.glv20-totals span{font-size:13px;line-height:1.6;color:#536179}
.glv20-filters{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto;gap:16px;align-items:end;background:#eaf0ff;border:1px solid #d4def6;border-radius:16px;margin:26px 0 0;padding:20px}
.glv20-filters>div{min-width:0}.glv20-filters label{display:block;font-size:13px;font-weight:650;margin-bottom:9px}
.glv20-filters input,.glv20-filters select,.glv20-filters button{font:inherit;font-size:16px;min-height:50px;max-width:100%;border:1px solid #bdcbea;border-radius:10px;padding:12px 14px;background:white;color:#172544}
.glv20-filters input,.glv20-filters select{width:100%}.glv20-filters input::placeholder{color:#66748c;opacity:1}.glv20-filters button{cursor:pointer;display:flex;gap:16px;align-items:center;justify-content:center;transition:background .15s,color .15s}.glv20-filters button:hover{background:#2457ff;color:#fff;border-color:#2457ff}
.glv20-resultline{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;margin:15px 0 12px;font-size:13px;color:#536179}.glv20-resultline p{margin:0}.glv20-resultline a{color:#1748e8;padding:8px 0}
.glv20-group{padding:22px 0 10px;scroll-margin-top:100px}.glv20-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:14px}.glv20-group-heading h2{margin:0;font-size:26px;line-height:1.2;letter-spacing:-.03em;color:#172544}.glv20-group-heading>span{font:12px/1.5 var(--font-mono,monospace);white-space:nowrap;color:#66748c}
.glv20-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;list-style:none;margin:0;padding:0}
.glv20-links li{min-width:0;border-bottom:1px solid #d6dcec;margin:0;padding:0}.glv20-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:62px;padding:14px 4px;color:#283954;font-size:15px;line-height:1.5;text-decoration:none;transition:color .15s,background .15s}.glv20-links a>span:last-child{color:#2457ff;font-size:22px;flex:none}.glv20-links a:hover{background:#edf1ff;color:#1748e8}
.glv20-empty{padding:28px 20px;background:#edf1ff;border-radius:12px;color:#536179;font-size:16px;line-height:1.6}
.glv20-directory :is(a,input,select,button):focus-visible{outline:3px solid #2457ff;outline-offset:3px}.glv20-directory #glv20-results{scroll-margin-top:100px}
@media(min-width:1500px){.glv20-links{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.glv20-directory{width:calc(100% - 48px)}.glv20-hero{grid-template-columns:minmax(0,1fr);gap:24px}.glv20-totals strong{font-size:38px}.glv20-totals span br{display:none}.glv20-links{grid-template-columns:repeat(2,minmax(0,1fr))}.glv20-filters{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.glv20-filters button{grid-column:1/-1;justify-self:start;min-height:44px}}
@media(max-width:600px){.glv20-directory{width:calc(100% - 36px);padding-top:26px}.glv20-hero{padding-bottom:22px}.glv20-hero h1{font-size:38px}.glv20-hero p:not(.glv20-eyebrow){font-size:16px}.glv20-filters{grid-template-columns:minmax(0,1fr);padding:16px;gap:14px;margin-top:22px}.glv20-filters button{width:100%}.glv20-links{grid-template-columns:minmax(0,1fr)}.glv20-group-heading h2{font-size:23px}.glv20-links a{min-height:56px}.glv20-resultline{margin-bottom:0}.glv20-group{padding-top:24px}}
@media(prefers-reduced-motion:reduce){.glv20-directory *{transition:none!important;scroll-behavior:auto!important}}
