/* D */
@font-face{font-family:'Noto Serif';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/notoserif-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Noto Serif';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/notoserif-latin.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF,U+2013-2014,U+2018-201E,U+2022,U+2026,U+20AC,U+2122,U+2212}
@font-face{font-family:'Noto Serif';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/notoserif-latin-ext.woff2) format('woff2');unicode-range:U+20BD,U+0141,U+0142,U+00D8,U+00F8,U+0160,U+0161,U+010C,U+010D,U+017D,U+017E,U+015A,U+015B,U+017B,U+017C,U+011E,U+011F,U+0130,U+0131,U+015E,U+015F,U+0150,U+0151,U+0170,U+0171,U+00D0,U+00F0,U+017A,U+0179,U+0107,U+0106,U+0144,U+0143,U+0119,U+0118,U+0105,U+0104}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/inter-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/inter-latin.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF,U+2013-2014,U+2018-201E,U+2022,U+2026,U+20AC,U+2122,U+2212}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/inter-latin-ext.woff2) format('woff2');unicode-range:U+20BD,U+0141,U+0142,U+00D8,U+00F8,U+0160,U+0161,U+010C,U+010D,U+017D,U+017E,U+015A,U+015B,U+017B,U+017C,U+011E,U+011F,U+0130,U+0131,U+015E,U+015F,U+0150,U+0151,U+0170,U+0171,U+00D0,U+00F0,U+017A,U+0179,U+0107,U+0106,U+0144,U+0143,U+0119,U+0118,U+0105,U+0104}
/* D = A (Noto Serif + Inter) + шапка устройства C: прописные с разрядкой, чёрные линии, логотип 32, меню разделов в ОДНУ строку (реш. 98) */
:root{--ff-head:'Noto Serif',Georgia,'Times New Roman',serif;--ff-text:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;--ff-logo:'Noto Serif',Georgia,serif;--ff-nav:var(--ff-text);
--fw-nav:500;--nav-tt:uppercase;--nav-ls:.1em;--logo-size:32px;--logo-size-m:20px;--hero-pad:56px;--fs-hero:64px;--fs-hero-m:36px;--fs-h1:37px;--fs-h1-m:27px;--fs-h2:24px;--h-ls:-.005em;
--fs-name:18px;--fs-name-m:16px;--fw-name:500;--fs-pname:38px;--fs-pname-m:28px;--fw-pname:600;--fs-nav:15px}
h1,h2,h3{font-weight:700}.product-info .price{font-weight:500}.pl-n{font-weight:500}
:root{--edge:40px;--edge-m:20px;--fs-lead:18px;--fs-lead-m:16px;--fs-intro:16px}
/* ?fs=old (touch.js) — прежние размеры и поля для сравнения */
html.fs-old{--edge:32px;--edge-m:16px;--fs-h1:42px;--fs-h1-m:30px;--fs-lead:20px;--fs-lead-m:18px;--fs-intro:17px}
/* ===== Общий слой вариантов оформления: шкала через переменные, шапка, сетка, карточка товара ===== */
:root{--muted:#666;--line:#dcd9d2;--tap:44px;--fs-body:17px;--fs-small:14px;--fs-nav:16px;--fs-cap:13px}
body{font-family:var(--ff-text);font-size:var(--fs-body);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,.pl-n,.product-info h1,.product-info .price{font-family:var(--ff-head)}
button,input,select{font-family:inherit}
:root{--wrap:1480px}
.ph-wrap,.ph-page{max-width:var(--wrap);padding-left:var(--edge);padding-right:var(--edge)}
.ph-wrap .ph-wrap,.ph-page .ph-wrap{padding:0;max-width:none}
.ph-crumbs{font-size:var(--fs-small);padding-top:20px}
.ph-crumbs a{display:inline-block;padding:6px 0}

/* --- шапка: верхняя строка (Бренды, Дизайнеры, О нас…) --- */
.ph-top{font-size:var(--fs-nav);color:var(--ink)}
.ph-top-inner{padding-top:0;padding-bottom:0}
.ph-service{gap:0 28px}
.ph-service a,.ph-phone{color:var(--ink);display:inline-flex;align-items:center;min-height:var(--tap);font-weight:var(--fw-nav);text-transform:var(--nav-tt);letter-spacing:var(--nav-ls)}
.ph-service a:hover,.ph-phone:hover{text-decoration:underline;text-underline-offset:5px}
.ph-phone{font-weight:600}
/* --- шапка: логотип и разделы --- */
.ph-main{padding-top:14px;padding-bottom:14px;gap:12px 28px;flex-wrap:wrap}
.ph-logo{font-family:var(--ff-logo);font-weight:700;font-size:var(--logo-size);text-transform:uppercase;letter-spacing:.02em;line-height:1;display:inline-flex;align-items:center;min-height:var(--tap)}
.ph-tree{flex:1 1 100%;order:5;gap:0 2px;justify-content:space-between;border-top:1px solid var(--line);padding-top:4px;margin-top:4px}
.ph-sec-link{font-size:var(--fs-nav);padding:12px 4px 12px 10px;min-height:var(--tap);font-weight:var(--fw-nav);text-transform:var(--nav-tt);letter-spacing:var(--nav-ls)}
.ph-sec-link .ph-count{display:none}
.ph-sec-toggle{padding:12px 8px 12px 2px;min-height:var(--tap)}
.ph-sec.is-current .ph-sec-link{font-weight:700}
.ph-search-open,.ph-cart,.ph-burger{min-width:var(--tap);min-height:var(--tap);align-items:center;justify-content:center;padding:0}
.ph-search{margin-left:auto;order:2;display:flex}.ph-search-open{margin-left:0!important}.ph-cart{margin-left:0!important;order:3}.ph-burger{order:4}
.ph-search-open svg,.ph-cart svg{width:24px;height:24px}
.ph-count{font-size:var(--fs-cap);white-space:nowrap}
.ph-drop{min-width:320px;padding:10px}
.ph-drop-all{font-size:15px;padding:12px 12px;color:var(--ink);font-weight:600}
.ph-drop-row{font-size:16px;padding:11px 12px;min-height:var(--tap);align-items:center;text-transform:none;letter-spacing:0;font-family:var(--ff-text);font-weight:400}
.ph-sec .ph-drop *{text-transform:none;letter-spacing:0}
.ph-cart-count{font-size:12px;min-width:20px;line-height:20px;top:2px;right:0}
.ph-search-panel input,.ph-searchform input{font-size:16px;min-height:var(--tap)}
.ph-sug a{font-size:16px;padding:12px;min-height:var(--tap);align-items:center}
.ph-sug a small{font-size:var(--fs-cap)}
.ph-searchform button{font-size:16px;min-height:var(--tap)}
@media (min-width:901px) and (max-width:1500px){.ph-main{gap:12px 28px}.ph-sec-link{font-size:var(--fs-nav);padding:12px 4px 12px 10px}.ph-sec-toggle{padding:12px 8px 12px 2px}}
@media (max-width:900px){
 .ph-main{gap:4px 4px;padding-top:6px;padding-bottom:6px}
 .ph-logo{font-size:var(--logo-size-m)}
 .ph-tree{order:5;border-top:0;margin-top:0;justify-content:flex-start;padding:4px 0 8px}
 .ph-sec-link{flex:1;min-height:48px;padding:12px 4px 12px 10px;margin-left:-10px;font-size:17px}
 .ph-sec-toggle{min-width:48px;min-height:48px;align-self:stretch}
 .ph-drop-row{font-size:16px;padding:12px 12px;min-height:48px}
 .ph-drop-all{padding:13px 12px;min-height:48px;display:flex;align-items:center}
 .ph-header.menu-open{display:flex;flex-direction:column}.ph-header.menu-open .ph-top{order:3;border-top:1px solid var(--line);border-bottom:0}.ph-header.menu-open .ph-main{order:1}
 .ph-header.menu-open .ph-top-inner{gap:0;padding-bottom:8px}
 .ph-service{flex-direction:column;width:100%}
 .ph-service a,.ph-phone{min-height:48px;font-size:17px;width:100%}
 .ph-burger span{width:24px;margin:5px 0}
}
@media (max-width:600px){.ph-wrap,.ph-page{padding-left:var(--edge-m);padding-right:var(--edge-m)}}
.ph-footer-contacts{align-items:center}

/* --- главная --- */
.ph-hero{padding:var(--hero-pad) 0 8px}
.ph-hero h1{font-family:var(--ff-logo);font-weight:700;font-size:var(--fs-hero);text-transform:uppercase;letter-spacing:.02em;line-height:1.05;margin:0 0 20px}
.ph-lead{font-size:var(--fs-lead);line-height:1.55;color:#333;max-width:820px}
.ph-sections{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px;margin:40px 0}
.ph-card{padding:24px 26px}
.ph-card h2{font-size:var(--fs-h2);margin:0 0 6px}
.ph-card .ph-count{font-size:14px}
.ph-card ul{font-size:16px;margin-top:14px}
.ph-card li{padding:0}
.ph-card li a{display:block;padding:9px 0;min-height:40px}
.ph-card li span{align-self:center}
.ph-trust{gap:24px;margin:48px 0;padding:32px 0}
.ph-trust h3{font-size:19px;margin:0 0 6px}
.ph-trust p{font-size:16px;color:#444}
/* --- содержимое, заголовки --- */
.ph-page{padding-top:20px}
.ph-page h1{font-size:var(--fs-h1);margin:10px 0 20px;letter-spacing:var(--h-ls)}
.ph-text h2{font-size:24px}
.ph-tile{padding:16px 18px;border-radius:8px;min-height:var(--tap)}
.ph-tile b{font-size:18px;font-family:var(--ff-head)}
.ph-tile span{font-size:14px;color:#555}
.ph-tiles{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.ph-letters a,.ph-letter a{min-height:var(--tap);display:inline-flex;align-items:center;font-size:16px}
.ph-letter a{display:flex;font-size:16px;padding:6px 0;min-height:36px}
.ph-letter h3{font-size:18px;color:var(--ink)}
/* --- листинг: сетка 4 в ряд (1440), 5 максимум от 1700, 3 на планшете, 2 на телефоне --- */
.pl-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 24px;margin:28px 0}
.pl-card img{border-radius:4px}
.pl-b{font-size:var(--fs-cap);margin-top:12px;letter-spacing:.08em}
.pl-n{font-size:var(--fs-name);line-height:1.3;font-weight:var(--fw-name);margin-top:4px}
.pl-p{font-size:17px;margin-top:6px}
.pl-sub a,.pl-sub span{font-size:16px;padding:10px 18px;min-height:var(--tap);display:inline-flex;align-items:center;border-radius:24px}
.pl-pages a,.pl-pages b{min-width:var(--tap);min-height:var(--tap);display:inline-flex;align-items:center;justify-content:center;font-size:16px;padding:0 12px}
.pl-meta{font-size:15px}
.pf-open{font-size:16px;min-height:48px;padding:0 24px;border-radius:26px}
.pf-n,.pf-sn{font-size:13px}
.pf-panel{font-size:16px}.pf-blk summary{min-height:var(--tap);font-size:16px}
.pf-r,.pf-sub{min-height:40px;font-size:16px}.pf-more{font-size:15px;padding:10px 0}
.pf-rg button{font-size:15px;min-height:40px;padding:6px 14px}
.pf-go,.pf-rs{min-height:48px;font-size:16px}
@media (min-width:1700px){:root{--wrap:1680px}.pl-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.ph-sections{grid-template-columns:repeat(5,1fr)}}
@media (max-width:1100px){.pl-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.pl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 12px}.pl-n{font-size:var(--fs-name-m)}.pl-p{font-size:16px}.pl-b{font-size:13px;letter-spacing:.06em}}
/* --- карточка товара --- */
.product-detail{gap:64px}
.product-info h1{font-size:var(--fs-pname);font-weight:var(--fw-pname);line-height:1.2;margin-bottom:10px;letter-spacing:var(--h-ls)}
.product-info .brand{font-size:15px;letter-spacing:.1em;color:#555}
.product-info .designer{font-size:16px;color:#555}
.product-info .sku{font-size:14px;color:#666}
.product-info .price{font-size:32px;margin-bottom:28px}
.product-info .price .price-eur{font-size:.55em}
.price-eur{color:#666}
.product-info h3{font-size:15px;letter-spacing:.08em;font-weight:600;font-family:var(--ff-text)}
.product-info p{font-size:17px;color:#333}
.variant-label{font-size:16px;color:#222;font-weight:500}
.variant-btn{font-size:16px;min-height:var(--tap);padding:10px 18px}
.variant-more,.finishes-more{font-size:15px;min-height:var(--tap);padding:10px 16px}
.variant-select{font-size:16px;min-height:48px;padding:10px 12px}
.variant-swatches-named .variant-swatch,.variant-palette.variant-swatches-named .variant-swatch{width:96px}
.variant-swatches-named .variant-swatch span,.variant-palette.variant-swatches-named .variant-swatch span{font-size:13px;line-height:16px;height:auto;min-height:16px;-webkit-line-clamp:unset;display:block;overflow:visible}
.finish figcaption{font-size:13px}
.picked-line{font-size:16px}
.cta-main,.cta-cart{font-size:16px;padding:19px 24px;min-height:56px;letter-spacing:.08em}
.cta-alt{font-size:15px;padding:17px 20px;min-height:52px;letter-spacing:.06em}
.cta-hint{font-size:14px;color:#555}
.cart-need-hint{font-size:15px}
.compare-link{font-size:15px;min-height:var(--tap)}
.specs-table td{font-size:16px;padding:14px 0}
.specs-table td:first-child{color:#555}
.stock-info,.stock-info.stock-italy{font-size:16px}
.gallery-note{font-size:14px}
.compare-bar-clear,.compare-bar-go{font-size:14px;min-height:var(--tap)}
/* --- подвал --- */
.ph-footer{font-size:16px;padding:32px 0}
.ph-footer-nav{gap:0 26px}
.ph-footer-nav a,.ph-footer-contacts a{display:inline-flex;align-items:center;min-height:var(--tap)}
.ph-footer-service{color:var(--ink);font-weight:500}
.ph-footer-inner{font-size:15px}
@media (max-width:900px){.product-detail{gap:32px}.product-info h1{font-size:var(--fs-pname-m)}.product-info .price{font-size:28px}.cta-row{grid-template-columns:1fr}}
@media (max-width:600px){.ph-page h1{font-size:var(--fs-h1-m)}.ph-hero h1{font-size:var(--fs-hero-m)}.ph-lead{font-size:var(--fs-lead-m)}.ph-sections{grid-template-columns:1fr}.variant-swatches-named .variant-swatch,.variant-palette.variant-swatches-named .variant-swatch{width:88px}}
/* --- логотип: вид 2 строки (?logo=2) --- */
html.logo2 .ph-logo{width:min-content;line-height:1;font-size:calc(var(--logo-size)*.95);align-items:flex-start;white-space:normal;text-align:left;min-height:var(--tap);padding:2px 0}
/* --- страница поиска: фильтры по брендам/типам (в исходной вёрстке голые ссылки подряд) --- */
#search-results>.pf-l{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 24px}
#search-results>.pf-l a{display:inline-flex;align-items:center;min-height:var(--tap);border:1px solid var(--line);border-radius:24px;padding:10px 18px;font-size:16px;text-decoration:none}
#search-results>.pf-l a:hover{background:var(--soft)}
/* --- корзина (в site.css стилей корзины нет: картинка тянулась на 1100 px) --- */
.cart-list{border-top:1px solid var(--line);margin-top:16px}
.cart-row{display:grid;grid-template-columns:120px 1fr auto;gap:12px 24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
.cart-row-img{display:block;width:120px;height:120px;background:var(--soft,#f3f2ee)}
.cart-row-img img{width:100%;height:100%;object-fit:contain;display:block}
.cart-row-brand{font-size:var(--fs-cap);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cart-row-name{display:block;font-family:var(--ff-head);font-size:19px;line-height:1.3;text-decoration:none;margin:4px 0}
.cart-row-name:hover{text-decoration:underline}
.cart-row-variant{font-size:15px;color:var(--muted)}
.cart-row-price{font-size:16px;color:var(--muted)}
.cart-row-controls{display:flex;align-items:center;gap:20px}
.cart-qty{display:inline-flex;align-items:center;border:1px solid var(--line)}
.cart-qty-btn,.cart-remove{width:var(--tap);height:var(--tap);border:0;background:none;font-size:22px;line-height:1;cursor:pointer;color:var(--ink)}
.cart-qty-btn:hover,.cart-remove:hover{background:var(--soft,#f3f2ee)}
.cart-qty-val{min-width:32px;text-align:center;font-size:17px}
.cart-row-sum{min-width:110px;text-align:right;font-weight:600;font-size:18px}
.cart-summary{display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:flex-start;margin:28px 0 48px}
.cart-total{font-size:22px}.cart-total strong{font-family:var(--ff-head);font-size:28px}
.cart-actions{display:flex;flex-direction:column;gap:12px;min-width:min(100%,360px)}
.cart-actions .cta-main{display:flex;align-items:center;justify-content:center;text-decoration:none}
.cart-actions .cta-row{display:flex;flex-wrap:wrap;gap:12px}.cart-actions .cta-alt{flex:1 1 150px;display:flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer}
.cart-share-link{font-size:15px;word-break:break-all}
@media (max-width:700px){.cart-row{grid-template-columns:88px 1fr;align-items:start}.cart-row-img{width:88px;height:88px}.cart-row-controls{grid-column:1/-1;justify-content:space-between}.cart-summary{margin-bottom:32px}}
.cart-actions .cta-main{background:var(--ink);color:#fff;border:1px solid var(--ink);padding:0 24px;min-height:56px;text-transform:uppercase;letter-spacing:.08em;font-size:15px}
.cart-actions .cta-alt{border:1px solid var(--ink);background:#fff;color:var(--ink);padding:0 20px;min-height:52px;font-size:15px;text-transform:uppercase;letter-spacing:.06em}
.cart-actions .cta-main:hover{background:#000}.cart-actions .cta-alt:hover{background:var(--soft,#f3f2ee)}
/* --- ссылки внутри текста (реш. Анастасии 02.10): тонкая линия 1 px с отступом, серая; при наведении чёрная. ?ul=b / ?ul=c — варианты для выбора --- */
:root{--ul:#9a9890}
main p:not(.ph-err p):not(.ph-contacts p):not(.ph-letters) a:not([class]),.ph-text a,.product-info p a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em;text-decoration-color:var(--ul)}
main p:not(.ph-err p):not(.ph-contacts p):not(.ph-letters) a:not([class]):hover,.ph-text a:hover,.product-info p a:hover{text-decoration-color:var(--ink)}
html.ul-b main p:not(.ph-err p):not(.ph-contacts p):not(.ph-letters) a:not([class]),html.ul-b .ph-text a,html.ul-b .product-info p a{text-decoration:none;font-weight:600}
html.ul-b main p:not(.ph-err p):not(.ph-contacts p):not(.ph-letters) a:not([class]):hover,html.ul-b .ph-text a:hover,html.ul-b .product-info p a:hover{text-decoration:underline;text-decoration-color:var(--ink)}
html.ul-c main p:not(.ph-err p):not(.ph-contacts p):not(.ph-letters) a:not([class]),html.ul-c .ph-text a,html.ul-c .product-info p a{text-decoration-style:dotted;text-decoration-color:var(--ink)}
/* --- плитка товара: фото в основном 4:3 (1200x900), а плитка была квадратной с серым фоном -> серые полосы сверху и снизу (так и на нынешнем сайте). Плитка 4:3, фон белый --- */
.pl-card img{aspect-ratio:1;background:#fff}
html.tile-b .pl-card img{aspect-ratio:4/3}
/* --- плашки дизайнеров: 15 ровно (5x3, 3x5, на телефоне 1 в ряд — без «хвоста») --- */
.ph-tiles-15{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px){.ph-tiles-15{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.ph-tiles-15{grid-template-columns:1fr}}
@media (max-width:700px){.ph-letter a{min-height:44px}}
/* --- список «Все бренды/дизайнеры»: буква = отдельный блок, имена колонками сверху вниз внутри буквы; переключатель букв и поиск (index.js) --- */
.ph-index{columns:auto}
.ph-letter{margin:0 0 48px;columns:4;column-gap:32px}
.ph-letter h3{column-span:all;font-family:var(--ff-head);font-size:34px;font-weight:700;color:var(--ink);margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.ph-letter a{break-inside:avoid;overflow-wrap:anywhere;font-size:16px;line-height:1.35;padding:8px 0;min-height:0}
@media (max-width:1365px){.ph-letter{columns:3}}
@media (max-width:900px){.ph-letter{columns:2}}
@media (max-width:600px){.ph-letter{columns:1}.ph-letter h3{font-size:30px}}
.ph-find{margin:20px 0 4px}
.ph-find input{width:100%;max-width:520px;box-sizing:border-box;min-height:var(--tap);padding:0 16px;font-size:16px;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink)}
.ph-find-no{font-size:16px;margin:12px 0 0}
.ph-letters{gap:4px 4px;margin:12px 0 24px}
.ph-letters a{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap);min-height:var(--tap);padding:0 8px;font-size:16px;text-decoration:none;border:1px solid transparent}
.ph-letters a:hover{border-color:var(--line)}
.ph-letters a.sel{background:var(--ink);color:#fff}
.ph-index.js-on .ph-letter{display:none}.ph-index.js-on .ph-letter.on{display:block}
.ph-index.js-on.searching .ph-letter h3{font-size:24px}
.ph-letter a[hidden]{display:none}
/* --- сетка плиток разделов главной: 10 плиток = 5x2 (≥1200), 2 в ряд (601–1199), 1 в ряд --- */
.ph-sections{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1199px){.ph-sections{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.ph-sections{grid-template-columns:1fr}}
/* --- плашка сравнения и кнопка «наверх» (создаются скриптом каталога; в site.css стилей нет). Пока в сравнении пусто — не видно --- */
.back-to-top{position:fixed;right:24px;bottom:24px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#fff;color:var(--ink);border:1px solid var(--ink);font-size:20px;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .2s;z-index:45}
.back-to-top.visible{opacity:1;visibility:visible}
body.has-compare-bar .back-to-top{bottom:104px}
.compare-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--ink);transform:translateY(100%);visibility:hidden;transition:transform .25s}
.compare-bar.has-items{transform:none;visibility:visible}
.compare-bar-inner{max-width:var(--wrap);margin:0 auto;padding:12px var(--edge);display:flex;align-items:center;gap:20px}
.compare-bar-items{display:flex;gap:10px;flex:1;overflow-x:auto;padding:8px 8px 0 0}
.compare-bar-tile{position:relative;flex:none;width:48px;height:48px;border:1px solid var(--line);background:#fff}
.compare-bar-tile img{width:100%;height:100%;object-fit:contain}
.compare-bar-remove{position:absolute;top:-8px;right:-8px;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:var(--ink);color:#fff;font-size:14px;line-height:1;cursor:pointer}
.compare-bar-limit-note{display:none;font-size:14px;white-space:nowrap}
.compare-bar-limit .compare-bar-limit-note{display:block;font-weight:600}
.compare-bar-actions{display:flex;align-items:center;gap:12px}
.compare-bar-clear{min-height:var(--tap);padding:0 16px;border:1px solid var(--line);background:#fff;font-size:15px;cursor:pointer}
.compare-bar-go{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:0 22px;background:var(--ink);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:15px}
@media (max-width:600px){.compare-bar-inner{padding:10px var(--edge-m);gap:10px}.compare-bar-limit-note{display:none!important}body.has-compare-bar .back-to-top{bottom:96px}}
.ph-cart-count{font-size:13px;min-width:20px;line-height:20px}
.ph-err p a,.ph-contacts p a{text-decoration:none}.ph-err p a{font-weight:600}.ph-contacts p a:hover,.ph-err p a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em}
a.cta-main,a.cta-alt,a.cta-cart{text-decoration:none}
body.has-compare-bar{padding-bottom:88px}
.compare-bar-remove::after{content:"";position:absolute;inset:-12px}
@media (max-width:700px){
 .ph-index .ph-letter a{display:flex;align-items:center;min-height:44px;padding:0}
 .ph-tiles-15{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .ph-tiles-15 .ph-tile{padding:12px}.ph-tiles-15 .ph-tile b{font-size:16px}
 .ph-tiles-15 .ph-tile:last-child:nth-child(odd){grid-column:1/-1}
}

/* реш. 109: вводный текст страницы (раздел, бренд, дизайнер) (раздел, бренд, дизайнер) — тот же шаг, что .ph-lead; ?fs=old возвращает прежнее */
.ph-page>h1+.ph-text p{font-size:var(--fs-intro)}
/* реш. 110: карточка товара на ~12% компактнее (шапку и крошки не трогаем); ?pp=old (touch.js) возвращает прежнюю. Всё под html:not(.pp-old) */
html:not(.pp-old) .product-detail{gap:52px}
html:not(.pp-old) .product-gallery{max-width:90%}
html:not(.pp-old) .product-gallery-thumbs img{width:64px;height:64px}
html:not(.pp-old) .ph-page .product-info h1{font-size:34px;margin-bottom:8px}
html:not(.pp-old) .product-info .brand{font-size:14px}
html:not(.pp-old) .product-info .designer{font-size:15px}
html:not(.pp-old) .product-info .sku{font-size:13px;margin-bottom:14px}
html:not(.pp-old) .product-info .price{font-size:28px;margin-bottom:22px}
html:not(.pp-old) .product-info h3{font-size:14px}
html:not(.pp-old) .product-info p{font-size:16px;margin-bottom:20px}
html:not(.pp-old) .variant-label,html:not(.pp-old) .variant-btn,html:not(.pp-old) .variant-select,html:not(.pp-old) .picked-line,html:not(.pp-old) .specs-table td,html:not(.pp-old) .stock-info{font-size:15px}
html:not(.pp-old) .variant-btn:not(.variant-swatch){min-height:40px;padding:8px 16px}
html:not(.pp-old) .variant-more,html:not(.pp-old) .finishes-more{font-size:14px;min-height:40px;padding:8px 14px}
html:not(.pp-old) .specs-table td{padding:11px 0}
html:not(.pp-old) .variant-swatches:not(.variant-swatches-named) .variant-swatch{width:46px;height:46px}
html:not(.pp-old) .finishes{grid-template-columns:repeat(auto-fill,minmax(64px,1fr))}
html:not(.pp-old) .cta-main,html:not(.pp-old) .cta-cart{font-size:15px;padding:16px 22px;min-height:50px}
html:not(.pp-old) .cta-alt{font-size:14px;padding:14px 18px;min-height:46px}
html:not(.pp-old) .cta-hint,html:not(.pp-old) .gallery-note{font-size:13px}
html:not(.pp-old) .compare-link{font-size:14px}
@media (max-width:900px){html:not(.pp-old) .product-detail{gap:26px}html:not(.pp-old) .product-gallery{max-width:100%}html:not(.pp-old) .ph-page .product-info h1{font-size:24px}html:not(.pp-old) .product-info .price{font-size:25px}html:not(.pp-old) .variant-btn:not(.variant-swatch),html:not(.pp-old) .variant-more,html:not(.pp-old) .finishes-more{min-height:44px}html:not(.pp-old) .cta-main,html:not(.pp-old) .cta-cart{min-height:48px}html:not(.pp-old) .cta-alt{min-height:44px}}
/* реш. 112: имя дизайнера на карточке — ссылка видна (то же правило, что ссылки в тексте) */
html .product-info .brand a,html .product-info .designer a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em;text-decoration-color:var(--ul)}
html .product-info .brand a:hover,html .product-info .designer a:hover{text-decoration-color:var(--ink)}
/* реш. 113: у фото карточки белый фон вместо серого (#f8f8f8), без рамок */
html:not(.pp-old) .product-gallery-main,html:not(.pp-old) .product-gallery-thumbs img{background:#fff}
/* реш. 114: нижняя полоса подвала в одну строку (слева © , справа город · телефоны · почта); ниже 1130 px — перенос, на телефоне столбиком по левому краю */
.ph-footer-inner{align-items:center;gap:4px 24px}
.ph-footer-inner>div{white-space:nowrap}
.ph-footer-contacts{gap:0 16px;flex-wrap:nowrap;align-items:center}
@media (max-width:1129px){.ph-footer-inner>div{white-space:normal}.ph-footer-contacts{flex-wrap:wrap;gap:0 20px}}
@media (max-width:600px){.ph-footer-inner{flex-direction:column;align-items:flex-start}.ph-footer-contacts{flex-direction:column;align-items:flex-start;gap:0}}
@media (max-width:600px){.ph-footer-inner>div:first-child{padding:8px 0}.ph-footer-contacts span{display:flex;align-items:center;min-height:36px}}
/* реш. 115: фото позиции в корзине на белом фоне */
.cart-row-img{background:#fff}
/* реш. 119: «≈ €N» рядом с итогом корзины — маленькая приписка, как под ценой товара (.55 от крупной суммы) */
.cart-total .price-eur{font-size:15px;margin-left:10px;color:#666;white-space:nowrap;font-weight:400}
/* реш. 132: фон фото в сравнении белый */
.compare-col-img{background:#fff}
/* --- шапка D: устройство C (прописные с разрядкой, чёрные линии, лого 32), меню разделов в ОДНУ строку. Рассчитано на 10 разделов (реш. 103) --- */
.ph-top,.ph-header{border-bottom:1px solid var(--ink)}.ph-tree{border-top:1px solid var(--line)}
.ph-service a,.ph-phone,.ph-sec-link{font-family:var(--ff-nav)}
.ph-service a,.ph-phone{font-size:var(--fs-nav);letter-spacing:.1em}
/* Поля шапки = поля содержимого (32 px). Зазор между словами g = (ширина - 64 - сумма текстов)/9, держим >= 16 px (замер gapscan.py).
   1200-1279: 15 px, разрядка 0,05em; от 1280: 16 px, разрядка растёт .64 -> 1.6 px (0,1em) к 1493 px. Ниже 1200 — бургер. */
@media (min-width:1200px){
 .ph-tree{flex-wrap:nowrap;justify-content:space-between;gap:0}
 .ph-sec{flex:none}
 .ph-sec-toggle{display:none}
 .ph-sec-link{border-radius:7px}
 .ph-sec:first-child .ph-sec-link{padding-left:6px;margin-left:-6px}.ph-sec:last-child .ph-sec-link{padding-right:6px;margin-right:-6px}
 .ph-sec:nth-last-child(-n+3) .ph-drop{left:auto;right:0;border-radius:8px 0 8px 8px}
 .ph-sec-link{font-size:15px;padding:12px 6px;letter-spacing:.75px}
}
@media (min-width:1280px){.ph-sec-link{font-size:16px;letter-spacing:clamp(.64px,calc(.64px + (100vw - 1280px)*.0045),1.6px)}}

/* бургер до 1199 px */
@media (max-width:1199px){
 .ph-top{display:none}
 .ph-main{flex-wrap:wrap;gap:8px}
 .ph-burger{display:block;order:3}
 .ph-cart{order:2}
 .ph-tree{display:none;order:4;flex:1 1 100%;flex-direction:column;align-items:stretch;padding:8px 0}
 .ph-header.menu-open .ph-tree{display:flex}
 .ph-sec{flex-wrap:wrap}
 .ph-sec-link{flex:1;font-size:15px}
 .ph-sec:hover .ph-drop,.ph-sec:focus-within .ph-drop{display:none}
 .ph-drop,.ph-sec.open .ph-drop{position:static;box-shadow:none;border:0;min-width:0;max-height:none;flex:1 1 100%;padding:0 0 8px 12px}
 .ph-sec.open .ph-drop{display:block}
 .ph-header.menu-open .ph-tree::after{content:"";display:block;border-top:1px solid var(--line);margin:8px 0}
 .ph-header.menu-open .ph-top{display:block;border:0}
 .ph-header.menu-open .ph-top-inner{flex-direction:column;align-items:flex-start}
}
@media (max-width:1199px){.ph-search{margin-left:auto}.ph-search-open{margin-left:0}.ph-cart{margin-left:0}.ph-search-panel{left:16px;right:16px;width:auto;max-width:none}}
@media (max-width:1199px){
 .ph-main{gap:4px 4px;padding-top:6px;padding-bottom:6px}
 .ph-logo{font-size:var(--logo-size-m)}
 .ph-tree{order:5;border-top:0;margin-top:0;justify-content:flex-start;padding:4px 0 8px}
 .ph-sec-link{flex:1;min-height:48px;padding:12px 4px 12px 10px;margin-left:-10px;font-size:17px}
 .ph-sec-toggle{min-width:48px;min-height:48px;align-self:stretch}
 .ph-drop-row{font-size:16px;padding:12px 12px;min-height:48px}
 .ph-drop-all{padding:13px 12px;min-height:48px;display:flex;align-items:center}
 .ph-header.menu-open{display:flex;flex-direction:column}.ph-header.menu-open .ph-top{order:3;border-top:1px solid var(--line);border-bottom:0}.ph-header.menu-open .ph-main{order:1}
 .ph-header.menu-open .ph-top-inner{gap:0;padding-bottom:8px}
 .ph-service{flex-direction:column;width:100%}
 .ph-service a,.ph-phone{min-height:48px;font-size:17px;width:100%}
 .ph-burger span{width:24px;margin:5px 0}
}@media (max-width:1199px){.ph-header.menu-open .ph-main,.ph-header.menu-open .ph-top-inner{width:100%;box-sizing:border-box}}
