.catalog-actions{display:flex;gap:10px;flex-wrap:wrap}.catalog-logo{width:220px;height:105px;display:flex;align-items:center;justify-content:center;background:var(--tone-f7f5fb, #f7f5fb);border:1px solid var(--tone-544b60, #544b60);border-radius:12px;padding:17px;margin-bottom:20px;overflow:hidden}.catalog-logo img{max-width:100%;max-height:100%;object-fit:contain}.catalog-logo.mini{width:64px;height:45px;flex:none;margin:0;padding:7px;border-radius:7px}.logo-editor{margin-top:22px}.logo-source{overflow-wrap:anywhere}.logo-candidates{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.logo-candidates article{border:1px solid var(--border);padding:13px;border-radius:10px;min-width:0}.logo-preview{height:115px;background:linear-gradient(90deg,var(--tone-f7f5fb, #f7f5fb) 50%,var(--tone-26202e, #26202e) 50%);display:flex;align-items:center;justify-content:center;border-radius:8px;padding:14px}.logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.logo-candidates p{font-size:11px;margin:10px 0}.logo-candidates button{font-size:11px;padding:10px}.logo-alternative{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.catalog-search{display:flex;gap:10px;align-items:flex-end}.catalog-search .field{flex:1;margin-bottom:0}.logo-editor details{margin-top:25px}.logo-editor summary{cursor:pointer;color:var(--purple);font-size:13px}.directory-grid .catalog-logo{max-width:100%}@media(max-width:640px){.catalog-actions{gap:8px}.catalog-actions .button{font-size:10px;padding:9px}.catalog-logo{width:180px;height:90px}.logo-candidates{grid-template-columns:1fr}.catalog-search{flex-wrap:wrap}.catalog-search .field{min-width:150px}.catalog-search button{font-size:12px}.two-up>.panel,.two-up>div{min-width:0}}
.catalog-logo.logo-dark{background:var(--tone-24202c, #24202c)}

/* Compact brand/shop directory; logo space stays consistent with or without an image. */
.directory-grid.catalog-directory{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;align-items:stretch}
.catalog-directory>a.panel{display:flex;flex-direction:column;align-items:center;min-width:0;min-height:174px;padding:22px 18px 18px;text-align:center;border-radius:16px;transition:border-color .18s,background-color .18s}
.catalog-directory>a.panel:hover,.catalog-directory>a.panel:focus-visible{background:var(--tone-211b2b, #211b2b);border-color:var(--purple)}
.catalog-directory .catalog-logo{width:184px;max-width:100%;height:69px;flex:none;padding:0;margin:0 auto 18px;border-radius:8px;border:0}
.catalog-directory .catalog-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:69px;object-fit:contain}
.catalog-directory .catalog-logo-empty{background:transparent;color:var(--tone-b99bdb, #b99bdb);border:1px dashed var(--tone-4d405d, #4d405d);font-size:30px;font-weight:700}
.catalog-directory h2{font-size:17px;line-height:1.35;letter-spacing:-.02em;margin:0;overflow-wrap:anywhere}
.catalog-directory p{font-size:11px;line-height:1.55;color:var(--tone-bfb4ca, #bfb4ca);margin:8px 0 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.catalog-directory p:empty{display:none}
@media(max-width:640px){.directory-grid.catalog-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-directory>a.panel{min-height:154px;padding:17px 12px 15px;border-radius:13px}.catalog-directory .catalog-logo{margin-bottom:14px}.catalog-directory h2{font-size:14px}.catalog-directory p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.catalog-directory>a.panel{transition:none}}
.alphabet-filter{display:flex;flex-wrap:wrap;gap:5px;padding:16px 0 20px;margin:0 0 12px;border-bottom:1px solid var(--border)}.alphabet-filter a,.alphabet-filter>span{display:flex;align-items:center;justify-content:center;min-width:34px;min-height:40px;padding:6px 9px;border-radius:9px;font-size:16px;font-weight:600}.alphabet-filter a{color:var(--purple)}.alphabet-filter a:hover,.alphabet-filter a:focus-visible{background:var(--tone-392346, #392346);color:var(--tone-ffffff, #fff)}.alphabet-filter a[aria-current]{background:var(--purple);color:var(--tone-21132b, #21132b)}.alphabet-filter>span{color:var(--tone-807787, #807787);opacity:.6}.local-fields{border:1px solid var(--border);border-radius:12px;padding:20px;margin:20px 0}.local-fields legend{padding:0 8px;color:var(--purple);font-weight:600}.local-fields[hidden],label[hidden]{display:none}.local-address{padding:20px;border:1px solid var(--purple);border-radius:14px;margin:20px 0}.local-address p{margin:8px 0 12px}.local-badge{color:var(--tone-e7b5f1, #e7b5f1)}.badges{flex-wrap:wrap}.desktop-nav{gap:15px;white-space:nowrap}.header-inner .search{min-width:120px}@media(max-width:1100px) and (min-width:901px){.header-inner{gap:15px}.desktop-nav{gap:10px;font-size:11px}.header-inner .logo{font-size:23px}}@media(max-width:640px){.alphabet-filter{gap:3px;padding-top:8px}.alphabet-filter a,.alphabet-filter>span{min-width:35px;min-height:44px;padding:7px;font-size:15px}.local-fields{padding:14px}.local-address{padding:16px}}

/* Grouped directories with native fragment navigation. */
.directory-jumps{background:var(--tone-101014, #101014);position:relative}
.directory-letter{scroll-margin-top:24px;margin:32px 0 46px}
.directory-letter-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--tone-40344d, #40344d)}
.directory-letter-heading h2{font-size:32px;color:var(--tone-cba4ff, #cba4ff);margin:0}
.directory-letter-heading>span{font-size:12px;color:var(--tone-aaa0b5, #aaa0b5)}
.directory-letter-heading>a{margin-left:auto;color:var(--tone-cba4ff, #cba4ff);font-size:12px;min-height:44px;display:flex;align-items:center}
.directory-letter:target .directory-letter-heading{border-color:var(--tone-cba4ff, #cba4ff)}
.catalog-directory h3{font-size:17px;line-height:1.35;letter-spacing:-.02em;margin:0;overflow-wrap:anywhere}
.category-discovery{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;margin:0 0 32px}
.category-tile{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:18px;min-height:138px;padding:18px;border:1px solid var(--tone-47374f, #47374f);border-radius:18px;background:linear-gradient(140deg,var(--tone-2b2037, #2b2037),var(--tone-19161f, #19161f));color:var(--tone-f5effb, #f5effb);font-size:14px;font-weight:700;line-height:1.35;transition:background .15s,border-color .15s}
.category-tile-icon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:var(--tone-be92f51c, #be92f51c);color:var(--tone-d1a6ff, #d1a6ff);font-size:30px}
.category-tone-1{background:linear-gradient(140deg,var(--tone-302032, #302032),var(--tone-19161f, #19161f))}
.category-tone-1 .category-tile-icon{color:var(--tone-f0aad7, #f0aad7);background:var(--tone-f0aad715, #f0aad715)}
.category-tone-2{background:linear-gradient(140deg,var(--tone-202836, #202836),var(--tone-19161f, #19161f))}
.category-tone-2 .category-tile-icon{color:var(--tone-b1c6ff, #b1c6ff);background:var(--tone-b1c6ff15, #b1c6ff15)}
.category-tile-all{background:linear-gradient(140deg,var(--tone-bf94f6, #bf94f6),var(--tone-d7b2fc, #d7b2fc));color:var(--tone-251333, #251333);border-color:var(--tone-bf94f6, #bf94f6)}
.category-tile-all .category-tile-icon{background:var(--tone-ffffff30, #ffffff30);color:var(--tone-251333, #251333)}
.category-tile-arrow{position:absolute;right:16px;top:18px;color:inherit;opacity:.65;font-size:17px}
.category-tile:hover{border-color:var(--tone-d5afff, #d5afff);color:var(--tone-ffffff, #fff);background:var(--tone-392849, #392849)}
.category-tile-all:hover{background:var(--tone-d5b1ff, #d5b1ff);color:var(--tone-251333, #251333)}
@media(max-width:640px){.category-discovery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px}.category-tile{min-height:118px;padding:14px;font-size:13px;gap:12px;border-radius:14px}.category-tile-icon{width:38px;height:38px;border-radius:11px}.category-tile-icon svg{width:24px;height:24px}.catalog-directory h3{font-size:14px}.directory-letter{margin:24px 0 32px}}
@media(prefers-reduced-motion:reduce){.category-tile{transition:none}}

/* Compact category shortcuts with progressive disclosure. */
.category-discovery{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:24px}
.category-discovery .category-tile,.category-more{min-height:48px;padding:9px 12px;border-radius:12px;font-size:12px;line-height:1.3;gap:8px;flex-direction:row;align-items:center;justify-content:flex-start;background:var(--tone-1e1926, #1e1926);box-shadow:none}
.category-discovery .category-tile-icon{width:24px;height:24px;flex:none;border-radius:0;background:transparent;font-size:22px}
.category-discovery .category-tile-icon svg{width:21px;height:21px}
.category-discovery .category-tile-arrow{display:none}
.category-discovery .category-tile>span:not(.category-tile-icon){overflow-wrap:anywhere}
.category-discovery .category-tile-all{background:var(--tone-b68bf6, #b68bf6);color:var(--tone-20112e, #20112e)}
.category-more{display:flex;border:1px dashed var(--tone-846399, #846399);color:var(--tone-dfc1ff, #dfc1ff);font-weight:700;cursor:pointer;font-family:inherit}
.category-more:hover,.category-discovery .category-tile:hover{border-color:var(--tone-c9a2ff, #c9a2ff);background:var(--tone-34263f, #34263f);color:var(--tone-ffffff, #fff)}
.category-discovery [hidden]{display:none!important}
@media(max-width:1050px){.category-discovery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){.category-discovery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:20px}.category-discovery .category-tile,.category-more{min-height:46px;padding:8px 10px;font-size:12px}}

.home-deal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.home-deal-tabs a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 18px;border:1px solid var(--tone-574363, #574363);border-radius:12px;background:var(--tone-201a29, #201a29);color:var(--tone-eee4f5, #eee4f5);font-size:13px;font-weight:700}
.home-deal-tabs a[aria-current]{background:var(--tone-ba8ef7, #ba8ef7);border-color:var(--tone-ba8ef7, #ba8ef7);color:var(--tone-21122e, #21122e)}
.home-deal-tabs a:hover{border-color:var(--tone-d5afff, #d5afff)}
#start-deals{scroll-margin-top:20px}
@media(max-width:640px){.home-deal-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:20px}.home-deal-tabs a{padding:9px 10px;font-size:12px}}
