/* Страницы /katalog/. Шрифты - те же начертания Google Fonts, что на главной (index.html, блок @font-face).
   Цвета и шкала - из STYLEGUIDE.md и :root главной. */
@font-face{/* Manrope cyrillic */font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggOxSvfedN62Zw.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{/* Manrope latin */font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggexSvfedN4.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{/* Manrope cyrillic */font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggOxSvfedN62Zw.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{/* Manrope latin */font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggexSvfedN4.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{/* Unbounded cyrillic (переменный, 200-900) */font-family:'Unbounded';font-style:normal;font-weight:200 900;font-display:swap;src:url(https://fonts.gstatic.com/s/unbounded/v12/Yq6W-LOTXCb04q32xlpwv8ZfvRIkSYZH.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{/* Unbounded latin-ext (знак тенге ₸) */font-family:'Unbounded';font-style:normal;font-weight:200 900;font-display:swap;src:url(https://fonts.gstatic.com/s/unbounded/v12/Yq6W-LOTXCb04q32xlpwtcZfvRIkSYZH.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{/* Unbounded latin */font-family:'Unbounded';font-style:normal;font-weight:200 900;font-display:swap;src:url(https://fonts.gstatic.com/s/unbounded/v12/Yq6W-LOTXCb04q32xlpwu8ZfvRIkSQ.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{/* IBM Plex Mono cyrillic */font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1isq131nj-otFQ.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{/* IBM Plex Mono latin-ext */font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1iEq131nj-otFQ.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{/* IBM Plex Mono latin */font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1i8q131nj-o.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{/* IBM Plex Mono cyrillic */font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJwlRFgsAXHNlYzg.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{/* IBM Plex Mono latin */font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJwlBFgsAXHNk.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{
  --paper:#EBEEF0; --panel:#FFFFFF; --line:#DDE1E5; --ink:#111315; --ink-soft:#5B6067; --mute:#656B71;
  --brand:#326450; --brand-lift:#57AA82; --brand-deep:#254A3B; --stage:#0A0C0B;
  --r-s:6px; --r-m:8px; --r-l:12px;
  --ls-ui:.1em; --ls-key:.14em;
  --pad:clamp(16px,3.4vw,48px);
  --t-h1:clamp(1.6rem,3.6vw,2.9rem); --t-h2:clamp(1.2rem,2vw,1.6rem);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html,body{overflow-x:clip}
body{background:var(--paper);color:var(--ink);font:400 15px/1.6 Manrope,system-ui,-apple-system,"Segoe UI",sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:4px}
p,li,dd{text-wrap:pretty}
h1,h2{font-family:Unbounded,Manrope,sans-serif;text-wrap:balance;letter-spacing:-.01em}
h1{font-weight:800;font-size:var(--t-h1);line-height:1.08;margin:.35em 0 .5em}
h2{font-weight:700;font-size:var(--t-h2);line-height:1.2;margin-bottom:.8em}
.k-h2-gap{margin-top:1.6em}
.num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}

/* шапка: тёмный остров, как на главной */
.k-nav{background:var(--stage);color:#fff;display:flex;align-items:center;gap:16px 28px;flex-wrap:wrap;padding:14px var(--pad)}
.k-logo img{width:150px;height:auto}
.k-links{list-style:none;display:flex;flex-wrap:wrap;gap:4px 18px}
.k-links a{font:500 11px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:var(--ls-ui);text-transform:uppercase;text-decoration:none;color:#D7DCDF;display:inline-block;padding:14px 0}
.k-links a:hover{color:#fff}
.k-act{margin-left:auto;display:flex;align-items:center;gap:14px}
.k-tel{color:#fff;text-decoration:none;font-weight:700;white-space:nowrap;padding:12px 0}
.k-cta{background:var(--brand);color:#fff;text-decoration:none;font-weight:700;border-radius:var(--r-m);padding:12px 18px;min-height:44px;display:inline-flex;align-items:center}
.k-cta:hover{background:var(--brand-deep)}

main{max-width:1180px;margin:0 auto;padding:22px var(--pad) 64px}
.k-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;font:400 11px/1.4 "IBM Plex Mono",monospace;letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--mute)}
.k-crumbs li+li::before{content:"/";margin-right:6px;color:var(--line)}
.k-crumbs a{text-decoration:none}
.k-crumbs a:hover{color:var(--brand)}
.k-kick{display:inline-block;margin-top:22px;font:400 11px/1.4 "IBM Plex Mono",monospace;letter-spacing:var(--ls-key);text-transform:uppercase;color:var(--brand)}
.k-lead{font-size:clamp(15px,1.25vw,17px);max-width:68ch;color:#26292C}

/* модель: текст и фото */
.k-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,4vw,56px);align-items:start}
.k-hero-media{display:flex;flex-direction:column;gap:12px;margin-top:22px}
/* снимок исполнения как в карточке каталога главной (catalog-draft.css .fc-picture/.fc-photo-window) */
.k-shots{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.k-shots--one{grid-template-columns:minmax(0,320px);justify-content:center}
.k-shot{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden}
.k-shot-stage{display:flex;align-items:center;justify-content:center;padding:8px;background:#020b07 url(catalog/studio-background.jpg) center/cover no-repeat}
.k-shot-win{position:relative;width:100%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.k-shot-win img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.k-shot figcaption,.k-gallery figcaption{font:400 10px/1.4 "IBM Plex Mono",monospace;letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--mute);padding:8px 10px}
.k-gallery{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px}
.k-gallery figure{height:100%;margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden}
.k-gal-img{aspect-ratio:4/3;overflow:hidden}
.k-gal-img img{display:block;width:100%;height:100%;object-fit:cover}
.k-zoom img{transform:scale(1.35)}
.k-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.k-btn{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;border-radius:var(--r-m);background:var(--brand);color:#fff;font-weight:700;text-decoration:none}
.k-btn:hover{background:var(--brand-deep)}
.k-btn--line{background:transparent;color:var(--ink);border:1px solid #BFC6CC}
.k-btn--line:hover{background:var(--panel)}

.k-sec{margin-top:clamp(36px,5vw,64px)}
.k-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:clamp(20px,4vw,48px);align-items:start}

/* таблицы цен */
.k-table-wrap{overflow-x:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-l)}
.k-table{width:100%;border-collapse:collapse;min-width:560px}
.k-table caption{caption-side:bottom;text-align:left;padding:10px 16px 14px;font-size:13px;color:var(--mute)}
.k-table th,.k-table td{padding:12px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.k-table thead th{font:500 10px/1.4 "IBM Plex Mono",monospace;letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--mute)}
.k-table thead th span,.k-table tbody th span{display:block;text-transform:none;letter-spacing:0;font:400 12px/1.4 Manrope,sans-serif;color:var(--mute)}
.k-table tbody th{font-weight:700}
.k-table tbody th a{color:var(--brand);text-decoration:none}
.k-table tbody th a:hover{text-decoration:underline}
.k-table td.num{font-weight:700}
.k-grp th{background:#F4F6F7;font:500 11px/1.4 "IBM Plex Mono",monospace;letter-spacing:var(--ls-ui);text-transform:uppercase;color:var(--brand)}
.k-note{margin-top:12px;font-size:14px;color:var(--ink-soft)}
.k-note a{color:var(--brand)}

/* характеристики */
.k-spec{display:grid;gap:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden}
.k-spec div{display:grid;grid-template-columns:minmax(120px,38%) 1fr;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line)}
.k-spec div:last-child{border-bottom:0}
.k-spec dt{color:var(--mute);font-size:14px}
.k-spec dd{font-weight:600}
.k-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.k-list li{padding-left:18px;position:relative}
.k-list li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:2px;background:var(--brand)}
.k-safety{margin-top:28px;padding:14px 16px;border-left:3px solid var(--brand);background:var(--panel);border-radius:0 var(--r-m) var(--r-m) 0;font-size:13px;color:var(--ink-soft);max-width:90ch}

/* вопросы */
.k-faq-list{display:flex;flex-direction:column;gap:8px;max-width:88ch}
.k-faq{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m)}
.k-faq summary{cursor:pointer;padding:14px 16px;font-weight:700;min-height:44px;list-style-position:inside}
.k-faq p{padding:0 16px 16px;color:#2C3034}

/* ссылки на соседние модели и классы */
.k-rel{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:10px}
.k-rel a{display:flex;flex-direction:column;gap:4px;height:100%;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);text-decoration:none}
.k-rel a:hover{border-color:var(--brand)}
.k-rel b{font-family:Unbounded,Manrope,sans-serif;font-weight:700}
.k-rel span{font-size:13px;color:var(--ink-soft)}
.k-rel--classes{margin-top:22px}

/* карточки моделей на странице класса */
.k-cards{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px;margin-top:22px}
.k-cards a{display:flex;flex-direction:column;gap:6px;height:100%;padding:10px 10px 14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-l);text-decoration:none}
.k-cards a:hover{border-color:var(--brand)}
.k-cards .k-shot-stage{height:230px;border-radius:var(--r-m)}
.k-cards .k-shot-win{width:auto;height:100%}
.k-cards b{font-family:Unbounded,Manrope,sans-serif;font-weight:700;padding:0 4px}
.k-cards span{font-size:13px;color:var(--ink-soft);padding:0 4px}

.k-foot{background:var(--stage);color:#C9CED2;font-size:13px}
.k-foot-in{max-width:1180px;margin:0 auto;padding:24px var(--pad);display:flex;flex-direction:column;gap:6px}
.k-foot a{color:#fff}

@media (max-width:860px){
  .k-hero{grid-template-columns:1fr}
  .k-hero-media{margin-top:0}
  .k-act{margin-left:0;width:100%;justify-content:space-between}
}
@media (max-width:560px){
  .k-table:not(.k-table--all){min-width:0}
  .k-table th,.k-table td{padding:10px 8px}
  .k-table thead th.num,.k-table td.num{white-space:normal}
  .k-table tbody th{font-size:14px}
  .k-table--cls th:nth-child(2),.k-table--cls td:nth-child(2){display:none}
}
@media (max-width:400px){
  .k-table th,.k-table td{padding:10px 6px}
  .k-table thead th{letter-spacing:0}
  .k-table tbody th span{font-size:11px}
}
@media (prefers-reduced-motion:no-preference){.k-btn,.k-cta,.k-rel a,.k-cards a{transition:background-color .18s,border-color .18s}}
