:root{
  --fs-v3-ink:#121826;
  --fs-v3-muted:#5a6577;
  --fs-v3-canvas:#f4f6fb;
  --fs-v3-surface:#ffffff;
  --fs-v3-line:#d8deea;
  --fs-v3-indigo:#3446a8;
  --fs-v3-indigo-deep:#202d74;
  --fs-v3-teal:#087f78;
  --fs-v3-warning:#a94512;
  --fs-v3-dark:#101820;
  --fs-v3-radius:12px;
  --fs-v3-shadow:0 18px 48px rgba(22,32,60,.09);
}
html{background:var(--fs-v3-canvas)}
body{background:var(--fs-v3-canvas);color:var(--fs-v3-ink);font-family:var(--fs-font-ui,Inter,Arial,sans-serif)}
::selection{color:#fff;background:var(--fs-v3-indigo)}
a{color:inherit}
.shell{width:min(100% - 48px,1248px)}
.site-header{min-height:72px;background:var(--fs-v3-surface);border-bottom:1px solid var(--fs-v3-line);box-shadow:none}
.site-header__inner{min-height:72px;gap:32px}
.site-brand img{width:206px;height:auto}
.primary-nav{gap:6px;align-items:center}
.primary-nav a{position:relative;padding:10px 11px;border-radius:8px;color:#263145;font-size:.875rem;font-weight:700;text-decoration:none}
.primary-nav a:hover,.primary-nav a:focus-visible{color:var(--fs-v3-indigo);background:#eef1ff}
.primary-nav a[aria-current="page"],.primary-nav a.is-current{color:#fff;background:var(--fs-v3-indigo)}
.menu-toggle{border:1px solid var(--fs-v3-line);background:var(--fs-v3-surface);border-radius:10px}
.button,.wp-element-button{min-height:46px;border-radius:8px;font-weight:800;box-shadow:none}
.button--primary{background:var(--fs-v3-indigo);border-color:var(--fs-v3-indigo)}
.button--primary:hover{background:var(--fs-v3-indigo-deep);border-color:var(--fs-v3-indigo-deep)}
.directory-v3-hero{padding:clamp(64px,8vw,112px) 0;background:#18213a;color:#f8fafc;border-bottom:4px solid var(--fs-v3-teal)}
.directory-v3-hero__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:clamp(48px,8vw,110px);align-items:center}
.directory-v3-hero .eyebrow{color:#8be0d6}.directory-v3-hero h1{max-width:14ch;margin:14px 0 20px;font:850 clamp(2.5rem,5vw,4.7rem)/.99 var(--fs-font-ui,Arial,sans-serif);letter-spacing:-.055em}.directory-v3-hero__lede{max-width:64ch;color:#c8d2e2;font-size:1.05rem;line-height:1.7}.directory-v3-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.directory-v3-hero .button--surface{color:#fff;background:transparent;border-color:#6f7e98}
.directory-v3-scope{padding:24px;border:1px solid #3a4765;border-radius:14px;background:#111a30}.directory-v3-scope .section-index{color:#8be0d6}.directory-v3-scope ul{display:grid;margin:16px 0 0;padding:0;list-style:none}.directory-v3-scope li{display:grid;grid-template-columns:92px 1fr;gap:14px;padding:13px 0;border-top:1px solid #34415e}.directory-v3-scope strong{color:#fff}.directory-v3-scope span{color:#aebbd0;font-size:.87rem}
.directory-v3-content{padding:clamp(64px,8vw,104px) 0;background:var(--fs-v3-canvas)}.directory-v3-heading{display:grid;grid-template-columns:1fr minmax(280px,.7fr);gap:36px;align-items:end;margin-bottom:30px}.directory-v3-heading h2{margin:8px 0 0;font:850 clamp(2.1rem,4vw,3.4rem)/1 var(--fs-font-ui,Arial,sans-serif);letter-spacing:-.045em}.directory-v3-heading>p{margin:0;color:var(--fs-v3-muted);line-height:1.65}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(52,70,168,.28);outline-offset:3px}
.site-footer--compact{background:var(--fs-v3-dark);color:#eaf0f7;border-top:4px solid var(--fs-v3-indigo);padding:0}
.footer-compact__main{display:grid;grid-template-columns:minmax(280px,1.5fr) repeat(2,minmax(170px,.7fr));gap:clamp(32px,6vw,80px);padding:56px 0 42px}
.footer-compact__brand img{display:block;width:190px;height:auto;margin-bottom:20px}
.footer-compact__brand p{max-width:38ch;margin:0 0 8px;color:#c4cfdb;line-height:1.55}
.footer-compact__brand .footer-compact__boundary{color:#8fa0b1;font-size:.875rem}
.footer-product-links{display:grid;align-content:start;gap:0}
.footer-product-links h2{margin:0 0 14px;color:#8fa0b1;font:800 .72rem/1 var(--fs-font-mono,monospace);letter-spacing:.12em;text-transform:uppercase}
.footer-product-links a{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12);color:#eef3f8;font-size:.9rem;text-decoration:none}
.footer-product-links a:hover,.footer-product-links a:focus-visible{color:#8be0d6}
.footer-compact__bottom{display:grid;grid-template-columns:1fr auto auto;gap:24px;align-items:center;padding:18px 0 24px;border-top:1px solid rgba(255,255,255,.14);color:#98a8b8;font-size:.78rem}
.footer-compact__bottom p{margin:0}
.footer-compact__bottom strong{color:#dbe6f0}
.footer-legal-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-legal-links a{width:auto!important;padding:4px 0!important;border-bottom:0!important;color:#c5d0dc;text-decoration:none}
.footer-legal-links a:hover,.footer-legal-links a:focus-visible{color:#fff;text-decoration:underline}
@media (max-width: 900px){
  .primary-nav{gap:2px}.primary-nav a{padding-inline:8px;font-size:.8rem}
  .footer-compact__main{grid-template-columns:1.2fr 1fr 1fr;gap:32px}
}
@media (max-width: 760px){
  .shell{width:min(100% - 32px,1248px)}
  .site-header,.site-header__inner{min-height:64px}
  .site-brand img{width:164px}
  .primary-nav{padding:12px 16px 22px;background:var(--fs-v3-surface);border-bottom:1px solid var(--fs-v3-line)}
  .directory-v3-hero{padding:52px 0}.directory-v3-hero__grid,.directory-v3-heading{grid-template-columns:1fr;gap:30px}.directory-v3-hero h1{max-width:18ch;font-size:clamp(2.35rem,12vw,3.5rem)}.directory-v3-scope{padding:18px}.directory-v3-content{padding:54px 0}.directory-v3-heading{margin-bottom:20px}
  .primary-nav a{min-height:44px;display:flex;align-items:center;padding:10px 12px}
  .footer-compact__main{grid-template-columns:1fr 1fr;padding:40px 0 28px}
  .footer-compact__brand{grid-column:1/-1}
  .footer-compact__bottom{grid-template-columns:1fr;gap:14px;padding:18px 0 24px}
}
@media (max-width: 420px){
  .shell{width:min(100% - 24px,1248px)}
  .footer-compact__main{grid-template-columns:1fr;gap:28px}
  .footer-compact__brand{grid-column:auto}
  .footer-legal-links{gap:14px}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
