/* Guide-directory composition. Shared identity remains in ../identity.css. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0}
.page-guides .directory-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:64px;align-items:center;padding:38px 0 42px}
.directory-intro h1{font-size:clamp(46px,4.6vw,66px);line-height:1.06;letter-spacing:-.03em;max-width:15ch}
.directory-intro .dek{font-size:17px;line-height:1.75;max-width:46ch;margin-top:22px}
.page-guides .guide-finder{padding:0;background:none;margin-top:26px;max-width:none;scroll-margin-top:25px}
.directory-search-field{display:flex;gap:8px;position:relative}.directory-search-icon{position:absolute;top:16px;left:14px;width:20px;height:20px;color:var(--muted);pointer-events:none}
.page-guides #guide-query{min-width:0;flex:1;padding:14px 12px 14px 43px;height:52px;font-size:16px;background:var(--paper);border:1px solid var(--line);border-radius:3px}
.page-guides .directory-search .button{padding:12px 20px;min-height:52px;margin:0;align-self:stretch}
.page-guides #guide-count{font-size:12px;margin:12px 16px 0 0;display:inline-block}
.directory-clear{background:none;color:var(--accent);text-decoration:underline;font-size:13px;min-height:36px;padding:5px 0}
.directory-top50{display:inline-flex;align-items:center;gap:10px;font-size:13px;color:var(--accent);margin-top:16px;min-height:40px;text-decoration:none}.directory-top50 .icon{width:20px;height:20px;flex-shrink:0}
.page-guides .guide-featured{margin:0;min-width:0}.page-guides .guide-featured .gcards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.page-guides .guide-featured .gc{display:block;text-decoration:none;min-width:0}.page-guides .guide-featured .gc:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:22px;background:var(--surface)}
.page-guides .guide-featured .gc>.ph{width:100%;height:116px;object-fit:cover;border-radius:3px}.page-guides .guide-featured .gc:first-child>.ph{height:225px;border-radius:3px 0 0 3px}
.page-guides .guide-featured .gc__b{padding:12px 0 0}.page-guides .guide-featured .gc:first-child .gc__b{padding:20px 20px 20px 0}
.page-guides .guide-featured h3{font:500 25px/1.16 var(--display);margin:0}.page-guides .guide-featured .gc:first-child h3{font-size:30px}.page-guides .guide-featured .u-gm{font-size:11px;color:var(--muted);line-height:1.7;margin-top:9px}
.page-guides .all-guides{padding-top:10px;scroll-margin-top:24px}.directory-categories{display:flex;align-items:center;gap:8px;border-block:1px solid var(--line);padding:16px 0;margin-bottom:32px;flex-wrap:wrap}
.directory-categories button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 18px;background:transparent;color:var(--ink);border-radius:3px;font-size:14px}
.directory-categories button .icon{width:25px;height:25px;color:var(--accent)}.directory-categories button>span{font-size:12px;color:var(--muted)}
.directory-categories button[aria-pressed=true]{background:var(--surface);box-shadow:inset 0 -2px var(--accent)}
.directory-categories button:hover{background:var(--surface)}
.page-guides .all-guides>h2{display:inline-block;font-size:36px;margin:0}.page-guides #directory-count{display:inline-block;margin:0 0 0 18px;font-size:13px;color:var(--muted)}
.page-guides .bgrp{padding-top:32px;scroll-margin-top:24px}.page-guides .bgrp h3{display:flex;align-items:center;gap:12px;font-size:29px;margin:0 0 12px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.bgrp h3>.icon{width:30px;height:30px;color:var(--accent)}.category-count{font:12px var(--body);color:var(--muted);margin-left:4px}.directory-back{margin-left:auto;color:var(--accent);font:12px var(--body);min-height:32px;display:inline-flex;gap:5px;align-items:center;text-decoration:none}
.page-guides .ilist{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}
.page-guides .gidx{padding:18px 0;gap:20px;border-bottom:1px solid var(--line);align-items:center;min-height:151px}
.page-guides .gidx-im{width:132px;height:112px;border-radius:3px;object-fit:cover}.page-guides .gidx-h{font:600 25px/1.2 var(--display);text-wrap:pretty}.page-guides .gidx-m{font-size:12px;line-height:1.7;margin-top:10px}.page-guides .gidx-m i{display:block}
.gidx:hover .gidx-h,.gc:hover h3{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.directory-back:hover,.directory-top50:hover{text-decoration:underline}
.page-guides :is(.gidx,.gc,.directory-top50,.directory-categories button):focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.page-guides .ilist>.wi-managed-slot{grid-column:1/-1;width:100%}.page-guides .wi-managed-slot{overflow:clip}
.page-guides #guide-empty{margin:28px 0;padding:28px;background:var(--surface)}#guide-empty h3{font-size:29px}#guide-empty p{font-size:15px;margin:12px 0 20px}
@media(max-width:1100px){.page-guides .directory-intro{gap:34px;grid-template-columns:1fr 1fr}.directory-intro h1{font-size:53px}.page-guides .guide-featured .gc:first-child{gap:16px}.page-guides .guide-featured .gc:first-child h3{font-size:25px}.page-guides .guide-featured .gc:first-child>.ph{height:220px}.page-guides .guide-featured h3{font-size:22px}.directory-categories button{padding-inline:12px;gap:7px}.page-guides .gidx-im{width:104px;height:105px}.page-guides .gidx-h{font-size:23px}.page-guides .ilist{gap:0 28px}}
@media(max-width:850px){.page-guides .directory-intro{display:block;padding:26px 0 32px}.directory-intro h1{max-width:none;font-size:49px}.directory-intro .dek{max-width:60ch;margin-top:16px}.page-guides .guide-finder{max-width:620px;margin-top:22px}.directory-top50{margin-top:8px}.page-guides .guide-featured{margin-top:24px}.page-guides .guide-featured .gcards{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.page-guides .guide-featured .gc:first-child{display:block;grid-column:auto;background:none}.page-guides .guide-featured .gc:first-child>.ph,.page-guides .guide-featured .gc>.ph{height:125px;border-radius:3px}.page-guides .guide-featured .gc:first-child .gc__b{padding:12px 0 0}.page-guides .guide-featured .gc:first-child h3{font-size:22px}.directory-categories{gap:4px}.directory-categories button{padding:10px}.page-guides .gidx{gap:14px}.page-guides .gidx-im{width:85px;height:95px}.page-guides .gidx-h{font-size:21px}.page-guides .bgrp h3{font-size:27px}}
@media(max-width:600px){.directory-intro h1{font-size:43px;max-width:15ch}.directory-intro .dek{font-size:16px}.page-guides .directory-search .button{padding-inline:15px}.page-guides .guide-featured .gcards{display:block}.page-guides .guide-featured .gc,.page-guides .guide-featured .gc:first-child{display:grid;grid-template-columns:90px minmax(0,1fr);gap:16px;padding:12px 0;border-top:1px solid var(--line)}.page-guides .guide-featured .gc:first-child>.ph,.page-guides .guide-featured .gc>.ph{height:82px}.page-guides .guide-featured .gc__b,.page-guides .guide-featured .gc:first-child .gc__b{padding:0;align-self:center}.page-guides .guide-featured h3,.page-guides .guide-featured .gc:first-child h3{font-size:22px}.page-guides .guide-featured .u-gm{font-size:11px;margin-top:6px}.directory-categories{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:24px;padding:12px 0}.directory-categories button{justify-content:flex-start;min-height:44px;font-size:13px}.directory-categories button:first-child{grid-column:1/-1}.directory-categories button>span{margin-left:auto}.page-guides .all-guides>h2{font-size:30px}.page-guides #directory-count{display:block;margin:8px 0 0}.page-guides .ilist{grid-template-columns:1fr}.page-guides .gidx{min-height:128px;padding:16px 0;gap:16px}.page-guides .gidx-im{width:100px;height:96px}.page-guides .gidx-h{font-size:23px}.page-guides .bgrp h3{flex-wrap:wrap;gap:9px;font-size:27px}.category-count{margin-left:auto}.directory-back{width:100%;margin:0 0 -6px 39px;min-height:28px}.page-guides .bgrp{padding-top:28px}.page-guides .gidx-m{margin-top:7px}}
@media(max-width:360px){.directory-intro h1{font-size:39px}.page-guides .guide-featured h3,.page-guides .guide-featured .gc:first-child h3{font-size:20px}.page-guides .gidx-im{width:82px;height:96px}.page-guides .gidx-h{font-size:21px}.directory-categories button{gap:6px;padding:8px}.directory-categories button .icon{width:22px;height:22px}}

/* V8 production (editorial port): house promotion blocks and feature cards placed between guide links span the
   full list width, like the managed slots. */
.ilist>.promotion-block,.ilist>a.v6-feat{grid-column:1/-1;width:100%}

/* V8 production (William 2026-11-02, keep every feature): stat boxes, section jump links, the flagship Top 50
   card and the curated guide sections from the live page, styled with the November tokens. */
.page-guides .lstats{display:flex;flex-wrap:wrap;gap:12px 32px;margin:18px 0 22px}
.page-guides .lstat b{display:block;font:var(--heading-weight) 30px/1.1 var(--display);color:var(--accent)}
.page-guides .lstat span{font-size:13px;color:var(--muted)}
.page-guides .template-toc{display:flex;flex-wrap:wrap;gap:8px 24px;margin:30px 0 10px;padding:16px 22px;background:var(--surface);font-size:14px}
.page-guides .template-toc a{color:var(--accent);text-decoration:none}
.page-guides .guides-curated{display:block;margin-block:45px}
.page-guides .guides-curated .shead{display:flex;justify-content:space-between;align-items:end;gap:20px}
.page-guides .guides-curated .shead h2{font-size:34px;margin:0 0 6px}
.page-guides .guides-curated .shead p{margin:0;max-width:65ch;font-size:15px}
.page-guides .guides-curated .shead .more{color:var(--accent);font-size:14px;white-space:nowrap}
.page-guides .guides-curated .gcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.page-guides .guides-curated .gc img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:var(--radius)}
.page-guides .guides-curated .gc .tag{font-size:12px;color:var(--accent);margin-top:12px}
.page-guides .guides-curated .gc h3{font:var(--entry-heading-weight) 23px/1.2 var(--display);margin:6px 0 8px}
.page-guides .guides-curated .gc .no1{font-size:14px;line-height:1.6}
.page-guides .guides-curated .gc .u-gm{font-size:12px;color:var(--muted);margin-top:8px}
.page-guides .tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.page-guides .tile{display:block;text-decoration:none;color:var(--ink)}
.page-guides .tile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius)}
.page-guides .tile .lab{display:block;margin-top:8px}
.page-guides .tile .lab b{display:block;font:var(--entry-heading-weight) 20px var(--display)}
.page-guides .tile .lab span{font-size:12px;color:var(--muted)}
.page-guides .deskg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.page-guides .dp{display:flex;gap:14px;align-items:center}
.page-guides .dp img{width:64px;height:76px;object-fit:cover;border-radius:var(--radius)}
.page-guides .dp b{display:block;font:var(--entry-heading-weight) 19px var(--display)}
.page-guides .dp span{font-size:13px;color:var(--muted)}
.page-guides .flagcard{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:30px;align-items:center;background:var(--surface);text-decoration:none;color:var(--ink)}
.page-guides .flagcard img{width:100%;height:280px;object-fit:cover}
.page-guides .flagcard .b{display:block;padding:25px 30px 25px 0}
.page-guides .flagcard .tag{display:block;font-size:13px;color:var(--accent)}
.page-guides .flagcard .t{display:block;font:var(--heading-weight) 32px/1.15 var(--display);margin:10px 0 18px}
.page-guides .flagcard .u-btn{display:inline-flex;min-height:44px;align-items:center;padding:0 18px;background:var(--accent);color:#fff;font-weight:600;font-size:15px;border-radius:3px}
@media(max-width:900px){.page-guides .guides-curated .gcards{grid-template-columns:1fr 1fr}.page-guides .tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.page-guides .deskg{grid-template-columns:1fr 1fr}.page-guides .flagcard{display:block}.page-guides .flagcard .b{padding:22px}}
@media(max-width:560px){.page-guides .guides-curated .gcards{grid-template-columns:1fr}.page-guides .guides-curated .shead{display:block}.page-guides .tiles{grid-template-columns:1fr 1fr}.page-guides .deskg{grid-template-columns:1fr}.page-guides .flagcard img{height:210px}.page-guides .flagcard .t{font-size:26px}}
