/* ==========================================================================
   JAQUAR UZBEKISTAN — мультибрендовая дизайн-система (22.09.2026)

   Один набор компонентов, три палитры. Компоненты берут цвет, шрифты и
   скругления ТОЛЬКО из токенов этого блока. Бренд переключается атрибутом
   html[data-brand] (его ставит роутер) или классом .scope-<бренд> у
   отдельного блока (плитки на странице «Бренды»).

   · Jaquar — Soft Oxblood, светлая архитектурная тема (JAQUARWEB.zip)
   · Artize — Espresso / Taupe / Linen: только 7 утверждённых цветов
   · Essco  — Hydro-Engineering Precision: только 6 утверждённых цветов

   Свотчи покрытий (.f-*) — реальные цвета металлов, темой не перекрашиваются.
   Имена --ivory и --bronze исторические: --ivory = основной текст,
   --bronze = акцентный текст и метки.
   ========================================================================== */

/* ------------------------------------------ JAQUAR — Soft Oxblood (по умолчанию) */
:root,.scope-jaquar{
  /* поверхности: #FFF8F6 холст · #FDEDE7 Light Stone · #FBEBE5 · #F3C6B6 Warm Stone */
  --bg-main:#FFF8F6;
  --bg-secondary:#FDEDE7;
  --bg-elevated:#FBEBE5;
  --bg-high:#F3C6B6;
  --glass:rgba(255,248,246,.9);
  --drawer-bg:rgba(255,248,246,.98);
  --mbar-bg:rgba(255,248,246,.95);

  /* текст */
  --ink:#310813;
  --ivory:#221A17;
  --ivory-dim:rgba(34,26,23,.74);
  --muted:#514345;
  --placeholder:rgba(81,67,69,.55);

  /* акценты: #9A4454 Rose-Burgundy · #CB6A5A Terracotta · #4B1D27 Wine Base */
  --bronze:#9A4454;
  --bronze-soft:#CB6A5A;
  --bronze-glow:rgba(154,68,84,.08);
  --fill:#4B1D27;
  --fill-hover:#6D2E3A;
  --on-fill:#FDEDE7;
  --step-hover:rgba(253,237,231,.16);
  --mark:#CB6A5A;
  --badge-bg:#CB6A5A;
  --badge-fg:#310813;
  --danger:#BA1A1A;
  --danger-text:#BA1A1A;

  /* линии: пыльный персик #E09A8A и rose-burgundy */
  --line:rgba(203,106,90,.30);
  --line-strong:rgba(154,68,84,.46);
  --line-faint:rgba(203,106,90,.17);
  --swatch-line:rgba(75,29,39,.24);

  --ghost-line:#4B1D27;
  --ghost-hover-line:#4B1D27;
  --ghost-hover-bg:#F3C6B6;
  --chip-bg:#FBEBE5;
  --chip-hover-bg:#F3C6B6;

  --shadow-soft:0 12px 32px -4px rgba(75,29,39,.10),0 4px 12px -2px rgba(75,29,39,.05);
  --shadow-deep:0 28px 64px -24px rgba(75,29,39,.32);

  /* вуаль поверх фотографии (rgb без альфы), тёплый свет и холст для светлой вуали */
  --veil:49,8,19;
  --canvas-rgb:255,248,246;
  --glow:243,198,182;
  --atmos-a:#FBEBE5; --atmos-b:#F3C6B6; --atmos-c:#E09A8A;
  --atmos-mark:rgba(75,29,39,.12);
  --gesture:rgba(154,68,84,.07);

  /* шапка — тёмный oxblood */
  --hdr-bg:#4B1D27; --hdr-bg-2:#4B1D27;
  --hdr-ink:#FDEDE7; --hdr-muted:#F3C6B6; --hdr-accent:#F3C6B6;
  --hdr-line:rgba(253,237,231,.2); --hdr-line-strong:rgba(253,237,231,.46);
  --hdr-fill:#FDEDE7; --hdr-fill-hover:#F3C6B6; --hdr-on-fill:#4B1D27; --hdr-glow:rgba(253,237,231,.08);
  --hdr-mark:#CB6A5A; --hdr-badge-bg:#CB6A5A; --hdr-badge-fg:#310813;
  --hdr-shadow:0 12px 32px -4px rgba(75,29,39,.22);

  /* подвал — тёмный oxblood */
  --ftr-bg:#4B1D27; --ftr-ink:#FDEDE7; --ftr-muted:rgba(253,237,231,.8); --ftr-accent:#F3C6B6; --ftr-line:rgba(253,237,231,.18);

  /* текст поверх фотографии и тёмные полосы */
  --ph-ink:#FFF8F6; --ph-muted:rgba(255,248,246,.86); --ph-accent:#F3C6B6;
  --ph-line:rgba(253,237,231,.26); --ph-line-strong:rgba(253,237,231,.56);
  --ph-fill:#FDEDE7; --ph-fill-hover:#F3C6B6; --ph-on-fill:#4B1D27; --ph-glow:rgba(253,237,231,.12);
  --ph-glass:rgba(49,8,19,.58);

  --toast-bg:#4B1D27; --toast-fg:#FDEDE7; --toast-line:rgba(253,237,231,.24);
  --theme-color:#4B1D27;

  /* типографика JAQUARWEB.zip: EB Garamond · Inter · Space Grotesk (кириллица → Inter) */
  --serif:'EB Garamond','Cormorant Garamond',Georgia,"Times New Roman",serif;
  --sans:'Inter',-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --label:'Space Grotesk','Inter',-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --h-weight:400; --h-track:-.015em; --h-lh:1.12;
  --logo-font:'EB Garamond',Georgia,serif; --logo-size:21px; --logo-track:.16em; --logo-weight:500;

  /* форма: 4px, модули 8px, никаких капсул */
  --radius:4px; --radius-lg:8px;
  --r-ctl:4px; --r-btn:4px; --r-card:8px; --r-panel:8px; --r-swatch:2px; --r-hdr:8px;

  color-scheme:light;
}

/* ------------------------------------------ ARTIZE — 7 утверждённых цветов
   #302822 Espresso Charcoal · #9A8472 Warm Taupe · #C8B39A Sandy Beige ·
   #E0D1B8 Oatmeal · #EFE3CE Vanilla Cream · #F6F0E6 Soft Linen · #FAF7F2 Ivory Whisper
   Мелкий текст — эспрессо (тауп на светлом фоне даёт 3:1 и для текста не годится). */
html[data-brand="artize"],.scope-artize{
  --bg-main:#F6F0E6;
  --bg-secondary:#FAF7F2;
  --bg-elevated:#EFE3CE;
  --bg-high:#E0D1B8;
  --glass:rgba(250,247,242,.92);
  --drawer-bg:rgba(250,247,242,.98);
  --mbar-bg:rgba(250,247,242,.95);

  --ink:#302822;
  --ivory:#302822;
  --ivory-dim:rgba(48,40,34,.8);
  --muted:rgba(48,40,34,.8);
  --placeholder:rgba(48,40,34,.5);

  --bronze:rgba(48,40,34,.82);
  --bronze-soft:#9A8472;
  --bronze-glow:rgba(154,132,114,.12);
  --fill:#302822;
  --fill-hover:rgba(48,40,34,.86);
  --on-fill:#FAF7F2;
  --step-hover:rgba(250,247,242,.16);
  --mark:#9A8472;
  --badge-bg:#302822;
  --badge-fg:#FAF7F2;
  --danger:#302822;
  --danger-text:#302822;

  --line:#C8B39A;
  --line-strong:#9A8472;
  --line-faint:rgba(200,179,154,.6);
  --swatch-line:rgba(48,40,34,.24);

  --ghost-line:#C8B39A;
  --ghost-hover-line:#9A8472;
  --ghost-hover-bg:rgba(239,227,206,.7);
  --chip-bg:#FAF7F2;
  --chip-hover-bg:#EFE3CE;

  --shadow-soft:0 4px 20px -2px rgba(48,40,34,.08);
  --shadow-deep:0 24px 56px -22px rgba(48,40,34,.28);

  --veil:48,40,34;
  --canvas-rgb:246,240,230;
  --glow:239,227,206;
  --atmos-a:#EFE3CE; --atmos-b:#E0D1B8; --atmos-c:#C8B39A;
  --atmos-mark:rgba(48,40,34,.1);
  --gesture:rgba(154,132,114,.1);

  /* шапка — светлая Ivory Whisper, контур Sandy Beige */
  --hdr-bg:rgba(250,247,242,.95); --hdr-bg-2:#FAF7F2;
  --hdr-ink:#302822; --hdr-muted:rgba(48,40,34,.82); --hdr-accent:#302822;
  --hdr-line:#C8B39A; --hdr-line-strong:#9A8472;
  --hdr-fill:#302822; --hdr-fill-hover:rgba(48,40,34,.86); --hdr-on-fill:#FAF7F2; --hdr-glow:rgba(239,227,206,.6);
  --hdr-mark:#9A8472; --hdr-badge-bg:#302822; --hdr-badge-fg:#FAF7F2;
  --hdr-shadow:0 4px 20px -2px rgba(48,40,34,.08);

  /* подвал и тёмная полоса — Espresso Charcoal */
  --ftr-bg:#302822; --ftr-ink:#FAF7F2; --ftr-muted:rgba(250,247,242,.76); --ftr-accent:#C8B39A; --ftr-line:rgba(200,179,154,.24);

  --ph-ink:#FAF7F2; --ph-muted:rgba(250,247,242,.84); --ph-accent:#E0D1B8;
  --ph-line:rgba(200,179,154,.32); --ph-line-strong:rgba(250,247,242,.56);
  --ph-fill:#FAF7F2; --ph-fill-hover:#EFE3CE; --ph-on-fill:#302822; --ph-glow:rgba(250,247,242,.1);
  --ph-glass:rgba(48,40,34,.6);

  --toast-bg:#302822; --toast-fg:#FAF7F2; --toast-line:rgba(200,179,154,.4);
  --theme-color:#FAF7F2;

  --serif:'EB Garamond',Georgia,"Times New Roman",serif;
  --sans:'Inter',-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --label:'Space Grotesk','Inter',-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --h-weight:400; --h-track:-.02em; --h-lh:1.1;
  --logo-font:'EB Garamond',Georgia,serif; --logo-size:21px; --logo-track:.34em; --logo-weight:400;

  --radius:2px; --radius-lg:4px;
  --r-ctl:2px; --r-btn:2px; --r-card:4px; --r-panel:8px; --r-swatch:2px; --r-hdr:4px;

  color-scheme:light;
}

/* ------------------------------------------ ESSCO — 6 утверждённых цветов
   #051F20 холст · #0B2B26 шапка/подвал · #163832 панели · #235347 линии ·
   #8EB69B акцент и метрики · #DAF1DE основной текст и CTA */
html[data-brand="essco"],.scope-essco{
  --bg-main:#051F20;
  --bg-secondary:#0B2B26;
  --bg-elevated:#163832;
  --bg-high:#235347;
  --glass:rgba(11,43,38,.92);
  --drawer-bg:rgba(5,31,32,.98);
  --mbar-bg:rgba(11,43,38,.96);

  --ink:#DAF1DE;
  --ivory:#DAF1DE;
  --ivory-dim:rgba(218,241,222,.8);
  --muted:#8EB69B;
  --placeholder:rgba(142,182,155,.6);

  --bronze:#8EB69B;
  --bronze-soft:#8EB69B;
  --bronze-glow:rgba(35,83,71,.35);
  --fill:#DAF1DE;
  --fill-hover:#8EB69B;
  --on-fill:#051F20;
  --step-hover:rgba(5,31,32,.12);
  --mark:#8EB69B;
  --badge-bg:#8EB69B;
  --badge-fg:#051F20;
  --danger:#8EB69B;
  --danger-text:#DAF1DE;

  --line:#235347;
  --line-strong:#8EB69B;
  --line-faint:rgba(35,83,71,.72);
  --swatch-line:rgba(218,241,222,.28);

  --ghost-line:#235347;
  --ghost-hover-line:#8EB69B;
  --ghost-hover-bg:rgba(35,83,71,.3);
  --chip-bg:#0B2B26;
  --chip-hover-bg:#163832;

  --shadow-soft:0 8px 24px -4px rgba(5,31,32,.8);
  --shadow-deep:0 8px 24px -4px rgba(5,31,32,.8);

  --veil:5,31,32;
  --canvas-rgb:5,31,32;
  --glow:142,182,155;
  --atmos-a:#0B2B26; --atmos-b:#163832; --atmos-c:#235347;
  --atmos-mark:rgba(142,182,155,.12);
  --gesture:rgba(142,182,155,.06);

  --hdr-bg:#0B2B26; --hdr-bg-2:#0B2B26;
  --hdr-ink:#DAF1DE; --hdr-muted:#8EB69B; --hdr-accent:#8EB69B;
  --hdr-line:#235347; --hdr-line-strong:#8EB69B;
  --hdr-fill:#DAF1DE; --hdr-fill-hover:#8EB69B; --hdr-on-fill:#051F20; --hdr-glow:rgba(35,83,71,.35);
  --hdr-mark:#8EB69B; --hdr-badge-bg:#8EB69B; --hdr-badge-fg:#051F20;
  --hdr-shadow:0 8px 24px -4px rgba(5,31,32,.8);

  --ftr-bg:#0B2B26; --ftr-ink:#DAF1DE; --ftr-muted:#8EB69B; --ftr-accent:#8EB69B; --ftr-line:#235347;

  --ph-ink:#DAF1DE; --ph-muted:rgba(218,241,222,.86); --ph-accent:#8EB69B;
  --ph-line:rgba(142,182,155,.36); --ph-line-strong:#8EB69B;
  --ph-fill:#DAF1DE; --ph-fill-hover:#8EB69B; --ph-on-fill:#051F20; --ph-glow:rgba(35,83,71,.35);
  --ph-glass:rgba(11,43,38,.9);

  --toast-bg:#0B2B26; --toast-fg:#DAF1DE; --toast-line:#235347;
  --theme-color:#0B2B26;

  --serif:'Space Grotesk','Inter',-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --sans:'Inter',-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --label:'Space Grotesk','Inter',-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --h-weight:600; --h-track:-.02em; --h-lh:1.16;
  --logo-font:'Space Grotesk','Inter',sans-serif; --logo-size:20px; --logo-track:.1em; --logo-weight:700;

  --radius:8px; --radius-lg:12px;
  --r-ctl:8px; --r-btn:12px; --r-card:16px; --r-panel:16px; --r-swatch:4px; --r-hdr:12px;

  color-scheme:dark;
}

/* ------------------------------------------ контексты внутри любой темы */
:root{
  /* ритм и габариты — общие для всех брендов */
  --gutter:clamp(20px,5vw,72px);
  --section:clamp(72px,10vw,140px);
  --hdr-top:16px;
  --hdr-h:66px;
  --hdr-safe:calc(var(--hdr-top) + var(--hdr-h) + 12px);
  --mbar-h:0px;
}
/* блок в чужой теме получает свой текст и фон */
.scope-jaquar,.scope-artize,.scope-essco{color:var(--ivory)}

/* шапка */
.hdr{
  --ink:var(--hdr-ink); --ivory:var(--hdr-ink); --ivory-dim:var(--hdr-muted); --muted:var(--hdr-muted);
  --bronze:var(--hdr-accent); --bronze-glow:var(--hdr-glow);
  --line:var(--hdr-line); --line-strong:var(--hdr-line-strong); --line-faint:var(--hdr-line);
  --fill:var(--hdr-fill); --fill-hover:var(--hdr-fill-hover); --on-fill:var(--hdr-on-fill);
  --mark:var(--hdr-mark); --badge-bg:var(--hdr-badge-bg); --badge-fg:var(--hdr-badge-fg);
  --glass:var(--hdr-bg);
  color:var(--ivory);
}
/* подвал */
.ftr{
  --ink:var(--ftr-ink); --ivory:var(--ftr-ink); --ivory-dim:var(--ftr-muted); --muted:var(--ftr-muted);
  --bronze:var(--ftr-accent); --line:var(--ftr-line); --line-strong:var(--ftr-line); --line-faint:var(--ftr-line);
  color:var(--ivory);
}
/* текст поверх фотографии и тёмные полосы (герой Jaquar — светлый, см. «Hero») */
.cat-card,.brand-block,.shot,.ondark,.band-dark{
  --ink:var(--ph-ink); --ivory:var(--ph-ink); --ivory-dim:var(--ph-muted); --muted:var(--ph-muted);
  --bronze:var(--ph-accent); --bronze-glow:var(--ph-glow);
  --line:var(--ph-line); --line-strong:var(--ph-line-strong); --line-faint:var(--ph-line);
  --fill:var(--ph-fill); --fill-hover:var(--ph-fill-hover); --on-fill:var(--ph-on-fill);
  --ghost-line:var(--ph-line-strong); --ghost-hover-line:var(--ph-ink); --ghost-hover-bg:var(--ph-glow);
  --glass:var(--ph-glass);
  color:var(--ivory);
}
.band-dark{background:var(--ftr-bg)}

*,*::before,*::after{box-sizing:border-box}

html{
  background:var(--bg-main);
  color:var(--ivory);
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--hdr-safe) + env(safe-area-inset-top,0px));
}

/* любая программная прокрутка к заголовку или якорю останавливается
   ниже непрозрачной зоны шапки */
h1,h2,h3,h4,[id],.section,.hero{
  scroll-margin-top:calc(var(--hdr-safe) + env(safe-area-inset-top,0px));
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

body{
  margin:0;
  background:var(--bg-main);
  color:var(--ivory);
  font-family:var(--sans);
  font-size:15px;
  line-height:1.6;
  font-weight:400;
  letter-spacing:.005em;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}

img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}

:focus-visible{outline:2px solid var(--bronze);outline-offset:3px;border-radius:2px}

::selection{background:var(--fill);color:var(--on-fill)}

/* --------------------------------------------------------------------------
   Типографика
   -------------------------------------------------------------------------- */
h1,h2,h3,h4{
  font-family:var(--serif);
  font-weight:var(--h-weight);
  line-height:var(--h-lh);
  letter-spacing:var(--h-track);
  margin:0;
  text-wrap:balance;
  color:var(--ink);
}
.t-hero{font-size:clamp(38px,4.9vw,68px)}
.t-h1{font-size:clamp(32px,4vw,54px)}
.t-h2{font-size:clamp(28px,3.1vw,44px)}
.t-h3{font-size:clamp(22px,2.2vw,32px)}
.t-h4{font-size:clamp(19px,1.7vw,24px);letter-spacing:-.01em}

.t-accent{color:var(--bronze);font-style:italic}

.eyebrow{
  font-family:var(--label);
  font-size:12px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--bronze);
  margin:0 0 20px;
  display:flex;
  align-items:center;
  gap:12px;
}
.eyebrow::before{
  content:"";width:7px;height:7px;border-radius:50%;background:var(--mark);flex:none;
}
.eyebrow--plain::before{display:none}

.lede{
  font-size:clamp(15px,1.35vw,18px);
  line-height:1.7;
  color:var(--muted);
  max-width:56ch;
  font-weight:400;
  margin:0;
}
.body-text{color:var(--muted);max-width:62ch;margin:0}
.caption{font-family:var(--label);font-size:12px;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}

/* --------------------------------------------------------------------------
   Раскладка
   -------------------------------------------------------------------------- */
.shell{min-height:100vh;display:flex;flex-direction:column}
main{flex:1 0 auto;padding-top:0}
.container{width:100%;max-width:1560px;margin:0 auto;padding-inline:var(--gutter)}
.container--narrow{max-width:1160px}
.container--text{max-width:840px}

.section{padding-block:var(--section)}
.section--tight{padding-block:clamp(48px,6vw,88px)}
.section--secondary{background:var(--bg-secondary)}
.section--elevated{background:var(--bg-elevated)}
.section--fade{background:linear-gradient(180deg,var(--bg-main),var(--bg-elevated) 55%,var(--bg-main))}

.section-head{
  display:flex;flex-wrap:wrap;gap:24px 48px;
  align-items:flex-end;justify-content:space-between;
  margin-bottom:clamp(32px,4vw,64px);
}
.section-head__text{max-width:62ch}
.rule{height:1px;background:var(--line);border:0;margin:0}

.grid{display:grid;gap:clamp(14px,1.4vw,22px)}
.grid--2{grid-template-columns:repeat(2,1fr)}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--6{grid-template-columns:repeat(3,1fr)}

/* --------------------------------------------------------------------------
   Кнопки — только CTA из брифа
   -------------------------------------------------------------------------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  min-height:50px;padding:0 28px;
  font-family:var(--label);font-size:12px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  border-radius:var(--radius);
  border:1px solid transparent;
  transition:background .45s cubic-bezier(.2,.7,.3,1),color .45s,border-color .45s,transform .45s;
  will-change:transform;
  text-align:center;
}
.btn__arrow{transition:transform .45s cubic-bezier(.2,.7,.3,1);display:inline-block}
.btn:hover .btn__arrow{transform:translateX(5px)}

.btn--primary{background:var(--fill);color:var(--on-fill);border-color:var(--fill);box-shadow:var(--shadow-soft)}
.btn--primary:hover{background:var(--fill-hover);border-color:var(--fill-hover);color:var(--on-fill)}

.btn--ghost{border-color:var(--ghost-line);color:var(--ink);background:transparent}
.btn--ghost:hover{border-color:var(--ghost-hover-line);color:var(--ink);background:var(--ghost-hover-bg)}

.btn--quiet{padding:0;min-height:auto;border:0;color:var(--bronze);letter-spacing:.08em;box-shadow:none}
.btn--quiet:hover{color:var(--ink)}

.btn--block{width:100%}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.42;pointer-events:none}

.btn-row{display:flex;flex-wrap:wrap;gap:14px}

/* --------------------------------------------------------------------------
   Атмосферные панели — используются там, где нет фотографии
   -------------------------------------------------------------------------- */
/* медиа-слоты всегда занимают всю площадь своего контейнера */
.photo,.atmos{display:block;width:100%;height:100%}

/* карточки собраны на span внутри <a> — задаём им блочность явно */
.card__media,.card__title,.card__kicker,
.cat-card__media,.cat-card__body,.cat-card__title,.cat-card__meta,.cat-card__veil,
.brand-block__body,.brand-block__name{display:block}

.atmos{position:relative;overflow:hidden;background:var(--atmos-a);isolation:isolate}
.atmos::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(110% 80% at 68% 14%,rgba(var(--glow),.55),transparent 62%),
    linear-gradient(165deg,var(--atmos-a) 0%,var(--atmos-b) 100%);
}
.atmos::after{
  content:"";position:absolute;inset:0;z-index:1;opacity:.35;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E");
}
.atmos > *{position:relative;z-index:2}

.atmos--b::before{background:linear-gradient(100deg,transparent 30%,rgba(var(--glow),.4) 46%,transparent 62%),linear-gradient(200deg,var(--atmos-a),var(--atmos-b) 70%)}
.atmos--c::before{background:radial-gradient(85% 70% at 50% 0%,rgba(var(--glow),.6),transparent 62%),linear-gradient(180deg,var(--atmos-b),var(--atmos-a) 78%)}
.atmos--d::before{background:radial-gradient(70% 90% at 12% 50%,var(--atmos-c),transparent 58%),linear-gradient(145deg,var(--atmos-a),var(--atmos-b) 88%)}
.atmos--e::before{background:radial-gradient(56% 56% at 78% 74%,var(--atmos-c),transparent 56%),linear-gradient(20deg,var(--atmos-b),var(--atmos-a) 90%)}
.atmos--f::before{background:conic-gradient(from 210deg at 40% 30%,var(--atmos-c),transparent 40%,var(--atmos-b) 75%),linear-gradient(160deg,var(--atmos-a),var(--atmos-b))}

/* объект-силуэт внутри атмосферной панели */
.atmos__mark{
  position:absolute;inset:0;display:grid;place-items:center;z-index:2;
  font-family:var(--serif);font-size:clamp(46px,9vw,120px);
  color:var(--atmos-mark);letter-spacing:.14em;user-select:none;text-transform:uppercase;font-style:italic;
}

/* фотография с мягкой градацией в тоне темы */
.photo{position:relative;overflow:hidden;background:var(--bg-elevated)}
.photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.96) contrast(1.02)}
.photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(var(--veil),.04),rgba(var(--veil),.3));
}
.photo--soft::after{background:linear-gradient(180deg,rgba(var(--veil),.02),rgba(var(--veil),.16))}

/* --------------------------------------------------------------------------
   Шапка — плавающая панель; цвет задаёт тема (Jaquar — тёмный oxblood)
   -------------------------------------------------------------------------- */
.hdr{
  position:fixed;inset:16px 16px auto;z-index:90;
  transition:transform .5s cubic-bezier(.2,.7,.3,1),background .4s,border-color .4s;
}
.hdr__inner{
  display:flex;align-items:center;gap:clamp(16px,2.4vw,42px);
  height:66px;padding-inline:clamp(16px,2vw,28px);
  background:var(--glass);
  -webkit-backdrop-filter:blur(22px) saturate(1.3);
  backdrop-filter:blur(22px) saturate(1.3);
  border:1px solid var(--line);
  border-radius:var(--r-hdr);
  box-shadow:var(--hdr-shadow);
  max-width:1560px;margin:0 auto;
}
.hdr--scrolled .hdr__inner{background:var(--hdr-bg-2);border-color:var(--line-strong)}

.brand{display:flex;align-items:baseline;gap:9px;flex:none}
.brand__name{font-family:var(--logo-font);font-size:var(--logo-size);font-weight:var(--logo-weight);letter-spacing:var(--logo-track);color:var(--ivory);line-height:1}
.brand__sub{font-family:var(--label);font-size:9.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze)}

.nav{display:flex;align-items:center;gap:clamp(14px,1.8vw,30px);margin-inline:auto}
.nav__link{
  font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.01em;color:var(--muted);
  padding:6px 2px;position:relative;transition:color .35s;
}
.nav__link::after{
  content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--bronze);
  transition:right .4s cubic-bezier(.2,.7,.3,1);
}
.nav__link:hover,.nav__link[aria-current="page"]{color:var(--ivory)}
.nav__link:hover::after,.nav__link[aria-current="page"]::after{right:0}

.hdr__actions{display:flex;align-items:center;gap:10px;flex:none}

.icon-btn{
  width:40px;height:40px;display:grid;place-items:center;
  border:1px solid transparent;border-radius:var(--radius);
  color:var(--muted);transition:color .35s,border-color .35s,background .35s;
}
.icon-btn:hover{color:var(--bronze);border-color:var(--line)}
.icon-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.4}

.spec-btn{
  display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 16px;
  border:1px solid var(--line-strong);border-radius:var(--radius);
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ivory);
  transition:border-color .35s,color .35s,background .35s;white-space:nowrap;
}
.spec-btn:hover{border-color:var(--bronze);color:var(--bronze);background:var(--bronze-glow)}
.spec-btn__count{
  min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  background:var(--badge-bg);color:var(--badge-fg);
  font-size:10px;font-weight:600;letter-spacing:0;
  display:grid;place-items:center;
}
.spec-btn__count[hidden]{display:none}

.burger{display:none}

/* мобильное меню */
.drawer{
  position:fixed;inset:0;z-index:95;
  background:var(--drawer-bg);color:var(--ivory);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  display:flex;flex-direction:column;
  padding:24px var(--gutter) 40px;
  transform:translateY(-100%);transition:transform .5s cubic-bezier(.2,.7,.3,1);
  overflow-y:auto;
}
.drawer[data-open="true"]{transform:translateY(0)}
.drawer__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:48px}
.drawer__nav{display:flex;flex-direction:column;gap:6px}
.drawer__link{
  font-family:var(--serif);font-size:32px;line-height:1.3;color:var(--ink);font-weight:var(--h-weight);letter-spacing:var(--h-track);
  padding-block:8px;border-bottom:1px solid var(--line-faint);
}
.drawer__link:active{color:var(--bronze)}
.drawer__foot{margin-top:auto;padding-top:40px;display:flex;flex-direction:column;gap:16px}

/* мобильная закреплённая панель */
.mobile-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:88;display:none;
  gap:10px;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));
  background:var(--mbar-bg);color:var(--ivory);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  border-top:1px solid var(--line);
}
.mobile-bar .btn{flex:1;min-height:48px;padding-inline:14px;font-size:11px}

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */
.hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--bg-main)}
.hero--full{min-height:100svh}
.hero--compact{min-height:54vh}
.hero--compact .hero__veil{background:rgba(var(--canvas-rgb),.88)}
.hero__bg{position:absolute;inset:0;z-index:0}
.hero__bg img{width:100%;height:100%;object-fit:cover;filter:saturate(.96) contrast(1.02)}
.hero__veil{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg,rgba(var(--canvas-rgb),.97) 0%,rgba(var(--canvas-rgb),.94) 36%,rgba(var(--canvas-rgb),.62) 52%,rgba(var(--canvas-rgb),0) 72%),
    linear-gradient(180deg,rgba(var(--canvas-rgb),.35) 0%,rgba(var(--canvas-rgb),0) 22%);
}
.hero__inner{position:relative;z-index:2;width:100%;padding-block:clamp(56px,9vw,120px)}
.hero__title{margin-bottom:26px}
.hero__title span{display:block}
.hero__lede{margin-bottom:38px}
.hero__scroll{
  position:absolute;right:var(--gutter);bottom:34px;z-index:2;
  font-family:var(--label);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
  display:flex;align-items:center;gap:12px;
}
.hero__scroll::after{content:"";width:46px;height:1px;background:var(--bronze);opacity:.6}

/* --------------------------------------------------------------------------
   Полоса доверия под героем — только смыслы, без цифр
   -------------------------------------------------------------------------- */
.section--strip{padding-block:0;background:var(--bg-elevated)}
.trust{display:grid;grid-template-columns:repeat(4,1fr)}
.trust__item{padding:clamp(22px,2.4vw,32px) clamp(14px,1.8vw,28px);border-left:1px solid var(--line-faint)}
.trust__item:first-child{border-left:0;padding-left:0}
.trust__name{display:block;font-family:var(--serif);font-size:clamp(17px,1.5vw,21px);font-weight:var(--h-weight);line-height:1.2;color:var(--ivory);margin-bottom:7px}
.trust__note{display:block;font-size:12.5px;line-height:1.55;color:var(--muted)}

.hero__quiet{margin-top:20px}

/* --------------------------------------------------------------------------
   Карточки
   -------------------------------------------------------------------------- */
.card{
  position:relative;display:flex;flex-direction:column;
  border:1px solid var(--line);border-radius:var(--r-card);
  background:var(--bg-elevated);overflow:hidden;
  transition:border-color .5s,box-shadow .5s,transform .5s cubic-bezier(.2,.7,.3,1);
}
.card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-soft)}
.card__media{position:relative;display:block;aspect-ratio:4/5;overflow:hidden}
.card__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.3,1)}
.card:hover .card__media img{transform:scale(1.045)}
.card__body{padding:22px 22px 26px;display:flex;flex-direction:column;gap:9px;flex:1}
.card__kicker{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.card__title{font-family:var(--serif);font-size:23px;line-height:1.18;color:var(--ink);font-weight:var(--h-weight);letter-spacing:inherit;text-wrap:wrap}
.card__desc{
  font-size:13.5px;line-height:1.6;color:var(--muted);
  display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.card__foot{margin-top:auto;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.card__cta{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);display:inline-flex;gap:9px;align-items:center}
.card:hover .card__cta .btn__arrow{transform:translateX(5px)}

/* категория — крупный редакционный блок */
.cat-card{position:relative;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card);min-height:clamp(300px,34vw,440px);display:flex;align-items:flex-end;transition:border-color .5s}
.cat-card:hover{border-color:var(--line-strong)}
.cat-card__media{position:absolute;inset:0;z-index:0}
.cat-card__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.3,1)}
.cat-card:hover .cat-card__media img{transform:scale(1.05)}
.cat-card__veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(var(--veil),0) 22%,rgba(var(--veil),.42) 56%,rgba(var(--veil),.88) 100%)}
.cat-card__body{position:relative;z-index:2;padding:clamp(22px,2.4vw,34px);width:100%}
.cat-card__title{font-family:var(--serif);font-size:clamp(26px,2.8vw,38px);font-weight:var(--h-weight);margin-bottom:8px;line-height:1.65;letter-spacing:inherit;text-wrap:wrap}
.cat-card__meta{font-size:12px;color:var(--muted);margin-bottom:18px}

/* редакционный блок — большой, на всю ширину */
.editorial{display:grid;gap:clamp(24px,3vw,56px);align-items:center;grid-template-columns:1.1fr .9fr}
.editorial--flip{grid-template-columns:.9fr 1.1fr}
.editorial--flip .editorial__media{order:2}
.editorial__media{position:relative;aspect-ratio:16/11;border:1px solid var(--line-faint);overflow:hidden;border-radius:var(--r-card)}
.editorial__media img{width:100%;height:100%;object-fit:cover}
.editorial__body{display:flex;flex-direction:column;gap:20px}

/* бренд */
.brand-block{position:relative;min-height:clamp(320px,38vw,460px);display:flex;align-items:flex-end;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card);transition:border-color .5s}
.brand-block:hover{border-color:var(--line-strong)}
.brand-block .cat-card__veil{background:linear-gradient(180deg,rgba(var(--veil),.06) 8%,rgba(var(--veil),.52) 52%,rgba(var(--veil),.93) 100%)}
.brand-block__body{position:relative;z-index:2;padding:clamp(24px,2.6vw,38px);width:100%}
.brand-block__name{font-family:var(--serif);font-size:clamp(30px,3.4vw,46px);font-weight:var(--h-weight);letter-spacing:.02em;margin-bottom:10px;line-height:1.65;text-wrap:wrap}

/* --------------------------------------------------------------------------
   Проекты — редакционная раскладка: одна ведущая и три вторичных
   -------------------------------------------------------------------------- */
.spaces{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.4vw,22px)}
.space--lead{grid-column:1/-1;min-height:clamp(380px,52vw,620px)}
.space--lead .brand-block__name{font-size:clamp(34px,4.4vw,60px)}
.space--wide{grid-column:span 2;min-height:clamp(300px,30vw,420px)}
.space--narrow{grid-column:span 1;min-height:clamp(300px,30vw,420px)}
.space--band{grid-column:1/-1;min-height:clamp(240px,22vw,320px)}
.space--band .brand-block__body{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 40px}
.space--band .brand-block__name{margin-bottom:0}

/* единственный типографический жест на весь сайт */
.typo-gesture{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  font-family:var(--serif);font-style:italic;font-weight:var(--h-weight);
  font-size:clamp(120px,26vw,360px);line-height:1;
  color:var(--gesture);letter-spacing:.02em;
  white-space:nowrap;pointer-events:none;user-select:none;z-index:1;
}

/* --------------------------------------------------------------------------
   Финиши
   -------------------------------------------------------------------------- */
.finishes{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start}
.finish{display:flex;flex-direction:column;align-items:center;gap:8px;width:62px;text-align:center}
.finish__dot{
  width:34px;height:34px;border-radius:var(--r-swatch);
  border:1px solid var(--swatch-line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
  transition:transform .4s,box-shadow .4s,border-color .4s;
}
.finish[aria-pressed="true"] .finish__dot,.finish:hover .finish__dot{
  transform:scale(1.1);border-color:var(--mark);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 0 0 3px var(--bronze-glow);
}
.finish__label{font-size:10.5px;line-height:1.3;color:var(--muted);letter-spacing:.02em}
.finish[aria-pressed="true"] .finish__label{color:var(--ivory)}

.finish-row{display:flex;gap:7px}
.finish-row i{width:15px;height:15px;border-radius:var(--r-swatch);border:1px solid var(--swatch-line);display:block}

/* градиенты покрытий */
.f-chrome{background:linear-gradient(145deg,#F2F4F5,#AEB5BA 42%,#E2E7EA 58%,#868D93)}
.f-gold{background:linear-gradient(145deg,#F7E6B8,#C7A15A 45%,#EFDCA2 60%,#96742B)}
.f-gold-matt{background:linear-gradient(145deg,#E3CE9A,#B2914F 50%,#CDB477)}
.f-rose{background:linear-gradient(145deg,#F3D3C0,#C08B6E 48%,#E5BCA4 62%,#96634A)}
.f-black-matt{background:linear-gradient(145deg,#41464A,#16191B 55%,#2C3033)}
.f-black-chrome{background:linear-gradient(145deg,#5A6064,#212528 50%,#3E4447)}
.f-bronze{background:linear-gradient(145deg,#C09C72,#75552F 48%,#A3824F 62%,#533A20)}
.f-copper{background:linear-gradient(145deg,#D2A180,#8C5434 50%,#B37B55)}
.f-steel{background:linear-gradient(145deg,#DEE2E4,#A2A9AD 50%,#C6CCCF)}
/* Чёрный жемчуг PVD (BLP) — темнее чёрного матового и с жемчужным отливом.
   Светлота выведена по 14 снимкам каталога с калибровкой по белому матовому
   и по чёрному хрому: 0.031 в линейном пространстве. */
.f-black-pearl{background:linear-gradient(145deg,#3A3C41,#0E0F12 55%,#23252A)}
/* Мрамор (MBT) — не покрытие, а материал раковины; в легенде Artize стоит
   рядом с покрытиями, поэтому и у нас образец в том же ряду. */
.f-marble{background:linear-gradient(145deg,#F3F1EC,#D8D3C9 45%,#EDEAE3 60%,#BDB7AB)}
/* покрытие без названия: средний сегмент артикула у части позиций — код
   материала, а не цвета. Кружок нейтральный, подписи нет. */
.f-none{background:linear-gradient(145deg,#E8E6E1,#CFCAC2)}
.f-graphite{background:linear-gradient(145deg,#6E7376,#33383B 52%,#4E5356)}
.f-white{background:linear-gradient(145deg,#FFFFFF,#ECEDEE 60%,#D6D8D9)}

/* --------------------------------------------------------------------------
   Поиск
   -------------------------------------------------------------------------- */
.searchbar{position:relative;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line-strong);padding-bottom:16px}
.searchbar input{
  flex:1;background:none;border:0;outline:none;
  font-family:var(--serif);font-size:clamp(24px,3.4vw,42px);font-weight:var(--h-weight);color:var(--ink);
}
.searchbar input::placeholder{color:var(--placeholder)}
.searchbar svg{width:22px;height:22px;stroke:var(--bronze);fill:none;stroke-width:1.3;flex:none}

.filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.chip{
  padding:9px 16px;border:1px solid var(--line);border-radius:var(--r-ctl);
  background:var(--chip-bg);
  font-size:12px;letter-spacing:.03em;color:var(--ivory);
  transition:border-color .35s,color .35s,background .35s;
}
.chip:hover{border-color:var(--line-strong);background:var(--chip-hover-bg);color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--fill);color:var(--on-fill);border-color:var(--fill);font-weight:500}

/* --------------------------------------------------------------------------
   Спецификация
   -------------------------------------------------------------------------- */
.spec-list{display:flex;flex-direction:column;border-top:1px solid var(--line-faint)}
.spec-item{
  display:grid;grid-template-columns:92px 1fr auto auto;gap:20px;align-items:center;
  padding:20px 0;border-bottom:1px solid var(--line-faint);
}
.spec-item__media{aspect-ratio:1;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card)}
.spec-item__media img{width:100%;height:100%;object-fit:cover}
.spec-item__name{font-family:var(--serif);font-size:20px;font-weight:var(--h-weight);line-height:1.25;color:var(--ink)}
.spec-item__meta{font-size:11.5px;color:var(--muted);letter-spacing:.04em;margin-top:5px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--radius)}
.qty button{width:34px;height:36px;display:grid;place-items:center;color:var(--muted);transition:color .3s}
.qty button:hover{color:var(--bronze)}
.qty span{min-width:34px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}
.spec-remove{font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);transition:color .3s;white-space:nowrap}
.spec-remove:hover{color:var(--bronze)}

.panel{
  background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--r-panel);
  padding:clamp(22px,2.4vw,32px);
}

/* --------------------------------------------------------------------------
   Формы
   -------------------------------------------------------------------------- */
.form{display:flex;flex-direction:column;gap:22px}
.field{display:flex;flex-direction:column;gap:9px}
.field__label{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.field__control{
  background:transparent;border:0;border-bottom:1px solid var(--line-strong);
  padding:12px 0;font-size:16px;color:var(--ivory);
  transition:border-color .35s;
}
.field__control:focus{outline:none;border-color:var(--fill);box-shadow:0 1px 0 0 var(--fill)}
.field__control::placeholder{color:var(--placeholder)}
textarea.field__control{resize:vertical;min-height:94px;line-height:1.6}
select.field__control{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--bronze) 50%),linear-gradient(135deg,var(--bronze) 50%,transparent 50%);background-position:calc(100% - 13px) 50%,calc(100% - 8px) 50%;background-size:5px 5px;background-repeat:no-repeat}
select.field__control option{background:var(--bg-secondary);color:var(--ivory)}
.field__error{font-size:12.5px;color:var(--danger-text);display:none}
.field[data-invalid="true"] .field__control{border-color:var(--danger);box-shadow:0 1px 0 0 var(--danger)}
.field[data-invalid="true"] .field__error{display:block}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* --------------------------------------------------------------------------
   Состояния
   -------------------------------------------------------------------------- */
.state{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;
  text-align:center;padding:clamp(56px,9vw,120px) 0;
}
.state__title{font-family:var(--serif);font-size:clamp(26px,3.4vw,40px);font-weight:var(--h-weight)}
.state__text{color:var(--muted);max-width:44ch}

.skeleton{position:relative;overflow:hidden;background:var(--bg-elevated);border:1px solid var(--line-faint);border-radius:var(--r-card)}
.skeleton::after{
  content:"";position:absolute;inset:0;transform:translateX(-100%);
  background:linear-gradient(90deg,transparent,var(--bronze-glow),transparent);
  animation:sweep 1.5s infinite;
}
@keyframes sweep{100%{transform:translateX(100%)}}
.skeleton--card{aspect-ratio:4/5}
.skeleton--line{height:12px;border-radius:2px}

/* появление секций */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .9s cubic-bezier(.2,.7,.3,1),transform .9s cubic-bezier(.2,.7,.3,1)}
.reveal.is-in,html[data-reveal-fallback] .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* --------------------------------------------------------------------------
   Подвал
   -------------------------------------------------------------------------- */
.ftr{border-top:1px solid var(--line-faint);background:var(--ftr-bg);padding-block:clamp(48px,6vw,80px) 34px}
.ftr__top{display:flex;flex-wrap:wrap;gap:40px 64px;justify-content:space-between;align-items:flex-start}
.ftr__about{max-width:34ch;display:flex;flex-direction:column;gap:14px}
.ftr__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 48px;flex:1 1 620px}
.ftr__cols--2{grid-template-columns:repeat(2,1fr);flex:0 1 460px}
.ftr__col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.ftr__head{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);margin:0 0 4px}
.ftr__col a{font-size:13.5px;line-height:1.4;color:var(--muted);transition:color .35s}
.ftr__col a:hover{color:var(--bronze)}
.ftr__nav{display:flex;flex-wrap:wrap;gap:12px 40px}
.ftr__nav a{font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);transition:color .35s}
.ftr__nav a:hover{color:var(--bronze)}
.ftr__bottom{
  margin-top:clamp(36px,4vw,56px);padding-top:22px;border-top:1px solid var(--line-faint);
  display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;
  font-size:11.5px;color:var(--muted);letter-spacing:.04em;
}

/* --------------------------------------------------------------------------
   Хлебные крошки
   -------------------------------------------------------------------------- */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}
.crumbs a{transition:color .3s}
.crumbs a:hover{color:var(--bronze)}
.crumbs span[aria-current]{color:var(--ivory)}
.crumbs i{opacity:.4;font-style:normal}

/* --------------------------------------------------------------------------
   Адаптив
   -------------------------------------------------------------------------- */
@media (max-width:1180px){
  .grid--6{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:1024px){
  .trust{grid-template-columns:repeat(2,1fr)}
  .trust__item:nth-child(3){border-left:0;padding-left:0}
  .spaces{grid-template-columns:repeat(2,1fr)}
  .space--wide,.space--narrow{grid-column:span 1}
  .nav{display:none}
  .burger{display:grid;place-items:center;width:40px;height:40px;color:var(--ivory)}
  .burger span{display:block;width:19px;height:1px;background:currentColor;position:relative}
  .burger span::before,.burger span::after{content:"";position:absolute;left:0;width:19px;height:1px;background:currentColor}
  .burger span::before{top:-6px}.burger span::after{top:6px}
  .hdr__actions{margin-left:auto}
  .editorial,.editorial--flip{grid-template-columns:1fr}
  .editorial--flip .editorial__media{order:0}
  .grid--3{grid-template-columns:repeat(2,1fr)}
}

/* --------------------------------------------------------------------------
   ЧИТАЕМОСТЬ НА ТЕЛЕФОНЕ — текст от 16px, тач-цели от 44px
   -------------------------------------------------------------------------- */
@media (max-width:760px){
  .lede{font-size:16.5px;line-height:1.6}
  .body-text{font-size:16px!important;line-height:1.6}
  .card__desc{font-size:16px;line-height:1.5}
  .state__text{font-size:16px}
  .spec-item__meta{font-size:14px}
  .trust__note{font-size:16px}
  .cat-card__meta{font-size:16px}
  .caption{font-size:16px}
  .eyebrow{font-size:11.5px}
  .field__label,.ftr__head{font-size:11.5px}
  .card__kicker,.card__cta{font-size:11.5px}

  /* тач-цели: минимум 44px по высоте */
  .icon-btn,.burger{width:44px;height:44px}
  .brand{min-height:44px;align-items:center}
  .btn--quiet{min-height:44px;display:inline-flex;align-items:center;width:auto;justify-content:flex-start}
  .chapter__kicker{font-size:11.5px}
  .ftr__col{gap:0}
  .ftr__col a{min-height:44px;display:flex;align-items:center}
  .crumbs a,.crumbs span{min-height:44px;display:inline-flex;align-items:center}
  .chip{min-height:44px;display:inline-flex;align-items:center}
  .qty button{width:44px;height:44px}
  .spec-remove{min-height:44px;display:inline-flex;align-items:center}
  .finish{width:auto;min-width:62px}
  .finish__dot{width:44px;height:44px}
}

@media (max-width:760px){
  :root{--hdr-top:10px;--hdr-h:58px;--mbar-h:calc(68px + env(safe-area-inset-bottom,0px))}
  .shell{padding-bottom:var(--mbar-h)}
  .ftr__cols{grid-template-columns:1fr 1fr;gap:26px 28px}
  .trust{grid-template-columns:1fr}
  .trust__item{border-left:0;padding-left:0;border-top:1px solid var(--line-faint)}
  .trust__item:first-child{border-top:0}
  .spaces{grid-template-columns:1fr}
  .space--lead,.space--wide,.space--narrow,.space--band{grid-column:1/-1;min-height:clamp(280px,64vw,380px)}
  .typo-gesture{font-size:clamp(90px,42vw,180px)}
  body{font-size:16px;line-height:1.6}
  .hdr{inset:10px 10px auto}
  /* плотная шапка на телефоне: контент за ней технически проходит,
     но не читается. Цвета — из палитры, меняется только плотность. */
  .hdr__inner{
    height:58px;
    background:var(--hdr-bg);
    -webkit-backdrop-filter:blur(10px) saturate(1.15);
    backdrop-filter:blur(10px) saturate(1.15);
  }
  .hdr--scrolled .hdr__inner{background:var(--hdr-bg-2)}
  .grid--2,.grid--3,.grid--6{grid-template-columns:1fr}
  .hero{min-height:92svh}
  .hero--compact{min-height:54vh}
  .mobile-bar{display:flex}
  .spec-btn{display:none}
  main{padding-bottom:0}
  .spec-item{grid-template-columns:70px 1fr;gap:14px}
  .spec-item .qty{grid-column:2;justify-self:start}
  .spec-item .spec-remove{grid-column:2;justify-self:start}
  .section-head{flex-direction:column;align-items:flex-start}
  .hero__scroll{display:none}
  .btn{width:100%}
  .btn-row .btn{width:auto;flex:1 1 auto;min-width:190px}
  .ftr__top{flex-direction:column}
}

@media (max-width:390px){
  .ftr__cols{grid-template-columns:1fr}
  .brand__name{font-size:18px}
  .brand__sub{font-size:8px}
  .drawer__link{font-size:29px}
}

/* печать — на всякий случай */
@media print{
  .hdr,.mobile-bar,.drawer{display:none!important}
  body{background:#fff;color:#111}
}

/* ==========================================================================
   РЕФЕРЕНС: главная — капсульная навигация, главы, солитер, сцены, финал
   Палитра и шрифты прежние; здесь только композиция.
   ========================================================================== */

/* капсульная шапка — только desktop/планшет, мобильная не меняется */
@media (min-width:761px){
  .hdr__inner{border-radius:var(--r-hdr);padding-inline:clamp(22px,2.2vw,34px)}
  .spec-btn{border-radius:var(--r-ctl)}
  .icon-btn{border-radius:var(--r-ctl)}
}

/* --- служебная строка внизу героя --- */
.ticker{
  position:absolute;left:0;right:0;bottom:0;z-index:3;
  display:flex;flex-wrap:wrap;gap:8px clamp(18px,3vw,48px);
  align-items:center;justify-content:space-between;
  padding:14px var(--gutter) calc(14px + env(safe-area-inset-bottom,0px));
  border-top:1px solid var(--line-faint);
  background:rgba(var(--canvas-rgb),.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
.ticker__item{
  font-family:var(--label);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  display:inline-flex;align-items:center;gap:9px;white-space:nowrap;
}
.ticker__num{color:var(--bronze)}
.ticker__dot{width:5px;height:5px;border-radius:50%;background:var(--bronze);flex:none}

/* --- вступление раздела: заголовок слева, абзац справа --- */
.intro{
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(20px,3vw,64px);
  align-items:end;margin-bottom:clamp(40px,5vw,78px);
}
.intro__rule{height:1px;background:var(--line);margin-top:22px;grid-column:1/-1}
.intro--rule{margin-bottom:0}

/* --- три главы: асимметричные развороты --- */
.chapter{
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(22px,3.4vw,68px);align-items:center;
  padding-block:clamp(34px,4.4vw,72px);
  border-top:1px solid var(--line-faint);
}
.chapter:first-child{border-top:0}
.chapter--flip .chapter__body{order:2}
.chapter__body{display:flex;flex-direction:column;gap:16px}
.chapter__num{
  font-family:var(--serif);font-size:clamp(30px,3vw,44px);font-weight:var(--h-weight);
  color:var(--bronze);line-height:1;letter-spacing:.04em;
}
.chapter__title{font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(26px,3vw,42px);line-height:1.1;margin:0}
.chapter__kicker{font-family:var(--label);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);margin:6px 0 0}
.chapter__text{color:var(--muted);max-width:52ch;margin:0;font-size:inherit;line-height:1.7}

/* мелкие технические метки */
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tag{
  border:1px solid var(--line);border-radius:2px;background:var(--chip-bg);
  padding:7px 12px;font-family:var(--label);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
}

/* кадр главы с подписью снизу */
.shot{position:relative;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card)}
.shot--tall{aspect-ratio:1/1.12}
.shot--wide{aspect-ratio:16/11}
.shot__cap{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:space-between;
  padding:12px 14px;background:linear-gradient(180deg,rgba(var(--veil),0),rgba(var(--veil),.9));
  font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
}
.shot__cap b{color:var(--bronze);font-weight:400}

/* --- солитер: один предмет крупно --- */
.solit{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3.4vw,64px);align-items:center}
.solit__media{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-card);aspect-ratio:1;box-shadow:var(--shadow-soft)}
.solit__badge{
  position:absolute;left:14px;bottom:14px;z-index:2;
  border:1px solid var(--line);border-radius:var(--r-ctl);padding:7px 14px;
  background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);
}
.solit__body{display:flex;flex-direction:column;gap:22px}
.solit__row{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;justify-content:space-between}
.solit__label{font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.solit__value{font-family:var(--label);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--bronze)}

/* --- три бренда: колонки текста, без карточек --- */
.brandcols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,56px)}
.brandcol{display:flex;flex-direction:column;gap:14px;padding-top:26px;border-top:1px solid var(--line)}
.brandcol__idx{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.brandcol__name{font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(28px,2.8vw,40px);letter-spacing:.04em;margin:0;line-height:1}
.brandcol__tag{font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0}
.brandcol__text{color:var(--muted);margin:0;line-height:1.7}
.brandcol .btn--quiet{margin-top:auto;padding-top:10px}

/* --- широкие сцены --- */
.scene{position:relative;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card);min-height:clamp(340px,44vw,560px);display:flex;align-items:flex-end}
.scene + .scene{margin-top:clamp(16px,1.8vw,26px)}
.scene__media{position:absolute;inset:0;z-index:0}
.scene__veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(var(--veil),.06) 24%,rgba(var(--veil),.56) 62%,rgba(var(--veil),.94) 100%)}
.scene__media,.scene__veil,.scene__body{display:block}
.scene__title,.scene__text{display:block}
.scene .card__cta{display:inline-flex}
.scene__body{position:relative;z-index:2;padding:clamp(24px,3vw,48px);max-width:72ch}
.scene__meta span + span::before{content:'·';margin-right:10px;opacity:.6}
.scene__meta{display:flex;flex-wrap:wrap;gap:6px 0;font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);margin-bottom:14px}
.scene__title{font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(23px,2.6vw,36px);line-height:1.2;margin:0 0 12px;color:var(--ink)}
.scene__text{color:var(--muted);margin:0 0 20px;max-width:56ch;line-height:1.65}

/* --- финал: шоурум и форма --- */
.finale{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(26px,3.4vw,64px);align-items:start}
.finale__body{display:flex;flex-direction:column;gap:20px}
.finale__list{display:flex;flex-direction:column;gap:16px;margin-top:6px}
.finale__item{padding-top:16px;border-top:1px solid var(--line-faint)}
.finale__k{display:block;font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);margin-bottom:6px}
.finale__v{display:block;color:var(--muted)}
.finale__card{border:1px solid var(--line);border-radius:var(--r-panel);background:var(--bg-elevated);box-shadow:var(--shadow-soft);padding:clamp(22px,2.4vw,34px)}
.finale__cardhead{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;justify-content:space-between;margin-bottom:22px}

@media (max-width:1024px){
  .intro,.solit,.finale{grid-template-columns:1fr}
  .brandcols{grid-template-columns:1fr}
  .chapter{grid-template-columns:1fr}
  .chapter--flip .chapter__body{order:0}
  .shot--tall{aspect-ratio:16/11}
}
@media (min-width:761px) and (max-width:1024px){
  .hero__veil{background:linear-gradient(90deg,rgba(var(--canvas-rgb),.97) 0%,rgba(var(--canvas-rgb),.93) 58%,rgba(var(--canvas-rgb),.72) 82%,rgba(var(--canvas-rgb),.5) 100%)}
}
@media (max-width:760px){
  .hero{flex-wrap:wrap}
  .hero--full{min-height:auto}
  .hero--full .hero__bg{bottom:auto;height:calc(var(--hdr-safe) + 46vh)}
  .hero--full .hero__inner{padding-top:calc(var(--hdr-safe) + 38vh)}
  .hero--full .hero__veil{background:linear-gradient(180deg,rgba(var(--canvas-rgb),.25) 0%,rgba(var(--canvas-rgb),0) calc(var(--hdr-safe) + 4vh),rgba(var(--canvas-rgb),0) calc(var(--hdr-safe) + 24vh),rgba(var(--canvas-rgb),1) calc(var(--hdr-safe) + 44vh))}
  .hero--compact .hero__veil{background:rgba(var(--canvas-rgb),.9)}
  .hero__inner{padding-top:calc(var(--hdr-safe) + 22px)}
  .ticker{position:static;width:100%;background:none;border-top:1px solid var(--line-faint);padding:16px var(--gutter) 22px;flex-direction:column;align-items:flex-start;gap:10px}
  .ticker__item{white-space:normal}
  .scene{min-height:clamp(300px,86vw,440px)}
}

/* ==========================================================================
   ВНУТРЕННИЕ СТРАНИЦЫ — у каждой своя композиция в том же языке
   ========================================================================== */

/* шапка страницы без фотографии */
.pagehead{padding-top:calc(var(--hdr-safe) + clamp(26px,4vw,64px));padding-bottom:clamp(24px,3vw,44px);border-bottom:1px solid var(--line-faint)}
.pagehead__rule{height:1px;background:var(--line);margin-top:clamp(20px,2.4vw,32px)}

/* КАТАЛОГ — нумерованный указатель разделов */
.index{border-top:1px solid var(--line)}
.idx{
  display:grid;grid-template-columns:70px 1.2fr 1.4fr auto 150px;
  gap:clamp(14px,2vw,34px);align-items:center;
  padding:clamp(18px,2.2vw,28px) 0;border-bottom:1px solid var(--line-faint);
  transition:background .4s;
}
.idx:hover{background:var(--bronze-glow)}
.idx__n{font-family:var(--serif);font-size:clamp(20px,2vw,28px);font-weight:var(--h-weight);color:var(--bronze);line-height:1}
.idx__t{font-family:var(--serif);font-size:clamp(22px,2.4vw,32px);font-weight:var(--h-weight);line-height:1.15;color:var(--ink);margin:0}
.idx__d{color:var(--muted);margin:0;line-height:1.6}
.idx__m{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);white-space:nowrap}
.idx__img{position:relative;aspect-ratio:3/2;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card)}

/* КАТЕГОРИЯ — липкая колонка слева, серии справа */
.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,3.4vw,68px);align-items:start}
.split__aside{position:sticky;top:calc(var(--hdr-safe) + 16px);display:flex;flex-direction:column;gap:20px}
.split__rule{height:1px;background:var(--line-faint)}

/* ТОВАР — липкий кадр и строки характеристик */
.pdp{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,3.4vw,64px);align-items:start}
.pdp__media{position:sticky;top:calc(var(--hdr-safe) + 16px);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;aspect-ratio:4/5}
.pdp__body{display:flex;flex-direction:column;gap:22px}
.specrow{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line-faint)}
.specrow__k{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.specrow__v{color:var(--muted);text-align:right;max-width:52ch}

/* БРЕНДЫ — три полноширинные главы */
.bchapter{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,3.4vw,64px);align-items:center;padding-block:clamp(30px,4vw,64px);border-top:1px solid var(--line-faint)}
.bchapter--flip .bchapter__body{order:2}
.bchapter__body{display:flex;flex-direction:column;gap:16px}
.bchapter__name{font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(34px,4.4vw,64px);letter-spacing:.04em;margin:0;line-height:1}
.bchapter__media{position:relative;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card);aspect-ratio:4/3}

/* ПРОЕКТЫ — досье типов пространств */
.dossier{display:grid;grid-template-columns:1fr;gap:clamp(18px,2.2vw,30px)}
.dos{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(20px,3vw,52px);align-items:center;padding-block:clamp(22px,3vw,44px);border-top:1px solid var(--line-faint)}
.dos--flip .dos__body{order:2}
.dos__media{position:relative;overflow:hidden;border:1px solid var(--line-faint);border-radius:var(--r-card);aspect-ratio:16/10}
.dos__body{display:flex;flex-direction:column;gap:14px}
.dos__n{font-family:var(--serif);font-size:clamp(22px,2.2vw,32px);font-weight:var(--h-weight);color:var(--bronze);line-height:1}
.dos__t{font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(24px,2.8vw,38px);margin:0;line-height:1.12}
.dos .specrow{flex-direction:column;gap:6px}
.dos .specrow__v{text-align:left;max-width:none}

/* ШОУРУМ — полоса кадра, три причины, форма */
.band{position:relative;overflow:hidden;border-radius:var(--r-card);border:1px solid var(--line-faint);aspect-ratio:21/9}
.reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,44px)}
.reason{padding-top:22px;border-top:1px solid var(--line)}
.reason__n{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);display:block;margin-bottom:10px}

/* ЗАЯВКА — шаги слева, форма справа */
.steps{display:flex;flex-direction:column;gap:18px}
.step{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start;padding-top:16px;border-top:1px solid var(--line-faint)}
.step__n{font-family:var(--serif);font-size:24px;font-weight:var(--h-weight);color:var(--bronze);line-height:1.1}
.step__t{display:block;color:var(--ivory);margin-bottom:5px}
.step__d{display:block;color:var(--muted);font-size:14px;line-height:1.6}

/* СПЕЦИФИКАЦИЯ — документ и липкая сводка */
.doc{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(24px,3vw,56px);align-items:start}
.doc__aside{position:sticky;top:calc(var(--hdr-safe) + 16px)}

@media (max-width:1024px){
  .idx{grid-template-columns:52px 1fr 110px;grid-auto-rows:auto}
  .idx__d{grid-column:2/-1}
  .idx__img{display:none}
  .split,.pdp,.bchapter,.dos,.doc{grid-template-columns:1fr}
  .split__aside,.pdp__media,.doc__aside{position:static}
  .bchapter--flip .bchapter__body,.dos--flip .dos__body{order:0}
  .reasons{grid-template-columns:1fr}
}
@media (max-width:760px){
  /* хлебные крошки одной строкой — разделитель не переносится */
  .crumbs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .crumbs::-webkit-scrollbar{display:none}
  .crumbs a,.crumbs span,.crumbs i{white-space:nowrap;flex:none}
  .idx{grid-template-columns:44px 1fr;gap:10px 14px}
  .idx__m{grid-column:2/-1}
  .band{aspect-ratio:4/3}
}

/* --- переключатель языка --- */
.lang{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--r-ctl);overflow:hidden;flex:none}
.lang__b{
  padding:0 10px;height:30px;min-width:34px;
  font-family:var(--label);font-size:11px;letter-spacing:.08em;font-weight:600;color:var(--muted);
  background:none;border:0;cursor:pointer;transition:color .3s,background .3s;
}
.lang__b + .lang__b{border-left:1px solid var(--line-faint)}
.lang__b:hover{color:var(--ivory)}
.lang__b[aria-pressed="true"]{background:var(--fill);color:var(--on-fill)}
.lang--wide{width:100%;justify-content:stretch;margin-bottom:26px;border-radius:var(--r-ctl)}
.lang--wide .lang__b{flex:1;height:46px;font-size:12px;letter-spacing:.2em}
@media (max-width:1024px){ .hdr__actions .lang{display:none} }

/* ==========================================================================
   Варианты покрытий и рекомендованный комплект
   ========================================================================== */

/* честная подпись под кадром покрытия */
.finish-note{
  margin:10px 0 0;font-size:11.5px;line-height:1.5;color:var(--muted);
  letter-spacing:.02em;max-width:44ch;
}
.finish-note:empty{display:none}

/* --- тихая подсказка рядом со спецификацией --- */
.rec-hint{
  margin-top:22px;padding:16px 18px;
  border:1px solid var(--line-faint);border-radius:var(--radius);
  background:linear-gradient(180deg,var(--bronze-glow),transparent);
}
.rec-hint__t{margin:0 0 4px;font-family:var(--serif);font-weight:var(--h-weight);font-size:18px;color:var(--ink);letter-spacing:.01em}
.rec-hint__d{margin:0 0 10px;font-size:12.5px;line-height:1.6;color:var(--muted)}
.rec-hint__cta{
  display:inline-flex;align-items:center;gap:8px;min-height:32px;
  background:none;border:0;padding:0;cursor:pointer;
  font-family:var(--label);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--bronze);transition:color .3s;
}
.rec-hint__cta:hover{color:var(--ink)}
.rec-hint__cta svg{width:14px;height:14px}

/* --- компактное уведомление --- */
.reco-notice{
  position:fixed;right:22px;bottom:22px;z-index:70;width:min(320px,calc(100vw - 44px));
  padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);
  background:var(--bg-elevated);box-shadow:var(--shadow-deep);
  opacity:0;transform:translateY(12px);transition:opacity .35s,transform .35s;
}
.reco-notice[data-in="true"]{opacity:1;transform:none}
.reco-notice__t{margin:0 0 12px;font-family:var(--serif);font-weight:var(--h-weight);font-size:18px;line-height:1.3;color:var(--ink)}
.reco-notice__row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.btn--sm{min-height:38px;padding:0 16px;font-size:10.5px}
.reco-notice__later{
  background:none;border:0;padding:0;cursor:pointer;font-family:inherit;
  font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);transition:color .3s;
}
.reco-notice__later:hover{color:var(--ink)}

/* --- панель --- */
.reco-wrap{position:fixed;inset:0;z-index:90}
.reco-veil{position:absolute;inset:0;background:rgba(var(--veil),.42);opacity:0;transition:opacity .3s}
.reco-wrap[data-in="true"] .reco-veil{opacity:1}
.reco{
  position:absolute;top:0;right:0;bottom:0;
  width:clamp(460px,50vw,900px);
  display:flex;flex-direction:column;
  background:var(--bg-secondary);border-left:1px solid var(--line);
  transform:translateX(100%);transition:transform .34s cubic-bezier(.22,.61,.36,1);
}
.reco-wrap[data-in="true"] .reco{transform:none}
.reco__handle{display:none}
.reco__head{position:relative;padding:clamp(26px,3vw,40px) clamp(24px,3vw,44px) 20px;border-bottom:1px solid var(--line-faint)}
.reco__title{margin:6px 0 8px;font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(24px,2.6vw,34px);line-height:1.15;color:var(--ink)}
.reco__sub{margin:0;font-size:12.5px;line-height:1.6;color:var(--muted);max-width:52ch}
.reco__close{
  position:absolute;top:18px;right:18px;width:40px;height:40px;
  background:none;border:1px solid var(--line);border-radius:var(--r-ctl);
  color:var(--muted);font-size:22px;line-height:1;cursor:pointer;transition:color .3s,border-color .3s;
}
.reco__close:hover{color:var(--ink);border-color:var(--line-strong)}
.reco__list{
  list-style:none;margin:0;padding:8px clamp(24px,3vw,44px);
  overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch;
}
.reco__foot{
  display:flex;gap:12px;flex-wrap:wrap;align-items:center;
  padding:18px clamp(24px,3vw,44px) calc(18px + env(safe-area-inset-bottom,0px));
  border-top:1px solid var(--line-faint);background:var(--bg-elevated);
}

/* --- карточка рекомендации --- */
.rec-card{
  display:grid;grid-template-columns:22px 92px 1fr auto;align-items:center;gap:16px;
  padding:16px 0;border-bottom:1px solid var(--line-faint);
}
.rec-card[data-added="true"]{opacity:.55}
.rec-card__pick{display:flex;align-items:center;justify-content:center;cursor:pointer}
.rec-card__pick input{
  appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:0;
  border:1px solid var(--line);border-radius:4px;background:none;cursor:pointer;transition:background .2s,border-color .2s;
}
.rec-card__pick input:checked{background:var(--fill);border-color:var(--fill)}
.rec-card__pick input:disabled{opacity:.4;cursor:default}
.rec-card__media{
  display:block;width:92px;aspect-ratio:1;border-radius:var(--radius);
  overflow:hidden;border:1px solid var(--line-faint);
}
.rec-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.rec-card__body{display:flex;flex-direction:column;gap:4px;min-width:0}
.rec-card__kicker{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.rec-card__name{font-family:var(--serif);font-weight:var(--h-weight);font-size:19px;line-height:1.25;color:var(--ink)}
.rec-card__finish{font-size:12px;color:var(--muted)}
.rec-card__why{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.rec-why{
  display:inline-flex;align-items:center;padding:4px 10px;
  border:1px solid var(--line-faint);border-radius:var(--r-ctl);
  font-size:11px;letter-spacing:.03em;color:var(--muted);white-space:nowrap;
}
.rec-card__add{
  min-height:44px;padding:0 16px;flex:none;
  background:none;border:1px solid var(--line-strong);border-radius:var(--r-btn);cursor:pointer;
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink);transition:border-color .3s,color .3s,background .3s;
}
.rec-card__add:hover{border-color:var(--ghost-hover-line);background:var(--ghost-hover-bg);color:var(--ink)}
.rec-card[data-added="true"] .rec-card__add{border-color:var(--line-faint);color:var(--muted);cursor:default}

/* --- mobile: шторка снизу --- */
@media (max-width:760px){
  .reco-notice{right:14px;left:14px;width:auto;bottom:calc(var(--mbar-h) + 14px)}
  .reco{
    top:auto;left:0;right:0;bottom:0;width:auto;
    max-height:86vh;border-left:0;border-top:1px solid var(--line);
    border-radius:var(--radius) var(--radius) 0 0;
    transform:translateY(100%);
  }
  .reco__handle{
    display:block;width:46px;height:4px;margin:10px auto 2px;
    border-radius:999px;background:var(--line);
  }
  .reco__head{padding-top:12px}
  .reco__close{top:10px;right:12px;width:44px;height:44px}
  .rec-card{grid-template-columns:22px 74px 1fr;gap:12px;row-gap:12px}
  .rec-card__media{width:74px}
  .rec-card__add{grid-column:2/-1;justify-self:start}
  .reco__foot .btn{flex:1 1 auto;min-width:132px}
}

/* --- вторичная ссылка на официальный сайт бренда --- */
.brand-site{margin:16px 0 0}
.brand-site a{
  display:inline-flex;align-items:center;gap:7px;min-height:44px;
  font-family:var(--label);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);text-decoration:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s;
}
.brand-site a:hover{color:var(--ink);border-bottom-color:var(--line)}

/* --- список брендов в боковой колонке страницы бренда --- */
.blist{
  display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start;
  padding:14px 0;border-bottom:1px solid var(--line-faint);text-decoration:none;
}
.blist__n{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--bronze);padding-top:3px}
.blist__b{display:flex;flex-direction:column;gap:3px;min-width:0}
.blist__t{font-family:var(--serif);font-weight:var(--h-weight);font-size:20px;color:var(--ink)}
.blist__m{font-size:12px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.blist[aria-current="page"] .blist__t{color:var(--bronze)}
.blist:hover .blist__t{color:var(--bronze)}
/* фон не прокручивается, пока открыта панель рекомендаций */
html[data-reco-lock]{overflow:hidden}

/* ==========================================================================
   Единый capsule-язык управления.
   Овальными становятся ТОЛЬКО элементы управления: кнопки, чипы, теги,
   счётчики. Карточки, фото-контейнеры и крупные блоки не трогаем,
   свотчи покрытий остаются круглыми.
   ========================================================================== */
/* Единый принцип формы (заменяет прежнее «всё капсулой»):
   · капсула 999px — шапка и КОРОТКИЕ контролы: чипы, теги, счётчики,
     языки, кнопка корзины в шапке, компактный степпер;
   · 12px — обычные кнопки, у которых может быть длинный текст;
   · 16–20px — панели, уведомления, подсказки: скруглённый прямоугольник,
     а не пилюля. Контентные карточки сохраняют утверждённую форму. */
/* значения --r-ctl / --r-btn / --r-card / --r-panel — в блоке темы */
.btn{ border-radius:var(--r-btn) }
.btn--quiet{ border-radius:0 }
.qty,.tag,.chip,.blist__n{ border-radius:var(--r-ctl) }
.tag{ padding-inline:14px }
.qty button:first-child{ padding-left:4px }
.qty button:last-child{ padding-right:4px }
.rec-hint__cta{ border-radius:0 }

/* ==========================================================================
   Выбор покрытия: активный вариант и режим сравнения
   ========================================================================== */
.finish[aria-pressed="true"] .finish__dot{
  transform:scale(1.08);
  border-color:var(--swatch-line);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.4),
    0 0 0 2px var(--bg-main),
    0 0 0 4px var(--mark);
}
.finish__compare{
  position:absolute;top:-6px;right:-4px;width:18px;height:18px;border-radius:50%;
  display:none;place-items:center;font-size:10px;line-height:1;
  background:var(--fill);color:var(--on-fill);font-weight:600;
}
.finish{position:relative}
.finishes[data-compare="on"] .finish[data-compare="true"] .finish__compare{display:grid}
.finishes[data-compare="on"] .finish[data-compare="true"] .finish__dot{
  border-color:var(--fill);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 0 0 2px var(--fill);
}
.fin-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
.fin-tools__btn{
  min-height:38px;padding:0 16px;border:1px solid var(--line);border-radius:var(--r-ctl);
  background:none;cursor:pointer;font-family:var(--label);
  font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
  transition:color .3s,border-color .3s,background .3s;
}
.fin-tools__btn:hover{color:var(--ivory);border-color:var(--line-strong)}
.fin-tools__btn[aria-pressed="true"]{background:var(--fill);border-color:var(--fill);color:var(--on-fill)}
.fin-tools__hint{font-size:11.5px;line-height:1.5;color:var(--muted);flex:1 1 100%;margin:0}
.fin-tools__hint:empty{display:none}

/* ==========================================================================
   Кнопка корзины и pill-stepper
   ========================================================================== */
.cartctl{display:inline-flex}
.cartctl--block{display:flex;width:100%}
.cartctl__add,
.cartctl__step{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:44px;padding:0 20px;border-radius:var(--r-btn);
  border:1px solid var(--ghost-line);background:transparent;cursor:pointer;
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink);transition:border-color .3s,color .3s,background .3s;
}
.cartctl--block .cartctl__add,
.cartctl--block .cartctl__step{width:100%}
.cartctl__add:hover{border-color:var(--ghost-hover-line);color:var(--ink);background:var(--ghost-hover-bg)}
.cartctl__plus{font-size:15px;line-height:1;margin-top:-2px}
.cartctl__step{padding:0 6px;gap:0;border-color:var(--fill);background:var(--fill);color:var(--on-fill)}
.cartctl__step button{
  width:42px;min-height:42px;display:grid;place-items:center;border:0;background:none;
  color:var(--on-fill);font-size:17px;line-height:1;cursor:pointer;border-radius:var(--r-ctl);
  transition:background .25s;
}
.cartctl__step button:hover{background:var(--step-hover)}
.cartctl__n{min-width:34px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:0}
.cartctl--lg .cartctl__add,.cartctl--lg .cartctl__step{min-height:52px}
.cartctl--lg .cartctl__step button{width:48px;min-height:48px}
.cartctl--sm .cartctl__add,.cartctl--sm .cartctl__step{min-height:38px;padding:0 4px;font-size:10px}
.cartctl--sm .cartctl__step button{width:34px;min-height:34px;font-size:15px}
.cartctl--sm .cartctl__n{min-width:26px;font-size:12px}
.btn-row--buy{align-items:center}
.btn-row--buy .cartctl{flex:0 0 auto}

/* карточка товара: ссылка отдельно, управление отдельно */
.card--product{display:flex;flex-direction:column}
.card__link{display:flex;flex-direction:column;flex:1;min-height:0}
.card--product .card__body{padding-bottom:10px}
.card__tail{padding:0 22px 22px;display:flex;flex-direction:column;gap:14px}
.card__tail .card__foot{margin-top:0;padding-top:0}
.card__tail .card__cta{text-decoration:none}

/* ==========================================================================
   Корзина проекта: drawer на desktop, шторка снизу на mobile
   ========================================================================== */
.cart-wrap{position:fixed;inset:0;z-index:95}
.cart-veil{position:absolute;inset:0;background:rgba(var(--veil),.42);opacity:0;transition:opacity .3s}
.cart-wrap[data-in="true"] .cart-veil{opacity:1}
.cart{
  position:absolute;top:0;right:0;bottom:0;
  width:clamp(400px,34vw,560px);
  display:flex;flex-direction:column;
  background:var(--bg-secondary);color:var(--ivory);border-left:1px solid var(--line);box-shadow:var(--shadow-deep);
  transform:translateX(100%);transition:transform .34s cubic-bezier(.22,.61,.36,1);
}
.cart-wrap[data-in="true"] .cart{transform:none}
.cart__handle{display:none}
.cart__head{position:relative;padding:clamp(24px,2.6vw,34px) clamp(22px,2.4vw,34px) 18px;border-bottom:1px solid var(--line-faint)}
.cart__title{margin:6px 0 8px;font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(23px,2.4vw,30px);line-height:1.15;color:var(--ink)}
.cart__note{margin:0;font-size:12px;line-height:1.55;color:var(--muted);max-width:44ch}
.cart__close{
  position:absolute;top:16px;right:16px;width:44px;height:44px;
  background:none;border:1px solid var(--line);border-radius:var(--r-ctl);
  color:var(--muted);font-size:22px;line-height:1;cursor:pointer;transition:color .3s,border-color .3s;
}
.cart__close:hover{color:var(--ink);border-color:var(--line-strong)}
.cart__body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:4px clamp(22px,2.4vw,34px) 8px}
.cart__list{list-style:none;margin:0;padding:0}
.cart__empty{padding:44px 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.cart__emptyT{margin:0;font-family:var(--serif);font-weight:var(--h-weight);font-size:24px;color:var(--ink)}
.cart__emptyD{margin:0 0 8px;font-size:13px;line-height:1.6;color:var(--muted);max-width:36ch}
.cart__foot{
  border-top:1px solid var(--line-faint);background:var(--bg-elevated);
  padding:16px clamp(22px,2.4vw,34px) calc(16px + env(safe-area-inset-bottom,0px));
  display:flex;flex-direction:column;gap:12px;
}
.cart__sum{margin:0;font-family:var(--label);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cart__sum b{color:var(--ivory);font-weight:500}
.cart__acts{display:flex;gap:10px;flex-wrap:wrap}
.cart__acts .btn{flex:1 1 auto;min-width:150px}
.cart__full{
  align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:34px;
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);text-decoration:none;
}
.cart__full:hover{color:var(--ink)}
.cart__full svg{width:13px;height:13px}

/* строка корзины */
.crow{
  display:grid;grid-template-columns:76px 1fr auto;gap:14px;align-items:start;
  padding:16px 0;border-bottom:1px solid var(--line-faint);
}
.crow__media{display:block;width:76px;aspect-ratio:1;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line-faint)}
.crow__media img{width:100%;height:100%;object-fit:cover;display:block}
.crow__body{display:flex;flex-direction:column;gap:4px;min-width:0}
.crow__name{font-family:var(--serif);font-weight:var(--h-weight);font-size:19px;line-height:1.22;color:var(--ink);text-decoration:none}
.crow__name:hover{color:var(--bronze)}
.crow__meta{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.crow__fin{font-size:12px;color:var(--muted)}
.crow__fin b{color:var(--ivory);font-weight:400}
.crow__art{font-size:12px;color:var(--muted);letter-spacing:.04em}
.crow__art b{color:var(--ivory);font-weight:400}
.crow__swap{
  align-self:flex-start;margin-top:2px;background:none;border:0;padding:0;cursor:pointer;
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--bronze);transition:color .3s;
}
.crow__swap:hover{color:var(--ink)}
.crow__fins{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.crow__fins[hidden]{display:none}
.crow__dot{
  width:24px;height:24px;border-radius:var(--r-swatch);cursor:pointer;
  border:1px solid var(--swatch-line);box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
  transition:box-shadow .3s,border-color .3s;
}
.crow__dot[aria-pressed="true"]{border-color:var(--swatch-line);box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--mark)}
.crow__side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.crow__del{
  background:none;border:0;padding:0;cursor:pointer;font-family:inherit;
  font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);transition:color .3s;
}
.crow__del:hover{color:var(--ink)}

html[data-cart-lock]{overflow:hidden}
.spec-btn__ico{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}

@media (max-width:760px){
  .cart{
    top:auto;left:0;right:0;bottom:0;width:auto;
    max-height:88vh;border-left:0;border-top:1px solid var(--line);
    border-radius:var(--radius) var(--radius) 0 0;transform:translateY(100%);
  }
  .cart__handle{display:block;width:46px;height:4px;margin:10px auto 2px;border-radius:999px;background:var(--line)}
  .cart__head{padding-top:12px}
  .cart__close{top:8px;right:12px}
  .crow{grid-template-columns:64px 1fr;gap:12px}
  .crow__media{width:64px}
  .crow__side{grid-column:2/-1;flex-direction:row;align-items:center;justify-content:space-between;width:100%}
  .cart__acts .btn{min-width:0;flex:1 1 46%}
}

/* --- узлы комплекта в панели рекомендаций --- */
.rec-node{font-family:var(--label);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.rec-card__kicker{order:1}
.rec-card--done,.rec-card--gap{grid-template-columns:22px 1fr auto;opacity:.78}
.rec-card--done{opacity:.58}
.rec-tick,.rec-dash{
  display:grid;place-items:center;width:18px;height:18px;border-radius:50%;
  font-size:11px;line-height:1;border:1px solid var(--line);color:var(--muted);
}
.rec-card--done .rec-tick{background:var(--fill);border-color:var(--fill);color:var(--on-fill)}
.rec-card--gap .rec-card__name{color:var(--muted);font-size:17px}
.rec-card--gap .rec-card__add{
  border-style:dashed;text-decoration:none;display:inline-flex;align-items:center;
  justify-content:center;color:var(--bronze);
}

/* ==========================================================================
   Шапка: отдельно «Корзина (N)» и отдельно «Спецификация»
   ========================================================================== */
.cart-btn{
  position:relative;display:inline-flex;align-items:center;gap:9px;height:40px;padding:0 16px;
  border:1px solid var(--bronze);border-radius:var(--r-ctl);background:var(--bronze-glow);
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ivory);
  cursor:pointer;white-space:nowrap;transition:background .35s,color .35s,border-color .35s;
}
.cart-btn:hover{background:var(--fill);border-color:var(--fill);color:var(--on-fill)}
.cart-btn__n{color:var(--bronze);letter-spacing:.04em;font-variant-numeric:tabular-nums}
.cart-btn:hover .cart-btn__n{color:var(--on-fill)}
.cart-btn__badge{display:none}
.cart-ico{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round;flex:none}
.spec-link{
  display:inline-flex;align-items:center;height:40px;padding:0 4px;white-space:nowrap;
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-decoration:none;
  border-bottom:1px solid transparent;transition:color .3s,border-color .3s;
}
.spec-link:hover{color:var(--ivory);border-bottom-color:var(--line)}
.mobile-bar .btn .cart-ico{margin-right:2px}

@media (max-width:1180px){ .spec-link{display:none} }
@media (max-width:760px){
  /* на телефоне корзина видна в шапке значком со счётчиком и в нижней панели */
  .cart-btn{width:44px;height:44px;padding:0;justify-content:center;border-radius:var(--r-ctl)}
  .cart-btn__t,.cart-btn__n{display:none}
  .cart-btn__badge{
    display:grid;place-items:center;position:absolute;top:-3px;right:-3px;
    min-width:19px;height:19px;padding:0 5px;border-radius:999px;
    background:var(--badge-bg);color:var(--badge-fg);font-size:10px;font-weight:600;letter-spacing:0;
  }
  .cart-btn__badge[hidden]{display:none}
}

/* ==========================================================================
   Уведомление о комплекте — премиальная карточка, а не пилюля
   ========================================================================== */
.reco-notice{
  border-radius:var(--r-panel);
  width:min(360px,calc(100vw - 44px));
  padding:18px 20px 16px;
}
.reco-notice__t{font-size:17px;line-height:1.35;margin:0 0 14px;padding-right:6px}
.reco-notice__row{gap:10px 16px}
.reco-notice .btn{border-radius:var(--r-btn);white-space:normal;line-height:1.3;padding:10px 16px;min-height:42px;text-align:left}
.rec-hint{border-radius:var(--r-card)}
.reco{border-radius:var(--r-panel) 0 0 var(--r-panel)}
.cart{border-radius:var(--r-panel) 0 0 var(--r-panel)}
.rec-card__add{border-radius:var(--r-btn)}
.fin-tools__btn{border-radius:var(--r-ctl)}

/* кнопка корзины: текст длинный — умеренное скругление;
   компактный степпер «− 1 +» — капсула */
.cartctl__add{border-radius:var(--r-btn)}
.cartctl__step{border-radius:var(--r-ctl)}
.cartctl--block .cartctl__step{border-radius:var(--r-btn)}

@media (max-width:760px){
  /* уведомление пристыковано к нижней панели и не перекрывает контент:
     под него добавляется отступ страницы */
  .reco-notice{left:12px;right:12px;width:auto;bottom:calc(var(--mbar-h) + 10px);padding:14px 16px}
  html[data-notice] .shell{padding-bottom:calc(var(--mbar-h) + 132px)}
  .reco,.cart{border-radius:var(--r-panel) var(--r-panel) 0 0}
  .reco-notice__t{font-size:16px}
}

/* ==========================================================================
   Страница серии: выбор конкретного изделия
   ========================================================================== */
.pickbox{display:flex;flex-direction:column;gap:12px;padding-top:6px}
.pickbox .eyebrow{margin-bottom:0}
.pickbox__sub{margin:0;font-size:12.5px;line-height:1.6;color:var(--muted);max-width:52ch}
.picks{display:flex;flex-direction:column;gap:8px}
.pick{
  display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:12px;
  min-height:48px;padding:10px 14px;text-align:left;cursor:pointer;
  border:1px solid var(--line-faint);border-radius:var(--r-btn);background:transparent;
  font-family:inherit;color:var(--ivory);transition:border-color .3s,background .3s;
}
.pick:hover{border-color:var(--line-strong)}
.pick[aria-checked="true"]{border-color:var(--bronze);background:var(--bronze-glow)}
.pick__dot{width:16px;height:16px;border-radius:50%;border:1px solid var(--line-strong);position:relative}
.pick[aria-checked="true"] .pick__dot{border-color:var(--bronze)}
.pick[aria-checked="true"] .pick__dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--bronze)}
.pick__name{font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.pick__fins .finish-row i{width:12px;height:12px}
.pick-sum{margin:6px 0 0;font-size:13px;color:var(--muted);line-height:1.5}
.pick-sum b{color:var(--ink);font-weight:500}
.pick-na{margin:0;font-size:12.5px;line-height:1.55;color:var(--bronze);max-width:52ch}
.cartctl__add[disabled]{opacity:.42;cursor:not-allowed;pointer-events:none}
.solit__item{margin:0;font-size:13px;color:var(--muted)}
.solit__item b{color:var(--ivory);font-weight:400}
.card__will{margin:-4px 0 0;font-size:11.5px;color:var(--muted);letter-spacing:.02em}
.card__will b{color:var(--ivory);font-weight:400}
@media (max-width:760px){
  .pick{grid-template-columns:18px 1fr}
  .pick__fins{grid-column:2}
  .pick__name{font-size:15px}
}

/* ==========================================================================
   Мультифильтр покрытий в каталоге и поиске
   ========================================================================== */
.ffilter{display:flex;flex-direction:column;gap:10px}
.ffilter .eyebrow{margin:0}
.ffilter__hint{margin:0;font-size:12px;line-height:1.55;color:var(--muted)}
.finishes--filter{gap:12px}
.finishes--filter .finish__tick{
  position:absolute;top:-4px;right:6px;width:18px;height:18px;border-radius:50%;
  display:none;place-items:center;font-size:10px;line-height:1;
  background:var(--fill);color:var(--on-fill);font-weight:600;
}
.finishes--filter .finish[aria-pressed="true"] .finish__tick{display:grid}
.finishes--filter .finish[aria-pressed="true"] .finish__dot{
  transform:scale(1.08);border-color:var(--swatch-line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 0 0 2px var(--bg-main),0 0 0 4px var(--mark);
}
.finishes--filter .finish[aria-pressed="true"] .finish__label{color:var(--ivory)}
.ffilter__bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-height:28px}
.ffilter__state{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.ffilter__state:empty{display:none}
.ffilter__reset{
  min-height:36px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-ctl);
  background:none;cursor:pointer;font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--ink);transition:border-color .3s,color .3s,background .3s;
}
.ffilter__reset:hover{border-color:var(--ghost-hover-line);background:var(--ghost-hover-bg)}
.ffilter__reset[hidden]{display:none}
.search-ff{margin-top:26px}

/* сценарий пространства в панели рекомендаций */
.reco__scen{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}
.reco__scenL{flex:1 1 100%;font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.chip--sm{padding:6px 12px;font-size:11px;min-height:32px}

@media (max-width:760px){
  .ffilter__reset{min-height:44px}
  .chip--sm{min-height:40px}
  .finishes--filter .finish__tick{right:2px}
}

/* подписи свотчей переносятся, а не вылезают за колонку */
.finish{width:70px}
.finish__label{max-width:100%;overflow-wrap:anywhere;hyphens:auto}
@media (max-width:760px){
  .cart-btn__badge{top:2px;right:2px;min-width:17px;height:17px;font-size:9.5px}
}

/* пустая корзина: подвал шторки не показываем */
.cart__foot:empty{display:none}
/* порядок строк в карточке рекомендации: узел → изделие → серия → покрытие → причины */
.rec-card__kicker{order:0}
/* подписи свотчей: переносятся только по словам. Колонка растёт до самого
   длинного слова («Нержавеющая», «Zanglamaydigan»), слово не рвётся */
.finish{width:min-content;min-width:78px}
.finish__label{max-width:none;overflow-wrap:normal;word-break:normal;hyphens:manual}
/* страница серии: кадр держится вверху, пока выбирается изделие */
.solit--series{align-items:start}
.solit--series .solit__media{position:sticky;top:calc(var(--hdr-safe) + 16px)}
@media (max-width:1024px){ .solit--series .solit__media{position:relative;top:auto} }
@media (max-width:760px){
  .cart__acts{flex-direction:column}
  .cart__acts .btn{flex:none;width:100%;min-width:0}
  .finish{width:min-content;min-width:70px;max-width:none}
}
/* фильтр покрытий: честная строка о снимках над результатами */
.ffilter__photo{margin:10px 0 0;max-width:68ch;font-size:12px;line-height:1.6;color:var(--muted)}
#search-results .ffilter__photo{margin:-10px 0 22px}

/* ==========================================================================
   БРЕНД-РАЗДЕЛЫ ARTIZE И ESSCO
   Собственная главная, каталог, корзина, спецификация и заявка у каждого
   бренда. Все цвета — токены своей темы (html[data-brand] или .scope-*).
   ========================================================================== */

/* окна Jaquar не показываются поверх чужого раздела */
html[data-brand="artize"] .reco-notice,
html[data-brand="essco"] .reco-notice{display:none!important}
html[data-brand][data-notice] .shell{padding-bottom:var(--mbar-h)}

/* заголовки Essco — Space Grotesk, шкала ESSCOWEB.zip */
html[data-brand="essco"] .t-hero,.scope-essco .t-hero{font-size:clamp(32px,1.6vw + 26px,68px)}
html[data-brand="essco"] .t-h1,.scope-essco .t-h1{font-size:clamp(30px,1.1vw + 26px,58px)}
html[data-brand="essco"] .t-h2,.scope-essco .t-h2{font-size:clamp(26px,.85vw + 23px,48px)}
html[data-brand="essco"] .t-h3,.scope-essco .t-h3{font-size:clamp(20px,.5vw + 17px,32px)}
html[data-brand="essco"] .t-h4,.scope-essco .t-h4{font-size:clamp(18px,.3vw + 16px,24px);letter-spacing:-.01em}
html[data-brand="essco"] .eyebrow::before,.scope-essco .eyebrow::before{border-radius:2px}

/* ---------------------------------------------------------------- общий каркас */
.bh-hero{
  padding-top:calc(var(--hdr-safe) + clamp(24px,3.4vw,56px));
  padding-bottom:clamp(48px,6vw,96px);
  background:linear-gradient(180deg,var(--bg-secondary),var(--bg-main) 78%);
  border-bottom:1px solid var(--line-faint);
}
.bh-hero__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,76px);align-items:center}
.bh-hero__text{display:flex;flex-direction:column;gap:22px;min-width:0}
.bh-hero__text .eyebrow{margin:0}
.bh-title{font-size:clamp(38px,2.2vw + 36px,96px);line-height:1.07;margin:0}
.bh-title span{display:block}
.bh-lede{font-size:clamp(16px,1.3vw,18px);line-height:1.62;color:var(--muted);max-width:54ch;margin:0}
.bh-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:6px 0 0;
  font-family:var(--label);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.bh-meta b{color:var(--ink);font-weight:600}
.bh-meta i{width:64px;height:1px;background:var(--line);display:block}

.bh-sec{padding-block:clamp(56px,7vw,112px);border-top:1px solid var(--line-faint)}
.bh-sec--alt{background:var(--bg-secondary)}
.bh-head{display:flex;flex-wrap:wrap;gap:16px 48px;justify-content:space-between;align-items:flex-end;margin-bottom:clamp(28px,3.4vw,52px)}
.bh-head__text{max-width:60ch}
.bh-head__text .eyebrow{margin-bottom:14px}
.bh-head__note{max-width:52ch;margin:0;color:var(--muted)}

/* статусная метка: честное состояние каталога */
.bx-chip{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
  padding:5px 10px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--bg-secondary);
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ivory);
  white-space:nowrap;
}
.bx-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mark);flex:none}

/* карточки раздела */
.bh-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,32px)}
.bh-card{
  position:relative;display:flex;flex-direction:column;gap:14px;
  padding:clamp(22px,2.2vw,30px);background:var(--bg-elevated);color:var(--ivory);
  border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-soft);
  transition:box-shadow .45s,border-color .45s,transform .45s cubic-bezier(.2,.7,.3,1);
}
a.bh-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-deep);transform:translateY(-2px)}
.bh-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.bh-num{
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--ivory);
  padding:3px 8px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--bg-high);
}
.bh-card__t{font-family:var(--serif);font-weight:var(--h-weight);font-size:clamp(22px,1.9vw,26px);line-height:1.2;margin:0;color:var(--ink)}
.bh-card__d{margin:0;font-size:14px;line-height:1.6;color:var(--muted)}
.bh-card__link{
  margin-top:auto;padding-top:12px;display:inline-flex;align-items:center;gap:9px;
  font-family:var(--label);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);
}
a.bh-card:hover .btn__arrow{transform:translateX(5px)}

/* редакционный разворот */
.bh-edit{display:grid;grid-template-columns:7fr 5fr;gap:clamp(26px,4vw,72px);align-items:center}
.bh-edit--flip{grid-template-columns:5fr 7fr}
.bh-edit--flip .bh-edit__media{order:2}
.bh-edit__body{display:flex;flex-direction:column;gap:20px;min-width:0}
.bh-edit__body .eyebrow{margin:0}
.bh-quote{
  margin:0;padding-left:18px;border-left:2px solid var(--mark);
  font-family:var(--serif);font-style:italic;font-weight:var(--h-weight);
  font-size:clamp(20px,1.9vw,26px);line-height:1.35;color:var(--ink);
}
.bh-edit__text{margin:0;color:var(--muted);line-height:1.7;max-width:56ch}

/* статус каталога */
.bh-status{
  display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(22px,3vw,56px);align-items:start;
  padding:clamp(24px,3vw,48px);background:var(--bg-elevated);color:var(--ivory);
  border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-soft);
}
.bh-status__body{display:flex;flex-direction:column;gap:18px;min-width:0}
.bh-status__body p{margin:0;color:var(--muted);max-width:58ch}
.bh-status__list{display:flex;flex-direction:column}
.bh-status__list .specrow:first-child{border-top:0}

/* тёмная полоса — финальный призыв */
.band-dark{padding-block:clamp(56px,7vw,112px);position:relative;overflow:hidden}
.band-dark__inner{max-width:760px;display:flex;flex-direction:column;gap:20px}
.band-dark__inner .eyebrow{margin:0}
.band-dark__inner p{margin:0;color:var(--muted);max-width:60ch;font-size:clamp(15px,1.25vw,18px);line-height:1.65}

/* ---------------------------------------------------------------- ARTIZE: доска материалов
   Своих фотографий в ARTIZEWEB.zip нет, а чужие кадры Jaquar в раздел Artize
   не берутся. Поэтому визуал — архитектурная композиция из 7 цветов палитры. */
.matboard{
  position:relative;aspect-ratio:4/3;overflow:hidden;isolation:isolate;
  border:1px solid var(--line);border-radius:var(--r-card);
  background:linear-gradient(160deg,var(--bg-secondary) 0%,var(--bg-main) 55%,var(--bg-elevated) 100%);
  box-shadow:var(--shadow-deep);
}
.matboard::after{
  content:"";position:absolute;inset:0;z-index:3;pointer-events:none;opacity:.3;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E");
}
.matboard__slab{position:absolute;z-index:1;border-radius:var(--radius);box-shadow:0 22px 44px -26px rgba(var(--veil),.5)}
.matboard__slab--a{left:8%;top:10%;width:47%;height:64%;background:linear-gradient(172deg,var(--bg-elevated),var(--bg-high))}
.matboard__slab--b{right:9%;top:19%;width:31%;height:47%;background:linear-gradient(205deg,var(--bg-high),var(--line))}
.matboard__slab--c{left:37%;bottom:21%;width:43%;height:13%;background:var(--bg-secondary);border:1px solid var(--line)}
.matboard__draw{position:absolute;inset:0;z-index:2;width:100%;height:100%;fill:none}
.matboard__draw .ln{stroke:var(--ink);stroke-width:1.3;opacity:.72}
.matboard__draw .dm{stroke:var(--mark);stroke-width:1}
.matboard__draw .wt{stroke:var(--mark);stroke-width:1.2;stroke-dasharray:2 5}
.matboard__cap{
  position:absolute;left:14px;right:14px;bottom:14px;z-index:4;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;
  padding:12px 14px;background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
}
.matboard__t{display:block;font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ivory)}
.matboard__s{display:block;font-family:var(--serif);font-size:18px;line-height:1.3;color:var(--ink)}
.matboard__sw{display:flex;gap:5px}
.matboard__sw i{width:16px;height:16px;border-radius:var(--r-swatch);border:1px solid var(--swatch-line);display:block}
.matboard__sw .s1{background:var(--ink)}
.matboard__sw .s2{background:var(--mark)}
.matboard__sw .s3{background:var(--line)}
.matboard__sw .s4{background:var(--bg-high)}
.matboard__sw .s5{background:var(--bg-elevated)}
.matboard__sw .s6{background:var(--bg-main)}
.matboard__sw .s7{background:var(--bg-secondary)}
.matboard--wide{aspect-ratio:16/10}

/* ---------------------------------------------------------------- ESSCO: инженерные модули */
.ex-badge{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
  padding:6px 12px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--bg-secondary);
  font-family:var(--label);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
}
.ex-badge svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.6}
.ex-title{font-size:clamp(32px,1.4vw + 28px,68px);line-height:1.14;margin:0}
.ex-title span{display:block}
.ex-title .ex-accent{color:var(--muted)}
.ex-metrics{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:560px;
  padding-block:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.ex-metric b{display:block;font-family:var(--label);font-size:clamp(17px,1.5vw,20px);font-weight:500;line-height:1.3;color:var(--ink)}
.ex-metric span{display:block;font-size:12px;line-height:1.45;color:var(--muted);margin-top:3px}

.ex-photo{position:relative;border:1px solid var(--line);border-radius:var(--r-panel);overflow:hidden;background:var(--bg-elevated);box-shadow:var(--shadow-soft)}
.ex-photo__img{position:relative;height:clamp(300px,34vw,460px);background:var(--bg-secondary)}
.ex-photo__img .photo{height:100%}
.ex-photo__img .photo::after{background:linear-gradient(0deg,rgba(var(--veil),.82) 0%,rgba(var(--veil),0) 55%)}
.ex-photo__img--md{height:clamp(260px,28vw,380px)}
.ex-photo__tag{
  position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:8px;
  padding:6px 12px;background:var(--glass);border:1px solid var(--line);border-radius:var(--r-ctl);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);
}
.ex-photo__tag::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mark)}
.ex-photo__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px;padding:16px 18px;border-top:1px solid var(--line);background:var(--bg-elevated)}
.ex-photo__t{display:block;font-weight:600;font-size:15px;color:var(--ink)}
.ex-photo__d{display:block;font-size:12.5px;line-height:1.5;color:var(--muted)}

.ex-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,24px)}
.ex-card{
  display:flex;flex-direction:column;justify-content:space-between;gap:20px;
  padding:24px;background:var(--bg-elevated);color:var(--ivory);
  border:1px solid var(--line);border-radius:var(--r-card);transition:border-color .3s,transform .3s;
}
a.ex-card:hover{border-color:var(--line-strong)}
.ex-card__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ex-ico{width:40px;height:40px;display:grid;place-items:center;flex:none;border:1px solid var(--line);border-radius:var(--r-btn);background:var(--bg-secondary);color:var(--muted);transition:color .3s,border-color .3s}
a.ex-card:hover .ex-ico{color:var(--ink);border-color:var(--line-strong)}
.ex-ico svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ex-num{font-family:var(--label);font-size:12px;padding:3px 9px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-secondary);color:var(--muted)}
.ex-card__t{font-family:var(--sans);font-size:18px;font-weight:600;letter-spacing:0;line-height:1.3;margin:0 0 6px;color:var(--ink)}
.ex-card__d{margin:0;font-size:13.5px;line-height:1.55;color:var(--muted)}
.ex-card__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--line)}
.ex-card__foot .btn__arrow{color:var(--muted)}
a.ex-card:hover .ex-card__foot .btn__arrow{transform:translateX(4px);color:var(--ink)}

.ex-spec{display:grid;grid-template-columns:7fr 5fr;gap:clamp(18px,2vw,32px);align-items:start}
.ex-panel{padding:clamp(20px,2vw,26px);background:var(--bg-elevated);color:var(--ivory);border:1px solid var(--line);border-radius:var(--r-panel)}
.ex-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.ex-panel__t{display:flex;align-items:center;gap:10px;margin:0;font-family:var(--sans);font-size:18px;font-weight:600;letter-spacing:0;color:var(--ink)}
.ex-panel__t svg{width:20px;height:20px;stroke:var(--muted);fill:none;stroke-width:1.5}
.ex-panel__count{font-family:var(--label);font-size:12px;padding:3px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--ink);white-space:nowrap}
.ex-panel__empty{margin:18px 0 6px;padding:16px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--bg-secondary)}
.ex-panel__empty b{display:block;color:var(--ink);font-weight:600;margin-bottom:4px}
.ex-panel__empty span{display:block;font-size:13px;line-height:1.55;color:var(--muted)}
.ex-panel .specrow__v{color:var(--ivory)}
.ex-panel .btn-row{margin-top:18px}
.ex-panel .btn{flex:1 1 auto}

.ex-manifest{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,24px)}
.ex-mcard{display:flex;flex-direction:column;gap:12px;padding:24px;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--r-card)}
.ex-mcard__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ex-mcard__k{font-family:var(--label);font-size:clamp(20px,1.8vw,24px);font-weight:500;color:var(--ink);letter-spacing:-.01em}
.ex-mcard__t{margin:0;font-family:var(--sans);font-size:16px;font-weight:600;letter-spacing:0;color:var(--ink)}
.ex-mcard__d{margin:0;font-size:13.5px;line-height:1.6;color:var(--muted)}
.ex-mcard__f{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* ---------------------------------------------------------------- «Бренды»: плитки в своей палитре */
.bchapter--tile{
  padding:clamp(20px,3vw,44px);margin-block:clamp(14px,1.8vw,26px);
  background:var(--bg-main);color:var(--ivory);
  border:1px solid var(--line);border-top:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-soft);
}
.bchapter--tile:first-child{margin-top:0}
.bchapter--tile .bchapter__name{font-family:var(--logo-font);font-weight:var(--logo-weight);letter-spacing:var(--logo-track);text-transform:uppercase;font-size:clamp(30px,3.6vw,52px);color:var(--ink)}
.bchapter--tile .lede{color:var(--muted)}
.bchapter__tag{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ivory)}
.bchapter--tile .bchapter__media{border-color:var(--line)}
.bchapter--tile .matboard{aspect-ratio:auto;height:100%;box-shadow:none;border:0;border-radius:0}

/* ---------------------------------------------------------------- страницы раздела */
.bx-steps{display:flex;flex-direction:column;gap:18px}
.bx-note{margin:18px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}
.bx-list{list-style:none;margin:0;padding:0}
.bx-list li{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--line-faint)}
.bcartctl{display:inline-flex}

@media (max-width:1024px){
  .bh-hero__grid,.bh-edit,.bh-edit--flip,.bh-status,.ex-spec{grid-template-columns:1fr}
  .bh-edit--flip .bh-edit__media{order:0}
  .bh-cards{grid-template-columns:1fr 1fr}
  .ex-grid{grid-template-columns:1fr 1fr}
  .ex-manifest{grid-template-columns:1fr}
  .bh-hero__media{max-width:760px}
}
@media (max-width:760px){
  .bh-cards,.ex-grid{grid-template-columns:1fr}
  .bh-title{font-size:clamp(34px,9.4vw,42px)}
  .ex-title{font-size:clamp(30px,8.2vw,36px)}
  .ex-metrics{grid-template-columns:1fr 1fr 1fr;gap:8px}
  .ex-metric span{font-size:12.5px}
  .bh-card__d,.ex-card__d,.ex-mcard__d,.ex-photo__d{font-size:15px}
  .matboard{aspect-ratio:1/1}
  .matboard__cap{left:10px;right:10px;bottom:10px}
  .bchapter--tile{padding:18px}
  .bchapter--tile .matboard{aspect-ratio:4/3;height:auto}
  .bx-chip{white-space:normal}
}
@media (max-width:420px){
  .ex-metrics{grid-template-columns:1fr}
  .matboard__sw i{width:13px;height:13px}
}
.cart__empty .bx-chip,.state .bx-chip{align-self:center}
@media (min-width:761px) and (max-width:1024px){
  .bh-cards > :last-child:nth-child(odd){grid-column:1/-1}
}

/* узкие телефоны: длинные слова в кнопках (узбекский) и шапка на 320–374 px */
@media (max-width:420px){
  .btn{padding-inline:16px;letter-spacing:.05em;gap:8px}
  .ex-spec > *,.bh-edit > *,.bh-status > *,.bh-hero__grid > *{min-width:0}
}
@media (max-width:374px){
  .brand{flex-direction:column;align-items:flex-start;justify-content:center;gap:3px}
  .hdr__inner{gap:10px;padding-inline:12px}
  .hdr__actions{gap:4px}
}

/* ---------------------------------------------------------------- композиция бренда
   Там, где у Jaquar фотография, у раздела без своих кадров стоит композиция
   из его палитры. Рамка, пропорции и тень — общие, задаёт их сам слот. */
.shot > .matboard,
.hero__bg > .matboard,
.scene__media > .matboard,
.solit__media > .matboard,
.pdp__media > .matboard,
.idx__img > .matboard,
.card__media > .matboard{
  position:absolute;inset:0;width:100%;height:100%;
  aspect-ratio:auto;border:0;border-radius:inherit;box-shadow:none;
}
.brandcol[aria-current="true"]{border-color:var(--line-strong)}

/* ==========================================================================
   СЕТКА v2 — широкая редакционная сетка по JAQUARWEB.zip (22.09.2026)

   Одна логика компоновки для трёх брендов, три разные дизайн-системы:
   · шапка, герой, карточки и кадры стоят на одной сетке --wrap;
   · поля по бокам растут пропорционально ширине экрана (--gutter);
   · фотографии — в рамках с заданными пропорциями и «плоскостью» за кадром,
     на весь экран они больше не растягиваются.
   Цвета здесь не задаются: только ширины, пропорции, рамки, ритм и форма.
   ========================================================================== */
:root{
  --gutter:clamp(20px,4.2vw,112px);     /* 375 → 20 · 1440 → 60 · 1920 → 81 · 2560 → 108 */
  --wrap:2040px;                         /* максимальная ширина сетки */
  --col-gap:clamp(16px,1.8vw,44px);
  --section:clamp(56px,5vw,120px);
  --hdr-top:0px;
  --hdr-h:76px;
}
/* плоскость за кадром, как в референсе; объявлена и в каждом бренд-скоупе,
   чтобы вложенные плитки брали свой --bg-high, а не цвет Jaquar */
:root,.scope-jaquar,.scope-artize,.scope-essco{--plane:26px 26px 0 -6px var(--bg-high)}
@media (max-width:760px){ :root{ --hdr-top:0px; --hdr-h:60px } }

.container{max-width:calc(var(--wrap) + 2 * var(--gutter))}
.container--narrow{max-width:1240px}
.container--text{max-width:900px}
.section--tight{padding-block:clamp(40px,4vw,88px)}
.intro{gap:var(--col-gap);margin-bottom:clamp(28px,3vw,56px)}
.section-head{margin-bottom:clamp(28px,3vw,52px)}
.grid,.bh-cards,.ex-grid,.ex-manifest,.brandcols,.reasons{gap:var(--col-gap)}

/* --- шапка: полоса во всю ширину, содержимое — по сетке --- */
.hdr{
  inset:0 0 auto 0;
  background:var(--hdr-bg);border-bottom:1px solid var(--line);box-shadow:var(--hdr-shadow);
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  transition:background .4s,box-shadow .4s;
}
.hdr--scrolled{background:var(--hdr-bg-2)}
.hdr__inner,.hdr--scrolled .hdr__inner{
  height:var(--hdr-h);max-width:calc(var(--wrap) + 2 * var(--gutter));margin:0 auto;
  padding-inline:var(--gutter);background:transparent;border:0;border-radius:0;box-shadow:none;
  -webkit-backdrop-filter:none;backdrop-filter:none;
}
@media (max-width:374px){ .hdr__inner{padding-inline:14px} }

/* --- типографика растёт вместе с сеткой на широких экранах --- */
@media (min-width:1025px){
  body{font-size:clamp(15px,.18vw + 12.4px,17px)}
  .lede{font-size:clamp(17px,.3vw + 13.7px,21px)}
  .t-hero{font-size:clamp(52px,1.9vw + 36px,92px)}
  .t-h1{font-size:clamp(44px,1.5vw + 28px,72px)}
  .t-h2{font-size:clamp(36px,1.1vw + 27px,60px)}
  .t-h3{font-size:clamp(26px,.7vw + 20px,40px)}
  .t-h4{font-size:clamp(21px,.35vw + 18px,28px)}
  .card__title{font-size:clamp(23px,.5vw + 16px,30px)}
  .bh-card__d,.ex-card__d,.ex-mcard__d,.card__desc{font-size:clamp(13.5px,.15vw + 11.5px,16px)}
}

/* --- рамки для фотографий: пропорции заданы, «плоскость» за кадром --- */
.hero__media,.solit__media,.scene__media,.bh-hero__media .matboard,.bh-edit__media .matboard{box-shadow:var(--plane),var(--shadow-deep)}
.hero__media,.scene__media{margin:0 26px 26px 0}
.bh-hero__media,.bh-edit__media{padding:0 26px 26px 0}

/* ================================================================ JAQUAR: герой */
.hero--split{
  display:block;min-height:0;overflow:visible;
  padding-top:calc(var(--hdr-safe) + clamp(20px,2.6vw,60px));padding-bottom:clamp(28px,2.6vw,56px);
  background:linear-gradient(180deg,var(--bg-secondary),var(--bg-main) 80%);
}
.hero--split .hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,3.6vw,96px);align-items:center}
.hero--split .hero__inner{position:relative;z-index:1;padding:0}
.hero--split .hero__inner .lede{max-width:52ch}
.hero--split .hero__media{position:relative;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--bg-elevated)}
.hero--split .hero__bg{position:relative;inset:auto;aspect-ratio:5/4;max-height:calc(100vh - var(--hdr-safe) - 110px);min-height:320px;width:100%}
.hero--split .hero__bg img{filter:saturate(.98) contrast(1.02);object-position:50% 42%}
.hero--split .ticker{position:static;margin-top:clamp(28px,3vw,56px);padding:14px 0 0;background:none;border-top:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none}

/* ================================================================ JAQUAR: три главы — сетка карточек */
.chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--col-gap);margin-top:clamp(28px,3vw,52px)}
.chapters .chapter,.chapters .chapter:first-child{
  display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;
  border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg-elevated);overflow:hidden;
  box-shadow:var(--shadow-soft);transition:box-shadow .45s,border-color .45s;
}
.chapters .chapter:hover{border-color:var(--line-strong);box-shadow:var(--shadow-deep)}
.chapters .shot,.chapters .shot--tall,.chapters .shot--wide{order:1;aspect-ratio:4/3;border:0;border-bottom:1px solid var(--line);border-radius:0}
.chapters .chapter__body,.chapters .chapter--flip .chapter__body{order:2;flex:1;gap:14px;padding:clamp(20px,1.8vw,36px)}
.chapters .chapter__body > :last-child{margin-top:auto}
.chapters .chapter__num{font-size:clamp(24px,1.2vw + 10px,38px)}
.chapters .chapter__title{font-size:clamp(24px,.9vw + 14px,38px)}
.chapters .shot__cap{
  left:14px;right:auto;top:14px;bottom:auto;gap:10px;padding:6px 10px;
  border-radius:var(--r-ctl);background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}

/* ================================================================ JAQUAR: солитер */
.solit{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,3.6vw,96px)}
.solit__media{aspect-ratio:5/4;margin:0 26px 26px 0;max-height:calc(100vh - var(--hdr-safe) - 60px)}

/* ================================================================ JAQUAR: три бренда — триада карточек */
.brandcols{align-items:stretch}
.brandcol{
  padding:clamp(22px,2vw,40px);gap:14px;
  border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg-elevated);box-shadow:var(--shadow-soft);
}
.brandcol:nth-child(2){background:var(--bg-main);border-color:var(--line-strong);box-shadow:var(--shadow-deep);transform:translateY(-10px)}
.brandcol .btn--quiet{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);width:100%;justify-content:space-between}

/* ================================================================ JAQUAR: пространства — кадр в рамке и текст рядом */
.scene{
  display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,3.6vw,96px);align-items:start;
  min-height:0;overflow:visible;border:0;border-radius:0;color:var(--ivory);
}
.scene + .scene{grid-template-columns:minmax(0,5fr) minmax(0,7fr);margin-top:clamp(40px,4.4vw,104px)}
.scene + .scene .scene__media{order:2}
.scene__media{position:relative;inset:auto;aspect-ratio:16/10;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--bg-elevated)}
.scene__media img{transition:transform 1.1s cubic-bezier(.2,.7,.3,1)}
.scene:hover .scene__media img{transform:scale(1.035)}
.scene__veil{display:none}
.scene__body{position:static;padding:clamp(4px,1vw,22px) 0 0;max-width:60ch;display:flex;flex-direction:column}
.scene__title{font-size:clamp(26px,1vw + 16px,44px)}

/* ================================================================ финал: форма не растягивается */
.finale{gap:clamp(28px,3.6vw,96px)}
.finale__card{width:100%;max-width:760px;justify-self:end}

/* ================================================================ ARTIZE и ESSCO: та же сетка */
.bh-hero{padding-top:calc(var(--hdr-safe) + clamp(24px,3vw,64px))}
.bh-hero__grid{gap:clamp(28px,3.6vw,96px)}
.bh-hero__media .matboard{max-height:calc(100vh - var(--hdr-safe) - 110px);width:100%}
.bh-sec,.band-dark{padding-block:var(--section)}
.band-dark__inner{max-width:min(980px,100%)}
.bh-status{padding:clamp(24px,3vw,64px)}
.ex-photo__img,.ex-photo__img--md{height:auto;aspect-ratio:16/11;max-height:calc(100vh - var(--hdr-safe) - 150px);min-height:280px}
.ex-photo__img--md{aspect-ratio:16/10}
.ex-card,.ex-mcard{padding:clamp(20px,1.7vw,34px)}

/* ================================================================ внутренние страницы на широкой сетке */
.pdp__media{max-height:calc(100vh - var(--hdr-safe) - 32px)}
.band{max-height:min(64vh,760px)}
@media (min-width:1600px){ .card__media{aspect-ratio:1/1} }

/* ================================================================ планшет и телефон */
@media (max-width:1024px){
  .hero--split .hero__grid,.solit,.scene,.scene + .scene{grid-template-columns:1fr}
  .scene + .scene .scene__media{order:0}
  .chapters{grid-template-columns:1fr}
  .chapters .shot,.chapters .shot--tall,.chapters .shot--wide{aspect-ratio:16/9}
  .brandcol:nth-child(2){transform:none}
  .finale__card{max-width:none;justify-self:stretch}
}
@media (max-width:760px){
  .hero--split{padding-top:calc(var(--hdr-safe) + 18px)}
  .hero--split .hero__bg{aspect-ratio:4/3;height:auto;max-height:none;min-height:0}
  .hero--split .hero__inner{padding:0}
  .hero--split .ticker{padding:14px 0 0}
  .chapters .shot,.chapters .shot--tall,.chapters .shot--wide{aspect-ratio:4/3}
  .hero__media,.scene__media,.solit__media{margin:0 14px 14px 0}
  .bh-hero__media,.bh-edit__media{padding:0 14px 14px 0}
  :root,.scope-jaquar,.scope-artize,.scope-essco{--plane:14px 14px 0 -4px var(--bg-high)}
  .ex-photo__img,.ex-photo__img--md{aspect-ratio:4/3;max-height:none;min-height:0}
}

/* смена покрытия: кадр не исчезает, пока не готов следующий */
.photo img{transition:opacity .2s ease}
.photo--busy img{opacity:.86}

/* фильтр по покрытиям: свёрнут, пока не понадобится */
.ffold{margin:18px 0 0;border-top:1px solid var(--line);padding-top:14px}
.ffold__sum{cursor:pointer;list-style:none;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:4px 0}
.ffold__sum::-webkit-details-marker{display:none}
.ffold__sum::after{content:'+';float:right;font-size:14px;line-height:1}
.ffold[open] .ffold__sum::after{content:'\2212'}
.ffold__sum b{color:var(--ivory);font-weight:400}
.ffold__note{font-size:13px;color:var(--muted);margin:8px 0 12px;line-height:1.45}

/* чем эта модель отличается от соседней в той же линии */
.card__variant{display:block;font-size:13px;color:var(--rose,#b98a92);margin:2px 0 4px;line-height:1.35}

.pdp__variant{font-size:15px;color:var(--rose,#b98a92);margin:0 0 14px;line-height:1.4}

/* мелкий оригинал показываем как есть, по центру рамки */
.photo--native img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;margin:auto;position:absolute;inset:0}
.photo--native{display:flex;align-items:center;justify-content:center;position:relative}

/* --- каталожный кадр изделия ------------------------------------------
   Снимок сделан на светлом фоне и кадрирован по изделию. Обрезать его
   нельзя: изделие должно быть видно целиком, стоять по центру рамки и
   иметь ровные поля со всех сторон. Поэтому вписывание, а не заполнение. */
.photo--item{display:flex;align-items:center;justify-content:center;background:#fff;overflow:hidden}
.photo--item img{width:100%;height:100%;object-fit:contain;object-position:center;
  padding:clamp(8px,4.5%,34px);filter:none;box-sizing:border-box}
.photo--item::after{content:none}

/* --- ролик раздела ----------------------------------------------------
   Постер лежит снизу и виден всегда; ролик появляется поверх, когда
   действительно загрузился. Пустого окна не бывает. */
.photo--video{position:relative;overflow:hidden;background:var(--bg-elevated)}
.photo--video>img{width:100%;height:100%;object-fit:cover}
.photo--video>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0;transition:opacity .5s ease}
.photo--video-on>video{opacity:1}
@media (prefers-reduced-motion: reduce){.photo--video>video{display:none}}


/* --- предмет в фокусе: премиальная подпись под витриной -------------- */
.focusnote{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:clamp(18px,2.2vw,38px);
  margin-top:clamp(30px,3.6vw,60px);
  padding-top:clamp(24px,2.8vw,44px);
  border-top:1px solid var(--line);
}
.focusnote__h{
  font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--bronze);margin:0 0 10px;
}
.focusnote__t{margin:0;color:var(--muted);font-size:14.5px;line-height:1.7;max-width:42ch}

/* --- шоурум в подвале: адрес, телефон и маршрут ----------------------
   Живой карты стороннего сервиса здесь нет намеренно: она загружает
   cookies. Кнопка открывает точный адрес во внешнем сервисе карт. */
.ftr__map{
  display:grid;grid-template-columns:minmax(0,1fr);
  gap:clamp(18px,2.4vw,40px);align-items:center;
  margin-top:clamp(26px,3vw,46px);padding-top:clamp(22px,2.6vw,38px);
  border-top:1px solid var(--line);
}
.ftr__mapbody{display:flex;flex-direction:column;align-items:flex-start}
.ftr__addr{margin:6px 0 4px;font-size:14px;line-height:1.6;color:var(--ink);max-width:44ch}
.ftr__tel{display:block;margin:0 0 16px;font-size:14px;color:var(--muted);text-decoration:none}
.ftr__tel:hover{color:var(--ink)}
.ftr__route{display:inline-flex;width:auto;flex:0 0 auto}

@media (max-width:760px){
  .ftr__map{grid-template-columns:1fr}
}

/* --- пространства на планшете и телефоне -----------------------------
   До 1024 px текст больше не лежит поверх кадра: сверху кадр, под ним
   подпись. Композиция читается, ничего не наезжает друг на друга. */
@media (max-width:1024px){
  .scene{
    display:flex;flex-direction:column;align-items:stretch;
    min-height:0;overflow:visible;border:0;border-radius:0;
  }
  .scene + .scene{margin-top:clamp(28px,5vw,48px)}
  .scene__media{
    position:relative;inset:auto;aspect-ratio:4/3;width:100%;
    border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;
  }
  .scene__veil{display:none}
  .scene__body{position:static;padding:clamp(14px,3vw,20px) 0 0;max-width:100%;color:var(--ink)}
  .scene__title{color:var(--ink);font-size:clamp(22px,5vw,30px)}
  .scene__text{color:var(--muted);max-width:100%}
}


/* Блок Artize — такая же карточка, как Jaquar и Essco, и теперь такая же
   рамка 4:3. Кадр 1700x620 кадрируется по центру: женщина, верхний душ и
   вода попадают в рамку целиком, срезается только пустой фон по бокам. */
/* убрано: из-за align-self кадр Artize вёл себя не так, как у Jaquar и Essco.
   Теперь все три блока берут общий .bchapter__media — один размер,
   одно скругление, одни углы. */
.scope-artize .bchapter__media img{object-position:center}
@media (max-width:1024px){
  /* одна колонка: текст сверху, кадр ниже, в той же рамке */
  .scope-artize .bchapter__media{margin-top:4px}
}

/* строка бренда над названием предмета в фокусе */
.solit__brand{font-family:var(--label);font-size:12px;font-weight:600;letter-spacing:.26em;
  text-transform:uppercase;color:var(--bronze);margin:0 0 6px}

/* артикул на карточке каталога: отдельной строкой, в названии его нет */
.card__art{display:block;font-family:var(--label);font-size:11.5px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);margin-top:2px}
.card__art b{font-weight:600;color:var(--ink);letter-spacing:.06em}

/* согласие на обработку данных */
.field--check{display:block}
.check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;line-height:1.5}
.check__box{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:20px;height:20px;margin:1px 0 0;
  border:1px solid var(--line-strong,rgba(0,0,0,.28));border-radius:5px;background:transparent;
  display:grid;place-content:center;transition:border-color .2s,background .2s}
.check__box::after{content:'';width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;
  transform:rotate(-45deg) scale(0);transition:transform .15s}
.check__box:checked{background:var(--bronze);border-color:var(--bronze)}
.check__box:checked::after{transform:rotate(-45deg) scale(1)}
.check__box:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}
.check__text{font-size:13.5px;color:var(--muted)}
.check__text a{color:var(--bronze);text-decoration:underline;text-underline-offset:3px}
.field--check[data-invalid="true"] .check__box{border-color:#b3261e}

/* мини-карта: грузится только по клику */
.minimap{margin:14px 0 16px;border:1px solid var(--line-faint);border-radius:var(--r-card);overflow:hidden;
  background:rgba(var(--veil),.04);min-height:150px;display:grid;place-items:center}
.minimap--compact{min-height:130px}
.minimap iframe{width:100%;height:100%;min-height:220px;border:0;display:block}
.minimap[data-ready="1"]{place-items:stretch;background:none}
.minimap__load{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--bronze);background:none;border:1px solid var(--line-faint);border-radius:999px;padding:10px 18px;cursor:pointer}

/* политика конфиденциальности */
.ppblock{display:grid;grid-template-columns:auto 1fr;gap:clamp(14px,2vw,28px);
  padding-block:clamp(18px,2.4vw,30px);border-top:1px solid var(--line-faint)}
.ppblock:first-child{border-top:0}
.ppblock__n{font-family:var(--label);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--bronze);padding-top:6px}
.ppblock__t{margin:0 0 8px}
.ppblock__x{margin:0;color:var(--muted);max-width:68ch;line-height:1.7}

/* Пока снимок товара не пришёл, рамка не должна выглядеть пустой белой плитой.
   Мягкая тёплая подложка читается как часть оформления; как только картинка
   загрузилась, класс ph-wait снимается. Даже если он почему-то останется,
   видно будет только чуть тёплый тон по краю — снимок никогда не прячется. */
.photo.ph-wait{background:var(--bg-elevated,#f4efec)}
.photo--item.ph-wait{
  background:
    radial-gradient(120% 78% at 50% 46%, rgba(255,255,255,.92), rgba(255,255,255,0) 72%),
    linear-gradient(168deg,#f7f2ee 0%, #efe7e2 100%);
}

/* Карта: квадрат среднего размера, одинаковый в подвале и на странице шоурума.
   Кнопки «показать карту» больше нет — карта на месте сразу. */
.minimap{aspect-ratio:1/1;width:100%;max-width:460px;min-height:0;margin:16px 0 18px;
  place-items:stretch;background:rgba(var(--veil),.04)}
.minimap--compact{min-height:0}
.minimap iframe{width:100%;height:100%;min-height:0;border:0;display:block}
@media (max-width:760px){
  .minimap{max-width:100%}
  .minimap--compact{max-width:100%}
}

/* Подвал: три столбика — каталог, бренды, разделы */
.ftr__cols--3{grid-template-columns:repeat(3,1fr);flex:1 1 640px}
@media (max-width:760px){
  .ftr__cols--3{grid-template-columns:repeat(2,1fr)}
}

/* Шапка: язык, поиск и корзина — крупнее и удобнее для пальца */
.icon-btn{width:44px;height:44px}
.icon-btn svg{width:20px;height:20px}
.hdr__actions .lang .lang__b{padding:13px 17px;font-size:12px;line-height:1;min-height:44px}
.hdr__actions .lang{border-radius:var(--r-ctl)}
.hdr__actions .btn{padding-block:13px;font-size:12.5px}
@media (max-width:1024px){
  .icon-btn{width:46px;height:46px}
  .icon-btn svg{width:21px;height:21px}
}

/* Подвал: карта крупнее, надписи чуть больше — но без перегруза */
.minimap--compact{max-width:520px}
.ftr__cols .ftr__head{font-size:12px;letter-spacing:.09em;margin-bottom:8px}
.ftr__col a{font-size:14.5px;line-height:1.75}
.ftr__map .ftr__head{font-size:12px}
.ftr__addr{font-size:14.5px;line-height:1.6}
.ftr__tel{font-size:15px}
.ftr__route{font-size:12px}
.ftr__bottom{font-size:13px}
@media (max-width:760px){
  .minimap--compact{max-width:100%}
  .ftr__col a{font-size:15px}
}

/* Страницы брендов, блок «Три опоры»: раньше графика занимала почти всю
   карточку, а текст был в две строки — отсюда пустота. Кадр ниже,
   текстовая часть получает вес. На главной Jaquar пропорции не трогаем. */
html[data-brand] .chapters .shot,
html[data-brand] .chapters .shot--tall,
html[data-brand] .chapters .shot--wide{aspect-ratio:16/11}
html[data-brand] .chapters .chapter__body{gap:13px}
html[data-brand] .chapters .chapter__text{font-size:15px;line-height:1.72;max-width:none}
@media (max-width:1024px){
  html[data-brand] .chapters .shot,
  html[data-brand] .chapters .shot--tall,
  html[data-brand] .chapters .shot--wide{aspect-ratio:16/9}
}


/* ======================================================================
   СВОДНЫЙ БЛОК — 28.09.2026
   Выше по файлу .minimap описан 5 раз, .ftr__col a — 4 раза: правки
   накладывались и перебивали друг друга. Этот блок стоит последним и
   задаёт окончательные значения. Новые правки по карте и подписям
   вносить ТОЛЬКО здесь, иначе снова начнётся гонка правил.
   ====================================================================== */

/* карта — заметно крупнее и в подвале, и на странице шоурума.
   В подвале блок во всю ширину: квадрат 780x780 оставлял справа
   пустоту, поэтому здесь карта широкая — площади больше, пустоты нет.
   На странице шоурума колонка узкая, там квадрат уместен. */
.minimap{max-width:640px}
.minimap--compact{max-width:1040px;aspect-ratio:16/9}
.minimap--compact iframe{min-height:0}
@media (max-width:1024px){
  .minimap{max-width:100%}
  .minimap--compact{max-width:100%;aspect-ratio:4/3}
}
@media (max-width:560px){
  .minimap--compact{aspect-ratio:1/1}
}

/* подписи в подвале */
.ftr__cols .ftr__head{font-size:13px;letter-spacing:.1em;margin-bottom:10px}
.ftr__col a{font-size:16px;line-height:1.85}
.ftr__map .ftr__head{font-size:13px;letter-spacing:.1em}
.ftr__addr{font-size:15.5px;line-height:1.65}
.ftr__tel{font-size:16px}
.ftr__route{font-size:13px}
.ftr__bottom{font-size:14px}
.ftr__brand{font-size:15px}

/* верхнее меню: пункты и язык чуть крупнее */
.nav a,.nav__link{font-size:14px;letter-spacing:.03em}
.hdr__actions .lang .lang__b{font-size:13px}

@media (max-width:760px){
  .ftr__col a{font-size:16.5px}
  .ftr__bottom{font-size:14px}
}


/* Страница «Бренды»: три карточки стоят рядом, поэтому рамка у них общая.
   Своё скругление каждый бренд сохраняет на СВОЕЙ странице — там оно часть
   фирменного стиля. Здесь же 4 / 8 / 16 px рядом читались как брак. */
.bchapter .bchapter__media{border-radius:8px}


/* Страницы брендов: текст глав просили крупнее — 15 -> 16.5 px.
   Правило стоит после прежнего html[data-brand] блока, поэтому побеждает. */
html[data-brand] .chapters .chapter__text{font-size:16.5px;line-height:1.7}
html[data-brand] .chapters .chapter__title{font-size:23px}
html[data-brand] .solit__body .lede{font-size:16.5px;line-height:1.72}

/* =====================================================================
   ПОДВАЛ — четыре столбца и официальные каналы бренда.
   Состав повторяет jaquar.uz: Контакты · Каталог · Сервис · Компания.
   ===================================================================== */
.ftr__cols--4{grid-template-columns:repeat(4,1fr);flex:1 1 660px}
.ftr__about{max-width:40ch;gap:13px}
.ftr__eyebrow{
  font-family:var(--label);font-size:10.5px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0;
}
.ftr__wordmark{
  display:block;font-family:var(--serif);font-weight:400;
  font-size:clamp(30px,3.6vw,46px);line-height:1.02;letter-spacing:-.01em;
  color:var(--ink);text-decoration:none;transition:color .35s;
}
.ftr__wordmark span{display:block}
.ftr__wordmark:hover{color:var(--bronze)}
.ftr__soc{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.ftr__socb{
  display:inline-flex;align-items:center;justify-content:center;
  width:52px;height:52px;flex:0 0 52px;
  border:1px solid var(--line);border-radius:50%;
  color:var(--muted);text-decoration:none;
  transition:color .35s,border-color .35s,background .35s;
}
.ftr__socb svg{width:26px;height:26px;display:block}
.ftr__socb img{width:26px;height:26px;display:block;object-fit:contain}
.ftr__socb:hover{color:var(--bronze);border-color:var(--bronze)}
@media (max-width:1024px){ .ftr__cols--4{grid-template-columns:repeat(2,1fr);flex:1 1 100%} }
@media (max-width:540px){ .ftr__cols--4{grid-template-columns:1fr} }

/* =====================================================================
   РАЗДЕЛ КАТАЛОГА — вертикальное окно 4:5 под ролик, шире прежнего.
   ===================================================================== */
.shot--vert{aspect-ratio:4/5}
.split--wide{grid-template-columns:1fr 1.05fr}
@media (max-width:1024px){ .split--wide{grid-template-columns:1fr} }
@media (max-width:640px){ .shot--vert{aspect-ratio:4/5} }

/* =====================================================================
   ПРОЕКТЫ — объекты Jaquar Group, сертификаты и награды.
   ===================================================================== */
.band--proj{aspect-ratio:16/7}
.band__cap{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:space-between;
  padding:18px 20px;
  background:linear-gradient(180deg,rgba(18,10,12,0) 0%,rgba(18,10,12,.72) 70%,rgba(18,10,12,.86) 100%);
  font-family:var(--label);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
.band__cap b{color:#fff;font-weight:500}
@media (max-width:1024px){ .band--proj{aspect-ratio:3/2} }
@media (max-width:640px){ .band--proj{aspect-ratio:4/3} }

.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.2vw,32px)}
@media (max-width:1024px){ .pgrid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:640px){ .pgrid{grid-template-columns:1fr} }
.pcard{
  border:1px solid var(--line-faint);border-radius:var(--r-card);
  overflow:hidden;background:var(--bg-elevated);
  transition:border-color .35s,box-shadow .45s,transform .45s;
}
.pcard:hover{border-color:var(--line);box-shadow:var(--shadow-soft);transform:translateY(-2px)}
.pcard__media{position:relative;aspect-ratio:16/9;overflow:hidden}
.pcard__badge{
  position:absolute;right:12px;top:12px;z-index:2;width:86px;height:50px;
  object-fit:cover;border-radius:8px;border:1px solid rgba(255,255,255,.55);
  box-shadow:0 6px 18px rgba(0,0,0,.28);
}
.pcard__bar{display:flex;flex-direction:column;gap:5px;padding:15px 17px 17px;border-top:1px solid var(--line-faint)}
.pcard__t{font-family:var(--serif);font-size:clamp(17px,1.5vw,21px);line-height:1.2;color:var(--ink)}
.pcard__d{font-family:var(--label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

.certgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-faint);
  border:1px solid var(--line-faint);border-radius:var(--r-card);overflow:hidden}
@media (max-width:1024px){ .certgrid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:640px){ .certgrid{grid-template-columns:1fr} }
.cert{display:flex;flex-direction:column;gap:11px;padding:clamp(22px,2.3vw,32px);background:var(--bg-elevated)}
/* плитка знака одного размера во всей сетке: разнокалиберные логотипы
   вписываются внутрь (object-fit:contain), рядом ничего не прыгает */
.cert__logo{
  display:block;width:100%;max-width:248px;height:104px;object-fit:contain;
  background:#fff;border-radius:12px;padding:14px 18px;margin-bottom:10px;
  box-shadow:0 1px 0 rgba(0,0,0,.04);
}
@media (max-width:640px){ .cert__logo{height:92px;max-width:220px} }
.cert__k{font-family:var(--label);font-size:17px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--bronze)}
.cert__d{font-size:17px;line-height:1.6;color:var(--ink-soft,var(--ink));opacity:.88}

.awards{display:flex;flex-wrap:wrap;gap:14px 16px}
.award{
  display:inline-flex;align-items:center;gap:12px;padding:15px 26px;
  border:1px solid var(--line);border-radius:999px;background:var(--bg-elevated);
  font-family:var(--serif);font-size:clamp(19px,1.8vw,25px);line-height:1.1;color:var(--ink);
}
.award{padding:10px 26px 10px 10px}
.award img{display:block;height:58px;width:auto;max-width:150px;object-fit:contain;
  background:#fff;border-radius:12px;padding:7px 12px}
.award--logoonly{padding:10px 12px}

/* ==========================================================================
   ТЕЛЕФОН: читаемый размер шрифта и кнопки под палец
   На ширине 390 px в каталоге набиралось 126 элементов мельче 12 px:
   названия покрытий шли 10,5 px, «Uzbekistan» под логотипом — 9,5 px.
   Ссылки «Смотреть» имели высоту 18 px — пальцем попасть трудно.
   На компьютере всё остаётся как было: правило работает только до 640 px.
   ========================================================================== */
@media (max-width:640px){
  .card__kicker{font-size:12.5px;letter-spacing:.06em}
  .card__cta{font-size:12.5px;letter-spacing:.06em;min-height:34px;align-items:center}
  .finish__label{font-size:12px;line-height:1.35}
  .brand__sub{font-size:11px;letter-spacing:.14em}
  .crumbs{font-size:12px;letter-spacing:.06em;gap:8px}
  .eyebrow{font-size:12.5px;letter-spacing:.1em}
  .card__variant,.card__desc{font-size:14px;line-height:1.5}
  .card__will{font-size:12.5px;line-height:1.45}
  .shot__cap{font-size:12px}
  .ftr__tel,.ftr a{min-height:32px;display:inline-flex;align-items:center}
  .award{font-size:18px}
  .cert__k{font-size:15px}
  .cert__d{font-size:15.5px;line-height:1.55}
  /* у ссылки-строки внутри карточки увеличиваем площадь нажатия,
     не раздвигая саму карточку */
  .card__foot{min-height:36px}
}
