/* ==========================================================
   PRIVALOV — общие правила для ВСЕХ страниц, которые должны идти
   после стилей разделов: мобильная версия и фото в карточках товара.
   Подключается на каждой странице последним перед theme.css.
   Раньше эти правила лежали в catalog.css и были скопированы
   внутрь 7 страниц — теперь они только здесь.
   ========================================================== */
/* @@MOBILE-CSS@@ ---------- Мобильная версия ---------- */
  .burger-btn{display:none;width:44px;height:44px;margin-left:-10px;background:none;border:0;cursor:pointer;color:var(--c-ink);align-items:center;justify-content:center}
  .burger-btn i{display:block;width:22px;height:1.5px;background:currentColor;position:relative}
  .burger-btn i::before,.burger-btn i::after{content:"";position:absolute;left:0;width:22px;height:1.5px;background:currentColor}
  .burger-btn i::before{top:-7px}.burger-btn i::after{top:7px}
  .mnav{position:fixed;inset:0;z-index:200;visibility:hidden;pointer-events:none}
  .mnav.is-open{visibility:visible;pointer-events:auto}
  .mnav__shade{position:absolute;inset:0;background:rgba(43,39,36,.5);opacity:0;transition:opacity var(--pv-motion-normal) var(--pv-ease-standard)}
  .mnav.is-open .mnav__shade{opacity:1}
  .mnav__panel{position:absolute;top:0;bottom:0;left:0;width:min(420px,88vw);background:var(--c-bg);display:flex;flex-direction:column;
    transform:translateX(-100%);transition:transform var(--pv-motion-slow) var(--pv-ease-out);overscroll-behavior:contain}
  .mnav.is-open .mnav__panel{transform:none}
  .mnav__top{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(43,39,36,.1)}
  .mnav__top .logo-svg,.mnav__top svg.mlogo{height:30px;width:auto;display:block}
  .mnav__close{width:44px;height:44px;margin-right:-10px;background:none;border:0;cursor:pointer;color:var(--c-ink);display:flex;align-items:center;justify-content:center}
  .mnav__close svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.6}
  .mnav__body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 16px 24px}
  .mnav__list{list-style:none;margin:0;padding:0}
  .mnav__list > li{border-bottom:1px solid rgba(43,39,36,.1)}
  .mnav__link,.mnav__acc{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;padding:0;background:none;border:0;
    font:inherit;font-size:19px;color:var(--c-ink);text-align:left;cursor:pointer}
  .mnav__link[aria-current="page"]{color:var(--c-accent)}
  .mnav__acc svg{width:14px;height:9px;stroke:currentColor;fill:none;stroke-width:1.6;transition:transform var(--pv-motion-normal) var(--pv-ease-standard)}
  .mnav__acc[aria-expanded="true"] svg{transform:rotate(180deg)}
  .mnav__acc[aria-expanded="true"]{color:var(--c-accent)}
  .mnav__sub{list-style:none;margin:0;padding:0 0 14px 2px}
  .mnav__sub[hidden]{display:none}
  .mnav__sub a{display:block;padding:9px 0;font-size:17px;color:var(--c-ink-2)}
  .mnav__sub a:hover,.mnav__sub a:active{color:var(--c-accent)}
  .mnav__sub .mnav__grp{padding:14px 0 4px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-muted-2)}
  .mnav__sub .mnav__all{font-weight:600;color:var(--c-ink)}
  .mnav__foot{padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-top:1px solid rgba(43,39,36,.1);display:flex;flex-direction:column;gap:12px}
  .mnav__foot a{font-size:17px;color:var(--c-ink)}
  .mnav__foot .btn-dark,.mnav__foot .btn-contact{display:flex;justify-content:center;align-items:center;height:52px;color:var(--c-on-dark);background:var(--c-ink);font-size:14px;letter-spacing:.1em;text-transform:uppercase}

  @media (max-width:900px){
    /* Телефон: предотвращаем горизонтальный скролл, масштабирование текста
       браузером и учитываем вырезы экрана (safe area). */
    html{scroll-padding-top:68px;-webkit-text-size-adjust:100%}
    body{overflow-x:clip}
    img,svg,video,iframe{max-width:100%}
    .burger-btn{display:inline-flex}
    .header__row{grid-template-columns:44px 1fr 44px !important;padding:8px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left)) !important;align-items:center}
    .header__row > :first-child{display:flex;align-items:center}
    .header__logo{justify-self:center;max-width:calc(100vw - 112px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .logo-svg{height:32px !important}
    .nav{display:none !important}
    .header{background:var(--c-bg)}
    .header--biz .header__cta{justify-content:flex-end}
    .header--biz .header__cta .btn-contact{display:none}
    /* общие отступы и типографика */
    .page-title,.cinfo__title{font-size:40px !important}
    .page-title{margin-top:24px !important;padding-bottom:28px !important}
    .crumbs{font-size:14px !important;gap:6px !important}
    .crumbs li{gap:6px !important}
    .sec-title,.prods__title,.sec-h{font-size:30px !important}
    .prods__head{margin:0 16px 28px !important;padding-bottom:18px !important}
    .prods__head--link{flex-wrap:wrap;gap:8px 16px}
    .prods__all{font-size:15px}
    .prods__arrow,.browse__arrow{display:none !important}

    /* Элементы управления не должны быть слишком мелкими для касания. */
    .btn-contact,.btn-line{min-height:44px}
    .btn-line{padding:10px 0;margin-top:20px}
    .mnav__panel{width:min(420px,calc(100vw - 24px))}
    .mnav__top{padding-top:max(12px,env(safe-area-inset-top));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
    .mnav__link,.mnav__acc{min-height:58px}
    /* главная: первый экран */
    .hero{height:calc(100svh - 0px);min-height:520px}
    .hero__h1{top:84px !important;bottom:auto !important;font-size:12px !important;max-width:none}
    .slide__photo span{font-size:56px}
    .slide__title{font-size:30px !important}
    .slide__content{bottom:110px !important}
    .counter{display:none}
    .hero__controls{bottom:56px !important}
    .arrow svg{width:40px}
    /* карусели: видно следующую карточку */
    .card{flex-basis:68vw !important}
    .card__pic{height:220px !important}
    .card .rhomb{width:96px !important;height:96px !important}
    .browse__tabs{font-size:28px !important;gap:0 12px !important}
    .tile{height:120px !important;padding:0 24px !important}
    .tile .rhomb{width:60px !important;height:60px !important}
    .tile .rhomb span{display:none}
    .post{flex-basis:86vw !important}
    .post__title{font-size:28px !important}
    .usp__icon{margin-bottom:20px !important}
    .usp__box{padding:36px 0 !important;row-gap:36px !important}
    .usp__item{padding:0 12px !important}
    .usp__title{font-size:17px}.usp__text{font-size:15px}
    .promo__grid{gap:12px !important}
    .pbtn{min-height:220px !important;padding:24px 20px !important}
    .promo__col .pbtn{min-height:140px !important}
    .topics__wrap{gap:0 !important}
    .topics__panel{border-left:0 !important;border-right:0 !important;padding:28px 0 80px !important}
    .topics__label,.topics__title{text-align:left !important}
    .topics__title{font-size:36px !important;margin-bottom:20px !important}
    .topics__next{width:56px !important;height:56px !important;background:var(--c-bg)}
    .topics__foot{left:0 !important;right:0 !important}
    .case{flex-basis:70vw !important}
    .case__ava{width:84px !important;height:84px !important}
    .case__name{margin-top:60px !important;font-size:16px !important}
    .art{flex-basis:78vw !important}
    .articles__filters{overflow-x:auto;flex-wrap:nowrap !important;scrollbar-width:none}
    .articles__filters button{white-space:nowrap}
    .about__title{font-size:32px}
    .about__nav button{font-size:30px !important}
    .aud__title{font-size:30px !important}
    .aud__pic{width:72px !important;height:72px !important}
    .subscribe__box,.band .subscribe__box{gap:20px !important}

    .subscribe__form{gap:28px !important}
    /* подвал */
    .footer{font-size:15px}
    .footer__contacts{flex-direction:column;gap:10px !important;padding:24px max(16px,env(safe-area-inset-right)) 24px max(16px,env(safe-area-inset-left)) !important}
    .footer__contacts .dot{display:none}
    .footer__contacts a{display:inline-flex;align-items:center;min-height:44px}
    .footer__main{grid-template-columns:1fr 1fr !important;padding:36px 16px !important;row-gap:32px !important}
    .footer__cat{grid-column:1/-1;flex-direction:row !important;align-items:center;justify-content:flex-start !important}
    .footer__cat a{flex-direction:row !important;align-items:center}
    .footer__cover{width:64px !important}
    .footer__col{border-left:0 !important;padding:0 !important}
    .footer__mid{flex-direction:column;align-items:center;gap:20px !important;padding:0 16px 24px !important}
    .footer__bottom{flex-direction:column;align-items:center;text-align:center;margin:0 16px !important;font-size:14px}
    .footer__legal{flex-wrap:wrap;justify-content:center}
    /* шоурум / контакты / формы */
    .map{min-height:300px !important}
    .cinfo__title{margin:24px 0 24px !important}
    .cinfo__links{flex-direction:column;gap:14px !important}
    .cinfo__showroom{padding:18px 20px !important;font-size:18px !important}
    .field input,.field select,.field textarea{font-size:16px !important}
    .field input,.field select{height:56px !important}
    .check{font-size:15px !important}


    /* дизайнерам / бизнесу / блог */
    .dhero__center{gap:28px !important;padding:28px 0 !important}
    .dhero__title,.bhero__title{font-size:34px !important}
    .bhero{height:auto !important;min-height:560px}
    .bhero__content{bottom:100px !important}
    .adv__title{font-size:19px}
    .lead-p{padding:0 16px;font-size:16px !important}
    .bhero__slide span{font-size:40px !important;position:absolute;top:84px;right:16px}
    .bfilters{overflow-x:auto;flex-wrap:nowrap !important;justify-content:flex-start !important;scrollbar-width:none}
    .bfilters button{white-space:nowrap}
    .bpost--big .bpost__title{font-size:28px !important}
    .plist__title{font-size:18px !important}
    .logos__grid{gap:10px !important}
    .lead__row{gap:16px}
    /* каталог / товар */
    .chips{flex-wrap:nowrap !important;justify-content:flex-start !important;overflow-x:auto;scrollbar-width:none;padding-bottom:4px !important}
    .chips::-webkit-scrollbar,.bfilters::-webkit-scrollbar,.articles__filters::-webkit-scrollbar{display:none}
    .chip{flex:0 0 auto;height:40px;padding:0 16px}
    .plp__grid{gap:40px 0 !important}
    .plp__grid .card{flex-basis:auto !important}
    .plp__grid .card__pic{height:180px !important}
    .card__name{font-size:16px}.card__price{font-size:17px}
    .crow__title{font-size:44px}
    .chero__media{order:-1}
    .buy__title{font-size:32px !important}
    .buy__price{font-size:24px !important}
    .buy__actions{position:sticky;bottom:0;z-index:5;background:var(--c-bg);padding:12px 0 calc(12px + env(safe-area-inset-bottom));margin-top:24px !important;box-shadow:0 -8px 16px -12px rgba(43,39,36,.25)}
    .buy__fav{min-height:52px}
    .buy__fav{height:52px}
    .gal__main.has-img{aspect-ratio:3/2}
    .gal__nav{width:40px !important;height:40px !important}
    .gal__thumbs{overflow-x:auto;scrollbar-width:none}
    .acc summary{font-size:17px}
    .spec th{width:50%}
  }
  @media (max-width:560px){
    /* Одна колонка в подвале делает длинные ссылки и реквизиты читаемыми. */
    .footer__main{grid-template-columns:1fr !important}
    .footer__cat{grid-column:auto}
    .footer__col a{display:inline-flex;align-items:center;min-height:38px}
    .plp__grid{grid-template-columns:1fr 1fr !important;gap:32px 0 !important}
    .plp__grid .card{padding:0 8px 12px}
    .plp__grid .card__pic{height:150px !important}
    .plp__grid .card .rhomb{width:72px !important;height:72px !important}
    .plp__grid .card .rhomb span{display:none}
    .plp__grid .card__badges .badge{font-size:10px;padding:4px 6px}
    .plp__grid .fav{width:32px;height:32px}
    .plp__grid .card__name{font-size:15px}
    .tiles4{grid-template-columns:1fr 1fr !important}
    .ctile__name{font-size:17px}
    .usp__box{grid-template-columns:1fr 1fr !important}
    .usp__item{border-left:0 !important}
    .ball__grid{grid-template-columns:1fr !important}
    .bgrid__list,.who__grid{grid-template-columns:1fr !important}
    .logos__grid{grid-template-columns:1fr 1fr !important}
    .buy__actions{gap:8px}

    .pdp .crumbs{line-height:1.35}
  }
  /* @@MOBILE-CSS-END@@ */

  /* @@CARDS-CSS@@ ---------- Фото в карточках товара ---------- */
  .card{min-width:0}
  .card__pic{position:relative;overflow:hidden}
  .card__gal{position:absolute;inset:0}
  .card__gal .card__img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;
    opacity:0;transition:opacity var(--pv-motion-slow) var(--pv-ease-standard),transform var(--pv-motion-slow) var(--pv-ease-standard)}
  .card__gal .card__img.is-active{opacity:1}
  .card:hover .card__gal .card__img{transform:none}
  .card__bars{position:absolute;left:16px;right:16px;bottom:10px;display:flex;gap:6px;opacity:0;transition:opacity var(--pv-motion-normal) var(--pv-ease-standard)}
  .card__bars i{flex:1;height:2px;background:rgba(43,39,36,.18)}
  .card__bars i.is-active{background:var(--c-ink)}
  .card:hover .card__bars,.card.is-touched .card__bars{opacity:1}
  @media (hover:none){ .card__bars{opacity:1} }
  /* @@CARDS-CSS-END@@ */

  /* ProductPhoto fills the existing layout slot and always shows the complete master. */
  .gal__thumb,.bitem__frame,.ctile__pic{position:relative}
  .gal__thumb{flex-shrink:0}
  .product-photo{object-fit:contain;object-position:center;transform:none;mix-blend-mode:normal}


.header :is(a,button):focus-visible,.footer :is(a,button):focus-visible,.mnav :is(a,button):focus-visible,.card :is(a,button):focus-visible,.rel :is(a,button):focus-visible,.pager a:focus-visible{outline:var(--pv-focus-width) solid currentColor;outline-offset:var(--pv-focus-offset)}


/* Scope motion preferences to the storefront. Embla and photo geometry keep
   their transforms; only decorative animation and transition time are removed. */
@media (prefers-reduced-motion:reduce){
  :is(.header,.mnav,.footer,.card,.crumbs,.places,.crow,.ctile,.chero,[data-home-page],[data-editorial-page],[data-information-page],[data-partnership-page]),
  :is(.header,.mnav,.footer,.card,.crumbs,.places,.crow,.ctile,.chero,[data-home-page],[data-editorial-page],[data-information-page],[data-partnership-page]) *,
  :is(.header,.mnav,.footer,.card,.crumbs,.places,.crow,.ctile,.chero,[data-home-page],[data-editorial-page],[data-information-page],[data-partnership-page])::before,
  :is(.header,.mnav,.footer,.card,.crumbs,.places,.crow,.ctile,.chero,[data-home-page],[data-editorial-page],[data-information-page],[data-partnership-page])::after,
  :is(.header,.mnav,.footer,.card,.crumbs,.places,.crow,.ctile,.chero,[data-home-page],[data-editorial-page],[data-information-page],[data-partnership-page]) *::before,
  :is(.header,.mnav,.footer,.card,.crumbs,.places,.crow,.ctile,.chero,[data-home-page],[data-editorial-page],[data-information-page],[data-partnership-page]) *::after{
    animation:none!important;
    transition-duration:0s!important;
    transition-delay:0s!important;
    scroll-behavior:auto!important;
  }
}
