/* Illustrated covers appear only in the existing empty-image branches. */
.kx-cover{--kx-cover-bg:#e7eee9;--kx-cover-ink:#194e42;--kx-cover-accent:#b58b45;position:relative;isolation:isolate;display:flex;align-items:center;width:100%;height:100%;min-height:150px;overflow:hidden;background:linear-gradient(125deg,#fffdf7 -35%,var(--kx-cover-bg) 85%);color:var(--kx-cover-ink);text-align:start;box-sizing:border-box}
.kx-cover::before{content:"";position:absolute;z-index:-1;width:220px;height:220px;border:1px solid currentColor;border-radius:50%;opacity:.12;inset-inline-end:-85px;top:-110px;box-shadow:0 0 0 19px #ffffff30,0 0 0 42px #ffffff40}
.kx-cover::after{content:"";position:absolute;z-index:-1;width:120px;height:120px;inset-inline-start:-75px;bottom:-78px;transform:rotate(35deg);background:var(--kx-cover-accent);opacity:.16;border-radius:18px}
.kx-cover-copy{display:flex;flex-direction:column;gap:8px;position:relative;z-index:1;width:65%;min-width:0;padding:20px 16px 28px;box-sizing:border-box}
.kx-cover-category{display:block;font-weight:500;font-size:10px;line-height:1.6;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kx-cover-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:clamp(15px,1.4vw,19px);line-height:1.65;font-weight:800;overflow-wrap:anywhere;max-height:5em}
.kx-cover-city{font-size:10px;line-height:1.5;opacity:.8}
.kx-cover-city::before{content:"◆";font-size:7px;margin-inline-end:5px;color:var(--kx-cover-accent)}
.kx-cover-art{position:absolute;inset-inline-end:-9px;bottom:10px;width:43%;max-width:170px;aspect-ratio:200/190;opacity:.9;transform:rotate(-5deg);pointer-events:none}
.kx-cover-art svg{display:block;width:100%;height:100%;filter:drop-shadow(0 6px 4px #00000008)}
.kx-cover-art .kx-art-fill{fill:#ffffff94}
.kx-cover-art .kx-art-accent{stroke:var(--kx-cover-accent)}
.kx-cover-note{position:absolute;inset-inline-end:10px;bottom:7px;font-size:8px;line-height:1.5;letter-spacing:0;background:#ffffffb8;color:var(--kx-cover-ink);border-radius:99px;padding:2px 6px}
.kx-cover--coffee{--kx-cover-bg:#dfeaf0;--kx-cover-ink:#1b5265;--kx-cover-accent:#b68e4c}
.kx-cover--food{--kx-cover-bg:#f2dfd2;--kx-cover-ink:#803f2b;--kx-cover-accent:#b97734}
.kx-cover--sweets{--kx-cover-bg:#f0e0e6;--kx-cover-ink:#7c4059;--kx-cover-accent:#b48a48}
.kx-cover--home{--kx-cover-bg:#eee1d3;--kx-cover-ink:#76503a;--kx-cover-accent:#b48143}
.kx-cover--fashion,.kx-cover--beauty{--kx-cover-bg:#eae2ee;--kx-cover-ink:#684b78;--kx-cover-accent:#af8c60}
.kx-cover--perfumes,.kx-cover--jewelry{--kx-cover-bg:#eee5cd;--kx-cover-ink:#695027;--kx-cover-accent:#b28134}
.kx-cover--flowers{--kx-cover-bg:#e5ecdc;--kx-cover-ink:#4e6744;--kx-cover-accent:#ba7f80}
.kx-cover--health,.kx-cover--optics{--kx-cover-bg:#dbede9;--kx-cover-ink:#2b625d;--kx-cover-accent:#b58f54}
.kx-cover--leisure,.kx-cover--sports{--kx-cover-bg:#dfead9;--kx-cover-ink:#3a6145;--kx-cover-accent:#c19b48}
.kx-cover--hotels{--kx-cover-bg:#e0e5ee;--kx-cover-ink:#435874;--kx-cover-accent:#bb975e}
.kx-cover--cars,.kx-cover--crafts{--kx-cover-bg:#e3e7e9;--kx-cover-ink:#405a64;--kx-cover-accent:#b8834d}
.kx-cover--technology,.kx-cover--camera{--kx-cover-bg:#dfe9f1;--kx-cover-ink:#355b80;--kx-cover-accent:#b69256}
.kx-cover--books,.kx-cover--services{--kx-cover-bg:#e5e8da;--kx-cover-ink:#526143;--kx-cover-accent:#af8543}
.kx-cover--cleaning{--kx-cover-bg:#dcecee;--kx-cover-ink:#316b73;--kx-cover-accent:#b29555}
.kx-cover--detail{min-height:270px}.kx-cover--detail .kx-cover-copy{padding:32px 28px;width:64%}.kx-cover--detail .kx-cover-category{font-size:13px}.kx-cover--detail .kx-cover-title{font-size:clamp(21px,4vw,32px)}.kx-cover--detail .kx-cover-city{font-size:13px}.kx-cover--detail .kx-cover-art{max-width:290px;bottom:24px;inset-inline-end:12px}.kx-cover--detail .kx-cover-note{font-size:10px;bottom:12px;inset-inline-end:16px}
@media(max-width:540px){.kx-section:not(.kx-catalog) .kx-cover-copy{padding:12px 10px 24px;gap:5px;width:71%}.kx-section:not(.kx-catalog) .kx-cover-title{font-size:14px;line-height:1.7}.kx-section:not(.kx-catalog) .kx-cover-category{font-size:9px}.kx-section:not(.kx-catalog) .kx-cover-art{width:38%;opacity:.7;inset-inline-end:-8px;bottom:17px}.kx-section:not(.kx-catalog) .kx-cover-note{font-size:7px;inset-inline-end:6px}.kx-cover--detail{min-height:230px}.kx-cover--detail .kx-cover-copy{padding:25px 18px;width:68%}}
