/* ARTCER — образец. Концепция «Fuga»: страница устроена как уложенная стена.
   Линии шва — несущая сетка, углы острые, как у ректифицированной плитки. */
@font-face{font-family:"Bodoni Moda";src:url(../fonts/bodoni.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url(../fonts/bodoni-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(../fonts/instrument.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"DM Mono";src:url(../fonts/dmmono.woff2) format("woff2");font-weight:400;font-display:swap}

:root{
  --gut:clamp(16px,4vw,56px);
  --hd:72px;
  --serif:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;
  --sans:"Instrument Sans",system-ui,-apple-system,sans-serif;
  --mono:"DM Mono",ui-monospace,Menlo,monospace;
  --ease:cubic-bezier(.2,.7,.1,1);
  --bg:#f1ede6;--bg2:#e8e2d8;--ink:#191613;--muted:#6a6157;--line:rgba(25,22,19,.15);--line-strong:rgba(25,22,19,.34);
  --fuga-c:rgba(25,22,19,.08);--accent:#b8231b;--on-accent:#fff;--img-filter:none;--veil:rgba(241,237,230,.82);
  color-scheme:light;
}
:root[data-theme="dark"]{
  --bg:#100e0c;--bg2:#1b1815;--ink:#ede7dc;--muted:#a1978a;--line:rgba(237,231,220,.13);--line-strong:rgba(237,231,220,.32);
  --fuga-c:rgba(237,231,220,.07);--accent:#ef6a56;--on-accent:#1a0b08;--img-filter:brightness(.86) saturate(.94);--veil:rgba(16,14,12,.8);
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--bg)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.5 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;border-radius:0}
input,textarea{font:inherit;color:inherit;border-radius:0}
h1,h2,h3,p,ol,ul,dl,dd,figure{margin:0;padding:0}
ol,ul{list-style:none}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
::selection{background:var(--accent);color:var(--on-accent)}
main{position:relative;z-index:1;display:block;outline:0;min-height:100svh}
.skip{position:fixed;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--bg);padding:10px 14px}
.skip:focus{top:12px}

/* Швы: четыре модуля на всю страницу */
.fuga{position:fixed;inset:0 var(--gut);z-index:0;pointer-events:none;background:linear-gradient(to right,transparent calc(25% - .5px),var(--fuga-c) 0 calc(25% + .5px),transparent 0 calc(50% - .5px),var(--fuga-c) 0 calc(50% + .5px),transparent 0 calc(75% - .5px),var(--fuga-c) 0 calc(75% + .5px),transparent 0)}

.wrap{padding-inline:var(--gut)}
.mono{font:400 12px/1.5 var(--mono);letter-spacing:.02em;font-variant-numeric:tabular-nums}
.eyebrow{font:400 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--accent)}
.display{font-family:var(--serif);font-weight:400;font-optical-sizing:auto;font-size:clamp(3.1rem,10.8vw,12.5rem);line-height:.94;letter-spacing:-.022em}
.display em,.h2 em{font-style:italic;color:var(--accent)}
.h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.5rem,6.4vw,6.8rem);line-height:.98;letter-spacing:-.018em}
.h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.7rem,2.6vw,2.6rem);line-height:1.05;letter-spacing:-.01em}
.lead{font-size:clamp(1.05rem,1.35vw,1.3rem);line-height:1.45;color:var(--muted);max-width:44ch}
.ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.ln>span{display:block}

/* Кнопки: прямоугольник-плитка, заливка поднимается снизу */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:50px;padding:0 20px;border:1px solid var(--ink);overflow:hidden;font-size:15px;font-weight:500;isolation:isolate;transition:color .45s var(--ease)}
.btn::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(101%);transition:transform .45s var(--ease);z-index:-1}
.btn:hover{color:var(--bg)}.btn:hover::before{transform:none}
.btn .ar{transition:transform .45s var(--ease)}.btn:hover .ar{transform:translateX(5px)}
.btn--fill{background:var(--ink);color:var(--bg)}
.btn--fill::before{background:var(--accent)}.btn--fill:hover{color:var(--on-accent);border-color:var(--accent)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.link{position:relative;display:inline-flex;gap:10px;align-items:center;padding-block:4px}
.link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:right;transition:transform .5s var(--ease)}
.link:hover::after{transform:scaleX(.25)}

/* Шапка */
.hd{position:fixed;z-index:30;inset:0 0 auto;height:var(--hd);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding-inline:var(--gut);transition:transform .5s var(--ease),background-color .3s,box-shadow .3s}
.hd.is-solid{background:var(--veil);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);box-shadow:0 1px 0 var(--line)}
.hd.is-hidden{transform:translateY(-100%)}
.brand{font:500 21px/1 var(--serif);letter-spacing:.17em;justify-self:start}
.brand i{font-style:normal;color:var(--accent)}
.hd-nav{display:flex;gap:30px;font-size:15px}
.hd-nav a{position:relative;padding:6px 0}
.hd-nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.hd-nav a:hover::after,.hd-nav a[aria-current]::after{transform:scaleX(1)}
.hd-tools{justify-self:end;display:flex;align-items:center;gap:6px}
.tool{display:inline-flex;align-items:center;gap:7px;min-height:40px;min-width:40px;justify-content:center;padding:0 8px;font:400 12px/1 var(--mono);letter-spacing:.04em;text-transform:uppercase}
.tool:hover{color:var(--accent)}
.tool svg{width:18px;height:18px;flex:none}
.lamp{width:30px;height:16px;border:1px solid currentColor;position:relative;display:block}
.lamp::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;background:currentColor;transition:transform .45s var(--ease)}
[data-theme="dark"] .lamp::after{transform:translateX(14px)}
.badge{min-width:18px;height:18px;line-height:18px;padding:0 4px;text-align:center;background:var(--accent);color:var(--on-accent);font:400 11px/18px var(--mono)}
.badge:empty{display:none}
.hd-burger{display:none}

/* Полноэкранное меню */
.menu{position:fixed;inset:0;z-index:25;background:var(--bg);padding:calc(var(--hd) + 24px) var(--gut) 32px;display:flex;flex-direction:column;justify-content:space-between}
.menu[hidden]{display:none}
.menu a.m{display:block;font:400 clamp(2.4rem,11vw,4rem)/1.12 var(--serif);border-bottom:1px solid var(--line);padding:8px 0}
.menu-tools{display:flex;gap:10px;justify-content:space-between;align-items:center}

/* Главный экран */
.hero{padding-top:calc(var(--hd) + clamp(20px,4vw,48px))}
.hero-top{display:grid;grid-template-columns:repeat(4,1fr);align-items:end;gap:28px 0}
.hero-top h1{grid-column:1/-1}
.hero-side{grid-column:3/-1;padding-left:clamp(0px,1.2vw,16px);display:flex;flex-direction:column;gap:22px}
.hero-cta{display:flex;flex-wrap:wrap;gap:10px}
.hero-stage{display:block;position:relative;margin-top:clamp(28px,4vw,56px);height:min(92svh,62vw);min-height:420px}
.hero-clip{position:absolute;inset:0;overflow:hidden;background:var(--bg2);clip-path:inset(0 var(--gut))}
.hi{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;will-change:transform}
.hi.live{opacity:1}
.hi.day{object-position:50% 78%}
[data-theme="light"] .hi.eve,[data-theme="dark"] .hi.day{visibility:hidden}
.hero-tiles{position:absolute;inset:0}
.hero-tiles i{position:absolute;display:block;background-repeat:no-repeat;box-shadow:inset 0 0 0 .5px var(--bg);will-change:transform,opacity}
.hero-lamp{display:none;position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 34vmax at var(--lx,62%) var(--ly,44%),rgba(10,7,4,0) 0%,rgba(10,7,4,.14) 50%,rgba(10,7,4,.5) 100%)}
[data-theme="dark"] .hero-lamp{display:block}
.hero-cap{position:absolute;right:calc(var(--gut) + 14px);bottom:14px;color:#fff;background:rgba(14,11,8,.58);padding:6px 10px;backdrop-filter:blur(6px)}

/* Секции */
.sec{position:relative;padding-block:clamp(72px,11vw,168px)}
.sec-h{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 0;margin-bottom:clamp(36px,5vw,72px)}
.sec-h .eyebrow{grid-column:1/-1}.sec-h h2{grid-column:1/-1}

/* Материи */
.mat-pin{display:grid;grid-template-columns:1fr 1fr;min-height:100svh}
.mat-l{padding:calc(var(--hd) + 32px) 0 40px var(--gut);display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.mat-l h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:1.1;max-width:14ch}
.mat-i{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:.1em clamp(12px,2vw,28px) .12em 0;font:400 clamp(2.6rem,6.1vw,6.4rem)/1.04 var(--serif);letter-spacing:-.018em;color:var(--muted);opacity:.5;transition:color .4s,opacity .4s,transform .6s var(--ease)}
.mat-i .mono{color:inherit;letter-spacing:.02em}
.mat-i.on{color:var(--ink);opacity:1;transform:translateX(clamp(6px,1.2vw,18px))}
.mat-i.on em{color:var(--accent)}
.mat-i em{font-style:italic;transition:color .4s}
.mat-r{position:relative;overflow:hidden;background:var(--bg2)}
.mat-r figure{position:absolute;inset:0;clip-path:inset(100% 0 0 0);transition:clip-path .95s cubic-bezier(.7,0,.15,1)}
.mat-r figure.on{clip-path:inset(0);z-index:2}
.mat-r figure.was{clip-path:inset(0);z-index:1}
.mat-r img{width:100%;height:100%;object-fit:cover;filter:var(--img-filter);transform:scale(1.08);transition:transform 1.6s var(--ease)}
.mat-r figure.on img{transform:none}
.mat-r figcaption{position:absolute;left:14px;bottom:14px;color:#fff;background:rgba(14,11,8,.55);padding:6px 10px}

/* Лента коллекций */
.cols{overflow:hidden}
.cols-pin{min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:clamp(24px,3.5vh,44px);padding-block:calc(var(--hd) + 8px) 32px}
.cols-h{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cols-h .h2{font-size:clamp(2.2rem,4.8vw,5rem)}
.cols-track{display:flex;gap:1px;padding-inline:var(--gut);width:max-content;will-change:transform}
.cc{position:relative;display:block;width:clamp(260px,29vw,430px);flex:none;background:var(--bg)}
.cc-img{display:block;height:min(52vh,36vw);min-height:300px;overflow:hidden;background:var(--bg2)}
.cc-img img{width:100%;height:100%;object-fit:cover;filter:var(--img-filter);transition:transform 1.2s var(--ease)}
.cc:hover .cc-img img{transform:scale(1.045)}
.cc-b{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;padding:14px 14px 16px 0;align-items:baseline}
.cc-t{order:2;font:400 clamp(1.6rem,2.3vw,2.3rem)/1.1 var(--serif)}
.cc-n{order:1;color:var(--muted)}
.cc-s{order:3;grid-column:1/-1;color:var(--muted);font-size:15px;line-height:1.35;min-height:2.7em}

/* Формат в масштабе */
.fmt .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 0}
.fmt-txt{grid-column:1/3;display:flex;flex-direction:column;gap:20px;padding-right:clamp(12px,3vw,48px)}
.fmt-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:10px}
.fmt-list button{background:var(--bg);padding:14px 6px;text-align:center;font:400 14px/1 var(--mono);transition:background .3s,color .3s}
.fmt-list button:hover{background:var(--bg2)}
.fmt-list button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.fmt-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:8px}
.fmt-stats dt{color:var(--muted);font:400 12px/1.4 var(--mono)}
.fmt-stats dd{font:400 clamp(2rem,3.6vw,3.6rem)/1 var(--serif);margin-top:6px}
.fmt-st{grid-column:3/-1;position:relative;height:clamp(420px,62vh,640px);border-bottom:1px solid var(--ink)}
.fmt-ruler{position:absolute;inset:0;pointer-events:none}
.fmt-ruler span{position:absolute;left:0;right:0;border-top:1px dashed var(--line);font:400 11px/1 var(--mono);color:var(--muted);padding-top:3px;padding-left:8px}
.fmt-fig{position:absolute;bottom:0;left:clamp(44px,5vw,70px);fill:var(--muted)}
.fmt-tile{position:absolute;bottom:0;left:calc(clamp(44px,5vw,70px) + var(--figw,110px) + clamp(16px,3vw,44px));background:var(--bg2) center/cover;box-shadow:0 18px 40px -22px rgba(0,0,0,.55);transition:width .85s var(--ease),height .85s var(--ease);overflow:hidden}
.fmt-tile::after{content:attr(data-f);position:absolute;left:8px;top:8px;background:rgba(14,11,8,.6);color:#fff;font:400 11px/1 var(--mono);padding:4px 6px}
.fmt-fignote{position:absolute;bottom:6px;left:6px;writing-mode:vertical-rl;transform:rotate(180deg);color:var(--muted);font:400 11px/1 var(--mono)}

/* Луч вдоль поверхности: эта секция всегда тёмная, как комната без света */
.lit{background:#0b0908;color:#ede7dc;--accent:#ef6a56;--muted:#a1978a;--line:rgba(237,231,220,.14);--ink:#ede7dc;--bg:#0b0908;--bg2:#1b1815;position:relative;z-index:1}
.lit .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 0;align-items:stretch}
.lit-txt{grid-column:1/2;grid-row:2;display:flex;flex-direction:column;gap:18px;padding-right:18px;justify-content:space-between}
.lit-h{grid-column:1/-1;grid-row:1;display:grid;gap:14px;margin-bottom:8px}
.lit-txt .lead{font-size:1.02rem}
.lit-fin{display:flex;flex-direction:column;gap:1px;background:var(--line)}
.lit-fin button{background:#0b0908;text-align:left;padding:13px 0;display:flex;justify-content:space-between;gap:12px;font:400 14px/1.2 var(--mono);color:var(--muted);transition:color .3s,padding .4s var(--ease)}
.lit-fin button:hover{color:var(--ink)}
.lit-fin button[aria-pressed="true"]{color:var(--ink);padding-left:12px;box-shadow:inset 2px 0 0 #ef6a56}
.lit-view{grid-column:2/-1;grid-row:2;position:relative;height:clamp(420px,76vh,780px);background:#141210 center/cover}
canvas.gl{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .6s;touch-action:pan-y;cursor:crosshair}
canvas.gl.on{opacity:1}
.lit-tag{position:absolute;left:12px;bottom:12px;background:rgba(14,11,8,.62);padding:6px 10px;pointer-events:none}
.lit-note{color:var(--muted);font-size:13.5px;line-height:1.4}

/* Профи */
.pro-g{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line-strong)}
.pro-c{padding:18px clamp(12px,1.6vw,22px) 26px 0;display:flex;flex-direction:column;gap:clamp(36px,5.5vw,84px);min-height:clamp(220px,20vw,300px)}
.pro-c+.pro-c{padding-left:clamp(12px,1.6vw,22px);border-left:1px solid var(--line)}
.pro-c p{color:var(--muted);font-size:15.5px;line-height:1.42}

/* Компания */
.co .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 0}
.co-t{grid-column:1/-1}.co-l{grid-column:3/-1;padding-left:clamp(0px,1.2vw,16px)}
.co-s{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(28px,5vw,64px);border-top:1px solid var(--line-strong)}
.co-s div{padding:14px 12px 0 0}
.co-s dt{font:400 12px/1.4 var(--mono);color:var(--muted)}
.co-s dd{font:400 clamp(2.8rem,6.6vw,7rem)/1 var(--serif);margin-top:8px;font-variant-numeric:lining-nums}

/* Подвал */
.ft{position:relative;z-index:1;padding:clamp(48px,6vw,88px) var(--gut) 22px;overflow:hidden}
.ft-word{display:block;font:500 clamp(4.2rem,20.6vw,24rem)/.86 var(--serif);letter-spacing:.01em;text-align:center;white-space:nowrap;background:var(--ink) center 42%/cover;-webkit-background-clip:text;background-clip:text;color:transparent;margin-inline:calc(var(--gut) * -.3)}
.ft-g{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 0;margin-bottom:clamp(36px,6vw,72px)}
.ft-g li{margin-bottom:6px}
.ft-g h3{font:400 12px/1.4 var(--mono);color:var(--muted);margin-bottom:10px}
.ft-b{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-top:22px;color:var(--muted)}

/* Страницы каталога */
.pg-h{padding-top:calc(var(--hd) + clamp(28px,5vw,64px));padding-bottom:clamp(20px,3vw,36px)}
.pg-h .display{font-size:clamp(3rem,9vw,10rem)}
.crumb{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);margin-bottom:16px}
.crumb a:hover{color:var(--accent)}
.bar{position:sticky;top:0;z-index:12;background:var(--veil);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;border-block:1px solid var(--line);margin-bottom:0;transition:top .5s var(--ease)}
body.hd-on .bar{top:var(--hd)}
.seg{display:flex;gap:18px}
.seg button{padding:16px 0;font-size:15px;color:var(--muted);position:relative}
.seg button[aria-pressed="true"]{color:var(--ink)}
.seg button[aria-pressed="true"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}
.cat-g{display:grid;grid-template-columns:1fr 3fr;align-items:start}
.flt{position:sticky;top:calc(var(--hd) + 74px);max-height:calc(100svh - var(--hd) - 90px);overflow:auto;padding:22px 16px 22px 0;scrollbar-width:thin}
.flt-g{margin-bottom:22px}
.flt-g h3{font:400 12px/1.4 var(--mono);color:var(--muted);margin-bottom:8px;letter-spacing:.04em}
.chips{display:flex;flex-wrap:wrap;gap:5px}
.chip{display:inline-flex;gap:6px;align-items:baseline;border:1px solid var(--line);padding:6px 9px;font-size:14px;line-height:1.2;transition:background .25s,color .25s,border-color .25s}
.chip small{font:400 11px/1 var(--mono);color:var(--muted)}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.chip[aria-pressed="true"] small{color:inherit}
.chip:disabled{opacity:.35;cursor:not-allowed}
.flt-tog{display:none}
.res{min-width:0;padding-left:1px}
.res-empty{padding:60px 0;color:var(--muted)}

/* Сетка коллекций */
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.cgrid .cc{width:auto}
.cgrid .cc-img{height:auto;aspect-ratio:4/5;min-height:0}
.cgrid .cc-b{padding:12px 10px 14px}

/* Стена плиток в реальных пропорциях */
.wall{columns:4;column-gap:1px;background:linear-gradient(var(--line),var(--line))}
.st{display:block;position:relative;break-inside:avoid;background:var(--bg);margin-bottom:1px;--mx:50%;--my:50%}
.st-img{display:block;position:relative;overflow:hidden;background:var(--bg2)}
.st-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.st-img::after{content:"";position:absolute;inset:0;opacity:0;background:radial-gradient(circle 46% at var(--mx) var(--my),rgba(255,247,232,.5),transparent 72%);mix-blend-mode:soft-light;transition:opacity .4s;pointer-events:none}
.st:hover .st-img::after{opacity:1}
.st:hover .st-img img{transform:scale(1.03)}
.st-b{display:block;padding:9px 10px 12px}
.st-t{display:block;font-size:15.5px;line-height:1.25;font-weight:500}
.st-s{display:block;color:var(--muted);margin-top:3px}
.more{display:flex;justify-content:center;padding:32px 0 8px}
.add{position:absolute;top:8px;right:8px;width:32px;height:32px;background:var(--veil);color:var(--ink);display:grid;place-items:center;font:400 18px/1 var(--mono);opacity:0;transition:opacity .3s,background .3s}
.st:hover .add,.add:focus-visible,.add[aria-pressed="true"]{opacity:1}
.add[aria-pressed="true"]{background:var(--accent);color:var(--on-accent)}

/* Коллекция */
.chero{position:relative;height:min(84svh,58vw);min-height:360px;overflow:hidden;background:var(--bg2)}
.chero img{width:100%;height:112%;object-fit:cover;filter:var(--img-filter)}
.cmeta{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);margin-bottom:clamp(48px,7vw,104px)}
.cmeta div{padding:14px 12px 18px 0}
.cmeta dt{font:400 12px/1.4 var(--mono);color:var(--muted);margin-bottom:6px}
.cmeta dd{font-size:15.5px;line-height:1.35}
.amb{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(150px,19vw,290px);gap:1px;margin-bottom:clamp(56px,8vw,120px)}
.amb figure{overflow:hidden;background:var(--bg2);min-width:0}
.amb img{width:100%;height:100%;object-fit:cover;filter:var(--img-filter)}
.amb figure:nth-child(6n+1){grid-column:span 2;grid-row:span 2}
.amb figure:nth-child(6n+4){grid-column:span 2}
.sub-h{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px}

/* Карточка поверхности */
.pv{display:grid;grid-template-columns:repeat(4,1fr);padding-top:var(--hd);min-height:100svh}
.pv-view{grid-column:1/3;position:sticky;top:var(--hd);height:calc(100svh - var(--hd));background:var(--bg2) center/cover;overflow:hidden}
.pv-view>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pv-hint{position:absolute;left:12px;bottom:12px;background:rgba(14,11,8,.6);color:#fff;padding:6px 10px;pointer-events:none;transition:opacity .4s}
.pv-b{grid-column:3/-1;padding:clamp(20px,3.4vw,48px) 0 clamp(40px,6vw,80px) clamp(16px,2.6vw,36px)}
.pv-b .crumb{margin-bottom:clamp(24px,5vw,64px)}
.pv-t{font:400 clamp(2.4rem,4.6vw,5rem)/1 var(--serif);letter-spacing:-.015em;margin-bottom:12px}
.pv-q{color:var(--muted);margin-bottom:26px}
.pv-a{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(30px,4vw,48px)}
.pv-a .btn{flex:1 1 220px}
.spec{border-top:1px solid var(--line-strong)}
.spec div{display:grid;grid-template-columns:minmax(120px,1fr) 1.3fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15.5px;line-height:1.3}
.spec dt{color:var(--muted)}
.vbar{display:inline-flex;gap:3px;margin-right:9px;vertical-align:1px}
.vbar i{width:16px;height:9px;background:var(--line)}
.vbar i.on{background:var(--accent)}
.pv-rel{padding-block:clamp(56px,8vw,110px)}
[data-list] .wall{columns:5}
.pv-rel .wall{columns:4}

/* Лоток образцов */
.scrim{position:fixed;inset:0;z-index:40;background:rgba(8,6,4,.45);opacity:0;transition:opacity .35s}
.scrim.on{opacity:1}
.tray{position:fixed;z-index:41;top:0;right:0;bottom:0;width:min(460px,100vw);background:var(--bg);border-left:1px solid var(--line-strong);padding:18px clamp(16px,3vw,28px) 24px;transform:translateX(102%);visibility:hidden;transition:transform .55s var(--ease),visibility 0s .55s;overflow:auto;display:flex;flex-direction:column;gap:16px}
.tray.on{transform:none;visibility:visible;transition:transform .55s var(--ease)}
.tray-h{display:flex;justify-content:space-between;align-items:center}
.tray-h h2{font:400 2rem/1 var(--serif)}
.tray-l{display:grid;gap:1px;background:var(--line);border-block:1px solid var(--line)}
.tray-i{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;background:var(--bg);padding:8px 0}
.tray-i img{width:56px;height:72px;object-fit:cover}
.tray-i b{font-weight:500;display:block;line-height:1.25}
.tray-i .x{padding:10px;color:var(--muted);font-size:13px}
.tray-i .x:hover{color:var(--accent)}
.field{display:block}
.field span{display:block;font:400 12px/1.4 var(--mono);color:var(--muted);margin-bottom:3px}
.field input,.field textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line-strong);padding:8px 0;outline:0}
.field input:focus,.field textarea:focus{border-color:var(--accent)}
.tray form{display:grid;gap:12px}
.tray-note{font-size:13.5px;color:var(--muted);line-height:1.4}

/* Поиск */
.find{position:fixed;inset:0;z-index:50;background:var(--veil);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);padding:calc(var(--hd) + 12px) var(--gut) 24px;overflow:auto}
.find[hidden]{display:none}
.find-x{position:absolute;top:18px;right:var(--gut)}
.find input{width:100%;background:none;border:0;border-bottom:1px solid var(--ink);padding:8px 0 12px;font:400 clamp(1.7rem,4.5vw,3.6rem)/1.1 var(--serif);outline:0}
.find input::placeholder{color:var(--muted)}
.find-r{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 12px}
.find-r a{display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.find-r a:hover,.find-r a:focus-visible{color:var(--accent)}
.find-r img{width:52px;height:64px;object-fit:cover}
.find-r b{display:block;font-weight:500;line-height:1.25}

/* Переходы между страницами */
@keyframes vt-out{to{opacity:0;transform:translateY(-10px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(14px)}}
::view-transition-old(root){animation:vt-out .26s ease both}
::view-transition-new(root){animation:vt-in .42s var(--ease) both}
.vt-theme::view-transition-old(root){animation:none}
.vt-theme::view-transition-new(root){animation:none;mix-blend-mode:normal}
.vt-theme::view-transition-image-pair(root){isolation:auto}
::view-transition-group(shared){animation-duration:.6s;animation-timing-function:var(--ease)}

/* Планшет и телефон */
@media (max-width:1040px){
  :root{--hd:62px}
  .wall{columns:3}
  .hd{grid-template-columns:1fr auto}
  .hd-nav{display:none}
  .hd-burger{display:inline-flex}
  .tool .lbl{display:none}
  .fuga{background:linear-gradient(to right,transparent calc(50% - .5px),var(--fuga-c) 0 calc(50% + .5px),transparent 0)}
  .hero-side{grid-column:1/-1;padding-left:0}
  .hero-stage{height:62svh;min-height:380px}
  .mat-pin{display:flex;flex-direction:column;min-height:0}
  .mat-l{padding:28px var(--gut) 12px;gap:18px}
  .mat-r{order:-1;height:82vw;max-height:70svh;margin-top:clamp(56px,9vw,100px)}
  .cols-pin{min-height:0;padding-block:clamp(60px,10vw,110px) 20px}
  .cols-track{width:auto;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-padding-inline:var(--gut)}
  .cols-track::-webkit-scrollbar{display:none}
  .cc{scroll-snap-align:start;width:min(78vw,380px)}
  .cc-img{height:56vw;min-height:260px;max-height:440px}
  .cgrid .cc{width:auto}
  .fmt-txt,.fmt-st{grid-column:1/-1;padding-right:0}
  .lit-txt,.lit-view{grid-column:1/-1;grid-row:auto;padding-right:0}
  .lit-fin{flex-direction:row;flex-wrap:wrap;gap:6px;background:none}
  .lit-fin button{border:1px solid var(--line);padding:9px 10px}
  .lit-fin button[aria-pressed="true"]{padding-left:10px;box-shadow:none;background:#ede7dc;color:#0b0908}
  .lit-fin button .mono{display:none}
  .lit-view{height:66svh;min-height:360px}
  .pro-g{grid-template-columns:1fr 1fr}
  .pro-c:nth-child(3){padding-left:0;border-left:0}
  .pro-c:nth-child(n+3){border-top:1px solid var(--line)}
  .co-l{grid-column:1/-1;padding-left:0}
  .co-s{grid-template-columns:repeat(3,1fr)}
  .ft-g{grid-template-columns:1fr 1fr}
  .cat-g{display:block}
  .flt{position:static;max-height:none;overflow:visible;padding:0}
  .flt-tog{display:inline-flex}
  .flt:not(.open){display:none}
  .flt.open{padding-block:16px;border-bottom:1px solid var(--line)}
  .pv{display:block}
  .pv-view{position:relative;top:0;height:70svh}
  .pv-b{padding:22px var(--gut) 40px}
  [data-list] .wall,.pv-rel .wall{columns:3}
}
@media (max-width:640px){
  body{font-size:16px}
  .wall,[data-list] .wall,.pv-rel .wall{columns:2}
  .cgrid{grid-template-columns:1fr 1fr}
  .cc-s{display:none}.cgrid .cc-b{padding:9px 8px 12px}
  .cmeta{grid-template-columns:1fr 1fr}
  .amb{grid-template-columns:1fr 1fr;grid-auto-rows:42vw}
  .amb figure:nth-child(6n+4){grid-column:span 2}
  .pro-g{grid-template-columns:1fr}
  .pro-c,.pro-c+.pro-c{padding-left:0;border-left:0;min-height:0;gap:14px;border-top:1px solid var(--line)}
  .pro-c:first-child{border-top:0}
  .co-s{grid-template-columns:repeat(3,1fr)}
  .fmt-list{grid-template-columns:repeat(4,1fr)}
  .fmt-list button{padding:13px 2px;font-size:12.5px}
  .tool{padding:0 5px;min-width:36px}
  .brand{font-size:19px;letter-spacing:.13em}
  .lamp{width:26px}.lamp::after{width:9px;height:10px}[data-theme="dark"] .lamp::after{transform:translateX(11px)}
  .add{opacity:1}
}
@media (hover:none){.add{opacity:1}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
  .hi{opacity:1}
}

/* ---------- CMS pages: cross-page transition, language switch, legal text, consent ---------- */
@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}
.tool--lang{gap:0;padding:0}
.tool--lang a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;min-width:30px;color:var(--muted)}
.tool--lang a.active,.tool--lang a:hover{color:var(--ink)}
.legal{max-width:calc(68ch + 2 * var(--gut));padding-bottom:clamp(56px,8vw,110px)}
.legal .display{font-size:clamp(2.6rem,6vw,5.4rem);margin-bottom:clamp(28px,4vw,48px)}
.legal section{padding-block:20px;border-top:1px solid var(--line)}
.legal h2{margin-bottom:10px}
.legal p+p{margin-top:10px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;line-height:1.45;margin-block:4px 12px}
.consent input{margin-top:3px;flex:none}
[hidden]{display:none!important}
