/*
Theme Name: DIAN Redesign
Description: Тема ООО «ДИАН» по утверждённому макету главной: небо и текстильный ландшафт, каталог WooCommerce, реальные контакты.
Version: 2.8.0
Requires PHP: 8.0
Text Domain: dian-redesign
*/
:root{
  --navy:#03172e;--navy-2:#06254a;--navy-3:#021327;--ink:#0a1828;--muted:#5c6978;--paper:#f4f5f7;--white:#fff;
  --blue:#076bd8;--blue-hover:#0558b3;--blue-light:#7cc0ff;--line:#cfd5dc;
  --sky-ink:#082d62;--sky-ink-2:#0b3566;
  --on-dark:#fff;--on-dark-muted:rgba(255,255,255,.8);
  --serif:'Source Serif 4',Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,'Liberation Sans',sans-serif;
  --pad:clamp(20px,5vw,76px);--header-h:100px;--ease:cubic-bezier(.2,.72,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);
}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-text-size-adjust:100%}
a{color:inherit}
img{display:block;max-width:100%}
figure{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:400;font-optical-sizing:auto;text-wrap:balance}
p{text-wrap:pretty}
:focus-visible{outline:3px solid var(--white);outline-offset:2px;box-shadow:0 0 0 6px var(--navy);border-radius:2px}
.skip{position:absolute;z-index:100;left:12px;top:-60px;padding:12px 18px;background:var(--navy);color:var(--white);font-weight:700;text-decoration:none}
.skip:focus{top:12px}

/* Header */
.header{position:fixed;z-index:30;top:0;left:0;right:0;height:var(--header-h);padding:0 var(--pad);display:grid;grid-template-columns:minmax(275px,1fr) auto auto;align-items:center;gap:clamp(24px,4vw,60px);color:var(--on-dark);border-bottom:1px solid rgba(255,255,255,.3);background:rgba(4,34,72,.52);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:background-color .35s var(--ease),border-color .35s}
.header.is-scrolled{--header-h:72px;background:rgba(3,23,46,.94);border-bottom-color:rgba(255,255,255,.12)}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;min-width:0}
.brand img{width:65px;height:65px;border-radius:50%;object-fit:cover}
.header.is-scrolled .brand img{width:48px;height:48px}
.brand strong{display:block;font:400 27px/1 var(--serif)}
.brand small{display:block;max-width:300px;margin-top:6px;color:var(--on-dark-muted);font-size:12px;line-height:1.35;letter-spacing:.01em}
.header.is-scrolled .brand small{display:none}
.nav{display:flex;gap:30px}
.nav a,.phone{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:none;text-shadow:0 1px 8px rgba(3,23,46,.35)}
.nav a{position:relative}
.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:6px;height:1px;background:var(--blue-light);transition:right .25s}
.nav a:hover:after{right:0}
.phone{padding-left:25px;border-left:1px solid rgba(255,255,255,.35);font-weight:700;white-space:nowrap}
.phone-icon,.menu{display:none}
.mobile-nav[hidden]{display:none}

/* Hero */
.hero{--mx:0;--my:0;position:relative;isolation:isolate;min-height:100svh;overflow:hidden;color:var(--on-dark);background:#6ab4ef}
.hero-webgl,.hero-bg-fallback,.hero-bg-fallback img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-bg-fallback{z-index:-3}
.hero-bg-fallback img{object-fit:cover;object-position:center}
.hero-webgl{z-index:-2;display:block;opacity:0;transition:opacity .6s}
.hero.webgl-ready .hero-webgl{opacity:1}
.hero-light{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at calc(50% + var(--mx)*12%) calc(48% + var(--my)*8%),rgba(255,245,210,.23),transparent 22%);mix-blend-mode:screen;opacity:.42}
.hero-sun{position:absolute;z-index:-1;left:calc(50% + var(--mx)*24%);top:calc(23% - var(--my)*12%);width:clamp(190px,22vw,360px);aspect-ratio:1;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,250,221,.94) 0,rgba(255,230,165,.46) 12%,rgba(255,208,120,.15) 33%,transparent 70%);mix-blend-mode:screen;opacity:.88}
.hero-clouds{position:absolute;z-index:-1;inset:0;overflow:hidden;pointer-events:none;mix-blend-mode:screen;opacity:.55}
.hero-clouds i{position:absolute;width:52vw;height:18vw;border-radius:50%;background:radial-gradient(ellipse closest-side,rgba(255,255,255,.42),rgba(230,244,255,.12) 55%,transparent)}
.hero-clouds i:nth-child(1){left:-13%;top:7%;transform:translate(calc(var(--mx)*-18px),calc(var(--my)*-8px)) rotate(-5deg)}
.hero-clouds i:nth-child(2){right:-16%;top:24%;width:61vw;transform:translate(calc(var(--mx)*-30px),calc(var(--my)*-13px)) rotate(7deg)}
.hero-clouds i:nth-child(3){left:22%;top:42%;width:42vw;height:12vw;opacity:.42;transform:translate(calc(var(--mx)*-42px),calc(var(--my)*-18px))}
.hero-shade{position:absolute;inset:0;z-index:-1;pointer-events:none}
.hero-copy{position:absolute;z-index:2;top:17%;left:50%;width:min(760px,72vw);text-align:center;transform:translate(-50%,0)}
/* мягкая светлая подложка из неба: держит контраст текста над тканью */
.hero-copy:before{content:"";position:absolute;z-index:-1;left:50%;top:52%;width:118%;height:132%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(236,244,252,.78),rgba(236,244,252,.55) 55%,rgba(236,244,252,0));pointer-events:none}
.hero h1{margin:0 0 25px;font-size:clamp(58px,5.45vw,86px);line-height:.94;letter-spacing:-.035em;color:var(--sky-ink)}
.hero-copy>p{max-width:610px;margin:0 auto 34px;color:var(--sky-ink-2);font-size:clamp(17px,1.5vw,21px);font-weight:600;line-height:1.46}
.hero-actions{display:flex;justify-content:center;align-items:center;gap:28px}
.button{display:inline-flex;min-height:60px;padding:0 32px;align-items:center;background:var(--blue);color:var(--white);text-decoration:none;font-weight:700;font-size:16px;transition:transform .25s var(--ease),background-color .25s}
.button:hover{transform:translateY(-3px);background:var(--blue-hover)}
/* Разделы в hero: нить с бусиной. Дымка из неба держит контраст без плашки */
.hero-categories{position:absolute;right:clamp(28px,4.2vw,68px);top:50%;z-index:4;transform:translateY(-40%);padding:14px 22px 14px 18px}
.hero-categories:before{content:"";position:absolute;z-index:-1;inset:-80px -150px -80px -110px;background:radial-gradient(ellipse closest-side at 52% 50%,rgba(236,244,252,.94),rgba(236,244,252,.86) 50%,rgba(236,244,252,.5) 80%,rgba(236,244,252,0));pointer-events:none;animation:railHaze .5s var(--ease-out) both}
.hero-categories ol{--dot:14px;position:relative;margin:0;padding:0;list-style:none}
.hero-categories ol:before{content:"";position:absolute;left:calc(var(--dot)/2 - .5px);top:22px;bottom:22px;width:1px;background:rgba(8,57,112,.42);transform-origin:top;animation:railThread .45s var(--ease-out) .05s both}
.hero-categories li{animation:railItem .3s var(--ease-out) both;animation-delay:calc(.08s + var(--i,0)*28ms)}
.hero-categories a{position:relative;display:flex;align-items:center;min-width:150px;height:44px;padding-left:30px;color:var(--sky-ink);font-size:15px;font-weight:600;text-decoration:none;text-shadow:0 1px 10px rgba(236,244,252,.95);transition:color .35s var(--ease-out)}
.hero-categories a:before{content:"";position:absolute;left:0;top:calc(50% - var(--dot)/2);box-sizing:border-box;width:var(--dot);height:var(--dot);border:2px solid rgba(7,59,119,.55);border-radius:50%;background:#eef4fa;transition:border-color .35s var(--ease-out)}
.hero-categories a:hover,.hero-categories a:focus-visible{color:var(--blue)}
.hero-categories a:hover:before,.hero-categories a:focus-visible:before{border-color:var(--blue)}
.hero-categories:not(.has-bead) a:hover:before,.hero-categories:not(.has-bead) a:focus-visible:before{background:var(--blue)}
/* ползунок: одна бусина, двигается только по нити */
.rail-bead{position:absolute;left:0;top:0;width:14px;height:14px;border-radius:50%;background:var(--blue);box-shadow:0 2px 6px rgba(3,23,46,.25);opacity:0;translate:0 var(--bead-y,0px);scale:.5;transition:translate .55s var(--ease-out),scale .35s var(--ease-out),opacity .3s var(--ease-out);pointer-events:none}
.rail-bead.is-placed{opacity:1}
.rail-bead.is-on{scale:1}
@keyframes railThread{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes railItem{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
@keyframes railHaze{from{opacity:0}to{opacity:1}}
.scroll{position:absolute;left:var(--pad);bottom:24px;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;background:rgba(3,23,46,.62);color:var(--white);font-size:12px;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}
.scroll svg{transition:transform .25s var(--ease)}
.scroll:hover svg{transform:translateY(3px)}

/* Sections */
.section{padding:120px var(--pad)}
.section-number{margin:0;color:var(--blue);font:700 13px/1 var(--sans);letter-spacing:.12em}
.intro{display:grid;grid-template-columns:70px 1.35fr 1fr;gap:40px;align-items:start;background:var(--white)}
.intro .section-number,.section-heading .section-number{padding-top:14px}
.intro h2,.section-heading h2,.production h2,.contact h2{margin:0;font-size:clamp(46px,5vw,76px);line-height:1.02;letter-spacing:-.03em}
.intro-copy{max-width:550px;color:var(--muted);font-size:18px;line-height:1.65}
.intro-copy p:first-child{margin-top:0}
.intro-copy p:last-child{color:var(--ink);font-weight:700}
.section-heading{display:grid;grid-template-columns:70px 1.35fr 1fr;align-items:start;gap:40px;margin-bottom:60px}
.section-heading>p:last-child{max-width:420px;margin:0;padding-top:12px;color:var(--muted);font-size:17px;line-height:1.55}

/* Catalog */
/* Полка образцов: одинаковые карточки по три, фото в «строчке», бирка снизу; «Весь каталог» закрывает последний ряд */
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0;padding:0;list-style:none}
.catalog-grid>li{display:flex;min-width:0}
.tile{display:flex;flex-direction:column;flex:1;background:var(--white);color:var(--ink);text-decoration:none;transition:box-shadow .35s var(--ease-out),transform .35s var(--ease-out)}
.tile:hover{box-shadow:0 16px 34px rgba(3,23,46,.1);transform:translateY(-2px)}
.tile-photo{position:relative;display:block;aspect-ratio:4/3;overflow:hidden}
.tile-photo:after{content:"";position:absolute;inset:12px;border:1px dashed rgba(3,23,46,.2);pointer-events:none;transition:border-color .35s}
.tile:hover .tile-photo:after{border-color:rgba(3,23,46,.45)}
.tile-photo img{width:100%;height:100%;padding:7%;object-fit:contain;mix-blend-mode:multiply;transition:transform .65s var(--ease-out)}
.tile:hover .tile-photo img{transform:scale(1.04)}
.tile-tag{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;align-content:center;column-gap:16px;flex:1;padding:16px 18px 18px 20px;border-top:1px solid #e3e7ec}
.tile-tag:after{content:"";grid-column:2;grid-row:1/span 2;width:42px;height:42px;border:1px solid #c4ccd6;border-radius:50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2306254a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/18px no-repeat;transition:transform .45s var(--ease-out),background-color .3s,border-color .3s}
.tile:hover .tile-tag:after,.tile:focus-visible .tile-tag:after{transform:translateX(4px);border-color:var(--blue);background-color:var(--blue);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}
.tile b,.tile small{display:block;grid-column:1}
.tile b{font:400 22px/1.2 var(--serif);text-wrap:balance}
.tile small{margin-top:6px;color:var(--muted);font-size:14px}
.catalog-grid>li.tile-all-item{grid-column:span 2}
.tile-all{position:relative;display:flex;flex-direction:column;justify-content:flex-end;flex:1;overflow:hidden;padding:32px 34px;background:var(--navy-2);color:var(--white);text-decoration:none}
.tile-all:before{content:"";position:absolute;inset:0;background:url("assets/images/textile-900.webp") center 40%/cover;opacity:.32;transition:transform .65s var(--ease)}
.tile-all:hover:before{transform:scale(1.045)}
.tile-all>*{position:relative}
.tile-all b{font:400 clamp(30px,2.8vw,42px)/1.1 var(--serif)}
.tile-all small{max-width:34ch;margin-top:10px;color:rgba(255,255,255,.86);font-size:16px;line-height:1.5}
.tile-all em{display:inline-flex;align-self:flex-start;align-items:center;gap:10px;min-height:48px;margin-top:22px;padding:0 22px;background:var(--blue);font-style:normal;font-weight:700;font-size:15px;transition:background-color .25s}
.tile-all:hover em{background:var(--blue-hover)}

/* Production */
.production{display:grid;grid-template-columns:1.35fr 1fr;min-height:720px;background:var(--navy);color:var(--on-dark)}
.production-media{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;gap:4px;background:var(--navy)}
.shot{position:relative;overflow:hidden;min-height:0}
.shot img{width:100%;height:100%;object-fit:cover}
.shot-main{grid-column:1/-1}
.production-copy{display:flex;padding:100px var(--pad);flex-direction:column;justify-content:center;background:var(--navy-2)}
.production .section-number{color:var(--blue-light)}
.production-copy h2{margin:25px 0 28px}
.production-copy>p:not(.section-number){max-width:520px;margin:0;color:var(--on-dark-muted);font-size:18px;line-height:1.65}
.facts{display:grid;gap:16px;max-width:520px;margin:30px 0 0;padding:26px 0 0;border-top:1px solid rgba(255,255,255,.18)}
.facts dt{color:var(--blue-light);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.facts dd{margin:6px 0 0;font-size:17px;line-height:1.45}
.text-link{display:inline-flex;align-items:center;min-height:44px;align-self:flex-start;color:var(--white);font-weight:700;text-underline-offset:7px}
.text-link.light{margin-top:22px}
.text-link:hover{color:var(--blue-light)}

/* Steps */
.steps-list{display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:0;list-style:none;border-top:1px solid var(--line)}
.steps-list li{padding:38px 36px 10px 0;border-right:1px solid var(--line)}
.steps-list li+li{padding-left:36px}
.steps-list li:last-child{border-right:0}
.steps-list span{color:var(--blue);font-size:28px;font-weight:700}
.steps-list h3{margin:34px 0 14px;font-size:31px;line-height:1.08;letter-spacing:-.01em}
.steps-list p{max-width:340px;margin:0;color:var(--muted);font-size:17px;line-height:1.55}
.steps-list p a{color:var(--blue);text-underline-offset:3px}

/* Contact */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:125px var(--pad);color:var(--on-dark);background:#0754a9 url("assets/images/textile-1600.webp") center 62%/cover;background-blend-mode:multiply}
.contact .section-number{color:#9ad2ff;margin-bottom:22px}
.contact-lead{max-width:460px;margin:34px 0 0;color:var(--on-dark-muted);font-size:19px;line-height:1.55}
.contact-copy{align-self:end;max-width:620px}
.contact-phone{display:inline-block;color:var(--white);font:400 clamp(34px,4vw,56px)/1.1 var(--serif);text-decoration-thickness:1px;text-underline-offset:10px}
.contact-phone:hover{color:#cfe8ff}
.contact-who{margin:10px 0 0;color:var(--on-dark-muted);font-size:16px}
.managers{display:grid;margin:34px 0 0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.22)}
.managers li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.managers span{flex:0 0 190px;color:var(--on-dark-muted);font-size:15px}
.managers a{display:inline-flex;align-items:center;min-height:36px;color:var(--white);font-size:17px;font-weight:700;text-decoration:none;white-space:nowrap}
.managers a:hover{text-decoration:underline;text-underline-offset:4px}
.legal{margin:26px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.12em}

/* Footer */
.footer{padding:56px var(--pad);display:grid;grid-template-columns:1.2fr .8fr 1.3fr .9fr;align-items:start;gap:40px;color:var(--on-dark);background:var(--navy-3)}
.footer nav{display:grid;grid-template-columns:repeat(2,auto);justify-content:start;gap:4px 28px}
.footer nav a,.footer-contacts a{display:inline-flex;align-items:center;min-height:36px;font-size:14px;text-decoration:none}
.footer nav a:hover,.footer-contacts a:hover{text-decoration:underline;text-underline-offset:4px}
.footer address{display:grid;gap:10px;color:var(--on-dark-muted);font-size:14px;font-style:normal;line-height:1.5}
.footer-contacts{display:grid;justify-items:end;gap:2px}
.footer-contacts a:first-child{font-weight:700}
.footer-contacts small{margin-top:14px;color:rgba(255,255,255,.62);font-size:13px}

/* Tablet */
@media(max-width:1199px){.hero-categories{display:none}}
@media(max-width:1000px){
  :root{--header-h:76px}
  .header,.header.is-scrolled{--header-h:76px;grid-template-columns:1fr auto auto;gap:8px}
  .header{background:rgba(3,23,46,.55)}
  .nav,.phone{display:none}
  .brand img,.header.is-scrolled .brand img{width:48px;height:48px}
  .brand strong{font-size:22px}
  .brand small{display:none}
  .phone-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%;color:var(--white)}
  .menu{display:inline-flex;align-items:center;min-height:44px;padding:0 6px 0 12px;border:0;background:none;color:var(--white);font:700 15px var(--sans);cursor:pointer}
  .mobile-nav{position:absolute;top:100%;left:0;right:0;padding:12px var(--pad) 26px;background:var(--navy);border-top:1px solid rgba(255,255,255,.12);box-shadow:0 20px 40px rgba(0,0,0,.3)}
  .mobile-nav nav{display:grid}
  .mobile-nav nav a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid rgba(255,255,255,.12);font:400 22px var(--serif);text-decoration:none}
  .mobile-contacts{display:grid;gap:4px;margin-top:16px}
  .mobile-contacts a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;text-decoration:none}
  .hero-copy{top:auto;bottom:88px;left:var(--pad);width:min(700px,84vw);text-align:left;transform:none}
  .hero-copy:before{display:none}
  .hero-shade{background:linear-gradient(180deg,rgba(2,20,45,0) 25%,rgba(2,20,45,.5) 52%,rgba(2,16,36,.9) 100%)}
  .hero h1{color:var(--white);text-shadow:0 2px 24px rgba(0,30,70,.45)}
  .hero-copy>p{margin-left:0;color:rgba(255,255,255,.92)}
  .hero-actions{justify-content:flex-start}
  .hero-sun{width:300px}
  .scroll{left:auto;right:var(--pad);bottom:24px}
  .intro,.section-heading{grid-template-columns:50px 1fr;gap:20px 30px}
  .intro-copy,.section-heading>p:last-child{grid-column:2}
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .catalog-grid>li.tile-all-item{grid-column:span 1}
  .tile-all{padding:24px}
  .tile-all small{font-size:15px}
  .production{grid-template-columns:1fr;min-height:0}
  .production-media{grid-template-rows:auto auto}
  .shot-main{aspect-ratio:16/9}
  .shot{aspect-ratio:16/9}
  .steps-list{grid-template-columns:1fr}
  .steps-list li,.steps-list li+li{padding:32px 0;border-right:0;border-bottom:1px solid var(--line)}
  .steps-list h3{margin-top:18px}
  .contact{grid-template-columns:1fr;gap:44px}
  .footer{grid-template-columns:1fr 1fr}
  .footer-contacts{justify-items:start}
}
/* Mobile */
@media(max-width:620px){
  :root{--header-h:68px}
  .header,.header.is-scrolled{--header-h:68px;padding:0 16px}
  .brand img,.header.is-scrolled .brand img{width:42px;height:42px}
  .brand strong{font-size:19px}
  .hero-copy{left:20px;right:20px;bottom:84px;width:auto}
  .hero h1{font-size:clamp(46px,13.2vw,64px)}
  .hero-copy>p{font-size:16px;margin-bottom:26px}
  .button{min-height:56px}
  .scroll{display:none}
  .section{padding:76px 20px}
  .intro,.section-heading{display:block}
  .section-number,.intro .section-number,.section-heading .section-number{margin-bottom:18px;padding-top:0}
  .intro h2,.section-heading h2,.production h2,.contact h2{font-size:clamp(38px,11vw,46px)}
  .section-heading{margin-bottom:34px}
  .section-heading>p:last-child{margin-top:16px;padding-top:0}
  .intro-copy{margin-top:26px;font-size:17px}
  .catalog-grid{gap:10px}
  .tile-photo:after{inset:6px}
  .tile-tag{padding:12px 12px 14px;grid-template-columns:minmax(0,1fr)}
  .tile-tag:after{display:none}
  .tile b{font-size:17px}
  .tile small{font-size:13px}
  .tile-all{padding:18px 14px}
  .tile-all b{font-size:24px}
  .tile-all small{font-size:13px}
  .tile-all em{min-height:44px;margin-top:14px;padding:0 14px;font-size:14px}
  .production-copy{padding:64px 20px}
  .steps-list h3{font-size:27px}
  .contact{padding:80px 20px}
  .managers span{flex-basis:100%}
  .footer{padding:48px 20px;grid-template-columns:1fr;gap:28px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero-webgl{display:none}
  .hero-sun{left:50%;top:23%}
  .hero-clouds i:nth-child(n){transform:none}
  .button:hover,.tile:hover,.tile:hover img,.tile-all:hover:before{transform:none}
  .hero-categories:before,.hero-categories ol:before,.hero-categories li{animation:none}
  .rail-bead{transition:none}
}

/* ===== Внутренние страницы: каталог, разделы, товар, корзина, оформление ===== */
body:not(.home) .header{background:var(--navy);border-bottom-color:rgba(255,255,255,.12)}
/* короткие страницы (пустая корзина): подвал прижат к низу, без полосы фона под ним */
body:not(.home){display:flex;flex-direction:column;min-height:100vh}
body:not(.home)>.page-main{flex:1 0 auto}
.page-main{padding:calc(var(--header-h) + 40px) var(--pad) 110px;min-height:70vh}
.page-main.has-head{padding-top:0}
.page-wrap{max-width:1320px;margin:0 auto}
.page-title,.product_title{margin:0 0 30px;font-size:clamp(34px,4.2vw,60px);line-height:1.04;letter-spacing:-.03em}
.page-content{max-width:820px;font-size:17px;line-height:1.65;overflow-wrap:anywhere}
.woocommerce-cart .page-content,.woocommerce-checkout .page-content{max-width:none}
/* в таблицах anywhere сужает колонки до буквы («ПОДЫТО/Г» на 390px); break-word переносит только то, что не влезает */
.page-content table{overflow-wrap:break-word}
/* служебный текст WordPress: не полагаемся на CSS WooCommerce */
.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
/* фокус внутри страниц магазина: синее кольцо видно на светлом фоне */
body:not(.home) .page-main :focus-visible{outline:3px solid var(--blue);outline-offset:2px;box-shadow:none}
body:not(.home) .page-main [tabindex="-1"]:focus{outline:0;box-shadow:none}
.woocommerce-breadcrumb,.woocommerce .woocommerce-breadcrumb{margin:0 0 18px;color:var(--muted);font-size:14px}
.woocommerce-breadcrumb a,.woocommerce .woocommerce-breadcrumb a{color:var(--muted);text-underline-offset:3px}
.woocommerce-breadcrumb a:hover,.woocommerce .woocommerce-breadcrumb a:hover{color:var(--blue)}

/* Общий поиск, пагинация WordPress, форма поиска */
.search .page-content>ul{margin:0 0 36px;padding:0;list-style:none;border-top:1px solid var(--line)}
.search .page-content>ul li{border-bottom:1px solid var(--line)}
.search .page-content>ul a{display:flex;align-items:center;min-height:56px;padding:10px 0;color:var(--ink);font:400 20px/1.3 var(--serif);text-decoration:none;transition:color .2s}
.search .page-content>ul a:hover{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.navigation.pagination .nav-links{display:flex;flex-wrap:wrap;gap:6px}
.navigation.pagination .page-numbers{display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;background:var(--white);color:var(--ink);font-size:15px;line-height:1;text-decoration:none}
.navigation.pagination .page-numbers.current,.navigation.pagination a.page-numbers:hover{background:var(--navy-2);color:var(--white)}
.navigation.pagination .page-numbers.dots{min-width:24px;padding:0;background:none}
.search-form{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;max-width:600px;margin:26px 0 30px}
.search-form label{display:block;flex:1 1 260px;min-width:0;margin:0}
.search-form .search-field{display:block;width:100%;height:48px;margin:0;padding:0 14px;border:1px solid #c4ccd6;border-radius:0;background:#fff;color:var(--ink);font:16px/1.2 var(--sans);-webkit-appearance:none;appearance:none;transition:border-color .2s}
.search-form .search-field::placeholder{color:var(--muted);opacity:1}
.search-form .search-field:hover,.search-form .search-field:focus{border-color:var(--blue)}
.search-form .search-submit{flex:0 0 auto;min-height:48px;margin:0;padding:0 28px;border:0;border-radius:0;background:var(--blue);color:var(--white);font:700 15px/1.2 var(--sans);cursor:pointer;-webkit-appearance:none;appearance:none;transition:background-color .25s}
.search-form .search-submit:hover{background:var(--blue-hover)}
/* Вход и регистрация */
.woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password{border:1px solid var(--line);border-radius:0;background:var(--white)}
.woocommerce form.woocommerce-form-login .form-row .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:8px;min-height:48px;margin:0;vertical-align:top;cursor:pointer}
.woocommerce form.woocommerce-form-login .woocommerce-form-login__rememberme input{width:18px;height:18px;margin:0;accent-color:var(--blue)}

/* ---- Шапка раздела: синяя полоса с фактурой ткани — «обложка» книги образцов ---- */
.shop-head{margin:0 calc(var(--pad) * -1) 40px;padding:calc(var(--header-h) + 36px) var(--pad) 44px;color:var(--on-dark);background:#0754a9 url("assets/images/textile-1600.webp") center 58%/cover;background-blend-mode:multiply}
.shop-head:has(.tabs){padding-bottom:0}
.shop-head__inner{max-width:1320px;margin:0 auto}
.shop-head .woocommerce-breadcrumb{margin-bottom:20px;color:rgba(255,255,255,.8)}
.shop-head .woocommerce-breadcrumb a{color:rgba(255,255,255,.8)}
.shop-head .woocommerce-breadcrumb a:hover{color:var(--white)}
.shop-head__main{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 56px;align-items:end}
.shop-head--toc .shop-head__main{grid-template-columns:minmax(0,1fr) minmax(320px,540px)}
.shop-head__title{margin:0;max-width:24ch;font-size:clamp(38px,4.6vw,68px);line-height:1.02;letter-spacing:-.03em;color:var(--white)}
.shop-head__meta{margin:14px 0 0;color:rgba(255,255,255,.88);font-size:17px}
.shop-head__desc{max-width:680px;margin-top:14px;color:rgba(255,255,255,.88);font-size:16px;line-height:1.6}
.shop-head__desc p{margin:0}
body:not(.home) .shop-head :focus-visible{outline-color:var(--white)}
/* Закладки подразделов: вырезаны по краю обложки, открытая сливается со страницей */
.tabs{margin-top:34px}
.tabs__row{display:flex;gap:4px;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}
.tabs__row::-webkit-scrollbar{display:none}
.tabs__row li{flex:0 0 auto}
.tabs__row a{display:flex;align-items:baseline;gap:8px;min-height:52px;padding:15px 20px 13px;border-radius:4px 4px 0 0;background:rgba(3,23,46,.42);color:rgba(255,255,255,.9);text-decoration:none;white-space:nowrap;transition:background-color .2s,color .2s}
.tabs__name{font:400 17px/1.2 var(--serif)}
.tabs__n{color:rgba(255,255,255,.7);font-size:13px;font-variant-numeric:tabular-nums}
.tabs__row a:hover{background:rgba(3,23,46,.7);color:var(--white)}
.tabs__row a[aria-current],.tabs__row a.is-path{background:var(--paper);color:var(--ink)}
.tabs__row a[aria-current] .tabs__n,.tabs__row a.is-path .tabs__n{color:var(--muted)}
.tabs__row a.is-path:hover{background:var(--white)}
body:not(.home) .shop-head .tabs__row a:focus-visible{outline-offset:-3px}
/* третий уровень (Платья → Класс) — на странице, над образцами */
.subtabs{margin:0 0 18px}
.subtabs__row{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.subtabs__row a{display:inline-flex;align-items:baseline;gap:8px;min-height:40px;padding:10px 14px;border:1px solid #c4ccd6;background:var(--white);color:var(--ink);font-size:14px;text-decoration:none;transition:border-color .15s}
.subtabs__row a:hover{border-color:var(--blue)}
.subtabs__row a span+span{color:var(--muted);font-size:12px}
.subtabs__row a[aria-current]{border-color:var(--navy-2);background:var(--navy-2);color:var(--white)}
.subtabs__row a[aria-current] span+span{color:rgba(255,255,255,.75)}
.term-description{max-width:760px;margin:-10px 0 34px;color:var(--muted);font-size:17px;line-height:1.6}

/* Строка «Показано … / Сортировка» */
.woocommerce .woocommerce-result-count{margin:0 0 22px;color:var(--muted);font-size:15px;line-height:48px}
.woocommerce .woocommerce-ordering{margin:0 0 22px}
.woocommerce .woocommerce-ordering select,.woocommerce form .form-row select{min-height:48px;padding:0 42px 0 14px;border:1px solid #c4ccd6;border-radius:0;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230a1828' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/14px no-repeat;color:var(--ink);font:15px var(--sans);appearance:none;-webkit-appearance:none}

/* ---- Сетка карточек ---- */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px;margin:0 0 40px;padding:0;clear:both}
.woocommerce ul.products:before,.woocommerce ul.products:after{content:none}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product,.woocommerce ul.products[class*=columns-] li.product,.woocommerce-page ul.products[class*=columns-] li.product{float:none;clear:none;width:auto;margin:0;padding:0;display:flex;flex-direction:column;background:var(--white);transition:box-shadow .35s var(--ease-out)}
.woocommerce ul.products li.product:hover{box-shadow:0 18px 36px rgba(3,23,46,.09)}
.woocommerce ul.products li.product>a:first-child{display:flex;flex-direction:column;flex:1;text-decoration:none;color:var(--ink)}
.woocommerce ul.products li.product .card-thumb{position:relative;display:block;overflow:hidden;background:var(--white)}
.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1;margin:0;padding:18px;object-fit:contain;mix-blend-mode:multiply;transition:transform .6s var(--ease-out)}
.woocommerce ul.products li.product a:hover img{transform:scale(1.035)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{margin:0;padding:16px 18px 0;font:400 19px/1.25 var(--serif);text-wrap:balance}
.card-sku{display:block;margin-top:6px;padding:0 18px;color:var(--muted);font-size:13px;letter-spacing:.02em}
.woocommerce ul.products li.product .price{display:block;margin:12px 0 0;padding:0 18px;color:var(--ink);font-size:18px;font-weight:700}
.woocommerce ul.products li.product .price del{color:var(--muted);font-weight:400}
.woocommerce ul.products li.product .button{display:flex;align-items:center;justify-content:center;min-height:46px;margin:16px 18px 18px;padding:0 16px;border:1px solid var(--navy-2);border-radius:0;background:transparent;color:var(--navy-2);font-size:15px;font-weight:700;line-height:1.2;text-align:center;transition:background-color .25s,color .25s}
.woocommerce ul.products li.product .button:hover{background:var(--navy-2);color:var(--white)}
.woocommerce ul.products li.product .added_to_cart{display:block;margin:-8px 18px 16px;color:var(--blue);font-size:14px}
/* «Распродажа»: плашка в цветах сайта (белый на синем 5:1), внутри фото */
.woocommerce span.onsale{min-width:0;min-height:0;padding:6px 12px;border-radius:0;background:var(--blue);color:var(--white);font:700 13px/1.3 var(--sans);letter-spacing:.02em}
.woocommerce ul.products li.product .onsale{top:12px;right:12px;left:auto;margin:0}
.woocommerce div.product>span.onsale{top:12px;left:12px;margin:0}
/* Подразделы — как плитки главной: предмет на студийной подложке, подпись на тёмной плашке, круглая стрелка */
.woocommerce ul.products li.product-category>a{position:relative}
.woocommerce ul.products li.product-category .card-cap{position:relative;display:block;flex:1;padding:16px 74px 18px 20px;background:var(--navy-2);color:var(--white)}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{margin:0;padding:0;color:var(--white);font:400 20px/1.2 var(--serif);text-wrap:balance}
.woocommerce ul.products li.product-category mark.count{display:inline;margin-left:0;background:none;color:rgba(255,255,255,.82);font:400 14px var(--sans)}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title mark.count:before{content:"\A";white-space:pre}
.card-from{display:block;margin-top:2px;color:rgba(255,255,255,.82);font-size:14px}
.card-arrow{position:absolute;right:20px;top:50%;width:42px;height:42px;margin-top:-21px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/18px no-repeat;transition:transform .45s var(--ease-out),background-color .3s,border-color .3s}
.woocommerce ul.products li.product-category a:hover .card-arrow,.woocommerce ul.products li.product-category a:focus-visible .card-arrow{transform:translateX(4px);background-color:var(--blue);border-color:var(--blue)}

/* Пагинация магазина */
.woocommerce nav.woocommerce-pagination ul{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;border:0;white-space:normal}
.woocommerce nav.woocommerce-pagination ul li{float:none;border:0;overflow:visible}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:grid;place-items:center;min-width:44px;height:44px;padding:0 10px;background:var(--white);color:var(--ink);font-size:15px}
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:var(--navy-2);color:var(--white)}

/* Кнопки магазина — как на главной */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{min-height:48px;padding:0 26px;border-radius:0;background:var(--blue);color:var(--white);font:700 15px/48px var(--sans);transition:background-color .25s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--blue-hover);color:var(--white)}
.woocommerce button.button:disabled[disabled],.woocommerce button.button:disabled[disabled]:hover,.woocommerce button.button.disabled,.woocommerce button.button.disabled:hover,.woocommerce button.button.alt.disabled,.woocommerce button.button.alt.disabled:hover,.woocommerce button.button.alt:disabled[disabled],.woocommerce button.button.alt:disabled[disabled]:hover{padding:0 26px;background:#dfe5ec;color:#4a5868;opacity:1;cursor:not-allowed}

/* ---- Товар: лист спецификации ---- */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px 64px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:auto;margin:0}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,.woocommerce div.product div.images .woocommerce-product-gallery__image{background:var(--white)}
.woocommerce div.product div.images img{mix-blend-mode:multiply}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{top:calc(.5em - 4px);right:calc(.5em - 4px);border:4px solid transparent;background-clip:padding-box}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px}
.woocommerce div.product div.images .flex-control-thumbs li{float:none;width:auto;background:#eef2f6}
.woocommerce div.product div.images .flex-control-thumbs li img{opacity:.55;mix-blend-mode:multiply;transition:opacity .25s}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce div.product div.images .flex-control-thumbs li img:hover{opacity:1}
.woocommerce div.product .product_title{margin:0 0 12px;font-size:clamp(34px,3.6vw,54px)}
.product-line{margin:0 0 22px;color:var(--muted);font-size:14px;letter-spacing:.02em}
.product-line a{color:var(--muted);text-underline-offset:3px}
.product-line a:hover{color:var(--blue)}
.woocommerce div.product p.price,.woocommerce div.product span.price{margin:0 0 20px;color:var(--ink);font-size:32px;font-weight:700;letter-spacing:-.01em}
.woocommerce div.product .woocommerce-product-details__short-description{max-width:560px;margin:0 0 30px;padding:0 0 26px;border-bottom:1px solid var(--line);color:var(--muted);font-size:17px;line-height:1.6}
.woocommerce div.product form.cart{margin:0 0 30px}
.woocommerce div.product form.cart .variations{width:100%;margin:0 0 14px;border:0}
.woocommerce div.product form.cart .variations tr{display:block;margin:0 0 20px}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{display:block;padding:0;text-align:left;line-height:1.4}
.woocommerce div.product form.cart .variations th label{display:block;margin:0 0 10px;color:var(--ink);font-size:15px;font-weight:700}
.woocommerce div.product form.cart .variations select{width:100%;max-width:420px;min-height:48px;margin:0;padding:0 42px 0 14px;border:1px solid #c4ccd6;border-radius:0;background:#fff;color:var(--ink);font:15px var(--sans)}
/* select остаётся в DOM для WooCommerce, выбор — кнопками */
.woocommerce div.product form.cart .variations td.value{position:relative}
.woocommerce div.product form.cart .variations select.var-select-enhanced{position:absolute;left:0;top:0;width:1px!important;max-width:1px;height:1px;min-height:0;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);border:0;opacity:0;pointer-events:none}
.var-pills{display:flex;flex-wrap:wrap;gap:8px;width:fit-content;max-width:100%}
.var-pill{min-height:44px;min-width:52px;padding:0 16px;border:1px solid #c4ccd6;border-radius:0;background:var(--white);color:var(--ink);font:15px/1.2 var(--sans);cursor:pointer;transition:border-color .2s,background-color .2s,color .2s}
.var-pill:hover{border-color:var(--blue)}
.var-pill[aria-pressed="true"]{border-color:var(--navy-2);background:var(--navy-2);color:var(--white)}
.var-pill:disabled{color:#8a95a3;background:#f4f5f7;border-style:dashed;cursor:not-allowed}
.woocommerce div.product form.cart .reset_variations{display:inline-flex;align-items:center;min-height:44px;margin-top:4px;color:var(--muted);font-size:14px;text-underline-offset:3px}
.woocommerce div.product form.cart .reset_variations:hover{color:var(--ink)}
.woocommerce div.product form.cart .reset_variations[style*="hidden"]{display:none}
.woocommerce div.product .woocommerce-variation-price .price{font-size:26px}
.woocommerce div.product .woocommerce-variation-availability p{margin:4px 0 0;color:var(--muted);font-size:14px}
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart,.woocommerce div.product form.cart:not(.variations_form){display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.woocommerce div.product form.cart div.quantity{float:none;margin:0}
.woocommerce .quantity .qty{width:88px;height:48px;border:1px solid #c4ccd6;border-radius:0;background:#fff;color:var(--ink);font:700 16px var(--sans);text-align:center}
.woocommerce .quantity.has-stepper{display:inline-flex;align-items:stretch;border:1px solid #c4ccd6;background:#fff}
.woocommerce .quantity.has-stepper .qty{width:60px;height:48px;border:0;-moz-appearance:textfield;appearance:textfield}
.woocommerce .quantity.has-stepper .qty::-webkit-outer-spin-button,.woocommerce .quantity.has-stepper .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty-step{width:48px;border:0;background:transparent;color:var(--ink);font:400 22px/1 var(--sans);cursor:pointer;transition:background-color .2s}
.qty-step:hover{background:#eef2f6}
.woocommerce div.product form.cart .button{float:none;min-width:220px;min-height:52px;font-size:16px;line-height:52px}
.buy-help{max-width:560px;padding-top:22px;border-top:1px solid var(--line)}
.buy-help p{margin:0}
.buy-help__title{margin-bottom:6px!important;color:var(--ink);font-size:15px;font-weight:700}
.buy-help p+p{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px}
.buy-help__phone{color:var(--ink);font:400 26px/1.2 var(--serif);text-decoration:none}
.buy-help__phone:hover{color:var(--blue)}
.buy-help__who{color:var(--muted);font-size:14px}
.buy-help__mail{color:var(--ink);font-size:15px;text-underline-offset:3px}
.buy-help__mail:hover{color:var(--blue)}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:40px}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:28px;margin:0 0 26px;padding:0;border-bottom:1px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{content:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li,.woocommerce div.product .woocommerce-tabs ul.tabs li.active{margin:0;padding:0;border:0;border-radius:0;background:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:flex;align-items:center;min-height:44px;padding:0;color:var(--muted);font-weight:700;font-size:15px}
body:not(.home) .page-main .woocommerce-tabs ul.tabs li a:focus-visible{outline-offset:-3px}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);box-shadow:inset 0 -3px 0 var(--blue)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:820px;font-size:17px;line-height:1.65}
.woocommerce div.product .woocommerce-tabs .panel>h2:first-child{display:none}
.woocommerce table.shop_attributes{border:0}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:12px 16px;border:0;border-bottom:1px solid var(--line);background:none;font-style:normal}
.woocommerce table.shop_attributes th{width:220px;color:var(--muted);font-weight:700}
.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1;margin-top:56px;padding-top:44px;border-top:1px solid var(--line)}
.woocommerce div.product .related>h2,.woocommerce div.product .upsells>h2{margin:0 0 24px;font-size:clamp(28px,3vw,40px);letter-spacing:-.02em}
/* липкая «В корзину» на телефоне */
.buybar{position:fixed;z-index:40;left:0;right:0;bottom:0;display:flex;align-items:center;gap:14px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--white);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(3,23,46,.12)}
.buybar[hidden]{display:none}
.buybar__info{display:grid;min-width:0;flex:1}
.buybar__name{overflow:hidden;color:var(--muted);font-size:13px;white-space:nowrap;text-overflow:ellipsis}
.buybar__price{color:var(--ink);font-size:17px;font-weight:700}
.buybar__price .price{font-size:inherit!important;margin:0!important}
.buybar__btn{flex:0 0 auto;min-height:48px;padding:0 22px;border:0;border-radius:0;background:var(--blue);color:var(--white);font:700 15px/1.2 var(--sans);cursor:pointer}
.buybar__btn:hover{background:var(--blue-hover)}
body.has-buybar{padding-bottom:calc(72px + env(safe-area-inset-bottom))}

/* Уведомления */
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{margin:0 0 28px;padding:16px 20px 16px 52px;border:1px solid #bcd3ec;border-radius:0;background:#eef5fd;color:var(--ink);font-size:16px;line-height:1.5}
.woocommerce .woocommerce-error{border-color:#efc2c2;background:#fdf1f1}
.woocommerce .woocommerce-message:before,.woocommerce .woocommerce-info:before{top:17px;left:20px;color:var(--blue)}
.woocommerce .woocommerce-error:before{top:17px;left:20px;color:#b3261e}
.woocommerce .woocommerce-message .button,.woocommerce .woocommerce-info .button{float:right;min-height:40px;line-height:40px;padding:0 18px;margin:-6px 0 -6px 16px}

/* ---- Корзина и оформление — как заявка: этапы на той же нити ---- */
.order-intro{margin:0 0 40px}
.order-steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin:0;padding:0;list-style:none}
.order-steps:before{content:"";position:absolute;left:7px;right:calc(33.33% - 7px);top:7px;height:1px;background:var(--line)}
.order-steps li{position:relative;padding:30px 16px 0 0;color:var(--muted);font:400 18px/1.25 var(--serif)}
.order-steps li:before{content:"";position:absolute;left:0;top:0;box-sizing:border-box;width:15px;height:15px;border:2px solid #9aa6b4;border-radius:50%;background:var(--paper)}
.order-steps li.is-done{color:var(--ink)}
.order-steps li.is-done:before{border-color:var(--blue);background:var(--blue)}
.order-steps li.is-current{color:var(--ink)}
.order-steps li.is-current:before{border-color:var(--navy-2);background:var(--navy-2);box-shadow:0 0 0 4px rgba(6,37,74,.12)}
.order-steps__n{display:block;margin-bottom:4px;color:var(--blue);font:700 12px/1 var(--sans);letter-spacing:.12em}
.order-note{max-width:680px;margin:24px 0 0;color:var(--muted);font-size:16px;line-height:1.6}
.woocommerce-cart .page-content .woocommerce:has(>.woocommerce-cart-form){display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:0 40px;align-items:start}
.woocommerce-cart .page-content .woocommerce:has(>.woocommerce-cart-form)>*{grid-column:1/-1}
.woocommerce-cart .page-content .woocommerce:has(>.woocommerce-cart-form)>.woocommerce-cart-form{grid-column:1}
.woocommerce-cart .page-content .woocommerce:has(>.woocommerce-cart-form)>.cart-collaterals{grid-column:2;position:sticky;top:calc(var(--header-h) + 24px)}
.woocommerce td.product-name dl.variation{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;margin:8px 0 0;font-size:14px;color:var(--muted)}
.woocommerce td.product-name dl.variation dt,.woocommerce td.product-name dl.variation dd{float:none;margin:0;padding:0}
.woocommerce td.product-name dl.variation dd p{margin:0}
.woocommerce table.shop_table{border:0;border-radius:0;background:var(--white);border-collapse:collapse}
.woocommerce table.shop_table th{padding:14px 16px;border:0;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.woocommerce table.shop_table td{padding:16px;border:0;border-top:1px solid var(--line);font-size:16px;vertical-align:middle}
.woocommerce table.shop_table tbody th,.woocommerce table.shop_table tfoot th{border-bottom:0;border-top:1px solid var(--line)}
.woocommerce table.shop_table td.product-name a{color:var(--ink);font:400 18px/1.3 var(--serif);text-decoration:none}
.woocommerce table.shop_table td.product-name a:hover{color:var(--blue)}
.woocommerce-cart table.cart img{width:72px;background:#eef2f6;mix-blend-mode:multiply}
.woocommerce a.remove{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--muted)!important;font-size:22px}
.woocommerce a.remove:hover{background:#fdf1f1;color:#b3261e!important}
.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce form .form-row .input-text,.woocommerce form .form-row textarea{min-height:48px;padding:10px 14px;border:1px solid #c4ccd6;border-radius:0;background:#fff;color:var(--ink);font:16px var(--sans)}
.woocommerce form .form-row textarea{min-height:110px}
.woocommerce form .password-input input.input-text{padding-right:48px}
.woocommerce form .show-password-input{right:1px;padding:11px}
.woocommerce form .form-row label{margin-bottom:6px;font-size:15px;font-weight:700;line-height:1.4}
.woocommerce form .form-row .required{color:#b3261e;text-decoration:none}
.woocommerce form .form-row.woocommerce-invalid input.input-text,.woocommerce form .form-row.woocommerce-invalid select{border-color:#b3261e}
.woocommerce .cart-collaterals .cart_totals{float:none;width:100%;padding:24px;background:var(--white)}
.woocommerce .cart-collaterals .cart_totals h2,.woocommerce-checkout h3{margin:0 0 16px;font-size:28px;letter-spacing:-.01em}
.woocommerce .cart-collaterals .cart_totals table.shop_table{background:transparent}
.woocommerce .cart_totals .wc-proceed-to-checkout{padding-bottom:0}
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button{display:flex;align-items:center;justify-content:center;min-height:56px;margin-bottom:0;font-size:17px}
/* оформление: реквизиты слева, заявка справа */
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:0 48px;align-items:start}
.woocommerce-checkout form.checkout>*{grid-column:1/-1}
.woocommerce-checkout form.checkout>#customer_details{grid-column:1;grid-row:2 / span 2;margin-bottom:34px}
.woocommerce-checkout form.checkout>#order_review_heading{grid-column:2;grid-row:2;margin:0 0 16px}
.woocommerce-checkout form.checkout>#order_review{grid-column:2;grid-row:3;position:sticky;top:calc(var(--header-h) + 24px);padding:24px;background:var(--white)}
.woocommerce-checkout form.checkout #customer_details .col-1,.woocommerce-checkout form.checkout #customer_details .col-2{float:none;width:100%}
.woocommerce-checkout #payment{border-radius:0;background:#eef2f6}
.woocommerce-checkout #payment div.payment_box{border-radius:0;background:var(--white)}
.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:var(--white)}
.woocommerce #payment #place_order{width:100%;min-height:56px;font-size:17px}

/* ===== Книга образцов: раздел с фильтрами, образцы и прайс ===== */
.book{display:grid;grid-template-columns:264px minmax(0,1fr);gap:40px;align-items:start}
.results{min-width:0}

/* Фильтры */
.filters{position:sticky;top:calc(var(--header-h) + 20px);max-height:calc(100vh - var(--header-h) - 40px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c4ccd6 transparent}
.filters__head,.filters__foot{display:none}
.filters__form{margin:0}
.fgroup{margin:0;padding:18px 0 20px;border:0;border-top:1px solid var(--line);min-width:0}
.fgroup:first-child{padding-top:0;border-top:0}
.fgroup__title{display:block;float:left;width:100%;margin:0 0 12px;padding:0;color:var(--ink);font:700 15px/1.3 var(--sans)}
.fgroup__opts{clear:both}
.fsearch{position:relative;clear:both}
.fsearch .ico{position:absolute;left:12px;top:50%;margin-top:-10px;color:var(--muted);pointer-events:none}
.fsearch input,.fprice input{width:100%;height:46px;margin:0;padding:0 12px 0 40px;border:1px solid #c4ccd6;border-radius:0;background:var(--white);color:var(--ink);font:16px/1.2 var(--sans);-webkit-appearance:none;appearance:none;transition:border-color .2s}
.fsearch input::placeholder,.fprice input::placeholder{color:#6b7684;opacity:1}
.fsearch input:hover,.fsearch input:focus,.fprice input:hover,.fprice input:focus{border-color:var(--blue)}
.fprice{clear:both;display:flex;align-items:center;gap:8px;color:var(--muted)}
.fprice label{flex:1;min-width:0}
.fprice input{padding-left:12px;-moz-appearance:textfield}
.fprice input::-webkit-outer-spin-button,.fprice input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.fopt{position:relative;display:flex;align-items:center;gap:10px;min-height:36px;cursor:pointer;color:var(--ink);font-size:15px;line-height:1.25}
.fopt input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.fopt__label{flex:1;min-width:0}
.fopt__n{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}
.fopt.is-zero{color:#8a95a3;cursor:default}
/* список с квадратиками: материал, рисунок */
.fgroup--check .fopt:before{content:"";flex:0 0 18px;height:18px;border:1.5px solid #9aa6b4;background:var(--white) center/12px no-repeat;transition:background-color .15s,border-color .15s}
.fgroup--check .fopt:has(input:checked):before{border-color:var(--navy-2);background-color:var(--navy-2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='square'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.fgroup--check .fopt:hover:not(.is-zero):before{border-color:var(--blue)}
/* цвета: кружок оттенка */
.fopt__sw{flex:0 0 22px;height:22px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(3,23,46,.18);transition:box-shadow .15s}
.fgroup--swatch .fopt:not(.is-zero):hover .fopt__sw{box-shadow:inset 0 0 0 1px rgba(3,23,46,.18),0 0 0 3px var(--paper),0 0 0 4px #9aa6b4}
.fgroup--swatch .fopt:has(input:checked) .fopt__sw{box-shadow:inset 0 0 0 1px rgba(3,23,46,.18),0 0 0 3px var(--paper),0 0 0 5px var(--navy-2)}
.fgroup--swatch .fopt:has(input:checked){font-weight:700}
.fgroup--swatch .fopt.is-zero .fopt__sw{opacity:.35}
/* размеры, ширина, вид: плашки */
.fgroup--chip .fgroup__opts{display:flex;flex-wrap:wrap;gap:6px}
.fgroup--chip .fopt{min-height:40px;min-width:48px;justify-content:center;padding:0 12px;border:1px solid #c4ccd6;background:var(--white);font-size:14px;transition:border-color .15s,background-color .15s,color .15s}
.fgroup--chip .fopt__label{flex:0 0 auto}
.fgroup--chip .fopt__n{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.fgroup--chip .fopt:hover:not(.is-zero){border-color:var(--blue)}
.fgroup--chip .fopt:has(input:checked){border-color:var(--navy-2);background:var(--navy-2);color:var(--white)}
.fgroup--chip .fopt.is-zero{border-style:dashed;background:transparent}
.fopt:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:2px}

/* Строка над образцами */
.results__bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:0 0 18px}
.results__count{margin:0 auto 0 0;color:var(--ink);font:700 16px/1.3 var(--sans)}
.results__filters{display:none;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--navy-2);border-radius:0;background:var(--white);color:var(--navy-2);font:700 15px/1 var(--sans);cursor:pointer}
.results__badge{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--blue);color:var(--white);font-size:12px}
.results__badge[hidden]{display:none}
.results__sort{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}
.results__sort select{min-height:44px;padding:0 40px 0 14px;border:1px solid #c4ccd6;border-radius:0;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230a1828' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/14px no-repeat;color:var(--ink);font:15px var(--sans);appearance:none;-webkit-appearance:none;cursor:pointer}
.results__view{display:flex;border:1px solid #c4ccd6;background:var(--white)}
.results__view button{display:grid;place-items:center;width:44px;height:42px;border:0;border-radius:0;background:transparent;color:var(--muted);cursor:pointer;transition:background-color .15s,color .15s}
.results__view button:hover{color:var(--ink)}
.results__view button[aria-pressed="true"]{background:var(--navy-2);color:var(--white)}
.results__chips{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 20px}
.results__chips[hidden]{display:none}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border:0;border-radius:18px;background:#dfe7f1;color:var(--ink);font:14px/1.2 var(--sans);cursor:pointer;transition:background-color .15s}
.chip:hover{background:#cddbeb}
.chip--reset{background:transparent;color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.chip--reset:hover{background:transparent;color:var(--blue-hover)}
.results__empty{padding:48px 40px;background:var(--white);text-align:center}
.results__empty[hidden]{display:none}
.results__empty p{margin:0 auto;max-width:44ch;color:var(--muted);font-size:16px;line-height:1.6}
.results__empty .results__empty-title{margin-bottom:8px;color:var(--ink);font:400 26px/1.25 var(--serif)}
.results__empty-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px;margin-top:22px!important}
.results__empty-actions a{color:var(--ink);font:400 22px var(--serif);text-decoration:none}
.results__empty-actions a:hover{color:var(--blue)}
.filters__reset{min-height:44px;padding:0 20px;border:1px solid var(--navy-2);border-radius:0;background:var(--white);color:var(--navy-2);font:700 15px/1 var(--sans);cursor:pointer}
.filters__reset:hover{background:var(--navy-2);color:var(--white)}

/* Образец: снимок, пришитый к листу, и бирка */
.specs{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin:0;padding:0;list-style:none}
.specs[hidden]{display:none}
.spec{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--white);transition:box-shadow .3s var(--ease-out),transform .3s var(--ease-out)}
.spec[hidden]{display:none}
.spec:hover{box-shadow:0 14px 30px rgba(3,23,46,.1);transform:translateY(-2px)}
.spec__photo{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:var(--white)}
.spec__photo:after{content:"";position:absolute;inset:10px;border:1px dashed rgba(3,23,46,.2);pointer-events:none;transition:border-color .3s}
.spec__photo.is-cloth:after{border-color:rgba(255,255,255,.6)}
.spec:hover .spec__photo:after{border-color:rgba(3,23,46,.45)}
.spec:hover .spec__photo.is-cloth:after{border-color:rgba(255,255,255,.95)}
.spec__img{width:100%;height:100%;margin:0;padding:9%;object-fit:contain;mix-blend-mode:multiply;transition:transform .6s var(--ease-out)}
.spec .spec__photo .spec__img{height:100%}
.spec__photo.is-cloth .spec__img{padding:0;object-fit:cover;mix-blend-mode:normal}
.spec:hover .spec__img{transform:scale(1.04)}
.spec__tag{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto 1fr auto;grid-template-areas:"name name" "sku sku" "facts facts" "colors colors" "price go";flex:1;gap:0 12px;padding:16px 18px 18px;border-top:1px solid #e3e7ec}
.spec__colors{align-self:start}
.spec__name{grid-area:name;margin:0;font:400 19px/1.25 var(--serif);letter-spacing:-.005em;text-wrap:balance}
.spec__name a{color:var(--ink);text-decoration:none}
.spec__name a:after{content:"";position:absolute;inset:0}
.spec__name a:hover{color:var(--blue)}
body:not(.home) .page-main .spec__name a:focus-visible{outline:0}
body:not(.home) .page-main .spec__name a:focus-visible:after{outline:3px solid var(--blue);outline-offset:2px}
.spec__sku{grid-area:sku;margin:5px 0 0;color:var(--muted);font-size:13px;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.spec__facts{grid-area:facts;margin:10px 0 0;color:#334254;font-size:14px;line-height:1.4}
.spec__facts.is-empty{margin:0}
.spec__colors{grid-area:colors;display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:12px 0 0;padding:0;list-style:none}
.sw{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--a) 50%,var(--b) 50%);box-shadow:inset 0 0 0 1px rgba(3,23,46,.2)}
.sw-more{margin-left:3px;color:var(--muted);font-size:13px}
.spec__price{grid-area:price;align-self:end;margin:16px 0 0;color:var(--ink);font-size:19px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.spec__go{grid-area:go;position:relative;z-index:1;align-self:end;display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:14px;padding:0 16px;border:1px solid var(--navy-2);color:var(--navy-2);font-size:15px;font-weight:700;text-decoration:none;white-space:nowrap;transition:background-color .2s,color .2s,border-color .2s}
.spec__go:hover{background:var(--navy-2);color:var(--white)}
.spec__go.is-buy{border-color:var(--blue);background:var(--blue);color:var(--white)}
.spec__go.is-buy:hover{border-color:var(--blue-hover);background:var(--blue-hover)}

/* Прайс: те же позиции строками */
.book[data-view="list"] .specs{grid-template-columns:minmax(0,1fr);gap:0;background:var(--white)}
.book[data-view="list"] .spec{flex-direction:row;align-items:center;border-top:1px solid #e3e7ec}
.book[data-view="list"] .spec:first-child{border-top:0}
.book[data-view="list"] .spec:hover{box-shadow:none;transform:none;background:#f8fafc}
.book[data-view="list"] .spec__photo{flex:0 0 76px;width:76px;margin:10px 0 10px 12px}
.book[data-view="list"] .spec__photo:after{display:none}
.book[data-view="list"] .spec__img{padding:4px}
.book[data-view="list"] .spec:hover .spec__img{transform:none}
.book[data-view="list"] .spec__tag{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 128px 112px 140px;grid-template-areas:"name facts colors price go" "sku facts colors price go";align-items:center;padding:12px 16px 12px 18px;border-top:0}
.book[data-view="list"] .spec__name{align-self:end;font-size:18px}
.book[data-view="list"] .spec__sku{align-self:start;margin-top:3px}
.book[data-view="list"] .spec__facts,.book[data-view="list"] .spec__colors,.book[data-view="list"] .spec__price,.book[data-view="list"] .spec__go{margin:0}
.book[data-view="list"] .spec__price{align-self:center;text-align:right}
.book[data-view="list"] .spec__go{align-self:center;justify-self:end}

/* ===== Каталог: оглавление книги образцов ===== */
.shop-head--toc{position:relative;z-index:5}
.finder{position:relative}
.finder__box{position:relative}
.finder__box .ico{position:absolute;left:18px;top:50%;margin-top:-10px;color:var(--muted);pointer-events:none}
.finder__box input{width:100%;height:60px;margin:0;padding:0 18px 0 50px;border:0;border-radius:0;background:var(--white);color:var(--ink);font:17px/1.2 var(--sans);box-shadow:0 12px 30px rgba(3,23,46,.25);-webkit-appearance:none;appearance:none}
.finder__box input::placeholder{color:#6b7684;opacity:1}
body:not(.home) .shop-head .finder input:focus-visible{outline:3px solid var(--blue-light);outline-offset:2px}
.finder__panel{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 6px);max-height:min(460px,60vh);overflow:auto;background:var(--white);color:var(--ink);box-shadow:0 20px 44px rgba(3,23,46,.28)}
.finder__panel[hidden]{display:none}
.finder__count{position:sticky;top:0;margin:0;padding:12px 18px;background:var(--white);border-bottom:1px solid #e3e7ec;color:var(--muted);font-size:14px}
.finder__list{margin:0;padding:6px 0;list-style:none}
.finder__list a{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:14px;padding:8px 18px;color:var(--ink);text-decoration:none}
.finder__list a:hover,.finder__list a.is-active{background:#eef3f9}
.finder__list img{width:56px;height:56px;object-fit:contain;mix-blend-mode:multiply}
.finder__text{display:grid;gap:3px;min-width:0}
.finder__text strong{overflow:hidden;font:400 17px/1.25 var(--serif);white-space:nowrap;text-overflow:ellipsis}
.finder__text span{color:var(--muted);font-size:13px}
.finder__price{font-weight:700;font-size:15px;white-space:nowrap}

.toc{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:56px;align-items:start}
.toc__list{margin:0;padding:0;list-style:none;counter-reset:toc}
.toc__row{padding:24px 0 26px;border-top:1px solid var(--line)}
.toc__row:first-child{padding-top:4px;border-top:0}
.toc__link{display:grid;grid-template-columns:auto minmax(24px,1fr) auto;align-items:baseline;gap:14px;color:var(--ink);text-decoration:none}
.toc__thumb{display:none}
.toc__name{font:400 clamp(22px,2.1vw,29px)/1.15 var(--serif);letter-spacing:-.015em;transition:color .2s}
.toc__lead{align-self:end;margin-bottom:.45em;border-bottom:2px dotted #b3bdc9}
.toc__meta{display:flex;gap:14px;color:var(--muted);font-size:15px;white-space:nowrap}
.toc__price{color:var(--ink);font-weight:700}
.toc__link:hover .toc__name{color:var(--blue)}
.toc__subs{display:flex;flex-wrap:wrap;gap:4px 22px;margin:12px 0 0;padding:0;list-style:none}
.toc__subs a{display:inline-flex;align-items:baseline;gap:6px;min-height:32px;padding-top:6px;color:#334254;font-size:15px;text-underline-offset:3px;text-decoration-color:#b3bdc9}
.toc__subs a span{color:var(--muted);font-size:13px}
.toc__subs a:hover{color:var(--blue);text-decoration-color:currentColor}
.toc__plate{position:sticky;top:calc(var(--header-h) + 24px);aspect-ratio:4/5;background:var(--white)}
.toc__plate:after{content:"";position:absolute;inset:14px;border:1px dashed rgba(3,23,46,.2);pointer-events:none}
.toc__plate img{position:absolute;inset:0;width:100%;height:100%;padding:10%;object-fit:contain;mix-blend-mode:multiply;opacity:0;transform:scale(.98);transition:opacity .45s var(--ease-out),transform .6s var(--ease-out)}
.toc__plate img.is-on{opacity:1;transform:none}

/* ===== Товар: лист спецификации ===== */
/* галерея стоит на месте: position relative без сдвига (у WooCommerce top не должен срабатывать) */
.woocommerce div.product div.images.woocommerce-product-gallery{position:relative;top:auto}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,.woocommerce div.product div.images .woocommerce-product-gallery__image{background:var(--white)}
.woocommerce div.product div.images .woocommerce-product-gallery__image{position:relative;overflow:hidden;cursor:zoom-in}
.woocommerce div.product div.images .woocommerce-product-gallery__image:after{content:"";position:absolute;z-index:3;inset:14px;border:1px dashed rgba(3,23,46,.22);pointer-events:none}
.zoom-lens{position:absolute;z-index:2;inset:0;background:#fff no-repeat 50% 50%;opacity:0;pointer-events:none;transition:opacity .2s}
.zoom-lens.is-on{opacity:1}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{z-index:3}
.woocommerce div.product div.images .flex-control-thumbs li{background:var(--white)}
.spec-sheet{max-width:560px;margin:0 0 22px;border-top:1px solid var(--line)}
.spec-sheet div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}
.spec-sheet dt{color:var(--muted);font-size:14px;line-height:1.5}
.spec-sheet dd{margin:0;color:var(--ink);font-size:16px;line-height:1.5}
.spec-notes{max-width:560px;margin:0 0 28px;color:#334254;font-size:15px;line-height:1.6}
.spec-notes p{margin:0 0 8px}
.woocommerce div.product .summary>.spec-notes:last-of-type,.woocommerce div.product .summary>.spec-sheet+form{margin-top:0}
.pill-sw{flex:0 0 16px;height:16px;border-radius:50%;background:linear-gradient(135deg,var(--a) 50%,var(--b) 50%);box-shadow:inset 0 0 0 1px rgba(3,23,46,.22)}
.var-pill.has-sw{display:inline-flex;align-items:center;gap:8px;padding-left:12px}
.var-pill[aria-pressed="true"] .pill-sw{box-shadow:0 0 0 2px var(--white)}
.var-pills.is-need{animation:need .9s var(--ease-out)}
@keyframes need{0%,60%{box-shadow:0 0 0 3px var(--blue)}100%{box-shadow:0 0 0 3px transparent}}
.buy-hint{margin:0 0 10px;color:#334254;font-size:15px}
.buy-hint[hidden]{display:none}
.woocommerce div.product form.cart .button.disabled,.woocommerce div.product form.cart .button.disabled:hover{padding:0 26px;background:var(--blue);color:var(--white);opacity:1;cursor:pointer}
.woocommerce table.shop_attributes tr:nth-child(even) th,.woocommerce table.shop_attributes tr:nth-child(even) td{background:none}
.woocommerce table.shop_attributes th{text-align:left;padding-left:0}
.woocommerce table.shop_attributes td p{margin:0;padding:0}
.more{grid-column:1/-1;margin-top:64px;padding-top:44px;border-top:1px solid var(--line)}
.more__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 24px;margin:0 0 24px}
.more__head h2{margin:0;font-size:clamp(26px,2.8vw,38px);letter-spacing:-.02em}
.more__all{color:var(--blue);font-size:15px;font-weight:700;text-underline-offset:4px}
.specs--strip{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(230px,calc((100% - 60px) / 4));overflow-x:auto;padding-bottom:14px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c4ccd6 transparent}
.specs--strip .spec{scroll-snap-align:start}
.specs--strip .spec:hover{transform:none}

@media(max-width:1200px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){
  .page-main{padding-top:calc(var(--header-h) + 28px)}
  .page-main.has-head{padding-top:0}
  .shop-head{padding-top:calc(var(--header-h) + 28px);margin-bottom:32px}
  .woocommerce div.product{grid-template-columns:1fr;gap:28px}
  .woocommerce-cart .page-content .woocommerce:has(>.woocommerce-cart-form){grid-template-columns:1fr}
  .woocommerce-cart .page-content .woocommerce:has(>.woocommerce-cart-form)>.cart-collaterals{grid-column:1;position:static;margin-top:28px}
  .woocommerce-checkout form.checkout{grid-template-columns:1fr}
  .woocommerce-checkout form.checkout>#customer_details,.woocommerce-checkout form.checkout>#order_review_heading,.woocommerce-checkout form.checkout>#order_review{grid-column:1;grid-row:auto;position:static}
}
@media(max-width:768px){
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .woocommerce ul.products li.product a img{padding:10px}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{padding:12px 12px 0;font-size:16px}
  .card-sku{padding:0 12px;font-size:12px}
  .woocommerce ul.products li.product .price{padding:0 12px;font-size:16px}
  .woocommerce ul.products li.product .button{margin:12px;min-height:44px;font-size:14px}
  .woocommerce ul.products li.product-category .card-cap{padding:12px 14px 14px}
  .woocommerce ul.products li.product-category .woocommerce-loop-category__title{font-size:17px}
  .card-arrow{display:none}
  .woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none;margin:0 0 12px;line-height:1.4}
  .woocommerce .woocommerce-ordering select{width:100%}
  .woocommerce div.product form.cart .button{flex:1;min-width:0}
  .woocommerce div.product .woocommerce-tabs ul.tabs{gap:20px;overflow-x:auto}
  .woocommerce .woocommerce-message .button,.woocommerce .woocommerce-info .button{float:none;display:flex;width:fit-content;margin:12px 0 0}
  .woocommerce a.remove{width:44px;height:44px}
  .woocommerce .woocommerce-ordering select,.woocommerce form .form-row select,.woocommerce div.product form.cart .variations select{font-size:16px}
  .order-steps li{font-size:15px;padding-right:8px}
}
@media(max-width:620px){
  .page-main{padding:calc(var(--header-h) + 22px) 16px 80px}
  .page-main.has-head{padding-top:0}
  .shop-head{margin:0 -16px 26px;padding:calc(var(--header-h) + 22px) 16px 0}
  .shop-head__meta{font-size:15px}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{float:none;width:100%}
  .search-form label,.search-form .search-submit{flex:1 1 100%}
  .woocommerce div.product p.price,.woocommerce div.product span.price{font-size:28px}
  .buy-help__phone{font-size:22px}
  .woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout form.checkout>#order_review{padding:18px}
}
@media(prefers-reduced-motion:reduce){
  .woocommerce ul.products li.product a:hover img{transform:none}
  .woocommerce ul.products li.product a img,.woocommerce div.product div.images .flex-control-thumbs li img,.card-arrow,.woocommerce ul.products li.product{transition:none}
  .woocommerce ul.products li.product-category a:hover .card-arrow{transform:none}
}

/* ===== Книга образцов: планшет и телефон ===== */
@media(max-width:1200px){
  .book{grid-template-columns:232px minmax(0,1fr);gap:28px}
  .book[data-view="list"] .spec__tag{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 112px 132px;grid-template-areas:"name facts price go" "sku colors price go"}
  .book[data-view="list"] .spec__colors{align-self:start;margin-top:6px}
  .toc{gap:40px}
}
@media(max-width:1000px){
  .book{grid-template-columns:minmax(0,1fr)}
  .results__filters{display:inline-flex}
  .results__count{flex:1 1 100%;order:-1;margin:0}
  .results__sort{margin-left:auto}
  /* фильтры — выезжающая панель на весь экран */
  .filters{position:fixed;z-index:60;inset:0;top:0;max-height:none;display:flex;flex-direction:column;background:var(--paper);visibility:hidden;transform:translateY(100%);transition:transform .35s var(--ease-out),visibility 0s .35s}
  .filters.is-open{visibility:visible;transform:none;transition:transform .35s var(--ease-out)}
  .filters__head{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;padding:10px 8px 10px 20px;border-bottom:1px solid var(--line);background:var(--white)}
  .filters__title{margin:0;font-size:24px}
  .filters__close{display:grid;place-items:center;width:48px;height:48px;border:0;background:transparent;color:var(--ink);cursor:pointer}
  .filters__form{flex:1 1 auto;overflow:auto;overscroll-behavior:contain;padding:20px}
  .filters__foot{display:flex;gap:10px;flex:0 0 auto;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--white)}
  .filters__foot .filters__reset{flex:0 0 auto}
  .filters__apply{flex:1;min-height:48px;border:0;border-radius:0;background:var(--blue);color:var(--white);font:700 16px/1 var(--sans);cursor:pointer}
  .fopt{min-height:44px}
  .fgroup--chip .fopt{min-height:44px}
  html.has-sheet,html.has-sheet body{overflow:hidden}
  .shop-head--toc .shop-head__main{grid-template-columns:minmax(0,1fr)}
  .toc{grid-template-columns:minmax(0,1fr)}
  .toc__plate{display:none}
  .toc__link{grid-template-columns:88px minmax(0,1fr);grid-template-areas:"thumb name" "thumb meta";align-items:center;gap:4px 18px}
  .toc__thumb{grid-area:thumb;display:block;width:88px;height:88px;padding:6px;object-fit:contain;background:var(--white);mix-blend-mode:normal}
  .toc__name{grid-area:name;align-self:end}
  .toc__lead{display:none}
  .toc__meta{grid-area:meta;align-self:start}
  .toc__subs{margin-left:106px}
  .specs--strip{grid-auto-columns:minmax(220px,40%)}
}
@media(max-width:620px){
  .shop-head{padding-bottom:30px}
  .shop-head__title{font-size:clamp(32px,9vw,40px)}
  .tabs{margin:24px -16px 0}
  .tabs__row{padding:0 16px;-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}
  .subtabs__row{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:0 16px;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}
  .subtabs__row li{flex:0 0 auto}
  .tabs__row a{min-height:48px;padding:13px 14px 11px}
  .tabs__name{font-size:16px}
  .results__bar{gap:10px}
  .results__sort{flex:1;margin:0}
  .results__sort{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}
.results__sort select{width:100%}
  .specs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .spec__photo:after{inset:6px}
  .spec__tag{grid-template-areas:"name name" "sku sku" "facts facts" "colors colors" "price price" "go go";padding:12px 12px 12px}
  .spec__name{font-size:16px}
  .spec__sku{font-size:12px}
  .spec__facts{font-size:13px;margin-top:6px}
  .spec__colors{margin-top:8px}
  .sw{width:14px;height:14px}
  .spec__price{margin-top:10px;font-size:17px}
  .spec__go{margin-top:10px;min-height:44px;padding:0 10px;font-size:14px}
  .book[data-view="list"] .spec{align-items:flex-start}
  .book[data-view="list"] .spec__photo{flex-basis:64px;width:64px;margin:12px 0 12px 10px}
  .book[data-view="list"] .spec__tag{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name name" "sku sku" "facts facts" "colors colors" "price go";padding:12px 12px 14px}
  .book[data-view="list"] .spec__name{font-size:16px}
  .book[data-view="list"] .spec__facts{margin-top:4px}
  .book[data-view="list"] .spec__colors{margin-top:6px}
  .book[data-view="list"] .spec__price{margin-top:8px;text-align:left}
  .book[data-view="list"] .spec__go{margin-top:8px;min-height:40px}
  .finder__box input{height:54px;font-size:16px}
  .finder__list a{grid-template-columns:44px minmax(0,1fr);padding:8px 14px}
  .finder__list img{width:44px;height:44px}
  .finder__price{grid-column:2}
  .toc__link{grid-template-columns:64px minmax(0,1fr);gap:2px 14px}
  .toc__thumb{width:64px;height:64px}
  .toc__name{font-size:21px}
  .toc__meta{font-size:14px;gap:10px}
  .toc__subs{margin-left:0;gap:0 16px}
  .spec-sheet div{grid-template-columns:110px minmax(0,1fr);gap:12px}
  .specs--strip{grid-template-columns:none;grid-auto-columns:62%}
}
@media(prefers-reduced-motion:reduce){
  .spec,.spec__img,.toc__plate img,.filters,.filters.is-open{transition:none}
  .spec:hover{transform:none}
  .spec:hover .spec__img{transform:none}
  .var-pills.is-need{animation:none;outline:3px solid var(--blue)}
}
.subtabs .tabs__name{font:inherit}
.subtabs .tabs__n{color:var(--muted);font-size:12px}
.subtabs a[aria-current] .tabs__n{color:rgba(255,255,255,.75)}
@media(max-width:620px){.results__sort{flex:1 1 0;min-width:0}.results__sort-label{display:none}.results__sort select{padding:0 30px 0 12px;background-position:right 10px center}.results__filters{padding:0 12px}}


/* ===== Детали после дизайн-проверки (24.09.2026) ===== */
/* Шапка: «Заявка» со счётчиком */
.header{grid-template-columns:minmax(275px,1fr) auto auto auto}
.cart-link{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--white);font-size:14px;font-weight:700;text-decoration:none;text-shadow:0 1px 8px rgba(3,23,46,.35)}
.cart-link svg{flex:0 0 auto}
.cart-link:hover .cart-link__label{text-decoration:underline;text-underline-offset:4px}
.cart-link__n{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--blue);color:var(--white);font-size:12px;text-shadow:none;font-variant-numeric:tabular-nums}
.cart-link__n[hidden]{display:none}
.cart-link[aria-current] .cart-link__label{text-decoration:underline;text-decoration-color:var(--blue-light);text-underline-offset:6px}
.nav a[aria-current]:after{right:0}
/* подвал: цели касания 44px */
.footer nav a,.footer-contacts a{min-height:44px}
@media(max-width:1000px){
  .header,.header.is-scrolled{grid-template-columns:1fr auto auto auto}
  .cart-link{justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%}
  .cart-link__label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .cart-link__n{position:absolute;top:-4px;right:-6px}
  /* открытое меню: шапка сплошная, страница под меню затемнена */
  .header:has(.menu[aria-expanded="true"]){background:var(--navy);-webkit-backdrop-filter:none;backdrop-filter:none}
  .mobile-nav{box-shadow:0 20px 40px rgba(0,0,0,.3),0 0 0 100vmax rgba(3,23,46,.5);clip-path:inset(0 -100vmax -100vmax -100vmax)}
  .mobile-contacts a:first-child{font:400 22px/1.2 var(--serif)}
  .mobile-contacts a+a{color:var(--on-dark-muted);font-weight:400}
}

/* Фильтры: кольцо фокуса не обрезается прокруткой, выбранный цвет — как выбранная плашка */
.filters{padding:4px;margin:-4px}
.fgroup--swatch .fopt{margin:0 -8px;padding:0 8px}
.fgroup--swatch .fopt:has(input:checked){background:#e3ebf5}
@media(hover:none){.fgroup--swatch .fopt:not(.is-zero):hover .fopt__sw{box-shadow:inset 0 0 0 1px rgba(3,23,46,.18)}.fgroup--chip .fopt:hover:not(.is-zero){border-color:#c4ccd6}}
.fgroup--chip .fgroup__opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}
.fgroup--chip[data-facet="d"] .fgroup__opts,.fgroup--chip[data-facet="v"] .fgroup__opts{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}
/* прайс: «+N» в одной строке с кружками */
.book[data-view="list"] .spec__colors{flex-wrap:nowrap}
/* закладки: затухание и слева, когда ряд прокручен */
.tabs__row.is-scrolled-x,.subtabs__row.is-scrolled-x{-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 82%,transparent)}
/* «В корзину» с бирки */
.spec__go.is-busy{opacity:.7;cursor:progress}
.spec__go.is-added{border-color:var(--navy-2);background:var(--navy-2)}
/* «Цена по запросу» переносится, а не наезжает на кнопку */
.spec__price{min-width:0;white-space:normal}
.price-request{color:var(--ink)}
@media(max-width:1000px){
  .results__bar{position:sticky;z-index:6;top:var(--header-h);margin:0 calc(var(--pad) * -1) 14px;padding:10px var(--pad);background:var(--paper);box-shadow:0 1px 0 var(--line)}
}
@media(max-width:620px){.results__bar{margin:0 -16px 12px;padding:10px 16px}}

/* Поиск по каталогу: «Показать все», телефон; на телефоне цена справа */
.finder__count a{color:var(--blue);font-weight:700;text-underline-offset:3px}
@media(max-width:620px){
  .finder__list a{grid-template-columns:44px minmax(0,1fr) auto;gap:10px;padding:8px 12px}
  .finder__price{grid-column:auto;font-size:14px}
  .finder__text strong{font-size:16px}
}

/* Результаты поиска и 404 */
.search-results__bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,480px);align-items:center;gap:16px 32px;margin:0 0 22px}
.search-results__bar .results__count{margin:0}
.search-results .finder__box input,.notfound .finder__box input{box-shadow:none;border:1px solid #c4ccd6;height:52px}
.notfound{max-width:880px}
.notfound__lead{margin:0 0 16px;color:var(--muted);font-size:17px;line-height:1.6}
.notfound .finder{max-width:560px}
.notfound__title{margin:48px 0 8px;font-size:28px}
.notfound__list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.notfound__list a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;min-height:52px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.notfound__list span{font:400 21px/1.25 var(--serif)}
.notfound__list small{color:var(--muted);font-size:14px;white-space:nowrap}
.notfound__list a:hover span{color:var(--blue)}
.notfound__call{margin:28px 0 0;color:var(--muted);font-size:16px}
.notfound__call a{color:var(--ink);font:400 22px var(--serif);text-decoration:none;white-space:nowrap}
@media(max-width:760px){.search-results__bar{grid-template-columns:1fr}}

/* Товар: активная миниатюра, подсказка при ошибке */
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active{outline:2px solid var(--navy-2);outline-offset:-2px}
.buy-hint.is-error{color:#9a1c16;font-weight:700}

/* Корзина: обычный регистр, пересчёт без кнопки, артикул, «Вернуться в каталог» */
.woocommerce table.shop_table th{letter-spacing:0;text-transform:none;font-size:14px}
.cart-autoupdate .woocommerce-cart-form button[name="update_cart"]{display:none!important}
.cart-autoupdate .woocommerce-cart-form td.actions:not(:has(.coupon)){display:none}
.cart-sku{display:block;margin-top:4px;color:var(--muted);font:400 13px var(--sans)}
.cart-continue{margin:18px 0 0}
.cart-continue a{color:var(--ink);font-size:15px;text-underline-offset:3px}
.cart-continue a:hover{color:var(--blue)}
@media(max-width:768px){
  .woocommerce table.shop_table_responsive tr.cart_item{position:relative}
  .woocommerce table.shop_table_responsive tr.cart_item td.product-remove{position:absolute;top:6px;right:0;border:0;padding:0;background:none}
  .woocommerce table.shop_table_responsive tr.cart_item td.product-remove:before{content:none}
  .woocommerce table.shop_table_responsive tr.cart_item td.product-name{padding-right:52px}
}

/* Оформление: скрытая строка страны, «Ваш заказ» без разрыва, примечание выше */
.dian-hidden{display:none!important}
.woocommerce-checkout form.checkout{grid-template-rows:auto auto 1fr}
.woocommerce-checkout form.checkout>#order_review_heading{align-self:end}
.woocommerce form .form-row textarea#order_comments{min-height:120px}
.woocommerce-form-login-toggle .woocommerce-info:before{content:none}
.woocommerce-form-login-toggle .woocommerce-info{padding-left:20px}
@media(max-width:420px){.header .brand{gap:8px}.header .brand strong{font-size:18px;white-space:nowrap}.header,.header.is-scrolled{gap:6px}.header .menu{padding:0 0 0 6px}}
@media(max-width:374px){.header .brand img{width:36px;height:36px}.header .brand strong{font-size:17px}}

/* ===== Кабинет клиента ===== */
.header{grid-template-columns:minmax(275px,1fr) auto auto auto auto}
.account-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--white);font-size:14px;font-weight:700;text-decoration:none;text-shadow:0 1px 8px rgba(3,23,46,.35)}
.account-link:hover span{text-decoration:underline;text-underline-offset:4px}
.account-link[aria-current] span{text-decoration:underline;text-decoration-color:var(--blue-light);text-underline-offset:6px}
@media(max-width:1200px){.header{gap:clamp(18px,2.4vw,40px)}.nav{gap:22px}}
@media(max-width:1000px){.account-link{display:none}}
.woocommerce-account .page-content{max-width:none}
/* вход */
.account-intro{max-width:620px;margin:0 0 28px;color:#334254;font-size:17px;line-height:1.6}
.account-intro p{margin:0 0 10px}
.account-intro a{color:var(--blue);text-underline-offset:3px}
.woocommerce-account:not(.logged-in) .page-content h2{margin:0 0 16px;font-size:28px}
.woocommerce-account:not(.logged-in) .woocommerce form.login{max-width:480px;margin:0;padding:26px 24px}
.woocommerce form.login .woocommerce-LostPassword{margin:14px 0 0}
.woocommerce form.login .woocommerce-LostPassword a{color:var(--ink);text-underline-offset:3px}
/* кабинет: меню слева, содержимое справа */
.woocommerce-account.logged-in .page-content>.woocommerce{display:grid;grid-template-columns:220px minmax(0,1fr);gap:0 48px;align-items:start}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto}
.woocommerce-MyAccount-navigation{position:sticky;top:calc(var(--header-h) + 24px)}
.woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-navigation a{display:flex;align-items:center;min-height:48px;padding:0 14px;color:var(--ink);font-size:16px;text-decoration:none;transition:background-color .15s}
.woocommerce-MyAccount-navigation a:hover{background:var(--white)}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--navy-2);color:var(--white)}
.woocommerce-MyAccount-navigation-link--customer-logout a{color:var(--muted)}
.woocommerce-MyAccount-content>p:first-child{margin-top:0}
.acc-hello{margin:0 0 26px;font:400 26px/1.25 var(--serif)}
.acc-hello span{color:var(--muted);font:400 17px var(--sans)}
.acc-block{margin:0 0 34px}
.acc-block__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 12px}
.acc-block__head h2{margin:0;font-size:24px}
.acc-block__head a{color:var(--blue);font-size:15px;font-weight:700;text-underline-offset:3px}
.acc-orders{margin:0;padding:0;list-style:none;background:var(--white)}
.acc-order{display:grid;grid-template-columns:minmax(0,1fr) 150px 130px 120px;align-items:center;gap:12px 20px;padding:14px 18px;border-top:1px solid #e3e7ec}
.acc-order:first-child{border-top:0}
.acc-order__main{display:grid;grid-template-columns:auto auto;justify-content:start;gap:2px 14px;color:var(--ink);text-decoration:none;min-width:0}
.acc-order__n{font:400 19px/1.3 var(--serif)}
.acc-order__date{color:var(--muted);font-size:14px;align-self:center}
.acc-order__items{grid-column:1/-1;overflow:hidden;color:#334254;font-size:14px;white-space:nowrap;text-overflow:ellipsis}
.acc-order__main:hover .acc-order__n{color:var(--blue)}
.acc-order__status{font-size:14px;color:var(--ink)}
.acc-order__status:before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#9aa6b4;vertical-align:1px}
.acc-order__status.status-processing:before,.acc-order__status.status-on-hold:before{background:var(--blue)}
.acc-order__status.status-completed:before{background:#2f7d4a}
.acc-order__sum{display:grid;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.acc-order__sum small{color:var(--muted);font-weight:400;font-size:13px}
.acc-order__again{grid-column:4;justify-self:end;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--navy-2);color:var(--navy-2);font-size:14px;font-weight:700;text-decoration:none}
.acc-order__again:hover{background:var(--navy-2);color:var(--white)}
.acc-order:has(.acc-order__again){grid-template-rows:auto auto}
.acc-empty{padding:28px 24px;background:var(--white)}
.acc-empty p{margin:0 0 16px;color:#334254}
.acc-block--req .spec-sheet{max-width:none;background:var(--white);border-top:0;padding:4px 18px}
.acc-block--req .spec-sheet div:last-child{border-bottom:0}
.acc-muted{color:var(--muted)}
.acc-call{margin:0;color:var(--muted);font-size:15px}
.acc-call a{color:var(--ink);font:400 20px var(--serif);text-decoration:none;white-space:nowrap}
/* список заявок и формы реквизитов */
.woocommerce-account .woocommerce-orders-table .button{min-height:40px;margin:2px 6px 2px 0;padding:0 14px;font-size:14px;line-height:40px}
.woocommerce-account .woocommerce-orders-table .button.order-again{border:1px solid var(--navy-2);background:transparent;color:var(--navy-2)}
.woocommerce-account .woocommerce-orders-table .button.order-again:hover{background:var(--navy-2);color:var(--white)}
.woocommerce-account .woocommerce-Addresses{display:block}
.woocommerce-account .woocommerce-Address{float:none;width:auto;max-width:560px;padding:20px 22px;background:var(--white)}
.woocommerce-account .woocommerce-Address-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.woocommerce-account .woocommerce-Address-title h2{margin:0 0 10px;font-size:22px}
.woocommerce-account .woocommerce-Address-title .edit{color:var(--blue);font-weight:700;text-underline-offset:3px}
.woocommerce-account address{font-style:normal;line-height:1.6}
.woocommerce-account form.edit-account fieldset{margin:24px 0 0;padding:18px 20px;border:1px solid var(--line)}
.woocommerce-account form.edit-account legend{padding:0 6px;font:400 20px var(--serif)}
@media(max-width:1000px){
  .woocommerce-account.logged-in .page-content>.woocommerce{grid-template-columns:minmax(0,1fr)}
  .woocommerce-MyAccount-navigation{position:static;margin:0 0 24px}
  .woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;border:0;gap:6px;scrollbar-width:none}
  .woocommerce-MyAccount-navigation li{flex:0 0 auto;border:0}
  .woocommerce-MyAccount-navigation a{min-height:44px;border:1px solid #c4ccd6;background:var(--white);white-space:nowrap}
  .acc-order{grid-template-columns:minmax(0,1fr) auto;padding:14px}
  .acc-order__status{grid-column:1}
  .acc-order__sum{grid-column:2;grid-row:1}
  .acc-order__again{grid-column:2;grid-row:2}
}
.woocommerce-account.logged-in .page-content>.woocommerce>*{grid-column:1/-1}
.woocommerce-account.logged-in .page-content>.woocommerce>.woocommerce-MyAccount-navigation{grid-column:1;grid-row:2}
.woocommerce-account.logged-in .page-content>.woocommerce>.woocommerce-MyAccount-content{grid-column:2;grid-row:2;min-width:0}
@media(max-width:1000px){
  .header,.header.is-scrolled{grid-template-columns:1fr auto auto auto}
  .woocommerce-account.logged-in .page-content>.woocommerce>.woocommerce-MyAccount-navigation,.woocommerce-account.logged-in .page-content>.woocommerce>.woocommerce-MyAccount-content{grid-column:1;grid-row:auto}
  .woocommerce-MyAccount-navigation ul{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
}
/* шапка на узких компьютерах: «Войти» и телефон — значками */
@media(min-width:1001px) and (max-width:1280px){
  .header{grid-template-columns:auto 1fr auto auto auto auto;gap:22px}
  .header .brand small{display:none}
  .nav{justify-content:flex-end;gap:20px}
  .account-link{justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%}
  .account-link span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
}
@media(min-width:1001px) and (max-width:1150px){
  .phone{display:none}
  .phone-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%;color:var(--white)}
}

/* Цена за метр и упаковка */
.price-unit{font-weight:400;font-size:.8em;color:var(--muted)}
.price-pack{display:block;margin-top:6px;color:#334254;font:400 16px/1.4 var(--sans);letter-spacing:0}
.woocommerce div.product .woocommerce-variation-price .price-pack{font-size:15px}
.qty-unit{align-self:center;margin:0 4px 0 -4px;color:var(--muted);font-size:14px}
.spec__price .price-unit{font-size:14px}

/* Невидимая ловушка для ботов */
.dian-hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.dian-captcha{margin:14px 0 4px;min-height:100px}

/* ===== Персональные данные: документы, переключатель согласия, баннер cookies ===== */
.footer{grid-template-rows:auto auto}
.footer-legal{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14)}
.footer-legal a{display:inline-flex;align-items:center;min-height:44px;color:var(--on-dark-muted);font-size:14px;text-underline-offset:4px}
.footer-legal a:hover{color:var(--white)}
.policy-doc{max-width:820px;font-size:16px;line-height:1.65;overflow-wrap:break-word}
.policy-doc__meta{margin:0 0 24px;color:var(--muted);font-size:15px}
.policy-doc h2{margin:40px 0 14px;font-size:clamp(24px,2.4vw,30px);letter-spacing:-.015em}
.policy-doc p{margin:0 0 12px}
.policy-doc .policy-doc__sub{margin:22px 0 10px;font-weight:700}
.policy-doc ul{margin:0 0 14px;padding-left:22px}
.policy-doc li{margin:0 0 8px}
.policy-doc a{color:var(--blue);text-underline-offset:3px;overflow-wrap:anywhere}
mark.todo{padding:1px 5px;background:#ffe45c;color:#3a2f00;font-weight:700;border-radius:2px}
.pd-consent{display:flex;align-items:flex-start;gap:14px;margin:22px 0 6px;padding:16px 18px;background:var(--white);border:1px solid #c4ccd6;font-size:15px;line-height:1.5;color:#334254}
.pd-consent__input{position:absolute;opacity:0;width:1px;height:1px}
.pd-consent__switch{position:relative;flex:0 0 46px;width:46px;height:26px;margin-top:1px;border-radius:13px;background:#9aa6b4;cursor:pointer;transition:background-color .2s}
.pd-consent__switch:before{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:var(--white);box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.pd-consent__input:checked+.pd-consent__switch{background:var(--navy-2)}
.pd-consent__input:checked+.pd-consent__switch:before{transform:translateX(20px)}
.pd-consent__input:focus-visible+.pd-consent__switch{outline:3px solid var(--blue);outline-offset:3px}
.pd-consent__text a{color:var(--blue);text-underline-offset:3px}
.cookie-banner{position:fixed;z-index:50;left:16px;right:16px;bottom:16px;max-width:760px;display:flex;align-items:center;gap:20px;padding:16px 18px;background:var(--navy);color:var(--on-dark);box-shadow:0 14px 40px rgba(3,23,46,.35);font-size:14px;line-height:1.5}
.cookie-banner[hidden]{display:none}
.cookie-banner p{margin:0;color:var(--on-dark-muted)}
.cookie-banner a{color:var(--white);text-underline-offset:3px}
.cookie-banner__ok{flex:0 0 auto;min-height:44px;padding:0 24px;border:0;border-radius:0;background:var(--blue);color:var(--white);font:700 15px var(--sans);cursor:pointer}
.cookie-banner__ok:hover{background:var(--blue-hover)}
body.has-buybar .cookie-banner{bottom:calc(88px + env(safe-area-inset-bottom))}
@media(max-width:620px){.cookie-banner{flex-direction:column;align-items:stretch;gap:12px;left:0;right:0;bottom:0;padding:14px 16px calc(14px + env(safe-area-inset-bottom))}.cookie-banner__ok{width:100%}}
