.directory-hero{padding:56px 0 32px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 85% 20%,#1b2720 0,transparent 48%)}
.directory-hero-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center}
.directory-hero .eyebrow{margin-bottom:22px}
.directory-hero h1{font-size:clamp(44px,4.5vw,68px);line-height:1.06;letter-spacing:-.055em}
.directory-hero .intro{font-size:16px;max-width:485px;line-height:1.7;margin-top:22px;color:var(--muted)}
.directory-hero-facts{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:25px;font-size:12px;color:var(--muted)}
.directory-hero-facts strong{font-family:Manrope,sans-serif;font-size:22px;color:var(--text);margin-right:6px}
.directory-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px}
.directory-hero-foot p{font-size:11px;color:var(--muted);max-width:660px}
.directory-composition{position:relative;isolation:isolate;max-width:470px;width:100%;justify-self:end;padding:23px 24px 20px;border:1px solid #344239;border-radius:16px;background:linear-gradient(130deg,#18211dd9,#10161ce6);overflow:hidden}
.composition-orbit{position:absolute;z-index:-1;width:340px;height:340px;right:-95px;top:-105px;border:1px solid #394a32;border-radius:50%;box-shadow:0 0 0 44px #a3e63505,0 0 0 88px #a3e63504}
.composition-label{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#c0cbbd;margin-bottom:23px}
.composition-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 12px}
.composition-tile{text-align:center;min-width:0}
.composition-logo{width:64px;height:64px;background:#f1f2ed;border:1px solid #fff;border-radius:15px;display:grid;place-items:center;margin:0 auto 8px;box-shadow:0 6px 15px #080e0a33}
.composition-logo img{width:35px;height:35px;object-fit:contain}
.composition-tile>span:last-child{font-size:10px;color:#c6cec8;display:block}
.composition-caption{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);border-top:1px solid #354037;margin-top:23px;padding-top:14px}
.composition-caption>span{width:5px;height:5px;background:var(--lime);border-radius:50%}
.directory-section{padding:36px 0 72px}
.directory-layout{display:grid;grid-template-columns:204px minmax(0,1fr);gap:40px;align-items:start}
.directory-rail{align-self:stretch}
.directory-rail-inner{position:sticky;top:28px}
.rail-label{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin:4px 0 16px}
.category-filters{display:grid;gap:4px}
.category-filters button{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:43px;padding:9px 12px;background:transparent;border:1px solid transparent;border-radius:6px;font:inherit;font-size:13px;color:var(--muted);text-align:left;cursor:pointer}
.category-filters button:hover{background:#151e25;color:var(--text)}
.category-filters button[aria-pressed=true]{background:#a3e63510;border-color:#a3e63540;color:#c0f477}
.category-filters [data-category-count]{font-size:11px;font-variant-numeric:tabular-nums;min-width:23px;text-align:center;background:#ffffff07;border-radius:4px;padding:1px 4px}
.category-filters button[aria-pressed=true] [data-category-count]{background:#a3e63517}
.directory-rail-note{border-top:1px solid var(--line);margin-top:26px;padding:22px 4px 0;font-size:11px;color:var(--muted)}
.rail-note-mark{font-size:22px;color:var(--lime);display:block;margin-bottom:10px}
.directory-rail-note strong{font-weight:500;color:var(--text)}
.directory-rail-note a{display:inline-block;color:var(--muted);text-decoration:underline;text-underline-offset:4px;margin-top:12px;min-height:32px}
.directory-content{min-width:0}
.directory-search label{display:block;color:var(--text);font-size:14px;font-weight:500;margin-bottom:10px}
.search-input-wrap{position:relative}
.search-input-wrap svg{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.directory-search input{width:100%;height:62px;padding:15px 18px 15px 54px;border:1px solid #46515b;border-radius:9px;background:#131b23;color:var(--text);font:inherit;font-size:16px;box-shadow:0 6px 22px #05090d26}
.directory-search input::placeholder{color:#9ba8b6;opacity:1}
.directory-search input:focus{border-color:var(--lime)}
.directory-search>p{font-size:11px;color:var(--muted);margin-top:8px}
.directory-results{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:55px;margin:10px 0 12px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}
.directory-results p{margin:0}
.directory-results button{font:inherit;min-height:44px;white-space:nowrap}
.directory-results button:disabled{opacity:.45;cursor:default}
.directory-results button span{margin-left:8px}
.directory-group{margin-bottom:37px;scroll-margin-top:28px}
.directory-group-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px 0 18px}
.directory-group-heading h2{font-size:23px;line-height:1.35;letter-spacing:-.035em}
.directory-group-heading h2 span{font-family:'DM Sans',sans-serif;display:inline-block;vertical-align:middle;margin-left:8px;font-size:11px;letter-spacing:0;border:1px solid var(--line);border-radius:4px;padding:2px 7px;color:var(--muted)}
.directory-group-heading p{font-size:12px;color:var(--muted);margin-top:5px}
.group-index{font-size:10px;letter-spacing:.08em;color:var(--muted);white-space:nowrap}
.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.directory-page .provider{border-color:#303a45;border-radius:10px;background:linear-gradient(135deg,#151d26,#10171e);transition:border-color .2s}
.directory-page .provider:hover{border-color:#637361}
.directory-page .provider[open]{border-color:#739a45}
.directory-page .provider summary{padding:23px 23px 0;min-height:239px;gap:16px;cursor:pointer}
.directory-page .provider summary:after{content:none}
.directory-page .provider-top{gap:14px;padding-right:0;min-height:52px}
.provider-logo{display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;border:1px solid #fff;border-radius:12px;background:#f1f2ed}
.provider-logo img{width:31px;height:31px;object-fit:contain}
.directory-page .provider h3{font-size:18px;line-height:1.25;font-weight:600;letter-spacing:-.025em;overflow-wrap:anywhere}
.directory-page .provider-category{font-size:9px;letter-spacing:.1em;margin-top:5px;color:#aab5c2}
.directory-page .provider-preview{padding:0;font-size:13px;line-height:1.6;color:#b8c2cd;min-height:42px}
.provider-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}
.provider-tags>span{font-size:10px;line-height:1.5;color:#c4ced8;border:1px solid #34424e;background:#ffffff03;padding:3px 8px;border-radius:4px}
.provider[data-category=AI] .provider-tags>span{color:#c9dbb4;border-color:#3c4b32;background:#a3e63504}
.provider-expand{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #2c3740;padding:12px 0;color:#c4d0bd;font-size:11px;min-height:44px}
.provider-expand>span:last-child{font-size:20px;line-height:1;color:var(--lime);transition:transform .2s}
.provider-hide{display:none}
.provider[open] .provider-show{display:none}
.provider[open] .provider-hide{display:inline}
.provider[open] .provider-expand>span:last-child{transform:rotate(45deg)}
.directory-page .provider-detail{padding:20px 23px 23px;background:#0d141bcc;border-top:1px solid #35432c;font-size:13px;line-height:1.7}
.provider-detail h4{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:#d4dfcb;margin-bottom:6px}
.provider-detail p+h4{margin-top:19px}
.directory-page .provider-detail a{font-size:11px;margin-top:18px}
.directory-empty{padding:48px 28px;text-align:center;border:1px dashed #46515b;border-radius:10px;background:#111820}
.empty-mark{display:block;color:var(--lime);font-size:36px;line-height:1;margin-bottom:20px}
.directory-empty h2{font-size:26px}
.directory-empty p{font-size:14px;margin:12px auto 24px;max-width:330px;color:var(--muted)}
.directory-empty .button{font-size:13px}
.directory-disclaimer{font-size:11px;color:var(--muted);max-width:650px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
.directory-page .workflow-band{padding-block:72px}
.directory-page .workflow-band .section-heading{margin-bottom:40px}
@media(min-width:1101px){.directory-composition{transform:rotate(-2deg)}.composition-tile:nth-child(2),.composition-tile:nth-child(5){transform:translateY(-4px)}}
@media(max-width:1100px){.directory-hero-layout{gap:34px}.directory-layout{grid-template-columns:175px minmax(0,1fr);gap:25px}.directory-page .provider summary{padding:20px 18px 0}.directory-page .provider-detail{padding:20px 18px}.directory-page .provider h3{font-size:16px}.provider-logo{width:46px;height:46px;border-radius:10px}.provider-logo img{width:28px;height:28px}.directory-page .provider-top{gap:11px}.directory-composition{padding:20px 18px}.composition-logo{width:56px;height:56px}}
@media(max-width:860px){.directory-layout{grid-template-columns:1fr;gap:22px}.directory-rail-inner{position:static}.category-filters{display:flex;flex-wrap:wrap;gap:7px}.category-filters button{min-height:42px;border-color:var(--line);font-size:12px;padding:8px 11px;gap:10px}.directory-rail-note{display:none}.rail-label{margin-bottom:12px}.directory-section{padding-top:26px}.directory-hero-layout{grid-template-columns:1.2fr 1fr;gap:25px}.directory-hero h1{font-size:45px}.directory-hero .eyebrow{font-size:9px}.composition-label{font-size:9px}.composition-tile>span:last-child{font-size:9px}.directory-hero-facts{gap:8px 18px;font-size:11px}}
@media(max-width:600px){.directory-hero{padding:36px 0 24px}.directory-hero-layout{grid-template-columns:1fr;gap:26px}.directory-hero h1{font-size:clamp(40px,10.5vw,56px)}.directory-hero .intro{font-size:15px;margin-top:18px}.directory-hero .eyebrow{margin-bottom:19px}.directory-hero-facts{margin-top:19px}.directory-hero-facts strong{font-size:20px}.directory-composition{max-width:none;padding:17px;border-radius:10px}.composition-label{margin-bottom:15px}.composition-logos{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.composition-logo{width:40px;height:40px;border-radius:10px;margin-bottom:0}.composition-logo img{width:24px;height:24px}.composition-tile>span:last-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.composition-caption{margin-top:16px;padding-top:10px;font-size:9px}.directory-hero-foot{align-items:start;gap:12px;margin-top:19px}.directory-hero-foot p{font-size:10px}.directory-hero-foot .motion-toggle{flex-shrink:0;font-size:9px}.directory-layout{gap:23px}.category-filters button{font-size:11px;padding:8px 10px;gap:7px}.category-filters [data-category-count]{font-size:10px;min-width:19px}.directory-search input{font-size:14px;height:58px;padding-left:47px}.search-input-wrap svg{left:16px;width:19px}.directory-results{font-size:11px;gap:10px}.directory-grid{grid-template-columns:1fr;gap:14px}.directory-page .provider summary{min-height:226px;padding:22px 22px 0;gap:14px}.directory-page .provider-top{gap:14px}.directory-page .provider h3{font-size:19px}.provider-logo{width:52px;height:52px}.provider-logo img{width:31px;height:31px}.directory-page .provider-preview{min-height:0;font-size:14px}.directory-page .provider-detail{padding:21px 22px}.directory-group-heading h2{font-size:23px}.directory-group-heading p{font-size:12px}.directory-group-heading{gap:14px}.group-index{display:none}.directory-group{margin-bottom:31px}.directory-page .workflow-band{padding-block:60px}}
@media(prefers-reduced-motion:reduce){.directory-page .provider,.provider-expand>span:last-child{transition:none}}
.motion-paused .directory-page .provider,.motion-paused .provider-expand>span:last-child{transition:none}
.directory-page :is(#provider-woocommerce,#provider-amazon,#provider-ebay) .provider-logo{width:64px;height:56px}
.directory-page :is(#provider-woocommerce,#provider-amazon,#provider-ebay) .provider-logo img{width:52px;height:52px}
.composition-logo:has(img[src$="/woocommerce.svg"]) img{width:48px;height:48px;max-width:90%;max-height:90%}
