.use-cases-page{background:var(--bg-alt);min-height:80vh;padding:68px 0 96px;color:var(--heading)}
.directory-wrap{width:calc(100% - 80px);max-width:1280px;margin:auto}
.directory-heading{text-align:center;margin:0 auto 34px;max-width:820px}
.directory-heading h1{font-size:42px;line-height:1.2;letter-spacing:-1.3px;font-weight:700;margin-bottom:16px}
.directory-heading p{font-size:17px;line-height:1.7;color:var(--muted);max-width:650px;margin:auto}
.industry-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}
.industry-tab,.more-industries{border:1px solid var(--border);background:var(--card);color:var(--muted);font:inherit;font-size:14px;padding:11px 16px;border-radius:5px;min-height:44px;cursor:pointer;transition:background .18s,border-color .18s}
.industry-tab:hover{border-color:var(--blue)}
.industry-tab[aria-pressed=true]{border-color:#9470eb;background:#f1edff;color:#6436b7}
[data-theme=dark] .industry-tab[aria-pressed=true]{background:#302347;color:#dbcbff;border-color:#ad86ff}
.directory-toolbar{display:flex;gap:14px;align-items:center;margin:28px 0 24px}
.search-field{display:flex;gap:10px;align-items:center;border:1px solid var(--border);background:var(--card);border-radius:7px;padding:0 14px;flex:1;max-width:400px;color:var(--muted)}
.search-field svg{width:19px;height:19px;flex-shrink:0}
.search-field input{min-width:0;width:100%;border:0;padding:13px 0;background:transparent;font:inherit;font-size:15px;color:var(--heading);outline:none}
.search-field:focus-within{outline:2px solid var(--blue);outline-offset:2px}
.category-select{background:var(--card);border:1px solid var(--border);border-radius:7px;color:var(--body);font:inherit;font-size:14px;min-height:47px;padding:0 34px 0 14px;max-width:290px}
.result-count{margin-left:auto;font-size:14px;color:var(--muted);white-space:nowrap}
.clear-filters{border:0;background:none;color:var(--blue);font:inherit;font-size:14px;text-decoration:underline;cursor:pointer;min-height:44px}
.company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.company-card{background:var(--card);border:1px solid var(--border);border-radius:9px;overflow:hidden;display:flex;flex-direction:column;min-height:390px;padding:25px 22px 0;box-shadow:0 7px 24px rgba(35,45,73,.035);transition:box-shadow .2s,transform .2s,border-color .2s}
.company-card:hover{border-color:#b8c7e0;box-shadow:0 12px 32px rgba(35,45,73,.09);transform:translateY(-3px)}
.company-card[hidden]{display:none}
.brand-area{display:flex;align-items:center;justify-content:center;height:84px;margin-bottom:11px}
.brand-area img{max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain}
.brand-area .brand-square{max-width:110px;max-height:74px}
.brand-text{font-size:26px;font-weight:650;line-height:1.15;letter-spacing:-.5px;text-align:center;color:var(--heading)}
.company-name{text-align:center;font-size:14px;font-weight:500;line-height:1.5;min-height:34px;margin:0 0 14px;display:flex;align-items:center;justify-content:center}
.card-copy{border-top:1px solid var(--border);padding-top:17px;flex:1}
.company-industry{font-size:12px;line-height:1.45;font-weight:700;letter-spacing:.045em;text-transform:uppercase;min-height:30px;margin-bottom:6px;color:var(--heading)}
.company-description{font-size:16px;line-height:1.75;color:var(--body);margin-bottom:22px}
.case-button{font:inherit;display:flex;justify-content:space-between;align-items:center;width:calc(100% + 44px);margin-left:-22px;background:transparent;border:0;border-top:1px solid var(--border);padding:16px 22px;font-size:14px;font-weight:600;color:var(--blue);text-align:left;cursor:pointer;min-height:52px}
.case-button:hover{background:var(--tint)}
.case-button svg{width:16px;height:16px;transition:transform .2s}.case-button:hover svg{transform:translateX(3px)}
.directory-more{text-align:center;margin-top:36px}.load-more{background:var(--card);border:1px solid var(--border);border-radius:6px;color:var(--heading);padding:13px 25px;font:inherit;font-size:15px;cursor:pointer}.load-more:hover{border-color:var(--blue);color:var(--blue)}
.directory-empty{text-align:center;padding:70px 20px;border:1px solid var(--border);border-radius:8px;background:var(--card)}
.directory-empty h2{font-size:25px;margin-bottom:10px}.directory-empty p{font-size:16px;color:var(--muted)}
.case-dialog{border:1px solid var(--border);background:var(--card);color:var(--heading);border-radius:14px;padding:0;max-width:780px;width:calc(100% - 32px);max-height:88vh;margin:auto;box-shadow:0 35px 100px #0d17394d;overscroll-behavior:contain}
.case-dialog::backdrop{background:#111b3680;backdrop-filter:blur(4px)}
.dialog-close{position:sticky;top:16px;margin:16px 16px -45px auto;display:flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;background:var(--card);font-size:25px;line-height:1;color:var(--body);cursor:pointer;z-index:1}
.dialog-content{padding:42px 46px}.dialog-brand{height:64px;display:flex;align-items:center;margin-bottom:22px}.dialog-brand img{max-width:200px;max-height:58px;object-fit:contain}.dialog-content h2{font-size:30px;line-height:1.25;letter-spacing:-.5px;margin-bottom:10px}.dialog-industry{font-size:14px;color:var(--muted);margin-bottom:30px}.case-detail{padding:24px 0;border-top:1px solid var(--border)}.case-detail h3{font-size:20px;line-height:1.4;margin-bottom:7px}.case-category{font-size:12px;font-weight:600;color:var(--blue);margin-bottom:10px}.case-detail p:last-child{font-size:16px;line-height:1.8;color:var(--body)}
.related-pattern{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding-top:25px;margin-top:7px;font-size:15px;color:var(--blue);text-decoration:none}.related-pattern:hover{text-decoration:underline}
.directory-support{margin-top:60px;padding-top:34px;border-top:1px solid var(--border);text-align:center;color:var(--muted);font-size:15px;line-height:1.8}.directory-support a{color:var(--blue);text-decoration:none;font-weight:600;margin-left:6px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nav-link.current{color:var(--blue);font-weight:650}.nav{position:relative}.nav-inner{gap:26px}.nav-links{gap:24px}.nav-right{gap:20px}.nav .star-wrap{display:none}
:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.case-dialog :focus-visible{outline-offset:3px}
[data-theme=dark] .brand-area,[data-theme=dark] .dialog-brand{background:#fff;border-radius:5px;padding:10px}
[data-theme=dark] .brand-text{color:#25324a}
@media(min-width:1500px){.directory-wrap{max-width:1360px}.company-description{font-size:16px}.company-card{padding:28px 25px 0}.case-button{width:calc(100% + 50px);margin-left:-25px;padding-left:25px;padding-right:25px}}
@media(max-width:1150px){.company-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-wrap{width:calc(100% - 48px)}.nav .nav-community{display:none}.nav-inner{gap:18px}.nav-links{gap:18px}.industry-tabs{gap:8px}.industry-tab,.more-industries{padding:10px 12px}}
@media(max-width:850px){.company-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.use-cases-page{padding-top:44px}.directory-toolbar{flex-wrap:wrap}.search-field{max-width:none;flex-basis:50%}.result-count{flex:1}.directory-heading h1{font-size:36px}.company-card{min-height:390px}.nav .nav-links{display:none}.nav .burger{display:flex}}
@media(max-width:540px){.directory-wrap{width:calc(100% - 36px)}.directory-heading{margin-bottom:26px}.directory-heading h1{font-size:32px;letter-spacing:-.7px}.directory-heading p{font-size:16px}.industry-tabs{justify-content:flex-start;flex-wrap:nowrap;overflow:auto;padding-bottom:8px}.industry-tab,.more-industries{flex-shrink:0;font-size:13px}.company-grid{grid-template-columns:1fr}.company-card{min-height:0;padding:24px 25px 0}.company-description{font-size:16px}.company-industry{font-size:12px;min-height:0;margin-bottom:10px}.brand-area{height:75px}.card-copy{padding-top:18px}.case-button{width:calc(100% + 50px);margin-left:-25px;padding:17px 25px;font-size:14px}.directory-toolbar{gap:12px;margin-top:18px}.search-field{flex-basis:100%;max-width:none}.category-select{flex:1;max-width:100%;width:100%;font-size:14px}.result-count{font-size:13px}.dialog-content{padding:36px 24px}.dialog-content h2{font-size:26px}.case-detail h3{font-size:19px}.directory-support{text-align:left}.nav .nav-contribute{display:none}}
@media(prefers-reduced-motion:reduce){.company-card,.case-button svg{transition:none}.company-card:hover{transform:none}}

/* Match the site's Inter typography without a third-party font request. */
@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
[hidden]{display:none!important}
.skip-link{position:fixed;left:16px;top:12px;z-index:1000;background:var(--card);color:var(--blue-strong);padding:12px 18px;transform:translateY(-180%);border:2px solid currentColor;border-radius:4px}
.skip-link:focus{transform:translateY(0)}
.company-name a{color:inherit;text-decoration:none;padding:6px 0}
.company-name a:hover{text-decoration:underline}
.case-button{text-decoration:none;color:var(--blue-strong)}
.company-card{scroll-margin-top:24px}

.directory-support a,.clear-filters,.related-pattern{color:var(--blue-strong)}
.search-field input{font-size:16px}
.company-page{width:calc(100% - 48px);max-width:850px;margin:0 auto}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:14px;color:var(--muted);margin-bottom:36px}
.breadcrumbs a,.company-next>a,.back-link{color:var(--blue-strong);text-decoration:none;display:inline-block;padding:12px 0}
.breadcrumbs a:hover,.company-next>a:hover,.back-link:hover{text-decoration:underline}
.company-hero{margin-bottom:32px}
.company-hero .brand-area{justify-content:flex-start;max-width:250px;height:95px;margin-bottom:24px}
.company-hero .company-industry{min-height:0;margin-bottom:12px}
.company-hero h1{font-size:clamp(2rem,5vw,2.8rem);line-height:1.2;letter-spacing:-.03em;margin-bottom:20px;overflow-wrap:anywhere}
.company-intro{font-size:19px;line-height:1.8;max-width:770px;color:var(--body)}
.company-cases{padding:8px 36px;background:var(--card);border:1px solid var(--border);border-radius:10px}
.company-cases .case-detail{padding:30px 0}
.company-cases .case-detail:first-child{border-top:0}
.case-detail h2{font-size:23px;line-height:1.35;margin-bottom:14px;letter-spacing:-.02em}
.case-category{font-size:13px;color:var(--blue-strong)}
.company-next{margin:25px 0}.company-next .related-pattern{display:flex;margin-bottom:12px}
.no-script{font-size:16px;margin-bottom:24px;color:var(--muted)}
.nav-logo img{height:auto}.nav-right{flex-shrink:0}
.industry-tab,.more-industries,.category-select{max-width:100%}
@media(max-width:540px){
 .industry-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:8px}
 .industry-tab,.more-industries{font-size:14px;padding:10px 8px;white-space:normal;line-height:1.4;min-height:44px;min-width:0}
 .more-industries{grid-column:1/-1;width:100%}
 .category-select{flex-basis:100%;font-size:16px}.result-count{flex-basis:100%;margin-left:0}
 .company-page{width:calc(100% - 36px)}.company-cases{padding:0 22px}.company-intro{font-size:17px}
 .company-cases .case-detail{padding:25px 0}.case-detail h2{font-size:21px}.breadcrumbs{margin-bottom:24px}
 .nav-inner{padding-left:18px;padding-right:18px;gap:10px}.nav-right{gap:12px}
 .nav-logo img{max-width:165px}.directory-toolbar{margin-bottom:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.transitioning *{transition:none!important}}
@media print{.nav,.nav-drawer,.footer,#directory-filters,.directory-support,.modal-bg,.skip-link{display:none!important}.company-grid{display:block}.company-card{break-inside:avoid;margin-bottom:18px}.use-cases-page{background:white;padding:0}.company-description{color:#111}.company-card[hidden]{display:flex!important}}

@media(max-width:540px){.industry-tabs{display:block}.industry-tab{display:none}.more-industries{width:100%;font-size:16px;text-align:left}.directory-heading{margin-bottom:22px}.industry-tabs{margin-bottom:14px}.directory-toolbar{margin-top:14px}}
.nav-logo img{width:188px;height:auto}
.brand-area .brand-wide{max-width:min(100%,210px);max-height:62px}
@media(max-width:540px){.nav-logo img{width:165px}}

/* Company pages keep every use case in the HTML; these links only aid navigation. */
.company-hero h1 span{display:block;font-size:.52em;font-weight:500;letter-spacing:-.01em;color:var(--muted);margin-top:12px;line-height:1.4}
.company-topics{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:24px 0 0}
.company-topics a{display:flex;align-items:center;min-height:44px;border:1px solid var(--border);background:var(--card);color:var(--blue-strong);border-radius:6px;padding:9px 13px;font-size:13px;line-height:1.5;text-decoration:none}
.company-topics a:hover{background:var(--tint);border-color:var(--blue)}
.case-contents{margin:0 0 32px;padding:26px 30px;border:1px solid var(--border);border-radius:10px;background:var(--card)}
.case-contents h2{font-size:18px;letter-spacing:-.02em;margin:0 0 14px;line-height:1.5}
.case-contents ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px;row-gap:6px;list-style:none;padding:0;margin:0;counter-reset:use-cases}
.case-contents li{counter-increment:use-cases;min-width:0;display:flex;gap:10px;align-items:baseline}
.case-contents li::before{content:counter(use-cases,decimal-leading-zero);color:var(--muted);font-size:12px;font-weight:600}
.case-contents a{display:block;padding:8px 0;color:var(--blue-strong);font-size:14px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere;min-height:44px}
.case-contents a:hover{text-decoration:underline}
.case-contents a span{display:block;color:var(--muted);font-size:12px;line-height:1.6;margin-top:3px}
.case-detail{position:relative;scroll-margin-top:24px}
.anchor-alias{position:absolute;top:0;scroll-margin-top:24px}
.case-labels{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-bottom:12px;align-items:baseline}
.case-labels .case-category{margin:0}
.case-labels .case-area{font-size:12px;line-height:1.5;color:var(--muted);margin:0;font-weight:500}
@media(max-width:540px){.case-contents{padding:22px}.case-contents ol{grid-template-columns:1fr}.company-topics a{font-size:12px}.case-labels{display:block}.case-labels .case-area{margin-top:6px}}
