/* milagpt.io — «Бизнесы под ключ»: каталог /dlya/ (.kt) и лента (.kl) на главной и /biznes-pod-klyuch/. Источник: hold/assets-katalog → /assets/katalog/ (tools/build_katalog.py) */
.kt,.kl-sec{--k-ink:#16302d;--k-deep:#134e4a;--k-teal:#0d9488;--k-dark:#0f766e;--k-muted:#4a5f5b;--k-line:#e3eee9;--k-gold:#b8845a;--k-gold-bg:#f9f1e7;--k-sun:#ffd36e;--k-paper:#fbfbf8;--k-ez:cubic-bezier(.2,.8,.2,1);
 --k-studio:radial-gradient(120% 95% at 50% 42%,#ddd8d2 0%,#d5cfc8 55%,#cbc4bc 100%);
 --k-fade:radial-gradient(ellipse 74% 80% at 50% 50%,#000 64%,transparent 100%)}
body:has(.kt){margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;color:#16302d;background:#fbfbf8;line-height:1.55}
.kt *,.kl-sec *{box-sizing:border-box}
.kt-wrap{max-width:1200px;margin:0 auto;padding:0 22px}
.kt .gtx,.kl-sec .gtx{background:linear-gradient(92deg,#0d9488,#b8845a);-webkit-background-clip:text;background-clip:text;color:transparent}
.kt-hero{padding:34px 0 26px;background:radial-gradient(60% 90% at 88% 0%,rgba(153,246,228,.38),transparent 62%),radial-gradient(50% 70% at 4% 100%,rgba(249,241,231,.95),transparent 60%),var(--k-paper)}
.kt-kick,.kl-kick{display:inline-block;background:var(--k-gold-bg);color:#8a5a30;font-weight:800;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
.kt h1{font-size:clamp(30px,5vw,52px);line-height:1.08;letter-spacing:-.02em;color:var(--k-deep);margin:14px 0 12px;font-weight:800;max-width:20ch}
.kt-lead{font-size:clamp(16px,1.9vw,19px);color:var(--k-muted);max-width:44em;margin:0 0 14px}
.kt-g{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:13.5px;font-weight:600;color:var(--k-deep);line-height:1.4}
.kt-g span{flex:none}
.kt-g-hero{display:inline-flex;background:#fff;border:1px solid #99f6e4;border-radius:14px;padding:9px 14px;font-size:15.5px;font-weight:700;margin-bottom:18px}
.kt-hact{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.kt-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border-radius:12px;background:var(--k-teal);color:#fff;font-weight:800;font-size:15px;text-decoration:none;box-shadow:0 8px 20px -10px rgba(13,148,136,.7);transition:transform .2s var(--k-ez),background .2s;text-align:center}
.kt-btn:hover{background:var(--k-dark);transform:translateY(-1px)}
.kt-btn-lg{min-height:52px;padding:13px 22px;font-size:16.5px}
.kt-btn-gold{background:var(--k-sun);color:var(--k-deep);box-shadow:none}.kt-btn-gold:hover{background:#ffc94a}
.kt-ghost{display:inline-flex;align-items:center;min-height:46px;padding:10px 16px;border-radius:12px;color:var(--k-deep);font-weight:700;text-decoration:none;box-shadow:0 0 0 1.5px #99f6e4 inset;background:#fff}
.kt-ghost:hover{background:#f0fdfa}
.kt-jump{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:22px}
.kt-jump span{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--k-dark);margin-right:4px}
.kt-jump a{display:inline-flex;align-items:center;min-height:40px;padding:6px 13px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px var(--k-line) inset;color:var(--k-deep);font-weight:700;font-size:14px;text-decoration:none}
.kt-jump a:hover{box-shadow:0 0 0 1.5px var(--k-teal) inset}
.kt-list{padding:18px 0 40px}
.kt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.kt-card{display:flex;flex-direction:column;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 1px 0 var(--k-line),0 14px 34px -22px rgba(19,78,74,.45);scroll-margin-top:84px;transition:box-shadow .3s}
.kt-card:target{box-shadow:0 0 0 3px var(--k-sun),0 14px 34px -22px rgba(19,78,74,.45)}
.kt-pic{background:var(--k-studio);display:flex;align-items:center;justify-content:center;padding:18px 13% 8px}
.kt-pic img{display:block;width:100%;height:auto;-webkit-mask-image:var(--k-fade);mask-image:var(--k-fade);transition:transform .5s var(--k-ez)}
.kt-card:hover .kt-pic img{transform:scale(1.03) rotate(-1deg)}
.kt-pic-new,.kl-pic-new{background:radial-gradient(110% 90% at 50% 40%,#fff 0%,var(--bg) 70%)}
.kt-tile{width:100%;aspect-ratio:928/1152;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--k-deep);text-align:center;padding:10px}
.kt-tile svg{width:46%;height:auto;max-width:110px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.kt-tile b{font-size:clamp(14px,1.6vw,17px);line-height:1.25;font-weight:800;max-width:12ch}
.kt-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:9px;min-width:0;flex:1}
.kt-kind,.kl-kind{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--k-gold)}
.kt-h{margin:0;font-size:clamp(21px,2.2vw,25px);line-height:1.2;color:var(--k-deep);font-weight:800}
.kt-ben{margin:0;font-size:15.5px;color:var(--k-ink)}
.kt-its{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:14.5px;color:var(--k-muted)}
.kt-its li{position:relative;padding-left:20px}
.kt-its li::before{content:"";position:absolute;left:2px;top:.55em;width:9px;height:5px;border-left:2px solid var(--k-teal);border-bottom:2px solid var(--k-teal);transform:rotate(-45deg)}
.kt-its a{color:inherit;text-decoration:underline;text-decoration-color:#99f6e4;text-underline-offset:3px}
.kt-its a:hover{color:var(--k-dark)}
.kt-roles{margin:0;font-size:14px;color:var(--k-muted)}.kt-roles small{font-size:12.5px;font-weight:800;color:var(--k-dark)}
.kt-bud{background:var(--k-gold-bg);border-radius:14px;padding:10px 14px}
.kt-bud small{display:block;font-size:12.5px;font-weight:800;color:#8a5a30}
.kt-num{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:14px;color:var(--k-muted)}
.kt-num b{font-size:22px;color:var(--k-deep);font-weight:800;letter-spacing:-.01em}
.kt-how{font-size:13px;color:var(--k-dark);font-weight:700}
.kt-bud-ask small{font-size:14px;color:var(--k-deep)}
.kt-act{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:auto;padding-top:6px}
.kt-more{display:inline-flex;align-items:center;min-height:44px;color:var(--k-dark);font-weight:800;text-decoration:none}
.kt-more:hover{text-decoration:underline}
.kt-fin{padding:10px 0 56px}
.kt-finbox{background:var(--k-deep);color:#e8f5f2;border-radius:26px;padding:30px 26px;text-align:center}
.kt-finbox h2{margin:0 0 8px;font-size:clamp(24px,3.2vw,34px);color:#fff}
.kt-finbox p{margin:0 auto 18px;max-width:44em;color:#c7e6df}
.kt-finbox .kt-micro{margin:12px auto 0;font-size:13.5px;color:#9cc9bf}
.kt a:focus-visible,.kt button:focus-visible,.kl-sec a:focus-visible,.kl-sec button:focus-visible,.kl-row:focus-visible,.kt-sticky a:focus-visible{outline:3px solid var(--k-sun);outline-offset:2px;border-radius:10px}
.kt-sticky{position:fixed;left:0;right:0;bottom:var(--msh-tabs-h,0px);z-index:290;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:2px solid #0d9488;box-shadow:0 -8px 24px rgba(19,78,74,.12);transform:translateY(calc(100% + 20px));transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.kt-sticky span{font-size:13px;color:#4a5f5b;line-height:1.35}
.kt-sticky .kt-btn{flex:0 0 auto;min-height:44px;padding:10px 16px;font-size:14.5px}
.kt-sticky.show{transform:none}
@media (max-width:1099px){.kt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:960px){.kt-sticky{display:flex}}
@media (max-width:699px){
 .kt-hero{padding:22px 0 18px}.kt-wrap{padding:0 16px}
 .kt-grid{grid-template-columns:1fr;gap:18px}.kt-card{border-radius:20px}
 .kt-pic{padding:14px 17% 6px}
 .kt-body{padding:16px 16px 18px}
 .kt-hact .kt-btn{width:100%}
 .kt-jump{flex-wrap:nowrap;overflow-x:auto;margin:18px -16px 0;padding:0 16px 6px;scrollbar-width:none;scroll-snap-type:x proximity}
 .kt-jump::-webkit-scrollbar{display:none}
 .kt-jump a{flex:none;scroll-snap-align:start}
 .kt-jump span{flex:none}
 .kt-act .kt-btn{flex:1 1 100%}
}
@media (max-width:420px){.kt-sticky span{display:none}.kt-sticky .kt-btn{flex:1 1 auto}.kt-g-hero{font-size:14.5px}}

/* ── лента ── */
.kl-sec{padding:64px 0 56px;background:radial-gradient(60% 80% at 92% 0%,rgba(249,241,231,.9),transparent 60%),#fff;overflow:hidden}
.kl-wrap{max-width:1200px;margin:0 auto;padding:0 22px}
.kl-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.kl-sec h2{font-size:clamp(28px,4.2vw,44px);line-height:1.12;color:var(--k-deep);margin:12px 0 0;font-weight:800;letter-spacing:-.015em}
.kl-sub{color:var(--k-muted);max-width:60ch;margin:12px 0 0;font-size:clamp(16px,1.9vw,18px)}
.kl-nav{display:flex;gap:8px;flex:none}
.kl-nav button{appearance:none;width:48px;height:48px;border-radius:50%;border:0;background:#fff;box-shadow:0 0 0 1.5px #99f6e4 inset,0 6px 16px -10px rgba(19,78,74,.5);color:var(--k-deep);font:700 26px/1 system-ui,sans-serif;cursor:pointer;transition:background .2s,opacity .2s}
.kl-nav button:hover{background:#f0fdfa}.kl-nav button:disabled{opacity:.35;cursor:default}
.kl-row{list-style:none;margin:24px -22px 0;padding:6px 22px 14px;display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 22px;scrollbar-width:thin;overscroll-behavior-x:contain}
.kl-row>li{flex:0 0 clamp(220px,22vw,262px);scroll-snap-align:start;display:flex}
.kl-card{display:flex;flex-direction:column;gap:4px;width:100%;background:#fff;border-radius:20px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 1px 0 var(--k-line),0 12px 28px -20px rgba(19,78,74,.5);padding-bottom:14px;transition:transform .3s var(--k-ez),box-shadow .3s}
.kl-card:hover{transform:translateY(-3px);box-shadow:0 1px 0 var(--k-line),0 18px 34px -20px rgba(19,78,74,.55)}
.kl-pic{display:block;background:var(--k-studio);padding:12px 14px 4px;margin-bottom:6px}
.kl-pic img{display:block;width:100%;height:auto;-webkit-mask-image:var(--k-fade);mask-image:var(--k-fade);transition:transform .5s var(--k-ez)}
.kl-card:hover .kl-pic img{transform:scale(1.04) rotate(-1deg)}
.kl-pic .kt-tile b{font-size:15px}
.kl-kind,.kl-card b,.kl-bud,.kl-go{padding:0 16px}
.kl-card b{font-size:18px;line-height:1.25;color:var(--k-deep)}
.kl-bud{font-size:14px;color:var(--k-muted)}
.kl-go{margin-top:auto;padding-top:6px;font-weight:800;color:var(--k-dark);font-size:14.5px}
.kl-all{margin:14px 0 0}
.kl-allbtn{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;border-radius:12px;background:var(--k-teal);color:#fff;font-weight:800;text-decoration:none}
.kl-allbtn:hover{background:var(--k-dark)}
@media (max-width:699px){
 .kl-sec{padding:48px 0 40px}.kl-wrap{padding:0 16px}
 .kl-nav{display:none}
 .kl-row{margin:20px -16px 0;padding:6px 16px 12px;scroll-padding:0 16px;gap:12px;scrollbar-width:none}
 .kl-row::-webkit-scrollbar{display:none}
 .kl-row>li{flex-basis:72%}
 .kl-allbtn{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.kt-pic img,.kl-pic img,.kl-card,.kt-btn,.kt-sticky{transition:none}.kt-card:hover .kt-pic img,.kl-card:hover .kl-pic img,.kl-card:hover{transform:none}}
