/* =============================================================================
   catalog.css — автономные стили PHP-рендера каталога (render.php).
   Зеркалит «кирпичную» дизайн-систему Astro, чтобы новые товары из админки
   выводились 1:1 с основным сайтом без пересборки.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap');

:root{
  --primary:#007b98;--primary-h:#008daf;--primary-050:#e6f5f8;--dark:#0f1827;--maroon:#0f1827;--cta:#f5b030;--cta-h:#d99012;
  --bg:#ffffff;--surface:#fff;--warm:#f4f4f4;--cream:#fffaf6;
  --text:#222;--muted:#5a5550;--subtle:#8a847e;--heading:#0f1827;
  --border:#ece4dc;--border-strong:#d9cec3;--hair:rgba(15,24,39,.10);--hair-inv:rgba(255,255,255,.14);
  --font:'Manrope','Segoe UI',system-ui,sans-serif;
  --rsm:4px;--r:8px;--rlg:12px;--rf:999px;
  --ct:2240px;--gut:clamp(1.25rem,4vw,4rem);--dur:240ms;--ease:cubic-bezier(.22,1,.36,1);
  --shadow:0 10px 30px -12px rgba(26,21,19,.18);--shadow-lg:0 24px 48px -16px rgba(26,21,19,.28);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html,body{overflow-x:hidden}
body{font-family:var(--font);font-size:16px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%;height:auto}svg{fill:none}
a{color:var(--primary);text-decoration:none;transition:color var(--dur) var(--ease)}a:hover{color:var(--primary-h)}
ul,ol{list-style:none}button{font-family:inherit;cursor:pointer}
h1,h2,h3{font-family:var(--font);color:var(--heading);line-height:1.12;font-weight:300;letter-spacing:-.02em}
h1 strong,h2 strong,h3 strong{font-weight:800}
:where(a,button,input,select):focus-visible{outline:3px solid var(--primary-h);outline-offset:2px;border-radius:6px}

.container{width:100%;max-width:var(--ct);margin-inline:auto;padding-inline:var(--gut)}
.container--narrow{max-width:820px}
.section{padding-block:clamp(2.5rem,5vw,4rem)}
.lead{font-size:1.05rem;color:var(--muted);max-width:60ch}
.eyebrow{display:inline-flex;align-items:center;gap:.6rem;color:var(--primary);font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.eyebrow::before{content:'';width:24px;height:2px;background:currentColor}

/* ---- Кнопки ---- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:0 1.4rem;font-family:var(--font);font-weight:600;font-size:.95rem;color:#fff;background:var(--primary);border:1.5px solid transparent;border-radius:var(--r);transition:background var(--dur) var(--ease),transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.btn:hover{color:#fff;transform:translateY(-2px)}
.btn svg{width:18px;height:18px}
.btn--lg{min-height:54px;padding:0 1.8rem;font-size:1rem}
.btn--cta{background:var(--cta);color:#0f1827}.btn--cta:hover{background:var(--cta-h);color:#0f1827}
.btn--ink{background:var(--dark);color:#fff}.btn--ink:hover{background:#050b14;color:#fff}
.btn--ghost{background:transparent;color:var(--heading);border-color:var(--border-strong)}.btn--ghost:hover{border-color:var(--heading);color:var(--heading)}
.btn--block{width:100%}

.badge{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:var(--rf)}
.badge--ok{background:#e7f6ec;color:#1f8a4c}
.badge--off{background:var(--warm);color:var(--subtle)}

/* ===================== ШАПКА ===================== */
.bh{display:contents}
.site-header{position:relative;z-index:50;background:#fff}
.bh-row1{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--hair);transition:box-shadow var(--dur) var(--ease)}
.bh[data-scrolled] .bh-row1{box-shadow:var(--shadow)}
.bh-row1__inner{display:flex;align-items:center;gap:1.5rem;min-height:64px}
.logo{display:inline-flex;align-items:center;gap:.55rem;color:var(--heading)}
.logo__word{font-family:var(--font);font-weight:800;font-size:1.25rem;letter-spacing:-.01em}
.logo__word b{color:var(--primary)}
.bh-left{display:flex;align-items:center;gap:1rem}
.bh-menuwrap{position:relative}
.bh-menu{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--border-strong);border-radius:var(--rf);padding:8px 14px;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--heading)}
.bh-menu:hover{border-color:var(--primary);color:var(--primary)}
.bh-menu[aria-expanded=true]{background:var(--primary);border-color:var(--primary);color:#fff}
.bh-right{display:flex;align-items:center;gap:1.5rem;margin-left:auto}
.bh-search{position:relative;display:flex;align-items:center;gap:.5rem;width:clamp(220px,26vw,340px);background:var(--warm);border:1px solid var(--hair);border-radius:var(--rf);padding:0 14px;height:42px}
.bh-search:focus-within{background:#fff;border-color:var(--border-strong)}
.bh-search__ico{color:var(--subtle);display:inline-flex}
.bh-search input{flex:1;min-width:0;border:none;background:none;font:inherit;font-size:.92rem;color:var(--text);outline:none}
.bh-search__drop{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:60;background:#fff;border:1px solid var(--hair);border-radius:var(--rlg);box-shadow:var(--shadow-lg);padding:.5rem;max-height:min(70vh,520px);overflow-y:auto}
.sres{display:flex;align-items:center;gap:.75rem;padding:8px 10px;border-radius:var(--r);color:var(--heading)}
.sres:hover,.sres.is-active{background:var(--warm)}
.sres__img{width:46px;height:40px;flex:none;object-fit:cover;border-radius:var(--rsm);background:var(--warm)}
.sres__title{font-weight:600;font-size:.9rem;line-height:1.25}
.sres__cat{font-size:.76rem;color:var(--subtle)}
.sres__price{margin-left:auto;font-weight:800;font-size:.9rem;color:var(--primary);white-space:nowrap}
.sres__price span{font-weight:600;font-size:.7rem;color:var(--subtle)}
.sres-empty{padding:1rem;text-align:center;color:var(--muted);font-size:.9rem}
.bh-phones{display:flex;flex-direction:column;gap:2px}
.bh-phone{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.98rem;color:var(--heading);white-space:nowrap}
.bh-phone:hover{color:var(--primary)}.bh-phone svg{color:var(--primary)}
.bh-mobile-right{display:none;align-items:center;gap:.75rem}
.bh-messengers{display:flex;align-items:center;gap:8px}
.bh-messenger{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:var(--primary);border:1px solid rgba(255,255,255,.36);border-radius:50%;box-shadow:0 8px 20px -14px rgba(15,24,39,.55);transition:transform var(--dur),box-shadow var(--dur)}
.bh-messenger--teal{background:var(--primary)}
.bh-messenger--yellow{background:var(--cta)}
.bh-messenger:hover{transform:translateY(-2px);box-shadow:0 12px 24px -14px rgba(15,24,39,.75)}
.bh-messenger img{width:18px;height:18px}
.bh-burger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:var(--r);border:1.5px solid var(--border-strong);background:#fff;color:var(--heading)}
.bh-burger:hover,.bh-burger[aria-expanded=true]{background:var(--primary);border-color:var(--primary);color:#fff}
.bh-row2{border-bottom:1px solid var(--hair)}
.bh-row2__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:46px}
.bh-nav{display:flex;gap:1.5rem}
.bh-nav a{font-size:.85rem;font-weight:500;color:var(--muted)}
.bh-nav a:hover{color:var(--primary)}
.bh-tags{display:flex;gap:1rem}
.bh-tag{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;color:#1f8a4c}
.bdrop{position:absolute;top:calc(100% + 10px);left:0;z-index:60;width:290px;max-width:calc(100vw - 2rem);background:#fff;border:1px solid var(--hair);border-radius:var(--rlg);box-shadow:var(--shadow-lg);padding:.75rem;max-height:calc(100dvh - 96px);overflow-y:auto}
.bdrop[hidden]{display:none}
.bdrop__item{display:flex;align-items:center;gap:.75rem;padding:9px 10px;border-radius:var(--r);color:var(--heading);font-size:.92rem;font-weight:500}
.bdrop__item:hover{background:var(--primary-050);color:var(--primary)}
.bdrop__ico{width:30px;height:30px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--rsm);background:var(--warm);color:var(--primary)}
.bdrop__item:hover .bdrop__ico{background:var(--primary);color:#fff}
.bdrop__txt{flex:1}
.bdrop__arr{color:var(--subtle)}
.bdrop__divider{height:1px;background:var(--hair);margin:.5rem 8px}
.bdrop__label{display:block;font-weight:700;font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;color:var(--subtle);padding:.5rem 10px}
.bdrop__links a{display:block;padding:7px 10px;border-radius:var(--r);color:var(--muted);font-size:.88rem}
.bdrop__links a:hover{background:var(--warm);color:var(--primary)}
@media(max-width:980px){.bh-phones--desktop{display:none}}
@media(max-width:860px){
  .bh-row2{display:none}
  .bh-menu{display:none}
  .bh-menuwrap{position:static}
  .bh-row1__inner{display:grid;grid-template-columns:auto 1fr;gap:.75rem;padding-block:.5rem}
  .bh-left{grid-column:1/2;grid-row:1/2;min-width:0}
  .bh-right{display:contents}
  .bh-mobile-right{display:flex;grid-column:2/3;grid-row:1/2;justify-self:end}
  .bh-search{grid-column:1/3;grid-row:2/3;width:100%}
  .bdrop{position:fixed;top:calc(64px + env(safe-area-inset-top,0px));left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));width:auto;max-width:none;max-height:calc(100dvh - 84px)}
}
@media(max-width:500px){.bh-row1__inner{grid-template-columns:auto minmax(0,1fr);gap:6px}.bh-left{min-width:0}.logo{gap:4px}.logo svg{width:28px;height:28px}.logo__word{font-size:1.06rem;letter-spacing:0}.bh-mobile-right{display:grid;grid-template-columns:auto auto;grid-template-areas:"messengers burger" "phones phones";align-items:center;justify-content:end;gap:3px 5px;max-width:100%}.bh-phones--mobile{grid-area:phones;display:flex;align-items:flex-end;gap:0;min-width:0}.bh-phones--mobile .bh-phone{justify-content:flex-end;font-size:.72rem;line-height:1.08;gap:0;letter-spacing:0}.bh-phones--mobile .bh-phone svg{display:none}.bh-messengers--mobile{grid-area:messengers;justify-content:flex-end}.bh-burger{grid-area:burger;width:34px;height:34px;border-radius:8px}.bh-messengers{gap:4px}.bh-messenger{width:28px;height:28px}.bh-messenger img{width:16px;height:16px}}
@media(max-width:380px){.bh-row1__inner{column-gap:4px}.logo svg{width:24px;height:24px}.logo__word{font-size:.95rem}.bh-phones--mobile .bh-phone{font-size:.66rem}.bh-messenger{width:26px;height:26px}.bh-burger{width:32px;height:32px}}

/* breadcrumbs */
.breadcrumbs{border-bottom:1px solid var(--hair)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.5rem;padding-block:.9rem;font-size:.82rem;color:var(--subtle)}
.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--primary)}

/* ===================== HERO КАТЕГОРИИ / КАТАЛОГА ===================== */
.fhero{padding-block:clamp(2rem,4vw,4rem)}
.fhero__inner{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.fhero__text h1{font-size:clamp(2.2rem,4.5vw,3.6rem);line-height:1.06;font-weight:300}
.fhero__text p{margin-top:1.25rem;color:var(--muted);font-size:1.05rem;line-height:1.7;max-width:48ch}
.fhero__media{border-radius:var(--rlg);overflow:hidden;aspect-ratio:16/11}
.fhero__media img{width:100%;height:100%;object-fit:cover}
@media(max-width:900px){.fhero__inner{grid-template-columns:1fr}.fhero__media{order:-1}}

/* тулбар */
.ptoolbar{display:flex;align-items:center;gap:1rem;padding-block:1rem;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.psearch{display:flex;align-items:center;gap:.5rem;flex:1;color:var(--subtle)}
.psearch input{flex:1;border:none;background:none;font:inherit;padding:6px 0;color:var(--text);outline:none}
.pviews{display:flex;gap:2px}
.pview{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;border-radius:var(--rsm);color:var(--subtle)}
.pview:hover{background:var(--warm);color:var(--heading)}.pview.is-active{background:var(--dark);color:#fff}
.pfs{display:inline-flex;align-items:center;gap:.5rem;padding:11px 20px;background:var(--dark);color:#fff;border:none;border-radius:var(--r);font-weight:600;font-size:.9rem}
.pfs:hover,.pfs.is-active{background:#050b14}
.pfilters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:clamp(1.25rem,3vw,2.5rem);padding:1.25rem;border:1px solid var(--hair);border-top:none;background:var(--warm)}
.pfilters__label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--subtle);margin-bottom:.5rem}
.pselect,.prange input{padding:9px 12px;border:1px solid var(--border-strong);border-radius:var(--rsm);font:inherit;background:#fff}
.pcheck{display:flex;align-items:center;gap:.5rem;font-size:.9rem;padding:4px 0}
.pcheck input{width:16px;height:16px;accent-color:var(--primary)}
.pfilters__brands{display:flex;gap:1rem;flex-wrap:wrap}
.prange{display:flex;align-items:center;gap:.5rem}.prange input{width:96px}
.linklike{background:none;border:none;color:var(--primary);font:inherit;cursor:pointer;text-decoration:underline}

/* подкатегории */
.subcatsec{padding-bottom:clamp(2rem,4vw,3rem)}
.subcatsec--top{padding-top:clamp(.75rem,2vw,1.5rem)}
.subcatsec__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--hair)}
.subcatsec__head h2{font-size:clamp(1.5rem,3vw,2.1rem)}
.subcatsec__head p{color:var(--muted);max-width:42ch}
.subcatgrid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--hair)}
.subcat{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.subcat__link{min-height:84px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:1rem 1.25rem;color:var(--heading);background:#fff}
.subcat__link:hover{background:var(--primary-050);color:var(--primary)}
.subcat__title{font-weight:700;line-height:1.25;min-width:0;overflow-wrap:anywhere}
.subcat__count{white-space:nowrap;font-size:.78rem;color:var(--subtle);background:var(--warm);border-radius:var(--rf);padding:3px 10px}
.subpage{padding-block:clamp(2.5rem,5vw,4.5rem);border-bottom:1px solid var(--hair)}
.subpage__inner{max-width:860px}.subpage h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.05}
.subpage p:not(.eyebrow){margin-top:1.25rem;color:var(--muted);font-size:1.08rem;line-height:1.7;max-width:62ch}
.subpage-list{padding-top:clamp(2rem,4vw,3.5rem)}
.subpage-list__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--hair)}
.subpage-list__head h2{font-size:clamp(1.5rem,3vw,2.1rem)}
.subpage-list__head span{white-space:nowrap;font-size:.85rem;color:var(--subtle);background:var(--warm);border-radius:var(--rf);padding:4px 12px}
@media(max-width:900px){.subcatsec__head{align-items:flex-start;flex-direction:column}.subcatgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.fhero__text h1,.subpage h1,.pp__head h1{font-size:2rem;overflow-wrap:anywhere}.subcatgrid{grid-template-columns:1fr}.subcat__link{min-height:72px;padding-inline:1rem}}

/* сетка карточек */
.pgrid{display:grid;margin-top:1.5rem;border-top:1px solid var(--hair);border-left:1px solid var(--hair)}
.pgrid--4{grid-template-columns:repeat(4,1fr)}.pgrid--3{grid-template-columns:repeat(3,1fr)}
.pgrid--2{grid-template-columns:repeat(2,1fr)}.pgrid--1{grid-template-columns:1fr}
.pcard{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair);padding:clamp(1rem,1.8vw,1.5rem);display:flex;flex-direction:column}
.pcard.is-unavailable{background:#f0f1f2;color:var(--subtle);filter:grayscale(.2)}
.pcard.is-unavailable .pcard__media img{filter:grayscale(1) contrast(.82) brightness(.96);opacity:.58}
.pcard.is-unavailable .pcard__title a,.pcard.is-unavailable .pcard__title span,.pcard.is-unavailable .pcard__price,.pcard.is-unavailable .pcard__price b,.pcard.is-unavailable .pcard__price strong,.pcard.is-unavailable .pcard__price2 b{color:#737982}
.pcard.is-unavailable .pcard__sub,.pcard.is-unavailable .pcard__meta,.pcard.is-unavailable .pcard__price span,.pcard.is-unavailable .pcard__price2,.pcard.is-unavailable .pcard__price2 span{color:#8d9299}
.pcard.is-unavailable .pcard__fav{background:#e2e4e6;color:#9aa0a7;border-color:#d3d6da;box-shadow:none}
.pcard__media{position:relative;aspect-ratio:16/11;background:var(--warm);overflow:hidden;border-radius:var(--r)}
.pcard__media a,.pcard__media-static{display:block;width:100%;height:100%}
.pcard__media img{width:100%;height:100%;object-fit:cover;transition:transform 360ms var(--ease)}
.pcard:hover .pcard__media img{transform:scale(1.04)}
.pcard.is-unavailable:hover .pcard__media img{transform:none}
.pcard__status{position:absolute;left:10px;top:10px;z-index:2;border-radius:999px;background:#737982;color:#fff;padding:5px 10px;font-size:.76rem;font-weight:800;line-height:1}
.pcard__fav{position:absolute;top:10px;right:10px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--hair);border-radius:50%;color:var(--subtle);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.pcard__fav:hover{color:var(--primary);border-color:var(--primary)}
.pcard__title{margin-top:1rem;font-size:1.25rem;font-weight:700;line-height:1.2}
.pcard__title a{color:var(--heading)}.pcard__title a:hover{color:var(--primary)}
.pcard__sub{margin-top:4px;font-size:.85rem;color:var(--subtle)}
.pcard__price{margin-top:auto;padding-top:1rem;font-weight:800;font-size:1.1rem;color:var(--heading)}
.pcard__price span{font-weight:600;font-size:.72rem;color:var(--subtle)}
.pcard__price2{margin-top:3px;font-size:.8rem;color:var(--muted)}
.pcard__price2 b{color:var(--primary);font-weight:800}
.pcard__price2 span{color:var(--subtle)}
.pcard__price2 em{font-style:normal;font-weight:700;color:var(--primary)}
.pcard__meta{margin-top:6px;font-size:.82rem;color:var(--subtle)}
.pnoresults{padding:2.5rem 0;text-align:center;color:var(--muted)}
@media(max-width:1100px){.pgrid--4{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.pgrid--3,.pgrid--4{grid-template-columns:repeat(2,1fr)}.ptoolbar{flex-wrap:wrap}.psearch{order:3;flex-basis:100%}}
@media(max-width:560px){.pgrid--2,.pgrid--3,.pgrid--4{grid-template-columns:1fr}}

/* сетка категорий (каталог) */
.catcount{padding-block:1rem;border-top:1px solid var(--hair);color:var(--muted);font-size:.9rem}
.catcount b{color:var(--heading)}
.catgrid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--hair);border-left:1px solid var(--hair)}
.ccard{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.ccard.is-unavailable{background:#f0f1f2;color:var(--subtle);filter:grayscale(.2)}
.ccard__link{display:flex;flex-direction:column;height:100%;padding:clamp(1.5rem,2.2vw,2.1rem);color:var(--heading)}
.ccard__link:hover{background:#faf9f7}
.ccard.is-unavailable .ccard__link:hover{background:transparent}
.ccard__media{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:var(--rlg);background:var(--warm);color:#0f1827;margin-bottom:1.25rem}
.ccard.is-unavailable .ccard__link:hover .ccard__media{background:var(--warm)}
.ccard__title{font-size:1.15rem;font-weight:700;line-height:1.25}
.ccard.is-unavailable .ccard__title{color:#737982}
.ccard__text{margin-top:.5rem;font-size:.9rem;color:var(--muted);line-height:1.6;flex:1}
.ccard.is-unavailable .ccard__text{color:#8d9299}
.ccard__foot{display:flex;align-items:center;gap:.75rem;margin-top:1rem}
.ccard__count{font-size:.78rem;color:var(--subtle);background:var(--warm);padding:3px 10px;border-radius:var(--rf)}
.ccard__count--off{background:#737982;color:#fff;font-weight:800}
.ccard__more{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--primary)}
@media(max-width:1100px){.catgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.catgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.catgrid{grid-template-columns:1fr}}

/* блок «Остались вопросы?» */
.qband{background:var(--warm)}
.qband__inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.25rem;padding-block:clamp(2rem,4vw,3rem)}
.qband__left{display:flex;align-items:center;gap:1rem}
.qband__ico{color:var(--heading)}
.qband__txt{display:flex;flex-direction:column;line-height:1.2}
.qband__txt strong{font-weight:800;font-size:clamp(1.5rem,3vw,2.1rem);color:var(--heading)}
.qband__txt span{font-weight:300;font-size:clamp(1.3rem,2.6vw,1.9rem);color:var(--subtle)}
.qband__actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
.qband__link{display:inline-flex;align-items:center;gap:6px;background:none;border:none;font-weight:700;font-size:.95rem;color:var(--heading);text-decoration:underline;text-underline-offset:4px}
.qband__link:hover{color:var(--primary)}

/* ===================== СТРАНИЦА ИНСТРУМЕНТА ===================== */
.pp{padding-block:clamp(1.5rem,3vw,2.5rem) clamp(2.5rem,5vw,4rem)}
.pp__inner{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.pp__tabs{display:flex;gap:1.25rem;border-bottom:1px solid var(--hair);margin-bottom:1.25rem}
.pp__tab{background:none;border:none;padding:0 0 .75rem;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--subtle);border-bottom:2px solid transparent;margin-bottom:-1px}
.pp__tab.is-active{color:var(--heading);border-color:var(--heading)}
.pp__stage{position:relative;aspect-ratio:4/3;background:var(--warm);border:1px solid var(--hair);overflow:hidden}
.pp__stage img{width:100%;height:100%;object-fit:cover}
.pp__badge{position:absolute;top:1rem;left:1rem}
.pp__thumbs{display:flex;gap:.75rem;margin-top:.75rem;flex-wrap:wrap}
.pp__thumb{width:84px;height:64px;padding:0;background:var(--warm);border:1px solid var(--hair);overflow:hidden}
.pp__thumb img{width:100%;height:100%;object-fit:cover}
.pp__thumb.is-active{border-color:var(--heading);border-width:2px}
.pp__panel{border:1px solid var(--hair)}
.pp__ptabs{display:grid;grid-template-columns:1fr 1fr}
.pp__ptab{background:var(--warm);border:none;border-bottom:1px solid var(--hair);padding:1rem;font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--subtle)}
.pp__ptab+.pp__ptab{border-left:1px solid var(--hair)}
.pp__ptab.is-active{background:#fff;color:var(--heading);border-bottom-color:transparent}
.pp__body{padding:clamp(1.5rem,3vw,2.5rem)}
.pp__head h1{font-size:clamp(1.8rem,3.5vw,2.6rem);line-height:1.1;font-weight:300}
.pp__cat{margin-top:.5rem}.pp__cat a{font-size:.85rem;color:var(--muted)}
.pp__lead{margin-top:1rem;color:var(--muted);line-height:1.7}
.pp__hr{border:none;border-top:1px solid var(--hair);margin:1.5rem 0}
.pp__h{font-size:1.25rem;font-weight:800}
.pp__sub{margin-top:.5rem;color:var(--muted);font-size:.9rem}
.pp__specs{width:100%;border-collapse:collapse;margin-top:1rem}
.pp__specs tr{border-bottom:1px solid var(--hair)}
.pp__specs th{text-align:left;padding:.75rem 0;color:var(--muted);font-weight:400;font-size:.9rem}
.pp__specs td{text-align:right;padding:.75rem 0;font-weight:700;color:var(--heading)}
.pp__rates{margin-top:1rem;border:1px solid var(--hair);border-radius:var(--r);overflow:hidden}
.pp__rates-head{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--warm);border-bottom:1px solid var(--hair);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.pp__rates-ico{color:var(--primary);display:inline-flex}
.pp__rate{display:flex;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--hair)}
.pp__rate:last-child{border-bottom:none}
.pp__rate--accent{background:var(--primary-050)}
.pp__rate-badge{display:inline-block;margin-left:6px;font-size:.68rem;font-weight:800;color:#fff;background:var(--primary);padding:1px 7px;border-radius:var(--rf);vertical-align:middle}
.pp__note{margin-top:.75rem;font-size:.8rem;color:var(--subtle)}
.pp__rate-info{flex:1;min-width:0}.pp__rate-info strong{display:block;color:var(--heading)}
.pp__rate-info span{font-size:.82rem;color:var(--subtle)}
.pp__rate-price{font-weight:800;font-size:1.1rem;color:var(--heading);white-space:nowrap}
.pp__rate-price span{font-weight:600;font-size:.72rem;color:var(--subtle)}
.pp__rate-price--muted{font-size:.95rem;color:var(--subtle);font-weight:600}
.pp__add{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border:1px solid var(--border-strong);border-radius:var(--rsm);background:#fff;font-weight:700;font-size:.82rem;color:var(--heading);white-space:nowrap}
.pp__add:hover{border-color:var(--heading)}
.pp__add--primary{background:var(--dark);color:#fff;border-color:var(--dark)}.pp__add--primary:hover{background:#050b14}
.pp__phones{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:1.25rem}
.pp__phone{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.15rem;color:var(--heading)}
.pp__phone svg{color:var(--primary)}
.pp__terms{display:flex;flex-direction:column;gap:1rem}
.pp__terms li{display:flex;gap:.75rem;align-items:flex-start}
.pp__terms-ico{flex:none;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r);background:var(--warm);color:#0f1827}
.pp__terms li strong{display:block;color:var(--heading)}
.pp__terms li span{font-size:.9rem;color:var(--muted);line-height:1.55}
.pp__terms-cta{margin-top:1.25rem}
@media(max-width:900px){.pp__inner{grid-template-columns:1fr}}
@media(max-width:480px){.pp__rate{flex-wrap:wrap}.pp__rate-info{flex-basis:100%}}

.empty{text-align:center;padding:3rem 0;display:flex;flex-direction:column;align-items:center;gap:1rem}
.empty p{color:var(--muted);max-width:44ch}
.seo-sec h2{font-size:1.5rem;margin-bottom:.75rem;font-weight:800}
.seo-sec p{color:var(--muted);max-width:75ch}

/* ===================== ПОДВАЛ ===================== */
.site-footer{background:#0f1827;color:rgba(255,255,255,.78)}
.site-footer__inner{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.5fr;gap:clamp(2rem,4vw,4rem);padding-block:clamp(2.5rem,5vw,4rem) 2rem}
.site-footer .logo__word{color:#fff}
.footer-about{margin-top:.75rem;font-size:.875rem;max-width:34ch;color:rgba(255,255,255,.6);line-height:1.6}
.footer-msgrs{display:flex;gap:.75rem;margin-top:1.25rem}
.footer-msgr{width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur),filter var(--dur)}
.footer-msgr:hover{transform:translateY(-3px);filter:brightness(1.1)}.footer-msgr img{width:20px;height:20px}
.footer-rating{display:block;margin-top:1rem;border:0;border-radius:var(--rsm)}
.footer-title{color:#fff;font-size:.95rem;margin-bottom:1rem;letter-spacing:.04em;font-weight:700}
.footer-links li{margin-bottom:.5rem}.footer-links a{color:rgba(255,255,255,.7);font-size:.875rem}
.footer-links a:hover{color:var(--primary-h)}
.footer-contacts{display:flex;flex-direction:column;gap:.75rem}
.footer-contacts li{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:rgba(255,255,255,.7);line-height:1.5}
.footer-contacts svg{flex:none;margin-top:2px;color:var(--primary-h)}
.footer-contacts a{color:rgba(255,255,255,.85)}.footer-contacts a:hover{color:var(--primary-h)}
.site-footer__bar{border-top:1px solid var(--hair-inv);padding-block:1rem;font-size:.75rem;color:rgba(255,255,255,.5)}
.site-footer__bar a{color:var(--primary-h)}
@media(max-width:940px){.site-footer__inner{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.site-footer__inner{grid-template-columns:1fr}}

/* ===================== МОДАЛКА ===================== */
.request-modal{position:fixed;inset:0;margin:auto;border:none;border-radius:var(--rlg);padding:0;max-width:480px;width:calc(100% - 2rem);max-height:calc(100dvh - 2rem);box-shadow:var(--shadow-lg)}
.request-modal::backdrop{background:rgba(26,21,19,.55)}
.rm__inner{position:relative;padding:2rem}
.rm__close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.2rem;color:var(--subtle)}
.rf{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}
.rf input,.rf textarea{width:100%;padding:12px 14px;border:1px solid var(--border-strong);border-radius:var(--r);font:inherit}
.rf textarea{min-height:90px;resize:vertical}
.consent{display:flex;gap:.5rem;align-items:flex-start;font-size:.8rem;color:var(--muted)}
