/* EventStudia — сказочная кремово-золотая палитра, макет по «главная.png» */
:root{
  --bronze:#b08d4f;
  --bronze-2:#9c7a3f;
  --bronze-light:#d9bd86;
  --gold-text:#c29a55;
  --cream:#fbf7f0;
  --cream-2:#f6eee2;
  --footer:#f4ebdd;
  --ink:#2f2a24;
  --ink-soft:#6f675d;
  --line:#ece2d2;
  --white:#fff;
  --radius:12px;
  --shadow:0 4px 18px rgba(90,70,40,.08);
  --fairy:"Kurale", "Philosopher", Georgia, serif;
  --pad:clamp(16px, 3vw, 56px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--fairy);color:var(--ink);background:var(--white);line-height:1.45;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input{font-family:inherit}
h1,h2,h3,h4{font-family:var(--fairy);font-weight:400;margin:0}
.container{width:100%;max-width:1920px;margin:0 auto;padding-inline:var(--pad)}

/* ===== Кнопки: текст строго по центру ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;text-align:center;
  font-family:var(--fairy);font-size:17px;line-height:1;letter-spacing:.01em;
  min-height:46px;padding:0 34px;border-radius:999px;cursor:pointer;
  background:linear-gradient(180deg,#bf9d5f 0%,#a8844a 100%);color:#fff;
  border:none;box-shadow:0 4px 12px rgba(160,120,60,.28);
  transition:filter .15s ease, transform .15s ease;white-space:nowrap;
}
.btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.btn.outline{
  background:#fff;color:var(--gold-text);border:1.5px solid #d3b27a;box-shadow:none;
  min-height:36px;font-size:15px;padding:0 18px;
}
.btn.outline:hover{background:#fbf5ea}

.section{padding-block:clamp(28px,3.4vw,52px)}
.section-title{text-align:center;font-size:clamp(26px,2.3vw,38px);color:var(--ink);margin-bottom:clamp(16px,1.6vw,26px)}

/* ===== Шапка ===== */
.site-header{position:sticky;top:0;z-index:60;background:#fff;box-shadow:0 1px 0 var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:clamp(74px,5.4vw,96px)}
.logo,.footer-logo{display:inline-flex;flex-direction:column;align-items:center;line-height:1;flex:none}
.logo .emblem,.footer-logo .emblem{width:auto;height:1.25em;margin-bottom:-.05em}
.logo .word,.footer-logo .word{
  background:linear-gradient(180deg,#c9a563 0%,#a57f40 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  letter-spacing:.01em;
}
.logo{font-size:clamp(26px,2vw,36px)}
.main-nav{display:flex;gap:clamp(18px,2.6vw,46px);justify-content:center;flex:1}
.main-nav a{font-size:clamp(15px,1.05vw,18px);color:var(--ink)}
.main-nav a:hover{color:var(--bronze)}
.header-actions{display:flex;align-items:center;gap:clamp(14px,1.6vw,26px);flex:none}
.icon-btn{width:26px;height:26px;color:var(--ink);display:block}
.cart-link{position:relative;display:block}
.cart-count{position:absolute;top:-6px;right:-8px;background:var(--bronze);color:#fff;font-size:11px;border-radius:50%;width:17px;height:17px;display:flex;align-items:center;justify-content:center;font-family:Arial,sans-serif}
.cart-count[hidden]{display:none}
.burger{
  display:none;position:relative;width:46px;height:46px;padding:0;cursor:pointer;flex:none;border-radius:50%;
  border:1.5px solid #d9bd86;color:#a57f40;
  background:radial-gradient(circle at 34% 28%,#fffdf8 0%,#fbf1de 55%,#f0dcb6 100%);
  box-shadow:0 3px 10px rgba(160,120,60,.22), inset 0 0 0 3px rgba(255,255,255,.7), inset 0 0 0 4px rgba(217,189,134,.45);
  transition:transform .25s ease, box-shadow .25s ease;
}
.burger:active{transform:scale(.93)}
.burger__lines{position:absolute;left:12px;top:14px;width:20px;height:16px;display:block}
.burger__lines i{
  position:absolute;left:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,#b8914f,#9c7a3f);transition:width .35s cubic-bezier(.3,.9,.3,1), transform .35s ease;
}
.burger__lines i:nth-child(1){top:0;width:20px}
.burger__lines i:nth-child(2){top:7px;width:13px}
.burger__lines i:nth-child(3){top:14px;width:17px}
.burger:hover .burger__lines i:nth-child(2),.burger[aria-expanded="true"] .burger__lines i:nth-child(2){width:20px}
.burger:hover .burger__lines i:nth-child(3),.burger[aria-expanded="true"] .burger__lines i:nth-child(3){width:20px}
.burger__star{
  position:absolute;right:7px;top:21px;width:9px;height:9px;fill:#c9a563;
  filter:drop-shadow(0 0 2px rgba(245,213,142,.9));animation:burger-twinkle 2.8s ease-in-out infinite;
}
@keyframes burger-twinkle{0%,100%{transform:scale(.7) rotate(0);opacity:.75}50%{transform:scale(1.15) rotate(45deg);opacity:1}}
@media (prefers-reduced-motion:reduce){.burger__star{animation:none}}
.mobile-nav{display:none}

/* ===== Hero: баннер на всю ширину ===== */
.hero{
  position:relative;width:100%;overflow:hidden;
  /* pan-y: вертикальную прокрутку страницы отдаём браузеру, горизонтальный жест — слайдеру */
  touch-action:pan-y pinch-zoom;
  --hero-ease:cubic-bezier(.36,.16,.16,1); --hero-dur:.85s; --hero-blur:7px; --hero-off:38%;
  background:
    radial-gradient(ellipse at 70% 40%, rgba(255,255,255,.0) 0%, rgba(255,255,255,0) 60%),
    url("/assets/img/hero-bg.jpg") center/cover no-repeat,
    linear-gradient(100deg,#f7f1ea 0%,#f4e9e4 45%,#efdfe0 100%);
  height:clamp(430px,37vw,760px);
}
.hero-track{display:grid;height:100%}
.hero-slide{
  grid-area:1/1;position:relative;height:100%;opacity:0;visibility:hidden;
  transform:translate3d(var(--hero-off),0,0) scale(1.07);filter:blur(var(--hero-blur));backface-visibility:hidden;
  transition:opacity var(--hero-dur) var(--hero-ease), transform var(--hero-dur) var(--hero-ease),
             filter var(--hero-dur) var(--hero-ease), visibility 0s linear var(--hero-dur);
}
.hero-slide.is-active{opacity:1;visibility:visible;transform:none;filter:blur(0);z-index:2;
  transition:opacity var(--hero-dur) var(--hero-ease), transform var(--hero-dur) var(--hero-ease),
             filter var(--hero-dur) var(--hero-ease)}
/* соседний слайд, который выглядывает из-за края, пока ведут пальцем */
.hero-slide.is-peek{visibility:visible;z-index:1;transition-delay:0s}
/* пока палец на экране — слайды идут за ним без задержки */
.hero.is-dragging .hero-slide{transition:none}
.hero .container{position:relative;height:100%;display:flex;align-items:center}
.hero-text{position:relative;z-index:2;max-width:min(36vw,640px)}
.hero h1,.hero .hero-title{font-size:clamp(40px,4.2vw,78px);line-height:1.08;color:#2d2822;margin-bottom:.45em}
.hero .hero-title{font-size:clamp(34px,3.4vw,64px)}
.hero p{font-size:clamp(16px,1.2vw,21px);color:#4a433b;margin:0 0 1.5em;max-width:24em}
.hero .btn{min-height:clamp(46px,3.4vw,58px);padding:0 clamp(30px,2.6vw,46px);font-size:clamp(17px,1.2vw,20px)}
.hero-chars{
  --cy:0;
  position:absolute;z-index:1;bottom:0;right:var(--pad);
  height:100%;width:auto;max-width:66%;object-fit:contain;object-position:right bottom;
}
/* 2-й слайд: персонажи VK подняты к центру баннера, целиком в кадре */
.hero-slide--vk .hero-chars{--cy:-50%;top:50%;bottom:auto;transform:translate3d(0,-50%,0);height:84%;max-width:60%;object-position:right center;-webkit-mask-image:linear-gradient(180deg,#000 82%,transparent 100%);mask-image:linear-gradient(180deg,#000 82%,transparent 100%)}
.hero-slide--vk .hero-text{max-width:min(38vw,680px)}
.hero-slide.is-active .hero-text>*{animation:heroIn .8s var(--hero-ease) both}
.hero-slide.is-active .hero-text>*:nth-child(2){animation-delay:.1s}
.hero-slide.is-active .hero-text>*:nth-child(3){animation-delay:.2s}
.hero-slide.is-active .hero-chars{animation:heroChars 1.05s var(--hero-ease) both}
@keyframes heroIn{from{opacity:0;transform:translate3d(0,22px,0)}to{opacity:1;transform:none}}
@keyframes heroChars{from{opacity:0;transform:translate3d(9%,var(--cy,0),0) scale(1.06)}
  to{opacity:1;transform:translate3d(0,var(--cy,0),0) scale(1)}}
.hero-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(176,141,79,.35);background:rgba(255,255,255,.72);color:var(--bronze);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .25s ease, background .2s ease}
.hero:hover .hero-arrow,.hero-arrow:focus-visible{opacity:1}
.hero-arrow:hover{background:#fff}
.hero-arrow svg{width:22px;height:22px}
.hero-arrow.prev{left:12px}
.hero-arrow.next{right:12px}
.hero-dots{position:absolute;z-index:5;left:50%;bottom:clamp(12px,1.4vw,22px);transform:translateX(-50%);display:flex;gap:10px}
.hero-dots button{position:relative;width:10px;height:10px;padding:0;border-radius:999px;border:1px solid var(--bronze);background:rgba(255,255,255,.8);cursor:pointer;transition:width .3s ease, background .3s ease}
.hero-dots button::after{content:"";position:absolute;inset:-14px -8px}
.hero-dots button.is-active{width:30px;background:linear-gradient(180deg,#bf9d5f,#a8844a)}
@media (prefers-reduced-motion:reduce){
  .hero-slide,.hero-slide.is-active{transition:opacity .2s linear;transform:none!important;filter:none!important}
  .hero-slide.is-active .hero-text>*,.hero-slide.is-active .hero-chars{animation:none}
}

/* ===== Преимущества ===== */
.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,40px);padding-block:clamp(18px,1.8vw,30px);border-bottom:1px solid var(--line)}
.feature{display:flex;gap:14px;align-items:flex-start;justify-content:center}
.feature .ico{width:clamp(48px,3.6vw,62px);height:clamp(48px,3.6vw,62px);border-radius:50%;background:#fff;box-shadow:0 3px 12px rgba(120,90,40,.12);color:var(--bronze);display:flex;align-items:center;justify-content:center;flex:none}
.feature .ico svg{width:46%;height:46%}
.feature h3{font-size:clamp(15px,1.05vw,18px);color:var(--gold-text);margin:2px 0 4px}
.feature p{margin:0;font-size:clamp(13px,.9vw,15px);color:var(--ink-soft);line-height:1.35}

/* ===== Каталог персонажей ===== */
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,24px)}
.cat-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #f1eadf;overflow:hidden;text-align:center;transition:transform .15s ease, box-shadow .15s ease}
.cat-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(90,70,40,.12)}
.pic{position:relative;overflow:hidden}
.pic img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.cat-card .pic{aspect-ratio:1.7/1;margin:10px 10px 0}
.cat-card h3{font-size:clamp(15px,1.1vw,19px);padding:8px 8px 12px;color:var(--ink)}

/* ===== Сошьём костюм ===== */
.custom-order{display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,.8vw,14px);align-items:stretch}
.custom-order .photo{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);min-height:100%}
.custom-order .photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.9/1}
.custom-order .panel{
  position:relative;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;
  background:linear-gradient(120deg,#fbf8f3 0%,#f6efe6 100%);
  display:flex;align-items:center;padding:clamp(24px,3vw,56px);
}
.custom-order .panel .text{position:relative;z-index:2;max-width:58%}
.custom-order h2{font-size:clamp(28px,2.6vw,46px);line-height:1.12;margin-bottom:.5em}
.custom-order p{color:var(--ink-soft);font-size:clamp(14px,1vw,17px);margin:0 0 1.4em}
.custom-order .dress{position:absolute;z-index:1;right:clamp(10px,4%,70px);bottom:6%;height:88%;width:auto;max-width:40%;object-fit:contain}

/* ===== Хиты продаж ===== */
.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.4vw,24px)}
.product-card{position:relative;background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(10px,1vw,16px);text-align:center;display:flex;flex-direction:column;transition:transform .15s ease, box-shadow .15s ease}
.product-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(90,70,40,.12)}
.product-card .pic{aspect-ratio:1/1;margin:6px 0 10px;cursor:pointer}
.fav{position:absolute;top:12px;right:14px;width:30px;height:30px;background:none;border:none;color:#a79c8c;cursor:pointer;padding:0;z-index:2}
.fav svg{width:100%;height:100%;fill:none}
.fav.on{color:#c9737f}
.fav.on svg{fill:currentColor}
.product-card h3{font-size:clamp(14px,1vw,17px);margin-bottom:2px;min-height:2.6em;display:flex;align-items:center;justify-content:center;line-height:1.25}
.product-card .price{font-size:clamp(16px,1.15vw,20px);margin-bottom:10px;color:var(--ink)}
/* Скидка: старая цена зачёркнута и стоит перед новой, новая цена малиновая, бейдж на картинке */
.price-old{color:#a39888;font-weight:400;text-decoration-thickness:1px;text-decoration-color:rgba(163,152,136,.85)}
.product-card .price{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:0 8px}
.product-card .price-old{font-size:.78em}
.product-card.is-sale .price-now,.pp-price.is-sale .price-now{color:#c2415a;font-weight:600}
.sale-badge{position:absolute;z-index:2;top:12px;left:14px;display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:linear-gradient(135deg,#ec7386,#c9405a);color:#fff;font-size:13px;font-weight:600;letter-spacing:.02em;line-height:1;box-shadow:0 4px 10px rgba(201,64,90,.3);pointer-events:none}
.sale-badge--inline{position:static;height:24px;font-size:13px;box-shadow:none;align-self:center}
.product-card .btn{width:100%;margin-top:auto}
/* Карточка «с выходом за рамку»: белая рамка начинается ниже, голова персонажа над ней */
.product-card.pop{background:none;border-color:transparent;box-shadow:none;isolation:isolate}
.product-card.pop::before{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;top:var(--pop-top,34%);background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);box-shadow:var(--shadow);transition:box-shadow .15s ease}
.product-card.pop:hover{box-shadow:none}
.product-card.pop:hover::before{box-shadow:0 10px 26px rgba(90,70,40,.12)}
.product-card.pop .pic{overflow:visible}
.product-card.pop .pic img{transform:scale(1.1);transform-origin:center bottom;filter:drop-shadow(0 8px 10px rgba(60,40,20,.14))}
.product-card.pop .fav{top:calc(var(--pop-top,34%) + 12px)}
/* Облачко: пушистый верх и волнистый низ одной рамкой, над облачком видна только голова.
   Размеры считаются от ширины карточки (cqw), поэтому форма одинаковая на любом экране */
.product-card.cloud{container-type:inline-size;--cp:clamp(10px,1vw,16px);--u:calc((100cqw + 2 * var(--cp)) / 100);padding:var(--cp) var(--cp) calc(var(--cp) + 12px)}
.product-card.cloud::before{top:calc(var(--u) * 22);border:none;border-radius:0;box-shadow:none;background:
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 92'%3E%3Cpath d='M0.5 92 V74 A18 18 0 0 1 26 56 A25 25 0 0 1 66 40 A45 45 0 0 1 154 40 A25 25 0 0 1 194 56 A18 18 0 0 1 219.5 74 V92 Z' fill='%23fff'/%3E%3Cpath d='M0.5 92 V74 A18 18 0 0 1 26 56 A25 25 0 0 1 66 40 A45 45 0 0 1 154 40 A25 25 0 0 1 194 56 A18 18 0 0 1 219.5 74 V92' fill='none' stroke='%23e2cda6' stroke-width='1' stroke-linejoin='round'/%3E%3C/svg%3E") center top/100% auto no-repeat,
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 26'%3E%3Cpath d='M0.5 0 V4 A20 20 0 0 0 28 16 A36 36 0 0 0 74 17 A90 90 0 0 0 146 17 A36 36 0 0 0 192 16 A20 20 0 0 0 219.5 4 V0 Z' fill='%23fff'/%3E%3Cpath d='M0.5 0 V4 A20 20 0 0 0 28 16 A36 36 0 0 0 74 17 A90 90 0 0 0 146 17 A36 36 0 0 0 192 16 A20 20 0 0 0 219.5 4 V0' fill='none' stroke='%23e2cda6' stroke-width='1' stroke-linejoin='round'/%3E%3C/svg%3E") center bottom/100% auto no-repeat,
  linear-gradient(90deg,#e2cda6 0 calc(var(--u) * .4545),#fff 0 calc(100% - var(--u) * .4545),#e2cda6 0) 0 calc(var(--u) * 37.82)/100% calc(100% - var(--u) * 46.64) no-repeat;
  filter:drop-shadow(0 6px 12px rgba(90,70,40,.10));transition:filter .15s ease}
.product-card.cloud:hover::before{box-shadow:none;filter:drop-shadow(0 10px 18px rgba(90,70,40,.16))}
.product-card.cloud .pic img{transform:scale(1.04)}
.product-card.cloud .fav{top:calc(var(--u) * 49);right:calc(var(--u) * 8)}
.product-card.pop .sale-badge{top:calc(var(--pop-top,34%) + 14px)}
.product-card.cloud .sale-badge{top:calc(var(--u) * 50);left:calc(var(--u) * 8);height:calc(var(--u) * 11);min-height:20px;max-height:26px;font-size:clamp(11px,calc(var(--u) * 5.6),13px);padding:0 clamp(7px,calc(var(--u) * 4.5),10px)}

/* Карусель хитов */
.hits{position:relative}
.product-grid.hits-track{--vis:5;--gap:clamp(12px,1.4vw,24px);grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--vis) - 1) * var(--gap)) / var(--vis));gap:var(--gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:10px 2px 18px;cursor:grab}
.hits-track::-webkit-scrollbar{display:none}
.hits-track>*{scroll-snap-align:start}
.hits-track.is-dragging,.video-row.is-dragging{cursor:grabbing;scroll-snap-type:none}
.hits-track.is-dragging *,.video-row.is-dragging *{pointer-events:none}
.hits-arrow{position:absolute;z-index:3;top:42%;width:44px;height:44px;border-radius:50%;border:1px solid rgba(176,141,79,.35);background:#fff;box-shadow:0 4px 14px rgba(90,70,40,.12);cursor:pointer;transition:background .2s ease}
.hits-arrow::before{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;border:solid var(--bronze);border-width:0 2px 2px 0;transform:translate(-30%,-50%) rotate(135deg)}
.hits-arrow.next::before{transform:translate(-70%,-50%) rotate(-45deg)}
.hits-arrow:hover{background:#fbf6ee}
.hits-arrow.prev{left:-22px}
.hits-arrow.next{right:-22px}
.hero.is-dragging{cursor:grabbing;user-select:none}

/* ===== Видеообзоры ===== */
.video-section{padding-bottom:clamp(28px,3.4vw,52px)}
.section-sub{text-align:center;color:var(--ink-soft);font-size:clamp(14px,1vw,17px);margin:calc(-1 * clamp(8px,.9vw,16px)) 0 clamp(16px,1.6vw,26px)}
.video-row{--vis:7;--gap:clamp(12px,1.4vw,24px);display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--vis) - 1) * var(--gap)) / var(--vis));gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 12px}
.video-row::-webkit-scrollbar{display:none}
.video-card{position:relative;display:block;padding:0;border:1px solid #efe6d8;border-radius:var(--radius);overflow:hidden;cursor:pointer;background:#f6eee2;aspect-ratio:9/16;scroll-snap-align:start;box-shadow:var(--shadow);font-family:inherit;transition:transform .2s ease, box-shadow .2s ease}
.video-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.video-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(92,64,32,0) 66%,rgba(92,64,32,.5) 88%,rgba(72,48,22,.72) 100%);pointer-events:none}
.video-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(90,70,40,.18)}
.video-card:hover img{transform:scale(1.05)}
.video-card .play{position:absolute;z-index:2;left:50%;top:50%;width:clamp(54px,3.6vw,66px);height:clamp(54px,3.6vw,66px);transform:translate(-50%,-50%);border-radius:50%;background:linear-gradient(180deg,#cfae6e,#a8844a);box-shadow:0 6px 18px rgba(120,85,35,.45);transition:transform .2s ease}
.video-card .play::before{content:"";position:absolute;left:54%;top:50%;transform:translate(-50%,-50%);border-style:solid;border-width:10px 0 10px 16px;border-color:transparent transparent transparent #fff}
.video-card .play::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:1.5px solid rgba(255,255,255,.75);animation:vpulse 2.4s ease-out infinite}
.video-card:hover .play{transform:translate(-50%,-50%) scale(1.08)}
@keyframes vpulse{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.video-card .name{position:absolute;z-index:2;left:8px;right:8px;bottom:clamp(10px,1vw,16px);text-align:center;color:#fff;font-size:clamp(15px,1.05vw,19px);text-shadow:0 1px 6px rgba(0,0,0,.35)}
.section-more{text-align:center;margin-top:8px}
.section-more a{color:var(--gold-text);font-size:16px;border-bottom:1px solid rgba(194,154,85,.4);padding-bottom:1px}
.section-more a:hover{color:var(--bronze-2)}
.video-modal{position:fixed;inset:0;z-index:100;background:rgba(40,30,18,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px}
.video-modal[hidden]{display:none}
.video-modal__box{position:relative;height:min(86vh,860px);aspect-ratio:9/16;max-width:100%;border-radius:16px;overflow:hidden;background:#000;border:2px solid #cfae6e;box-shadow:0 20px 60px rgba(0,0,0,.45)}
/* Плеер видеообзоров */
.vp-video{width:100%;height:100%;display:block;object-fit:cover;background:#f0e8dc;cursor:pointer}
.vp-center{position:absolute;z-index:2;left:50%;top:50%;width:78px;height:78px;margin:-39px 0 0 -39px;border-radius:50%;border:none;padding:0;cursor:pointer;background:linear-gradient(180deg,#cfae6e,#a8844a);box-shadow:0 8px 24px rgba(80,55,20,.45);opacity:0;transform:scale(.8);pointer-events:none;transition:opacity .25s ease, transform .25s ease}
.vp-center::before{content:"";position:absolute;left:55%;top:50%;transform:translate(-50%,-50%);border-style:solid;border-width:13px 0 13px 21px;border-color:transparent transparent transparent #fff}
.video-modal__box.is-paused .vp-center{opacity:1;transform:none;pointer-events:auto}
.video-modal__box.flash:not(.is-paused)::after{content:"";position:absolute;z-index:2;left:50%;top:50%;width:78px;height:78px;margin:-39px 0 0 -39px;border-radius:50%;pointer-events:none;
  background:rgba(40,28,14,.45) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='6' y='5' width='4' height='14' rx='1' fill='%23fff'/%3E%3Crect x='14' y='5' width='4' height='14' rx='1' fill='%23fff'/%3E%3C/svg%3E") center/34px no-repeat;animation:vpFlash .6s ease forwards}
@keyframes vpFlash{from{opacity:1;transform:scale(.85)}to{opacity:0;transform:scale(1.25)}}
.vp-bar{position:absolute;z-index:2;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:34px 14px 14px;color:#fff;font-size:14px;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,rgba(30,20,8,0),rgba(30,20,8,.62));transition:opacity .3s ease}
.video-modal__box.is-idle .vp-bar,.video-modal__box.is-idle .video-modal__close{opacity:0}
.video-modal__box.is-idle{cursor:none}
.video-modal__close{transition:opacity .3s ease}
.vp-btn{flex:none;width:34px;height:34px;padding:0;border:none;border-radius:50%;cursor:pointer;background:rgba(255,255,255,.16) center/18px no-repeat}
.vp-btn:hover{background-color:rgba(207,174,110,.55)}
.vp-toggle{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='6' y='5' width='4' height='14' rx='1' fill='%23fff'/%3E%3Crect x='14' y='5' width='4' height='14' rx='1' fill='%23fff'/%3E%3C/svg%3E")}
.is-paused .vp-toggle{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5.5v13l11-6.5z' fill='%23fff'/%3E%3C/svg%3E")}
.vp-mute{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9h4l5-4v14l-5-4H4z' fill='%23fff'/%3E%3Cpath d='M16.5 8.5a5 5 0 0 1 0 7M19 6a8.5 8.5 0 0 1 0 12'/%3E%3C/svg%3E")}
.is-muted .vp-mute{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9h4l5-4v14l-5-4H4z' fill='%23fff'/%3E%3Cpath d='M17 9.5l5 5M22 9.5l-5 5'/%3E%3C/svg%3E")}
.vp-full{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 9V4h5M15 4h5v5M20 15v5h-5M9 20H4v-5'/%3E%3C/svg%3E")}
.vp-progress{position:relative;flex:1;height:18px;cursor:pointer;touch-action:none}
.vp-progress::before,.vp-buf,.vp-fill{content:"";position:absolute;left:0;top:50%;height:4px;margin-top:-2px;border-radius:4px}
.vp-progress::before{right:0;background:rgba(255,255,255,.28)}
.vp-buf{width:0;background:rgba(255,255,255,.4)}
.vp-fill{width:0;background:linear-gradient(90deg,#e2c68d,#cfae6e)}
.vp-fill::after{content:"";position:absolute;right:-7px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px rgba(207,174,110,.55)}
.vp-progress:focus-visible{outline:2px solid #e2c68d;outline-offset:2px;border-radius:4px}
.video-modal__box:fullscreen{height:100%;border:none;border-radius:0;aspect-ratio:auto;background:#000}
.video-modal__box:fullscreen .vp-video{object-fit:contain;background:#000}
.video-modal__close{position:absolute;z-index:2;top:10px;right:10px;width:40px;height:40px;border-radius:50%;border:none;background:linear-gradient(180deg,#cfae6e,#a8844a);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
@media (prefers-reduced-motion:reduce){.video-card .play::after{animation:none}}

/* ===== Блог ===== */
.blog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,24px)}
.blog-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #f1eadf;overflow:hidden;display:flex;flex-direction:column}
.blog-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:transform .4s ease}
.blog-card:hover img{transform:scale(1.03)}
.blog-card .body{padding:clamp(12px,1.1vw,18px) clamp(14px,1.2vw,20px);display:flex;flex-direction:column;flex:1;position:relative;background:#fff}
.blog-card h3{font-size:clamp(16px,1.15vw,20px);line-height:1.25;margin-bottom:10px;flex:1}
.blog-card__rubric{display:block;font-size:13px;color:var(--gold-text);margin-bottom:6px}
.blog-card__meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-bottom:8px;font-size:13px;color:#8a7f71}
.blog-card__meta .pm-ico{width:14px;height:14px}
.blog-all{text-align:center;margin:clamp(18px,1.6vw,28px) 0 0}
.blog-all .btn.outline{min-height:44px;font-size:16px;padding:0 28px}
.more{color:var(--gold-text);font-size:14px;display:inline-flex;align-items:center;gap:6px}

/* ===== Отзывы (отдельный блок) ===== */
.reviews-row{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,24px);align-items:stretch}
.review{background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(16px,1.4vw,26px)}
.review-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(180deg,#e2c690,#b99452);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.review .who{font-size:clamp(16px,1.1vw,19px);line-height:1.2}
.review .date{font-size:13px;color:#958b7e}
.review .stars{color:#e0a93b;letter-spacing:1px;font-size:17px;margin-bottom:4px}
.review .stars span{color:#6f675d;letter-spacing:0;font-size:15px;margin-left:4px}
.review .item,.review .delivery{font-size:15px;color:#857b6e}
.review .label{font-size:16px;margin:10px 0 4px}
.review p{margin:0;font-size:clamp(14px,1vw,16px);color:var(--ink);line-height:1.5}
/* видеоотзыв: круглое видео покупателя + подпись */
.reviews-row{grid-template-columns:repeat(5,1fr)}
.review--video{display:flex;flex-direction:column;background:radial-gradient(110% 70% at 50% 0,#fff 0,rgba(255,255,255,0) 70%),linear-gradient(180deg,#fbf6ee,#f3e8d6)}
.review-clip.video-card{width:min(100%,260px);margin:0 auto 16px;aspect-ratio:1;border-radius:50%;border:3px solid #cfae6e;scroll-snap-align:none;flex:none}
.review-clip.video-card::after{background:none}
.review-clip.video-card:hover{transform:translateY(-3px)}
@media (max-width:1400px){
  .reviews-row{grid-template-columns:repeat(3,1fr)}
  .review--video{grid-row:span 2;justify-content:center}
}
/* ===== FAQ (отдельный блок) ===== */
/* ===== Частые вопросы: карточки-аккордеон + блок «Не нашли ответ?» ===== */
.faq-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.46fr);gap:clamp(16px,1.6vw,28px);max-width:1500px;margin:0 auto;align-items:stretch}
.faq-list{display:flex;flex-direction:column;gap:12px}
.faq-item{background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);box-shadow:var(--shadow);transition:border-color .2s ease, box-shadow .2s ease}
.faq-item:hover{border-color:#e2cda6}
.faq-item[open]{border-color:#e2cda6;box-shadow:0 10px 26px rgba(90,70,40,.10)}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:clamp(12px,1.2vw,20px);padding:clamp(14px,1.2vw,20px) clamp(16px,1.5vw,26px)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-num{flex:none;font-size:clamp(15px,1.05vw,18px);color:var(--gold-text);min-width:1.6em}
.faq-q{flex:1;font-size:clamp(16px,1.15vw,20px);line-height:1.3}
.faq-ico{flex:none;position:relative;width:34px;height:34px;border-radius:50%;border:1px solid #e2cda6;background:var(--cream);transition:background .2s ease, border-color .2s ease, transform .25s ease}
.faq-ico::before,.faq-ico::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:var(--bronze);border-radius:1px;transition:transform .25s ease, background .2s ease}
.faq-ico::after{transform:rotate(90deg)}
.faq-item[open] .faq-ico{background:linear-gradient(180deg,#cfae6e,#a8844a);border-color:transparent;transform:rotate(180deg)}
.faq-item[open] .faq-ico::before,.faq-item[open] .faq-ico::after{background:#fff}
.faq-item[open] .faq-ico::after{transform:rotate(0deg)}
.faq-a{padding:0 clamp(16px,1.5vw,26px) clamp(16px,1.3vw,22px) calc(clamp(16px,1.5vw,26px) + 1.6em * 1.05 + clamp(12px,1.2vw,20px))}
.faq-a p{margin:0;padding-top:12px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:clamp(14px,1vw,17px);line-height:1.6}
.faq-item[open] .faq-a{animation:faqIn .3s ease}
@keyframes faqIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.faq-help{position:relative;overflow:hidden;border-radius:var(--radius);border:1px solid #efe6d8;box-shadow:var(--shadow);background:radial-gradient(120% 90% at 85% 100%,#fff 0,rgba(255,255,255,0) 60%),linear-gradient(160deg,#fbf6ee,#f1e4d0);padding:clamp(22px,2vw,34px);padding-right:40%}
.faq-help h3{font-size:clamp(22px,1.7vw,30px);margin-bottom:10px;white-space:nowrap}
.faq-help p{margin:0 0 18px;max-width:17em;color:var(--ink-soft);font-size:clamp(14px,1vw,17px);line-height:1.55}
.faq-phone{display:block;font-size:clamp(18px,1.3vw,22px);color:var(--bronze-2);margin-bottom:16px;white-space:nowrap}
.faq-phone:hover{color:var(--bronze)}
.faq-help .btn{width:auto;padding-inline:22px;white-space:nowrap}
.faq-help__pic{position:absolute;right:2%;bottom:0;height:88%;width:auto;max-width:42%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 8px 12px rgba(60,40,20,.14));pointer-events:none}
@media (max-width:1100px){
  .faq-grid{grid-template-columns:1fr;max-width:820px}
  .faq-help{min-height:260px}
  .faq-help__pic{height:100%}
}
@media (prefers-reduced-motion:reduce){.faq-item[open] .faq-a{animation:none}.faq-ico,.faq-ico::before,.faq-ico::after{transition:none}}

/* ===== Подвал (светлый, как в оригинале) ===== */
.site-footer{background:var(--footer);color:var(--ink);padding-block:clamp(28px,3vw,48px) 18px;margin-top:clamp(24px,3vw,44px)}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1.1fr 1.5fr;gap:clamp(16px,2vw,36px)}
.footer-logo{font-size:clamp(34px,2.6vw,46px)}
.footer-tag{color:var(--gold-text);font-size:15px;margin:6px 0 14px}
.site-footer h4{font-size:16px;margin-bottom:10px;padding-bottom:2px;border-bottom:1px solid #d8c7ab;display:inline-block}
.site-footer .col a,.site-footer .col span{display:block;font-size:14px;color:#5e564c;padding:3px 0}
.site-footer .col a:hover{color:var(--bronze)}
.social-row{display:flex;gap:10px}
.social-row a{width:40px;height:40px;border-radius:50%;background:linear-gradient(180deg,#cfae6e,#a8844a);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px rgba(160,120,60,.3)}
.social-row a:hover{filter:brightness(1.08)}
.social-row svg{width:22px;height:22px}
.newsletter h4{border:none;font-size:clamp(20px,1.6vw,26px);margin-bottom:4px}
.newsletter p{font-size:14px;color:#5e564c;margin:0 0 12px}
.newsletter input{width:100%;height:44px;padding:0 16px;border-radius:8px;border:1px solid #e3d6c1;background:#fff;font-size:15px;margin-bottom:12px;color:var(--ink)}
.newsletter .btn{width:100%;border-radius:8px}
.footer-bottom{border-top:1px solid #dfd0b8;margin-top:clamp(20px,2.4vw,36px);padding-top:14px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#8a8074;font-size:13px}

/* ===== Адаптив ===== */
@media (max-width:1280px){
  .video-row{--vis:5}
  .main-nav{gap:18px}
  .footer-grid{grid-template-columns:repeat(4,1fr)}
  .footer-brand{grid-column:span 2}
  .newsletter{grid-column:span 2}
}
@media (max-width:1100px){
  .hero-text{max-width:44vw}
  .hero-chars{max-width:60%}
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .product-grid.hits-track{--vis:3}
  .custom-order{grid-template-columns:1fr}
  .custom-order .photo img{aspect-ratio:2.2/1}
  .reviews-row{grid-template-columns:repeat(2,1fr)}
  .review--video{grid-row:auto;grid-column:1/-1;flex-direction:row;align-items:center;gap:clamp(16px,3vw,32px)}
  .review--video .review-clip.video-card{width:clamp(150px,26vw,220px);margin:0}
}
@media (max-width:960px){
  .video-row{--vis:3.4}
  .main-nav{display:none}
  .burger{display:block}
  .mobile-nav:not([hidden]){display:block}
  .features-grid{grid-template-columns:repeat(2,1fr)}
  .feature{justify-content:flex-start}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .blog-grid{grid-template-columns:repeat(2,1fr)}
  .reviews-row{grid-template-columns:1fr;max-width:640px;margin:0 auto}
}
@media (max-width:520px){
  .faq-help__pic{height:74%;max-width:36%;right:-2%}
  .faq-help{padding-right:36%}
  .review--video{flex-direction:column;align-items:stretch}
  .review--video .review-clip.video-card{width:min(78%,240px);margin:0 auto 14px}
}
@media (max-width:760px){
  .hero{height:auto;padding-top:28px;--hero-blur:0px;--hero-dur:.72s;--hero-off:100%}
  .hero .container{flex-direction:column;align-items:stretch;justify-content:center}
  .hero-text{max-width:none;text-align:center}
  .hero p{margin-inline:auto}
  .hero-chars{position:relative;right:auto;height:auto;width:100%;max-width:none;margin-top:18px}
  .hero-slide--vk .hero-chars{--cy:0;top:auto;transform:none;height:auto;max-width:none;margin-block:18px 0}
  .hero-slide--vk .hero-text{max-width:none}
  .hero .hero-title{font-size:clamp(28px,7.4vw,40px)}
  .hero-track{padding-bottom:34px}
  .hero-arrow{display:none}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .product-grid.hits-track{--vis:2.5}
  .hits-arrow{display:none}
  .custom-order .panel{flex-direction:column;align-items:stretch;padding-bottom:0}
  .custom-order .panel .text{max-width:none;text-align:center}
  .custom-order .dress{position:relative;right:auto;bottom:auto;height:260px;max-width:none;margin:16px auto 0}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-bottom{justify-content:center;text-align:center}
}
@media (max-width:520px){
  .video-row{--vis:2.2}
  .header-actions{gap:12px}
  .icon-btn{width:23px;height:23px}
  .features-grid{grid-template-columns:1fr;gap:14px}
  .cat-grid{gap:10px}
  .cat-card h3{font-size:15px;padding:6px 4px 10px}
  .product-grid{gap:10px}
  .product-grid.hits-track{--vis:1.75;--gap:12px;margin-inline:calc(-1 * var(--pad));padding-inline:var(--pad);scroll-padding-inline:var(--pad)}
  .product-card .btn{font-size:14px;padding:0 8px}
  .fav{width:24px;height:24px;top:8px;right:8px}
  .blog-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-brand,.newsletter{grid-column:auto}
  .btn{padding:0 24px}
}

/* ===== Хлебные крошки ===== */
.crumbs{padding-block:clamp(12px,1.2vw,20px) 0}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0;font-size:14px;color:#958b7e}
.crumbs li+li::before{content:"/";margin:0 8px;color:#cdbb9c}
.crumbs a{color:var(--ink-soft)}
.crumbs a:hover{color:var(--bronze)}
.crumbs [aria-current]{color:var(--ink)}

/* ===== Каталог ===== */
.catalog-head{padding-block:clamp(14px,1.6vw,28px) clamp(18px,1.8vw,30px);text-align:center}
.catalog-head h1{font-size:clamp(30px,3vw,52px);line-height:1.12;margin-bottom:.3em}
.catalog-intro{max-width:46em;margin:0 auto;color:var(--ink-soft);font-size:clamp(15px,1.05vw,18px);line-height:1.55}
.cat-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 10px;margin-bottom:clamp(16px,1.6vw,26px)}
.cat-chips a{padding:8px 18px;border-radius:999px;border:1px solid #e2cda6;background:#fff;font-size:15px;color:var(--ink);white-space:nowrap;transition:background .2s ease, border-color .2s ease}
.cat-chips a:hover{background:var(--cream);border-color:#d3b27a}
.cat-chips a.is-active{background:linear-gradient(180deg,#bf9d5f,#a8844a);border-color:transparent;color:#fff}
.cat-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;padding:12px 0;margin-bottom:clamp(8px,1vw,16px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px}
.cat-count{margin-right:auto;color:var(--ink-soft)}
.cat-stock{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}
.cat-stock input,.consent input{width:18px;height:18px;margin:0;accent-color:var(--bronze);flex:none}
.cat-sort{display:inline-flex;align-items:center;gap:8px;color:var(--ink-soft)}
.cat-sort select,.field select{font:inherit;color:var(--ink);height:38px;padding:0 34px 0 14px;border-radius:999px;border:1px solid #e2cda6;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23b08d4f' stroke-width='1.6'/%3E%3C/svg%3E") right 13px center/11px no-repeat;-webkit-appearance:none;appearance:none;cursor:pointer}
.catalog-grid{row-gap:clamp(18px,2vw,34px);padding-top:10px}
.product-card[hidden]{display:none}
.cat-empty{text-align:center;color:var(--ink-soft);font-size:16px;padding:30px 0}
.cat-cta{position:relative;overflow:hidden;display:flex;align-items:center;min-height:clamp(220px,17vw,300px);margin-top:clamp(12px,1.6vw,26px);padding:clamp(22px,2.4vw,44px) clamp(22px,3vw,56px);border-radius:var(--radius);border:1px solid #efe6d8;box-shadow:var(--shadow);background:radial-gradient(90% 120% at 90% 100%,#fff 0,rgba(255,255,255,0) 60%),linear-gradient(120deg,#fbf6ee,#f1e4d0);max-width:1500px;width:calc(100% - 2 * var(--pad))}
.cat-cta__text{position:relative;z-index:2;max-width:min(60%,640px)}
.cat-cta h2{font-size:clamp(24px,2.1vw,38px);line-height:1.15;margin-bottom:.4em}
.cat-cta p{margin:0 0 1.2em;color:var(--ink-soft);font-size:clamp(14px,1vw,17px);line-height:1.55}
.cat-cta__btns{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.cat-cta__phone{font-size:clamp(18px,1.3vw,22px);color:var(--bronze-2);white-space:nowrap}
.cat-cta__phone:hover{color:var(--bronze)}
.cat-cta__pic{position:absolute;right:clamp(10px,5%,90px);bottom:0;height:92%;width:auto;max-width:36%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 8px 12px rgba(60,40,20,.14));pointer-events:none}

/* ===== Карточка товара ===== */
.pp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,60px);align-items:start;max-width:calc(1400px + 2 * var(--pad));padding-block:clamp(16px,1.6vw,28px) clamp(20px,2.4vw,40px)}
.pp-gallery{display:grid;grid-template-columns:clamp(64px,5.4vw,96px) minmax(0,1fr);gap:clamp(10px,1vw,16px);position:sticky;top:calc(clamp(74px,5.4vw,96px) + 16px)}
.pp-main{grid-column:2;grid-row:1;aspect-ratio:3/4;border-radius:var(--radius);overflow:hidden;background:radial-gradient(80% 70% at 50% 40%,#fff 0,rgba(255,255,255,0) 70%),var(--cream-2);border:1px solid #efe6d8}
.pp-main img{width:100%;height:100%;object-fit:contain}
.pp-thumbs{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:10px}
.pp-thumb,.pp-thumbs .pp-vthumb{width:100%;aspect-ratio:3/4;padding:0;border-radius:10px;overflow:hidden;cursor:pointer;background:var(--cream-2);border:1.5px solid #efe6d8;box-shadow:none;flex:none;scroll-snap-align:none;transition:border-color .2s ease}
.pp-thumb img{width:100%;height:100%;object-fit:cover}
.pp-thumb:hover{border-color:#e2cda6}
.pp-thumb.is-active{border-color:var(--bronze)}
.pp-thumbs .pp-vthumb:hover{transform:none;box-shadow:none;border-color:#e2cda6}
.pp-thumbs .pp-vthumb .play{width:30px;height:30px}
.pp-thumbs .pp-vthumb .play::before{border-width:6px 0 6px 10px}
.pp-thumbs .pp-vthumb .play::after{inset:-4px}
.pp-thumbs .pp-vthumb .name{font-size:13px;bottom:6px}
.pp-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.pp-badges:empty{display:none}
.pp-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;font-size:14px;background:var(--cream-2);color:var(--ink-soft);border:1px solid #eadcc4}
.pp-badge--ok{background:#eef5e8;border-color:#d4e5c6;color:#4f7a3a}
.pp-badge--ok::before{content:"";width:7px;height:7px;border-radius:50%;background:#6a9c52;margin-right:7px}
.pp-badge--sale{background:#f8e9ea;border-color:#efd2d5;color:#a4505c}
.pp-info h1{font-size:clamp(28px,2.4vw,44px);line-height:1.12;margin-bottom:.35em}
.pp-price{font-size:clamp(24px,1.9vw,34px);color:var(--ink);line-height:1.2}
.pp-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.pp-price .price-old{font-size:.62em}
.price-save{align-self:center;font-size:14px;color:#a4505c;background:#f8e9ea;border:1px solid #efd2d5;border-radius:999px;padding:3px 10px;line-height:1.2}
.order-item .price-save{display:none}
.pp-lead{margin:14px 0 0;color:var(--ink-soft);font-size:clamp(15px,1.05vw,18px);line-height:1.55}
.pp-sizes{border:none;margin:20px 0 0;padding:0;min-width:0}
.pp-sizes legend{padding:0;margin-bottom:10px;font-size:16px}
.size-list{display:flex;flex-wrap:wrap;gap:8px}
.size-chip{position:relative;cursor:pointer}
.size-chip input{position:absolute;opacity:0;pointer-events:none}
.size-chip span{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:10px;border:1.5px solid #e6d6ba;background:#fff;font-size:15px;transition:border-color .2s ease, background .2s ease}
.size-chip:hover span{border-color:#d3b27a}
.size-note{display:block;margin-top:12px;max-width:340px;font-size:14px;color:var(--ink-soft)}
.size-note span{display:block;margin-bottom:6px}
.size-note input{width:100%;font:inherit;font-size:16px;color:var(--ink);height:46px;padding:10px 14px;border-radius:10px;border:1px solid #e3d6c1;background:#fff;transition:border-color .2s ease, box-shadow .2s ease}
.size-note input:focus{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(176,141,79,.18)}
.size-note input.is-bad{border-color:#c9737f;box-shadow:0 0 0 3px rgba(201,115,127,.18)}
.size-hint{margin:10px 0 0;font-size:14px;line-height:1.5;color:var(--ink-soft)}
.cart-item__note{display:block;margin-top:10px;max-width:260px;font-size:13px;color:var(--ink-soft)}
.cart-item__note span{display:block;margin-bottom:4px}
.cart-item__note input{width:100%;font:inherit;font-size:15px;color:var(--ink);height:36px;padding:0 12px;border-radius:999px;border:1px solid #e2cda6;background:#fff}
.cart-item__note input:focus{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(176,141,79,.18)}
.size-chip input:checked+span{border-color:var(--bronze);background:#fbf3e4;box-shadow:inset 0 0 0 1px var(--bronze)}
.size-chip input:focus-visible+span{outline:2px solid var(--bronze);outline-offset:2px}
.pp-actions{display:flex;align-items:center;gap:12px;margin-top:24px}
.pp-actions .btn{min-height:54px;font-size:19px;padding:0 44px}
.pp-actions .btn.outline{min-height:54px;font-size:17px;padding:0 28px}
.pp-fav.fav{position:static;flex:none;width:54px;height:54px;padding:13px;border-radius:50%;border:1.5px solid #e6d6ba;background:#fff}
.pp-fav.fav:hover{border-color:#d3b27a}
.pp-gift{margin:18px 0 0;padding:12px 16px;border-radius:10px;background:#fbf3e4;border:1px dashed #d9bd86;color:#7a6242;font-size:15px}
.pp-specs{margin:26px 0 0;border-top:1px solid var(--line)}
.pp-specs div{display:grid;grid-template-columns:minmax(110px,.4fr) 1fr;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}
.pp-specs dt{color:#958b7e;font-size:15px}
.pp-specs dd{margin:0;font-size:15px}
.pp-more{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:clamp(20px,3vw,60px);align-items:start;max-width:calc(1400px + 2 * var(--pad));padding-block:clamp(12px,1.6vw,28px)}
.pp-tabs{scroll-margin-top:96px}
.pp-tabs__list{display:flex;gap:clamp(18px,2.4vw,40px);margin-bottom:clamp(16px,1.6vw,26px);border-bottom:1px solid #eadfcd;overflow-x:auto;scrollbar-width:none}
.pp-tabs__list::-webkit-scrollbar{display:none}
.pp-tabs__list button{position:relative;flex:none;padding:0 0 12px;border:0;background:none;font:inherit;font-size:clamp(20px,1.6vw,28px);color:#a59a8b;cursor:pointer;transition:color .2s ease}
.pp-tabs__list button:hover{color:var(--ink)}
.pp-tabs__list button[aria-selected=true]{color:var(--ink)}
.pp-tabs__list button[aria-selected=true]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,#cfae6e,#a8844a)}
.pp-tabs__list button:focus-visible{outline:2px solid var(--bronze);outline-offset:4px;border-radius:4px}
.pp-ship h2{font-size:clamp(19px,1.4vw,24px);margin:24px 0 10px}
.pp-ship h2:first-child{margin-top:0}
.pp-table{overflow-x:auto}
.pp-table table{width:100%;border-collapse:collapse;font-size:clamp(15px,1vw,17px);line-height:1.5}
.pp-table th{text-align:left;font-weight:400;font-size:14px;color:#958b7e;padding:0 14px 8px 0;border-bottom:1px solid #eadfcd}
.pp-table td{padding:12px 14px 12px 0;border-bottom:1px solid #f0e8db;color:#4a433b;vertical-align:top}
.pp-table td:first-child{white-space:nowrap;color:var(--bronze-2);width:1%}
.pp-list,.pp-steps{margin:0;padding-left:1.3em;font-size:clamp(15px,1.05vw,18px);line-height:1.65;color:#4a433b}
.pp-list li,.pp-steps li{margin-bottom:6px}
.pp-list li::marker,.pp-steps li::marker{color:var(--bronze)}
.pp-steps a{color:var(--bronze-2);white-space:nowrap}
.pp-service__more{display:inline-block;margin-top:8px;font-size:15px;color:var(--bronze-2);text-decoration:underline;text-underline-offset:3px}
.pp-desc h2{font-size:clamp(22px,1.7vw,30px);margin-bottom:12px}
.pp-desc p{margin:0 0 12px;font-size:clamp(15px,1.05vw,18px);line-height:1.65;color:#4a433b}
.pp-set{margin:26px 0 8px}
.pp-set ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pp-set li{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 16px;border:1px solid #ece3d3;border-radius:12px;background:#fffdf9;font-size:16px;line-height:1.35}
.pp-set li::before{content:"";flex:0 0 22px;height:22px;border-radius:50%;background:#b08d4f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}
.pp-desc h2{margin-top:26px}
.pp-desc>h2:first-child{margin-top:0}
.pp-desc a{color:#9a7640;text-decoration:underline;text-underline-offset:3px}
.pp-faq{margin-top:26px}
.pp-faq__item{border-bottom:1px solid #ece3d3}
.pp-faq__item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;font-size:clamp(15px,1.05vw,18px);color:#2b2620}
.pp-faq__item summary::-webkit-details-marker{display:none}
.pp-faq__item summary::after{content:"+";flex:0 0 auto;font-size:22px;line-height:1;color:#b08d4f;transition:transform .2s}
.pp-faq__item[open] summary::after{transform:rotate(45deg)}
.pp-faq__item p{margin:0 0 14px}
@media (max-width:520px){.pp-set ul{grid-template-columns:1fr}}
.pp-service{display:flex;flex-direction:column;gap:18px;padding:clamp(18px,1.8vw,30px);border-radius:var(--radius);border:1px solid #efe6d8;background:linear-gradient(160deg,#fbf6ee,#f4e9d8);box-shadow:var(--shadow)}
.pp-service__item{display:flex;gap:14px;align-items:flex-start}
.pp-service__item svg{flex:none;width:44px;height:44px;padding:10px;border-radius:50%;background:#fff;color:var(--bronze);box-shadow:0 3px 10px rgba(120,90,40,.12)}
.pp-service h3{font-size:17px;color:var(--gold-text);margin:2px 0 4px}
.pp-service p{margin:0;font-size:15px;color:var(--ink-soft);line-height:1.5}
.related-grid{padding-top:10px}
@media (max-width:1100px) and (min-width:761px){.related-grid>:nth-child(n+4){display:none}}
@media (max-width:760px){.related-grid>:nth-child(n+5){display:none}}

/* ===== Модальные окна магазина ===== */
.es-modal{position:fixed;inset:0;z-index:110;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(40,30,18,.6);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;transition:opacity .2s ease}
.es-modal[hidden]{display:none}
.es-modal.is-open{opacity:1}
.es-modal__box{position:relative;width:100%;max-width:560px;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;border-radius:18px;background:#fff;border:1px solid #e2cda6;box-shadow:0 24px 70px rgba(40,25,10,.35);padding:clamp(20px,2.2vw,34px);transform:translateY(12px);transition:transform .25s ease}
.es-modal.is-open .es-modal__box{transform:none}
.es-modal__box--qv{max-width:980px}
.es-modal__close{position:absolute;z-index:3;top:12px;right:12px;width:40px;height:40px;border-radius:50%;border:none;background:var(--cream-2);color:var(--bronze-2);font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}
.es-modal__close:hover{background:#efe2cb}
.es-modal__close:focus{outline:none}
.es-modal__close:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--bronze)}
.qv{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(18px,2.4vw,36px)}
.qv-main{aspect-ratio:3/4;border-radius:var(--radius);overflow:hidden;background:radial-gradient(80% 70% at 50% 40%,#fff 0,rgba(255,255,255,0) 70%),var(--cream-2)}
.qv-main img{width:100%;height:100%;object-fit:contain}
.qv-thumbs{display:flex;gap:8px;margin-top:10px}
.qv-thumb{width:62px;aspect-ratio:3/4;padding:0;border-radius:8px;overflow:hidden;border:1.5px solid #efe6d8;background:var(--cream-2);cursor:pointer}
.qv-thumb img{width:100%;height:100%;object-fit:cover}
.qv-thumb.is-active{border-color:var(--bronze)}
.qv-info{padding-top:6px;padding-right:34px;display:flex;flex-direction:column}
.qv-title{font-size:clamp(24px,2vw,34px);line-height:1.15;margin-bottom:.35em}
.qv-lead{margin:12px 0 0;color:var(--ink-soft);font-size:16px;line-height:1.55}
.qv-set{margin-top:16px}
.qv-set h3{font-size:16px;margin-bottom:4px}
.qv-set p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.5}
.qv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:auto;padding-top:22px}
.qv-actions .btn{min-height:52px;font-size:18px;padding:0 40px}
.qv-more{color:var(--gold-text);font-size:16px;border-bottom:1px solid rgba(194,154,85,.4)}
.qv-more:hover{color:var(--bronze-2)}
.order-title{font-size:clamp(24px,2vw,32px);margin-bottom:14px;padding-right:40px}
.order-item{display:flex;align-items:center;gap:14px;padding:10px 14px;border-radius:12px;background:var(--cream)}
.order-item img{width:64px;height:64px;object-fit:contain;flex:none}
.order-item__name{font-size:17px;line-height:1.25;margin-bottom:2px}
.order-item .pp-price{font-size:19px}
.order-form .pp-sizes{margin-top:16px}
.order-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.field{display:block;margin-top:14px}
.field span{display:block;font-size:15px;margin-bottom:6px}
.field b{color:#a4505c;font-weight:400}
.field input,.field textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);padding:10px 14px;border-radius:10px;border:1px solid #e3d6c1;background:#fff;transition:border-color .2s ease, box-shadow .2s ease}
.field input{height:46px}
.field textarea{resize:vertical;min-height:84px}
.field select{width:100%;height:46px;border-radius:10px;font-size:16px;border-color:#e3d6c1}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(176,141,79,.18)}
.field input.is-bad{border-color:#c9737f;box-shadow:0 0 0 3px rgba(201,115,127,.18)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;align-items:flex-start;gap:10px;margin-top:16px;font-size:14px;color:var(--ink-soft);line-height:1.4;cursor:pointer}
.consent input{margin-top:1px}
.consent a{color:var(--gold-text);text-decoration:underline;text-underline-offset:2px}
.order-error{margin:14px 0 0;padding:10px 14px;border-radius:10px;background:#f8e9ea;color:#8e3f4a;font-size:15px}
.order-error a{color:inherit;text-decoration:underline;white-space:nowrap}
.order-submit{width:100%;margin-top:18px;min-height:54px;font-size:19px}
.order-submit:disabled{opacity:.7;cursor:progress;transform:none}
.order-note{margin:12px 0 0;text-align:center;font-size:14px;color:#958b7e;line-height:1.45}
.order-done{text-align:center;padding:14px 6px 4px}
.order-done__ico{position:relative;width:70px;height:70px;margin:0 auto 16px;border-radius:50%;background:linear-gradient(180deg,#cfae6e,#a8844a)}
.order-done__ico::after{content:"";position:absolute;left:50%;top:46%;width:24px;height:12px;border:solid #fff;border-width:0 0 3px 3px;transform:translate(-50%,-50%) rotate(-45deg)}
.order-done h2{font-size:clamp(24px,2vw,32px);margin-bottom:10px}
.order-done p{margin:0 0 10px;color:var(--ink-soft);font-size:16px;line-height:1.55}
.order-done p a{color:var(--bronze-2);white-space:nowrap}
.order-done .btn.es-modal__close{position:static;width:auto;height:auto;min-height:48px;margin-top:10px;padding:0 40px;border-radius:999px;font-size:17px;color:#fff;background:linear-gradient(180deg,#bf9d5f 0%,#a8844a 100%);display:inline-flex}
@media (prefers-reduced-motion:reduce){.es-modal,.es-modal__box{transition:none}}

/* ===== Пошив на заказ ===== */
.ps{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(20px,3vw,56px);align-items:start;max-width:1320px}
.ps-form{background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(20px,2.4vw,40px)}
.ps-form h2,.ps-side h2{font-size:clamp(24px,2vw,34px);line-height:1.15;margin-bottom:.2em}
.ps-drop{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 16px;border:1.5px dashed #dcc59b;border-radius:14px;background:#fdfaf5;text-align:center;cursor:pointer;transition:border-color .2s ease, background .2s ease}
.ps-drop:hover,.ps-drop.is-over{border-color:var(--bronze);background:#faf3e7}
.ps-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.ps-drop:focus-within{box-shadow:0 0 0 3px rgba(176,141,79,.25)}
.field .ps-drop span{margin:0}
.ps-drop__ico{width:40px;height:40px;margin-bottom:4px;border-radius:50%;background:linear-gradient(180deg,#cfae6e,#a8844a) center/cover;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='10' r='1.6'/%3E%3Cpath d='M21 16l-5-5-8 8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='10' r='1.6'/%3E%3Cpath d='M21 16l-5-5-8 8'/%3E%3C/svg%3E") center/contain no-repeat}
.ps-drop__text{font-size:16px}
.ps-drop__text b{font-weight:400;color:var(--bronze-2);text-decoration:underline;text-underline-offset:3px}
.ps-drop__hint{font-size:13px;color:#958b7e}
.ps-files{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}
.ps-files li{position:relative;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:#f4ede2;border:1px solid #eadfcd}
.ps-files img{width:100%;height:100%;object-fit:cover;display:block}
.ps-files .ps-file__name{position:absolute;inset:auto 0 0;padding:14px 6px 4px;font-size:11px;line-height:1.2;color:#fff;background:linear-gradient(transparent,rgba(40,28,14,.7));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ps-files button{position:absolute;top:4px;right:4px;width:24px;height:24px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);font-size:16px;line-height:1;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.ps-side{position:sticky;top:96px;padding-top:clamp(4px,1vw,20px)}
.ps-steps{list-style:none;margin:14px 0 0;padding:0}
.ps-steps li{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid #eee3d2}
.ps-steps li:last-child{border-bottom:0}
.ps-step__n{flex:none;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;border:1px solid #e2cda6;color:var(--gold-text);font-size:17px;background:#fff}
.ps-steps h3{font-size:clamp(18px,1.3vw,21px);margin-bottom:4px}
.ps-steps p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.55}
.ps-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}
.ps-facts div{padding:14px 10px;border-radius:14px;text-align:center;background:linear-gradient(160deg,#fbf6ee,#f1e4d0)}
.ps-facts b{display:block;font-weight:400;font-size:clamp(16px,1.2vw,20px);color:var(--bronze-2)}
.ps-facts span{font-size:13px;color:var(--ink-soft)}
.ps-org{margin:16px 0 6px;color:var(--ink-soft);font-size:15px}
.ps-phone{font-size:clamp(20px,1.5vw,26px);color:var(--bronze-2)}
.ps-phone:hover{color:var(--bronze)}
.ps-more{text-align:center;margin:clamp(20px,2vw,32px) 0 0}
.ps-done{text-align:center;padding:30px 6px}

@media (max-width:1100px){
  .pp-more{grid-template-columns:1fr}
  .cat-cta__text{max-width:62%}
}
@media (max-width:960px){
  .pp{grid-template-columns:1fr;max-width:720px}
  .pp-gallery{position:static}
  .pp-more{max-width:720px}
  .ps{grid-template-columns:1fr;max-width:720px}
  .ps-side{position:static;padding-top:0}
}
@media (max-width:760px){
  .cat-chips{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--pad));padding-inline:var(--pad)}
  .cat-chips::-webkit-scrollbar{display:none}
  .cat-toolbar{gap:10px 16px}
  .cat-count{width:100%;margin:0}
  .cat-cta{flex-direction:column;align-items:stretch;padding-bottom:0;text-align:center}
  .cat-cta__text{max-width:none}
  .cat-cta__btns{justify-content:center}
  .cat-cta__pic{position:relative;right:auto;height:220px;max-width:none;margin:18px auto 0}
  .pp-gallery{grid-template-columns:1fr}
  .pp-main{grid-column:1;grid-row:1}
  .pp-thumbs{grid-column:1;grid-row:2;flex-direction:row;overflow-x:auto;scrollbar-width:none}
  .pp-thumb,.pp-thumbs .pp-vthumb{width:68px}
  .qv{grid-template-columns:1fr}
  .qv-gallery{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}
  .qv-main{aspect-ratio:1/1;max-height:44vh;width:100%}
  .qv-thumbs{flex-direction:column;margin:0}
  .qv-thumb{width:52px}
  .qv-info{padding-right:0}
  .es-modal{align-items:flex-end;padding:0}
  .es-modal__box{max-width:none;max-height:92dvh;border-radius:20px 20px 0 0;border-bottom:none;padding:22px 16px calc(20px + env(safe-area-inset-bottom))}
  .es-modal__box--qv{padding-top:58px}
  .es-modal__close{top:10px;right:10px}
}
@media (max-width:520px){
  .crumbs ol{font-size:13px;flex-wrap:nowrap;overflow:hidden;white-space:nowrap}
  .crumbs li:last-child{overflow:hidden;text-overflow:ellipsis}
  .cat-toolbar{font-size:14px}
  .pp-actions{flex-wrap:wrap}
  .pp-actions .btn:not(.outline){flex:1 1 100%;order:-1}
  .pp-actions .btn.outline{flex:1}
  .pp-specs div{grid-template-columns:100px 1fr;gap:10px}
  .order-grid{grid-template-columns:1fr}
  .qv-actions{justify-content:center}
  .qv-actions .btn{width:100%}
  .cat-cta__btns .btn{width:100%}
  .ps-facts{grid-template-columns:1fr 1fr 1fr;gap:6px}
  .ps-facts div{padding:10px 4px}
  .ps-facts span{font-size:12px}
  .ps-form{padding:20px 16px}
}

/* ===== Мобильное меню: сказочная шторка с рукописными пунктами ===== */
.mobile-nav{
  --hand:"Marck Script","Kurale",cursive;
  position:fixed;inset:0;z-index:100;
  background:rgba(52,38,18,0);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);
  transition:background .4s ease, backdrop-filter .4s ease, -webkit-backdrop-filter .4s ease;
}
.mobile-nav.open{background:rgba(52,38,18,.42);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
html.mnav-lock{overflow:hidden}
.mnav-sheet{
  position:absolute;top:0;right:0;bottom:0;width:min(88vw,410px);
  display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;
  padding:18px 26px 0;border-radius:30px 0 0 30px;
  background:
    radial-gradient(120% 55% at 100% 0%, rgba(255,226,160,.55) 0%, rgba(255,226,160,0) 60%),
    radial-gradient(90% 40% at 0% 100%, rgba(233,196,210,.35) 0%, rgba(233,196,210,0) 70%),
    linear-gradient(170deg,#fffdf8 0%,#fbf3e4 45%,#f4e6cc 100%);
  box-shadow:-18px 0 50px rgba(60,40,10,.28);
  transform:translateX(104%);transition:transform .5s cubic-bezier(.2,.9,.25,1);
}
.mobile-nav.open .mnav-sheet{transform:none}
/* двойная золотая рамка */
.mnav-sheet::before,.mnav-sheet::after{content:"";position:absolute;pointer-events:none;border-radius:22px 0 0 22px}
.mnav-sheet::before{inset:9px 0 9px 9px;border:1.5px solid #d9bd86;border-right:none}
.mnav-sheet::after{inset:14px 0 14px 14px;border:1px solid rgba(217,189,134,.5);border-right:none}
.mnav-top,.mnav-hello,.mnav-flourish,.mnav-links{position:relative;z-index:1}

.mnav-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mnav-emblem{display:inline-flex;flex-direction:column;align-items:center;line-height:1;font-size:26px;padding-left:4px}
.mnav-emblem img{height:1.25em;width:auto;margin-bottom:-.05em}
.mnav-emblem span{background:linear-gradient(180deg,#c9a563 0%,#a57f40 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.mnav-close{
  width:44px;height:44px;border-radius:50%;border:1.5px solid #d9bd86;cursor:pointer;flex:none;
  background:radial-gradient(circle at 35% 30%,#fff 0%,#f7ecd8 100%);color:#9c7a3f;
  display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(160,120,60,.2);
  transition:transform .3s ease;
}
.mnav-close svg{width:20px;height:20px}
.mnav-close:active{transform:rotate(90deg) scale(.94)}

.mnav-hello{
  margin:22px 0 0;text-align:center;font-family:var(--hand);font-size:25px;line-height:1.1;color:#a57f40;
  opacity:0;transform:translateY(8px);transition:opacity .5s ease .25s, transform .5s ease .25s;
}
.mnav-flourish{display:block;width:78%;height:16px;margin:4px auto 6px;color:#c9a563}
.mnav-flourish path:first-child{stroke-dasharray:260;stroke-dashoffset:260}
.mobile-nav.open .mnav-hello{opacity:1;transform:none}
.mobile-nav.open .mnav-flourish path:first-child{animation:mnav-draw 1.1s ease .45s forwards}

.mnav-links{display:flex;flex-direction:column;padding:4px 0 8px}
.mnav-links a{
  position:relative;display:flex;align-items:center;gap:16px;padding:9px 10px 9px 4px;
  font-family:var(--hand);font-size:31px;line-height:1.15;color:#5a3d1c;
  text-shadow:0 1px 0 rgba(255,255,255,.8);
  clip-path:inset(-10px 100% -10px -10px);
}
.mnav-links a::after{
  content:"";position:absolute;left:52px;right:8px;bottom:2px;height:1px;
  background:linear-gradient(90deg,rgba(201,165,99,.75),rgba(201,165,99,.25) 70%,rgba(201,165,99,0));
}
.mnav-links a:last-child::after{display:none}
.mnav-links svg{
  flex:none;width:36px;height:36px;padding:8px;border-radius:50%;
  fill:none;stroke:#a57f40;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round;
  background:radial-gradient(circle at 35% 30%,#fffaf0 0%,#f3e2c2 100%);
  box-shadow:inset 0 0 0 1.2px #d9bd86, 0 2px 6px rgba(160,120,60,.18);
}
.mnav-links a[aria-current="page"]{color:#a57f40}
.mnav-links a[aria-current="page"] svg{background:linear-gradient(180deg,#c9a563,#a57f40);stroke:#fff;box-shadow:0 3px 10px rgba(160,120,60,.35)}
.mnav-links a:active{color:#a57f40}
/* пункты «пишутся» пером слева направо один за другим */
.mobile-nav.open .mnav-links a{animation:mnav-write .75s cubic-bezier(.45,.1,.35,1) forwards}
.mobile-nav.open .mnav-links a:nth-child(1){animation-delay:.3s}
.mobile-nav.open .mnav-links a:nth-child(2){animation-delay:.4s}
.mobile-nav.open .mnav-links a:nth-child(3){animation-delay:.5s}
.mobile-nav.open .mnav-links a:nth-child(4){animation-delay:.6s}
.mobile-nav.open .mnav-links a:nth-child(5){animation-delay:.7s}
.mobile-nav.open .mnav-links a:nth-child(6){animation-delay:.8s}
.mobile-nav.open .mnav-links a:nth-child(7){animation-delay:.9s}

/* соцсети под пунктами меню */
.mnav-social{position:relative;z-index:1;justify-content:center;gap:14px;margin:8px 0 4px;padding-top:14px;border-top:1px solid rgba(201,165,99,.45);opacity:0;transform:translateY(8px);transition:opacity .5s ease 1s, transform .5s ease 1s}
.mnav-social a{width:44px;height:44px}
.mnav-social svg{width:23px;height:23px}
.mobile-nav.open .mnav-social{opacity:1;transform:none}
.mnav-castle{margin:auto -10px 0;padding-top:4px;text-align:center}
.mnav-castle img{width:62%;margin:0 auto;mix-blend-mode:multiply;opacity:.95}
.mnav-castle p{
  position:relative;z-index:1;margin:-4px 0 0;padding:0 16px 24px;font-family:var(--hand);font-size:23px;line-height:1.1;color:#9c7a3f;
}

/* мерцающие звёздочки */
.mnav-stars{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;border-radius:inherit}
.mnav-stars i{
  position:absolute;width:12px;height:12px;background:linear-gradient(135deg,#f5d58e,#c9a563);
  clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);
  opacity:0;scale:1.6;filter:drop-shadow(0 0 3px rgba(245,213,142,.9));animation:mnav-twinkle 3.2s ease-in-out infinite;
}
.mnav-stars i:nth-child(1){top:9%;left:46%;animation-delay:.2s}
.mnav-stars i:nth-child(2){top:17%;right:12%;width:8px;height:8px;animation-delay:1.1s}
.mnav-stars i:nth-child(3){top:27%;left:10%;width:9px;height:9px;animation-delay:2s}
.mnav-stars i:nth-child(4){top:36%;right:9%;width:14px;height:14px;animation-delay:.7s}
.mnav-stars i:nth-child(5){top:47%;right:22%;width:7px;height:7px;animation-delay:2.6s}
.mnav-stars i:nth-child(6){top:55%;right:7%;animation-delay:1.5s}
.mnav-stars i:nth-child(7){top:64%;right:18%;width:9px;height:9px;animation-delay:.4s}
.mnav-stars i:nth-child(8){bottom:28%;left:12%;width:10px;height:10px;animation-delay:2.2s}
.mnav-stars i:nth-child(9){bottom:22%;right:10%;width:15px;height:15px;animation-delay:1.3s}
.mnav-stars i:nth-child(10){bottom:14%;left:30%;width:7px;height:7px;animation-delay:.9s}
.mnav-stars i:nth-child(11){bottom:34%;right:34%;width:6px;height:6px;animation-delay:2.9s}
.mnav-stars i:nth-child(12){top:4%;left:18%;width:8px;height:8px;animation-delay:1.8s}

@keyframes mnav-write{from{clip-path:inset(-10px 100% -10px -10px)}to{clip-path:inset(-10px -10px -10px -10px)}}
@keyframes mnav-draw{to{stroke-dashoffset:0}}
@keyframes mnav-twinkle{0%,100%{opacity:0;transform:scale(.4) rotate(0)}50%{opacity:.95;transform:scale(1) rotate(45deg)}}
@media (max-height:900px){.mnav-castle img{width:52%}}
@media (max-height:640px){
  .mnav-links a{font-size:26px;padding-block:6px}
  .mnav-links svg{width:32px;height:32px;padding:7px}
  .mnav-castle img{width:46%}
}
@media (prefers-reduced-motion:reduce){
  .mnav-sheet,.mobile-nav,.mnav-hello,.mnav-social{transition:none}
  .mnav-links a,.mobile-nav.open .mnav-links a{animation:none;clip-path:none}
  .mnav-flourish path:first-child{stroke-dasharray:none}
  .mnav-stars i{animation:none;opacity:.6}
}

/* ===== Личный кабинет ===== */
.acc{padding-block:clamp(20px,2.4vw,40px) clamp(48px,5vw,90px)}
.acc [hidden]{display:none!important}
.acc-loading{height:50vh}
.acc-note{text-align:center;color:var(--ink-soft)}
.acc svg{flex:none}
.acc-link{background:none;border:none;padding:0;font:inherit;font-size:14px;color:var(--gold-text);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.acc-link:disabled{color:#a79c8c;cursor:default;text-decoration:none}
.acc-muted{color:var(--ink-soft);font-size:15px;line-height:1.5;margin:0 0 6px}
.order-loyalty{margin-top:4px;font-size:14px;color:var(--gold-text)}
.order-loyalty b{font-weight:600}
/* Вход */
.acc-login{max-width:980px;margin:0 auto;display:grid;grid-template-columns:minmax(0,460px) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center}
.acc-login__card{background:#fff;border:1px solid #efe6d8;border-radius:18px;box-shadow:var(--shadow);padding:clamp(24px,3vw,40px);text-align:center}
.acc-login__crown{width:58px;height:58px;margin:0 auto 12px;border-radius:50%;background:var(--cream);color:var(--bronze);display:grid;place-items:center}
.acc-login__crown svg{width:28px;height:28px}
.acc-login__title{font-size:clamp(28px,2.4vw,38px);margin:0 0 6px}
.acc-login__lead{color:var(--ink-soft);font-size:15px;line-height:1.5;margin:0 0 4px}
.acc-step{text-align:left}
.acc-step .acc-login__lead{text-align:center}
.acc-step .btn{width:100%;margin-top:18px}
.field input.acc-code{text-align:center;font-size:26px;letter-spacing:.45em;height:58px}
.acc-step__links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-top:16px}
.acc-perks{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.acc-perks li{display:flex;gap:16px;align-items:flex-start}
.acc-perks svg{width:48px;height:48px;padding:12px;border-radius:50%;background:#fff;border:1px solid #efe6d8;color:var(--bronze)}
.acc-perks b{display:block;font-weight:400;font-size:19px;margin-bottom:3px;color:var(--ink)}
.acc-perks span{color:var(--ink-soft);font-size:15px;line-height:1.45}

/* Кабинет: во весь экран, без шапки и подвала сайта */
body.acc-on .site-header,body.acc-on .site-footer,body.acc-on .crumbs{display:none}
body.acc-on{background:#fdfbf8}
body.acc-on .acc{max-width:none;padding:0;margin:0}
.acc-app{--sans:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;display:grid;grid-template-columns:clamp(250px,18.5vw,370px) minmax(0,1fr);min-height:100vh;font-family:var(--sans);color:var(--ink)}
.acc-app h1,.acc-app h2,.acc-app h3{font-family:var(--fairy);font-weight:400}
/* Боковая панель */
.acc-side{position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;align-items:center;background:#f8f3ea;border-right:1px solid #ece3d3;padding:clamp(18px,1.6vw,30px) clamp(14px,1vw,20px) clamp(18px,1.8vw,40px)}
.acc-side::-webkit-scrollbar{display:none}
.acc-brand{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--ink)}
.acc-brand img{width:clamp(56px,4.2vw,84px);height:auto}
.acc-brand__word{font-family:var(--fairy);font-size:clamp(21px,1.5vw,30px);line-height:1.15;margin-top:4px}
.acc-brand small{font-size:clamp(10px,.66vw,13px);line-height:1.3;text-transform:uppercase;letter-spacing:.02em;color:#5d554b;margin-top:4px}
.acc-avatar{position:relative;width:clamp(96px,6.9vw,138px);height:clamp(96px,6.9vw,138px);margin:clamp(16px,1.4vw,26px) 0 12px;padding:0;border:none;border-radius:50%;background:#efe4d0;cursor:pointer;box-shadow:0 0 0 4px #fff,0 0 0 5px #e3cfa9,0 8px 20px rgba(90,70,40,.12)}
.acc-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.acc-avatar__edit{position:absolute;right:2px;bottom:2px;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--bronze);display:grid;place-items:center;box-shadow:0 2px 8px rgba(90,70,40,.18);transition:transform .15s ease}
.acc-avatar__edit svg{width:18px;height:18px}
.acc-avatar:hover .acc-avatar__edit{transform:scale(1.1)}
.acc-side__name{font-family:var(--fairy);font-size:clamp(20px,1.35vw,27px);line-height:1.2;text-align:center;word-break:break-word}
.acc-level{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:3px 14px;border:1px solid #d9b877;border-radius:8px;background:#fdf8ef;font-size:13px;color:#6b5a3c}
.acc-level svg{width:15px;height:15px;color:#c79a3e;fill:#e2bf6e}
.acc-nav{align-self:stretch;display:grid;gap:clamp(2px,.5vw,10px);margin:clamp(18px,1.6vw,30px) 0 20px}
.acc-nav a,.acc-nav button{display:flex;align-items:center;gap:clamp(12px,1vw,20px);padding:clamp(10px,.8vw,15px) clamp(14px,1.1vw,22px);border-radius:14px;border:1.5px solid transparent;background:none;font:inherit;font-size:clamp(15px,.9vw,18px);color:#2f2a24;cursor:pointer;text-align:left;width:100%;transition:background .15s ease}
.acc-nav svg{width:clamp(22px,1.4vw,28px);height:clamp(22px,1.4vw,28px);color:#4b443b}
.acc-nav a:hover,.acc-nav button:hover{background:#f2e9da}
.acc-nav a.is-active{background:#fdf6e9;border-color:#dcb56c;color:#b3893c;font-size:clamp(17px,1.05vw,21px)}
.acc-nav a.is-active svg{color:#c49a4f}
.acc-thanks{margin-top:auto;align-self:stretch;margin-inline:clamp(0px,.6vw,14px);border:1.5px solid #e2c48e;border-radius:14px;background:#fbf4e6;padding:clamp(14px,1.2vw,24px) 14px 14px;text-align:center;color:#c79a3e}
.acc-thanks svg{width:38px;height:38px;fill:#e2bf6e;stroke:#c79a3e}
.acc-thanks p{font-family:var(--fairy);font-size:clamp(15px,.95vw,19px);line-height:1.3;color:var(--ink);margin:6px 0 8px}
.acc-thanks .acc-thanks__heart{width:18px;height:18px;color:#c79a3e;stroke:none}
/* Основная часть */
.acc-main{min-width:0;background:#fdfbf8;padding:clamp(14px,1vw,20px) clamp(16px,3.2vw,64px) clamp(30px,3vw,60px)}
.acc-top{position:relative;z-index:5;display:flex;justify-content:flex-end;align-items:center;gap:clamp(18px,2.4vw,46px);min-height:52px}
.acc-search{position:relative;flex:0 1 530px;margin-right:clamp(0px,2vw,40px)}
.acc-search>svg{position:absolute;left:18px;top:50%;width:24px;height:24px;transform:translateY(-50%);color:#6b645b;pointer-events:none}
.acc-search input{width:100%;height:clamp(44px,2.6vw,52px);padding:0 16px 0 56px;border:1px solid #e9e1d5;border-radius:6px;background:#fff;font:inherit;font-size:clamp(15px,1vw,20px);color:var(--ink);box-shadow:0 2px 8px rgba(90,70,40,.04)}
.acc-search input::placeholder{color:#8f877c}
.acc-search input:focus{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(176,141,79,.15)}
.acc-search__list{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid #efe6d8;border-radius:10px;box-shadow:0 12px 30px rgba(90,70,40,.14);padding:6px;max-height:420px;overflow-y:auto}
.acc-search__list a{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:8px;color:var(--ink)}
.acc-search__list a:hover{background:var(--cream)}
.acc-search__list img{width:42px;height:42px;object-fit:contain;flex:none}
.acc-search__list span{flex:1;min-width:0;font-size:15px}
.acc-search__list b{font-weight:600;font-size:14px;white-space:nowrap}
.acc-search__list p{margin:8px 10px;font-size:14px;color:var(--ink-soft)}
.acc-top__btn{position:relative;color:#2f2a24;display:grid;place-items:center;width:40px;height:40px}
.acc-top__btn svg{width:30px;height:30px}
.acc-top__btn:hover{color:var(--bronze)}
.acc-dot{position:absolute;top:-4px;right:-6px;min-width:22px;height:22px;padding:0 5px;border-radius:11px;background:#e0a94a;color:#fff;font-size:13px;line-height:22px;text-align:center}
.acc-panel{position:relative}
.acc-hero{position:relative;padding:clamp(24px,2.4vw,46px) 0 clamp(26px,2vw,38px) 2px;min-height:clamp(140px,11vw,196px)}
.acc-hero__castle{position:absolute;right:-6px;bottom:-14px;width:auto;height:clamp(190px,15vw,300px);mix-blend-mode:multiply;pointer-events:none;z-index:0}
.acc-hello{position:relative;font-size:clamp(32px,2.6vw,52px);line-height:1.1;margin:0 0 clamp(8px,.7vw,14px)}
.acc-sub{position:relative;margin:0;font-size:clamp(15px,1vw,20px);color:#4b443b}
.acc-title{font-size:clamp(28px,2.2vw,44px);line-height:1.15;margin:clamp(18px,2vw,40px) 0 clamp(16px,1.4vw,26px)}
.acc-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.1vw,22px);margin-bottom:clamp(14px,1.2vw,24px)}
.acc-stat{display:flex;align-items:center;gap:clamp(12px,1.4vw,26px);background:#fff;border:1px solid #efe8dd;border-radius:10px;box-shadow:0 2px 10px rgba(90,70,40,.04);padding:clamp(14px,1.2vw,26px) clamp(12px,1vw,18px);color:var(--ink);transition:transform .15s ease,box-shadow .15s ease;min-width:0}
.acc-stat:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(90,70,40,.1)}
.acc-stat svg{width:clamp(52px,4.2vw,84px);height:clamp(52px,4.2vw,84px);padding:clamp(12px,1vw,20px);border-radius:50%;background:#fbf1e2;color:#d2a765;stroke-width:1.3}
.acc-stat>span{min-width:0}
.acc-stat small{display:block;font-size:clamp(14px,.95vw,19px);color:#3f3931}
.acc-stat b{display:block;font-family:var(--fairy);font-weight:400;font-size:clamp(28px,2.1vw,42px);line-height:1.15;white-space:nowrap}
.acc-stat em{display:block;font-style:normal;font-size:clamp(13px,.92vw,18px);color:#8d857a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acc-box{background:#fff;border:1px solid #efe8dd;border-radius:10px;box-shadow:0 2px 10px rgba(90,70,40,.04);padding:clamp(14px,1.3vw,26px) clamp(14px,1.4vw,28px) clamp(10px,.9vw,18px);margin-bottom:clamp(14px,1.2vw,24px)}
.acc-box h2{font-size:clamp(21px,1.4vw,28px);margin:0 0 12px}
.acc-box__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.acc-box__head a{display:inline-flex;align-items:center;gap:8px;color:#2f2a24;font-size:clamp(14px,.9vw,18px);white-space:nowrap}
.acc-box__head a svg{width:18px;height:18px}
.acc-box__head a:hover{color:var(--bronze)}
.acc-empty{text-align:center;padding:18px 10px 22px;color:var(--ink-soft)}
.acc-empty p{margin:0 0 14px}
.acc-empty .btn{font-family:var(--fairy)}
/* Таблица заказов */
.acc-tr{display:grid;grid-template-columns:clamp(96px,7.4vw,148px) clamp(120px,12.5vw,250px) minmax(0,1fr) clamp(130px,8.4vw,168px) clamp(90px,8vw,160px) 40px;gap:0 12px;align-items:center;min-height:clamp(58px,3.4vw,68px);padding:4px 0;border-top:1px solid #efe8dd;font-size:clamp(15px,1vw,20px)}
.acc-th{min-height:0;border-top:none;padding:6px 0 12px;font-size:clamp(14px,.9vw,18px);color:#3f3931}
.acc-th span:nth-child(5){text-align:left}
.acc-td-id{padding-left:12px;white-space:nowrap;color:#3f3931}
.acc-th span:first-child{padding-left:2px}
.acc-td-date{white-space:nowrap;color:#3f3931}
.acc-td-item{display:flex;align-items:center;gap:clamp(12px,1.4vw,28px);min-width:0}
.acc-td-item img,.acc-pic-custom{width:clamp(48px,3.6vw,72px);height:clamp(48px,3.2vw,62px);object-fit:contain;flex:none;border-radius:6px;background:#fbf7f0}
.acc-pic-custom{background:#fbf7f0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b08d4f' stroke-width='1.5'%3E%3Cpath d='M20 4L9 15'/%3E%3Ccircle cx='6.5' cy='17.5' r='2.5'/%3E%3Cpath d='M14 4h6v6'/%3E%3C/svg%3E") center/26px no-repeat}
.acc-td-item a{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-td-item a:hover{color:var(--bronze)}
.acc-td-sum{white-space:nowrap}
.acc-td-sum small{font-size:13px;color:#958b7e}
.acc-td-go{justify-self:end;color:#2f2a24;display:grid;place-items:center;width:32px;height:32px}
.acc-td-go svg{width:22px;height:22px}
.acc-td-go:hover{color:var(--bronze)}
.acc-status{display:inline-flex;align-items:center;justify-content:center;min-width:clamp(112px,6.8vw,136px);height:clamp(30px,1.8vw,36px);padding:0 14px;border-radius:10px;font-size:clamp(14px,.9vw,18px);white-space:nowrap;background:#fbdcaa;color:#8f6220}
.acc-status--confirmed{background:#cfe0f7;color:#2f5ea8}
.acc-status--sewing{background:#fbdcaa;color:#8f6220}
.acc-status--shipped{background:#bcdcae;color:#2d5d23}
.acc-status--done{background:#bcdcae;color:#2d5d23}
.acc-status--cancelled{background:#ece7e0;color:#80776b}
/* Карточка заявки, этапы пошива и уведомления (К1, К2, К5) */
.acc-td-more{display:block;font-size:12px;color:#958b7e;line-height:1.35}
.acc-back{display:inline-block;margin-bottom:12px;color:#2f2a24}
.acc-back:hover{color:var(--bronze)}
.acc-order-head{margin-bottom:14px}
.acc-order-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:6px}
.acc-order-num{font-size:clamp(16px,1.05vw,20px);font-weight:600;letter-spacing:.04em}
.acc-kv{margin:0;display:grid;gap:10px}
.acc-kv div{display:grid;grid-template-columns:minmax(140px,24%) minmax(0,1fr);gap:4px 16px}
.acc-kv dt{color:#8d857a;font-size:14px}
.acc-kv dd{margin:0;color:var(--ink)}
.acc-quote .acc-kv dd{font-size:clamp(16px,1.1vw,21px)}
.acc-order-items{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.acc-order-items li{display:flex;align-items:center;gap:14px}
.acc-order-items img{width:64px;height:56px;object-fit:contain;border-radius:6px;background:#fbf7f0;flex:none}
.acc-order-items small{display:block;color:#8d857a;font-size:14px}
.acc-photos{display:flex;flex-wrap:wrap;gap:12px}
.acc-photos img{width:clamp(110px,10vw,180px);height:clamp(110px,10vw,180px);object-fit:cover;border-radius:8px;border:1px solid #efe8dd}
/* Д19.9: ход пошива галочками */
.acc-work-bar{height:12px;border-radius:6px;background:#f3eadb;overflow:hidden;margin:6px 0 4px}
.acc-work-bar i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#8bbd7a,#5b8c5a);transition:width .6s ease}
.acc-steps{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.acc-steps li{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;color:#958b7e}
.acc-steps li.is-done{color:#2f2a24}
.acc-steps__mark{width:22px;height:22px;border-radius:50%;border:1px solid #e6d6ba;display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff}
.acc-steps li.is-done .acc-steps__mark{background:#5b8c5a;border-color:#5b8c5a}
.acc-steps b{font-weight:500}
/* Д19.11: путь посылки */
.acc-ship{margin-top:12px}
.acc-ship-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
/* Д19.12: каждый пункт пути посылки */
.acc-ship-h{margin:18px 0 8px;font-size:16px;font-weight:600}
.acc-way{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.acc-way li{position:relative;padding:10px 12px 10px 28px;border:1px solid var(--line);border-radius:12px;background:#fff}
.acc-way li::before{content:'';position:absolute;left:12px;top:16px;width:8px;height:8px;border-radius:50%;background:#2e7d32}
.acc-way li:first-child::before{box-shadow:0 0 0 4px rgba(46,125,50,.15)}
.acc-way b{display:block;font-weight:600}
.acc-way small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.acc-steps small{color:#958b7e;font-size:13px}
.acc-stages{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.acc-stages li{border-left:2px solid #e6d6ba;padding:0 0 4px 16px}
.acc-stages b{display:block;font-size:clamp(16px,1.05vw,20px)}
.acc-stages span{display:block;font-size:13px;color:#958b7e;margin-bottom:6px}
.acc-stages p{margin:0 0 8px}
.acc-stages img{max-width:min(100%,340px);border-radius:8px;border:1px solid #efe8dd}
.acc-note-row{display:block;padding:12px 14px;border:1px solid #efe8dd;border-radius:10px;margin-bottom:10px;color:var(--ink)}
.acc-note-row:hover{border-color:#e2cda6}
.acc-note-row.is-new{background:#fdf6e9;border-color:#e6d6ba}
.acc-note-row b{display:block}
.acc-note-row p{margin:4px 0 0;color:var(--ink-soft);font-size:15px}
.acc-note-row small{display:block;margin-top:6px;color:#958b7e;font-size:13px}
.acc-nav__dot{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#c9737f;color:#fff;font-size:12px;display:inline-flex;align-items:center;justify-content:center}
.acc-name-hint{margin:0 0 12px}
@media (max-width:680px){
  .acc-kv div{grid-template-columns:1fr}
}
/* Избранное */
.acc-wish-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.3vw,26px);padding-bottom:clamp(4px,.6vw,12px)}
.acc-panel[data-panel="izbrannoe"] .acc-wish-grid{grid-template-columns:repeat(auto-fill,minmax(clamp(160px,13vw,260px),1fr))}
.acc-wish{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:1px solid #efe8dd;border-radius:10px;padding:8px 10px clamp(10px,.9vw,18px);transition:box-shadow .15s ease}
.acc-wish:hover{box-shadow:0 10px 24px rgba(90,70,40,.1)}
.acc-wish .fav{top:14px;right:14px;width:26px;height:26px;color:#b9b2a8}
.acc-wish .fav.on svg{fill:none}
.acc-wish .fav:hover{color:#c9737f}
.acc-wish__pic{position:relative;display:block;width:100%;aspect-ratio:1/1.08}
.acc-wish__pic img{position:absolute;inset:6px 4px 0;width:calc(100% - 8px);height:calc(100% - 6px);object-fit:contain}
.acc-wish h3{font-family:var(--sans)!important;font-size:clamp(14px,.92vw,18px);line-height:1.3;margin:6px 0 2px}
.acc-wish h3 a{color:var(--ink)}
.acc-wish h3 a:hover{color:var(--bronze)}
.acc-wish__price{font-size:clamp(14px,.92vw,18px);color:#2f2a24}
.acc-wish__price s{color:#a39a8e;font-size:.85em;margin-right:8px}
/* Моя скидка */
.acc-loyal{padding-block:clamp(18px,1.6vw,30px)}
.acc-loyal__now{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:16px}
.acc-loyal__now small{flex-basis:100%;font-size:15px;color:var(--ink-soft)}
.acc-loyal__now b{font-family:var(--fairy);font-weight:400;font-size:clamp(26px,2vw,38px);color:#b3893c}
.acc-loyal__now span{font-size:17px}
.acc-progress{height:12px;border-radius:6px;background:#f3eadb;overflow:hidden;margin-bottom:12px}
.acc-progress i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#e8c886,#c49a4f);transition:width .6s ease}
.acc-tiers{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-bottom:14px}
.acc-tier{border:1px solid #efe8dd;border-radius:10px;padding:16px 18px;display:grid;gap:2px;color:#8d857a}
.acc-tier b{font-family:var(--fairy);font-weight:400;font-size:34px;line-height:1.1;color:#b9b0a4}
.acc-tier span{font-size:16px}
.acc-tier small{font-size:14px}
.acc-tier.is-on{border-color:#e2c48e;color:var(--ink)}
.acc-tier.is-on b{color:#b3893c}
.acc-tier.is-current{background:#fdf6e9;border-width:1.5px}
/* Адреса и формы */
.acc-addrs{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-bottom:16px}
.acc-addrs>.acc-muted{grid-column:1/-1}
.acc-addr{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid #efe8dd;border-radius:10px;padding:16px}
.acc-addr svg{width:24px;height:24px;color:var(--bronze)}
.acc-addr div{flex:1;min-width:0}
.acc-addr p{margin:2px 0;font-size:15px;word-break:break-word}
.acc-addr small{color:#958b7e}
.acc-addr b{font-weight:600;font-size:16px}
.acc-form{max-width:760px}
.acc-form .btn{margin-top:18px;font-family:var(--fairy)}
.acc-form input:disabled{background:var(--cream);color:var(--ink-soft)}
/* Выбор аватара */
.acc-avatars__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:14px;margin-top:12px}
.acc-avatars__item{position:relative;aspect-ratio:1;max-width:110px;width:100%;padding:0;border:none;border-radius:50%;background:#f3eadb;cursor:pointer;overflow:hidden;box-shadow:0 0 0 1px #eadfcd;transition:transform .15s ease,box-shadow .15s ease}
.acc-avatars__item img{width:100%;height:100%;object-fit:cover;display:block}
.acc-avatars__item:hover{transform:translateY(-2px)}
.acc-avatars__item.is-on{box-shadow:0 0 0 3px #fff,0 0 0 5px #c49a4f}
.acc-avatars__upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#fff;border:1.5px dashed #d9bd86;box-shadow:none;color:#b3893c;font-size:12px;text-align:center}
.acc-avatars__upload svg{width:26px;height:26px}
.acc-avatars__upload:focus-within{outline:2px solid var(--bronze)}

@media (max-width:1400px){
  .acc-wish-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .acc-panel[data-panel="obzor"] .acc-wish:nth-child(5){display:none}
  .acc-tr{grid-template-columns:96px 120px minmax(0,1fr) 124px 96px 32px}
  .acc-stat em{white-space:normal}
}
@media (max-width:1180px){
  .acc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .acc-hero__castle{height:170px}
}
@media (max-width:960px){
  .acc-login{grid-template-columns:1fr;max-width:520px}
  .acc-perks{padding-inline:6px}
  .acc-app{display:block;min-height:0}
  .acc-side{position:static;height:auto;display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 14px;align-items:center;padding:14px 16px 0;border-right:none;border-bottom:1px solid #ece3d3}
  .acc-brand{grid-column:1/-1;flex-direction:row;gap:10px;justify-content:flex-start;margin-bottom:12px}
  .acc-brand img{width:44px}
  .acc-brand__word{font-size:22px;margin:0}
  .acc-brand small{display:none}
  .acc-avatar{width:72px;height:72px;margin:0;grid-row:span 2;box-shadow:0 0 0 3px #fff,0 0 0 4px #e3cfa9}
  .acc-avatar__edit{width:26px;height:26px;right:-2px;bottom:-2px}
  .acc-avatar__edit svg{width:14px;height:14px}
  .acc-side__name{align-self:end;text-align:left;font-size:21px}
  .acc-level{align-self:start;justify-self:start;margin-top:4px}
  .acc-nav{grid-column:1/-1;display:flex;overflow-x:auto;gap:8px;margin:14px -16px 0;padding:0 16px 14px;scrollbar-width:none}
  .acc-nav::-webkit-scrollbar{display:none}
  .acc-nav a,.acc-nav button,.acc-nav a.is-active{width:auto;flex:none;gap:8px;padding:8px 14px;border:1px solid #e6d8c0;border-radius:999px;background:#fff;font-size:15px}
  .acc-nav a.is-active{border-color:#dcb56c;background:#fdf6e9}
  .acc-nav svg{width:18px;height:18px}
  .acc-thanks{display:none}
  .acc-main{padding:14px 16px 36px}
  .acc-top{gap:14px}
  .acc-search{flex:1 1 auto;margin:0}
  .acc-search input{height:44px;padding-left:46px;font-size:15px}
  .acc-search>svg{left:14px;width:20px;height:20px}
  .acc-top__btn{width:32px;height:32px}
  .acc-top__btn svg{width:26px;height:26px}
  .acc-dot{min-width:18px;height:18px;line-height:18px;font-size:11px;border-radius:9px}
  .acc-hero{padding:22px 0 20px;min-height:0}
  .acc-hero__castle{height:120px;bottom:-4px;right:-12px;opacity:.9}
  .acc-hello{font-size:30px;padding-right:110px}
  .acc-sub{font-size:15px;padding-right:90px}
  .acc-stats{gap:10px}
  .acc-stat{flex-direction:column;align-items:flex-start;gap:8px;padding:14px}
  .acc-stat svg{width:46px;height:46px;padding:11px}
  .acc-stat b{font-size:28px}
  .acc-stat em{font-size:13px}
}
@media (max-width:760px){
  .acc-th{display:none}
  .acc-tr{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;gap:6px 12px;padding:12px 0;font-size:15px}
  .acc-tr:first-of-type,.acc-th+.acc-tr{border-top:none}
  .acc-td-item{grid-column:1/3;grid-row:1}
  .acc-td-item a{white-space:normal}
  .acc-td-sum{grid-column:3;grid-row:1;text-align:right;font-weight:600}
  .acc-td-id{grid-column:1;grid-row:2;padding-left:0;font-size:13px;color:#8d857a}
  .acc-td-date{grid-column:2;grid-row:2;font-size:13px;color:#8d857a}
  .acc-td-status{grid-column:3;grid-row:2;justify-self:end}
  .acc-status{min-width:0;height:28px;font-size:13px;padding:0 10px}
  .acc-td-go{display:none}
  .acc-wish-grid,.acc-panel[data-panel="izbrannoe"] .acc-wish-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .acc-panel[data-panel="obzor"] .acc-wish:nth-child(5){display:none}
  .acc-form .order-grid{grid-template-columns:1fr}
  .acc-avatars__grid{grid-template-columns:repeat(4,1fr);gap:10px}
}
@media (max-width:420px){
  .acc-stat{padding:12px 10px}
  .acc-stat small{font-size:13px;line-height:1.25}
  .acc-stat b{font-size:24px}
  .acc-hello{font-size:27px}
}

/* ===== Блог: список статей и статья ===== */
.blog-head .catalog-intro{max-width:860px;margin-inline:auto}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,28px)}
.post-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #f1eadf;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease}
.post-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(90,70,40,.13)}
.post-card__pic{display:block;overflow:hidden}
.post-card__pic img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .4s ease}
.post-card:hover .post-card__pic img{transform:scale(1.04)}
.post-card__body{padding:clamp(14px,1.2vw,22px);display:flex;flex-direction:column;gap:8px;flex:1}
.post-card__rubric{align-self:flex-start;font-size:13px;color:var(--gold-text);border:1px solid #ead8b6;border-radius:999px;padding:3px 12px;background:var(--cream)}
.post-card__title{font-size:clamp(19px,1.35vw,24px);line-height:1.25}
.post-card__title a:hover{color:var(--bronze)}
.post-card__body p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.55;flex:1}
.post-card__meta{font-size:13px;color:#8a7f71;display:flex;flex-wrap:wrap;gap:4px 14px;padding-top:10px;border-top:1px solid #f1eadf}
.pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:clamp(22px,2vw,36px)}
.pager a,.pager span{min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid #e2cda6;background:#fff;font-size:16px}
.pager a:hover{background:var(--cream)}
.pager span{background:linear-gradient(180deg,#bf9d5f,#a8844a);border-color:transparent;color:#fff}

.post{max-width:1240px;padding-block:clamp(10px,1.2vw,20px) clamp(20px,2vw,36px)}
.post-head{max-width:880px;margin:0 auto clamp(18px,1.8vw,30px);text-align:center}
.post-rubric{display:inline-block;font-size:14px;color:var(--gold-text);border:1px solid #ead8b6;border-radius:999px;padding:4px 14px;background:var(--cream);margin-bottom:12px}
.post-head h1{font-size:clamp(30px,3vw,50px);line-height:1.12;margin-bottom:.4em}
.post-lead{margin:0 0 12px;font-size:clamp(17px,1.25vw,21px);line-height:1.55;color:#4a433b}
.post-meta{font-size:14px;color:#8a7f71;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 10px}
.post-meta .pm{padding:5px 13px;border-radius:999px;background:var(--cream);border:1px solid #efe1c6}
.post-meta .post-author-mini{color:var(--gold-text)}
/* дата, время чтения, просмотры — у статьи и в карточках */
.pm{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.pm[hidden]{display:none}
.pm-ico{width:16px;height:16px;flex:none;fill:none;stroke:var(--bronze);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.post-card__meta .pm-ico{width:14px;height:14px}
.post-cover{margin:0 0 clamp(20px,2.2vw,40px);border-radius:calc(var(--radius) + 6px);overflow:hidden;box-shadow:var(--shadow)}
.post-cover img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.post-cover figcaption,.post-fig figcaption{font-size:14px;color:#958b7e;text-align:center;padding:8px 12px 0}
.post-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(24px,3vw,56px);align-items:start}
.post-body{font-size:clamp(16px,1.08vw,19px);line-height:1.7;color:#3f3931;max-width:820px}
.post-body p{margin:0 0 14px}
.post-body h2{font-size:clamp(24px,1.9vw,34px);line-height:1.2;margin:34px 0 14px;color:var(--ink);scroll-margin-top:90px}
.post-body h3{font-size:clamp(19px,1.35vw,24px);line-height:1.25;margin:24px 0 10px;color:var(--ink)}
.post-body a{color:#9a7640;text-decoration:underline;text-underline-offset:3px}
.post-body a:hover{color:var(--bronze)}
.post-body ul,.post-body ol{margin:0 0 16px;padding-left:1.3em}
.post-body li{margin-bottom:6px}
.post-body li::marker{color:var(--bronze)}
.post-body strong{color:var(--ink);font-weight:700}
.post-short{background:linear-gradient(180deg,#fdf9f2,#f8efe0);border:1px solid #ecdcbf;border-radius:var(--radius);padding:18px 22px 10px;margin:22px 0}
.post-short__title{font-size:clamp(20px,1.4vw,24px);color:var(--bronze);margin-bottom:8px}
.post-short__title::before{content:"✦ ";color:var(--bronze-light)}
.post-toc{border:1px solid var(--line);border-radius:var(--radius);padding:12px 22px;margin:0 0 10px;background:#fff}
.post-toc summary{cursor:pointer;font-size:clamp(18px,1.2vw,21px);color:var(--ink)}
.post-toc ol{margin:10px 0 6px;font-size:.93em;line-height:1.5}
.post-body .post-toc a{text-decoration:none;color:#5e564c}
.post-body .post-toc a:hover{color:var(--bronze)}
.post-table{overflow-x:auto;margin:6px 0 20px;border:1px solid #eadfcd;border-radius:var(--radius)}
.post-table table{width:100%;border-collapse:collapse;font-size:.92em;line-height:1.5;min-width:520px}
.post-table caption{caption-side:top;text-align:left;padding:12px 14px 4px;color:var(--ink);font-size:1.02em}
.post-table th{text-align:left;font-weight:400;background:var(--cream);color:#7c6a4e;padding:10px 14px;border-bottom:1px solid #eadfcd}
.post-table td{padding:10px 14px;border-bottom:1px solid #f0e8db;vertical-align:top}
.post-table tr:last-child td{border-bottom:0}
.post-fig{margin:24px 0}
.post-fig img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}
.post-note{border-left:3px solid var(--bronze-light);background:#fdfaf5;padding:12px 18px;margin:0 0 16px;border-radius:0 var(--radius) var(--radius) 0}
.post-note p:last-child{margin-bottom:0}
.post-next{background:var(--cream);border:1px solid #ecdcbf;border-radius:var(--radius);padding:16px 22px 4px;margin:26px 0}
.post-faq{margin-top:34px}
.post-faq h2{margin-top:0}
.post-author{display:flex;gap:18px;align-items:flex-start;margin-top:34px;padding:20px 22px;border:1px solid var(--line);border-radius:var(--radius);background:#fffdf9}
.post-author img{flex:0 0 auto;margin-top:6px}
.post-author__name{font-size:20px;color:var(--ink);margin-bottom:4px}
.post-author p{margin:0;font-size:.9em;color:var(--ink-soft)}
.post-side{position:sticky;top:90px}
.post-cta{background:linear-gradient(180deg,#fdf9f2,#f6ead6);border:1px solid #ecdcbf;border-radius:calc(var(--radius) + 4px);padding:22px;text-align:center;display:flex;flex-direction:column;gap:10px}
.post-cta__title{font-size:23px;line-height:1.2;color:var(--ink)}
.post-cta p{margin:0 0 4px;color:var(--ink-soft);font-size:15px;line-height:1.5}
.post-cta .btn{width:100%}
.post-cta .btn.outline{min-height:46px;font-size:16px}
.post-cta__phone{font-size:20px;color:var(--bronze);margin-top:4px}
/* лайки: число в карточках и кнопка-сердечко в статье */
.pm-ico--heart{stroke:#d0607a;fill:#f6c9d3}
.like-btn{--heart:#d0607a;display:inline-flex;align-items:center;gap:8px;font:inherit;color:#8a4a5a;cursor:pointer;border:1px solid #efc7d0;background:#fff6f8;border-radius:999px;padding:5px 14px 5px 8px;line-height:1.2;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}
.like-btn:hover{background:#ffeef2;border-color:#e6a9b7;box-shadow:0 4px 14px rgba(208,96,122,.16)}
.like-btn:active{transform:scale(.96)}
.like-btn:focus-visible{outline:2px solid var(--heart);outline-offset:2px}
.like-btn__heart{position:relative;display:inline-flex;width:24px;height:24px;flex:none}
.like-btn__heart svg{width:100%;height:100%;fill:transparent;stroke:var(--heart);stroke-width:1.8;stroke-linejoin:round;transition:fill .2s ease,transform .2s ease}
.like-btn:hover .like-btn__heart svg{fill:#f8d3db}
.like-btn__n{font-variant-numeric:tabular-nums;color:#b04e66;font-weight:700}
.like-btn__n:empty{display:none}
.like-btn.is-on{background:linear-gradient(180deg,#e7738d,#cf5874);border-color:transparent;color:#fff;box-shadow:0 6px 18px rgba(207,88,116,.3)}
.like-btn.is-on .like-btn__heart svg{fill:#fff;stroke:#fff}
.like-btn.is-on .like-btn__n{color:#fff}
.like-btn.is-pop .like-btn__heart svg{animation:like-pop .45s cubic-bezier(.2,1.6,.4,1)}
@keyframes like-pop{0%{transform:scale(1)}35%{transform:scale(1.4)}100%{transform:scale(1)}}
.like-spark{position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:#e7738d;pointer-events:none;animation:like-spark .6s ease-out forwards}
.like-spark:nth-child(3n){background:var(--bronze-light)}
@keyframes like-spark{0%{transform:translate(0,0) scale(1);opacity:1}100%{transform:translate(var(--x),var(--y)) scale(.3);opacity:0}}
@media (prefers-reduced-motion:reduce){.like-btn.is-pop .like-btn__heart svg,.like-spark{animation:none}.like-spark{display:none}}
.post-meta .like-btn{font-size:14px}
.like-btn--big{font-size:18px;padding:10px 24px 10px 16px;flex:none}
.like-btn--big .like-btn__heart{width:32px;height:32px}
.post-like{display:flex;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:34px;padding:20px 24px;border-radius:calc(var(--radius) + 4px);border:1px solid #f0d3da;background:linear-gradient(135deg,#fff8f9,#fdf1e6)}
.post-like__title{font-family:var(--fairy);font-size:clamp(21px,1.5vw,26px);color:var(--ink);line-height:1.2}
.post-like p{margin:4px 0 0;font-size:.9em;color:var(--ink-soft)}
.post-like + .post-author{margin-top:18px}
.like-btn--side{width:100%;justify-content:center;font-size:16px;padding:10px 16px;margin-bottom:14px}
.like-btn--side .like-btn__heart{width:28px;height:28px}
.blog-toolbar{justify-content:space-between;margin-bottom:clamp(14px,1.4vw,24px)}
@media (max-width:1100px){
  .like-btn--side{display:none}
  .post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .post-layout{grid-template-columns:minmax(0,1fr)}
  .post-body{max-width:none;min-width:0}
  .post-side{position:static}
  .post-cta{max-width:560px;margin-inline:auto}
}
@media (max-width:760px){
  .post-grid{grid-template-columns:1fr}
  .post-head{text-align:left}
  .post-cover{margin-inline:calc(-1 * var(--pad));border-radius:0;box-shadow:none}
  .post-short,.post-toc,.post-next{padding-inline:16px}
  .post-author{flex-direction:column;gap:8px;padding:16px}
  .post-like{flex-direction:column;align-items:stretch;text-align:center;padding:18px 16px}
  .like-btn--big{justify-content:center}
  .blog-toolbar{flex-wrap:nowrap}
  .blog-toolbar__word{display:none}
}

/* ===== Информационные страницы: о компании, доставка, размеры, возврат, политика, вопросы ===== */
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.info-cover img{aspect-ratio:21/9}
.info .post-table table{min-width:0}
@media (min-width:1401px){.reviews-page .reviews-row{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:760px){.info .post-body th[scope=row]{white-space:normal}}
.post-cta__link{font-size:15px;color:var(--gold-text);text-decoration:underline;text-underline-offset:3px}
.post-cta__link:hover{color:var(--bronze)}
.info-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 10px}
.info-facts div{background:linear-gradient(180deg,#fdf9f2,#f8efe0);border:1px solid #ecdcbf;border-radius:var(--radius);padding:14px 16px;text-align:center;line-height:1.3}
.info-facts b{display:block;font-weight:400;font-family:var(--fairy);font-size:clamp(22px,1.7vw,28px);color:var(--bronze)}
.info-facts span{font-size:.85em;color:var(--ink-soft)}
.post-body th[scope=row]{background:#fdfaf5;color:var(--ink);white-space:nowrap}
.post-body .post-table td[rowspan]{vertical-align:middle;text-align:center;background:#fdfaf5;border-left:1px solid #f0e8db}
.post-body .cat-chips a{text-decoration:none;color:var(--ink);font-size:15px}
.info-chips{justify-content:flex-start;margin-bottom:6px}
.info-faq h2{margin-top:30px}
.contacts-more{margin-top:26px!important;padding-top:18px;border-top:1px solid var(--line);color:var(--ink-soft)}
.legal .post-body{font-size:clamp(15px,1vw,17px)}
.legal .post-body h2{font-size:clamp(21px,1.6vw,28px);margin-top:28px}

/* ===== О компании: письмо Юлии Куракиной ===== */
.about{padding-bottom:clamp(28px,3vw,60px);overflow:hidden}
.about h2{font-size:clamp(26px,2.2vw,38px);line-height:1.18;color:var(--ink);margin-bottom:.5em}
.ab-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(28px,4vw,80px);align-items:center;max-width:1320px;padding-block:clamp(8px,1.4vw,26px) clamp(30px,3.4vw,64px);position:relative}
.ab-hero::before{content:"";position:absolute;z-index:-1;right:-8%;top:-10%;width:62%;height:120%;background:radial-gradient(closest-side,#f8ecd8,rgba(248,236,216,0))}
.ab-kicker{display:inline-block;font-size:14px;color:var(--gold-text);border:1px solid #ead8b6;border-radius:999px;padding:4px 14px;background:var(--cream);margin-bottom:14px}
.ab-hero h1{font-size:clamp(32px,3.1vw,54px);line-height:1.12;margin-bottom:.45em}
.ab-letter{font-size:clamp(17px,1.2vw,20px);line-height:1.65;color:#4a433b}
.ab-letter p{margin:0 0 12px}
.ab-letter__hello{font-size:clamp(26px,2vw,34px);color:var(--bronze);line-height:1.2}
.ab-hero__btns,.ab-final__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.ab-photo{margin:0;position:relative;justify-self:center;width:100%;max-width:500px}
.ab-photo::before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1.5px solid var(--bronze-light);border-radius:260px 260px 26px 26px;z-index:-1}
.ab-photo__frame{border-radius:260px 260px 26px 26px;overflow:hidden;box-shadow:0 18px 44px rgba(90,70,40,.18);background:var(--cream-2)}
.ab-photo__frame img{width:100%;height:auto;aspect-ratio:827/1061;object-fit:cover}
.ab-photo__badge{position:absolute;left:-22px;bottom:34px;background:#fff;border-radius:16px;padding:12px 18px;box-shadow:0 10px 30px rgba(90,70,40,.16);border:1px solid #f0e4cf;line-height:1.25}
.ab-photo__badge b{display:block;font-weight:400;font-size:clamp(20px,1.5vw,26px);color:var(--bronze)}
.ab-photo__badge span{font-size:14px;color:var(--ink-soft)}
.ab-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.2vw,20px);max-width:1320px;margin-bottom:clamp(34px,4vw,76px)}
.ab-facts div{background:linear-gradient(180deg,#fdf9f2,#f7ecda);border:1px solid #ecdcbf;border-radius:var(--radius);padding:clamp(14px,1.4vw,22px) 12px;text-align:center;line-height:1.3}
.ab-facts b{display:block;font-weight:400;font-size:clamp(24px,2vw,34px);color:var(--bronze);margin-bottom:4px;white-space:nowrap}
.ab-facts span{font-size:clamp(13px,.95vw,15px);color:var(--ink-soft)}
.ab-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,4vw,80px);max-width:1320px;align-items:start;scroll-margin-top:90px}
.ab-story__text{font-size:clamp(16px,1.08vw,19px);line-height:1.72;color:#3f3931}
.ab-story__text p{margin:0 0 14px}
.ab-timeline{list-style:none;margin:0;padding:6px 0 0 34px;position:relative}
.ab-timeline::before{content:"";position:absolute;left:9px;top:14px;bottom:24px;width:2px;background:linear-gradient(180deg,var(--bronze-light),#efe1c6)}
.ab-timeline li{position:relative;padding:0 0 clamp(18px,1.6vw,26px)}
.ab-timeline li::before{content:"";position:absolute;left:-32px;top:5px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--bronze);box-shadow:0 0 0 4px #fbf4e8}
.ab-timeline__year{display:inline-block;font-size:13px;color:#fff;background:linear-gradient(180deg,#c6a468,#a8844a);border-radius:999px;padding:2px 11px;margin-bottom:5px}
.ab-timeline b{display:block;font-weight:400;font-size:clamp(19px,1.4vw,23px);color:var(--ink);line-height:1.25}
.ab-timeline p{margin:3px 0 0;color:var(--ink-soft);font-size:15px;line-height:1.5}
.ab-quote-wrap{max-width:1320px;margin-block:clamp(26px,3.4vw,64px)}
.ab-quote{margin:0;text-align:center;padding:clamp(30px,3.6vw,64px) clamp(20px,4vw,80px);border-radius:calc(var(--radius) + 10px);background:radial-gradient(120% 140% at 50% 0%,#fdf6ea,#f3e3c7);border:1px solid #ead7b4;position:relative}
.ab-quote::before{content:"“";position:absolute;left:50%;top:-6px;transform:translateX(-50%);font-size:110px;line-height:1;color:var(--bronze-light);font-family:Georgia,serif;opacity:.7}
.ab-quote p{margin:0;font-family:var(--fairy);font-size:clamp(28px,3vw,52px);line-height:1.2;color:var(--ink)}
.ab-quote footer{margin-top:12px;color:var(--gold-text);font-size:clamp(15px,1.05vw,18px)}
.ab-life{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:clamp(28px,4.4vw,90px);align-items:center;max-width:1160px}
.ab-video{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 18px 44px rgba(90,70,40,.2);aspect-ratio:404/720;background:#2f2a24;max-width:380px;width:100%;justify-self:center}
.ab-video__btn{display:block;width:100%;height:100%;padding:0;border:0;cursor:pointer;position:relative;background:none}
.ab-video__btn img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.ab-video__btn::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.35))}
.ab-video__btn:hover img{transform:scale(1.03)}
.ab-video__play{position:absolute;left:50%;top:50%;width:78px;height:78px;margin:-39px 0 0 -39px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 8px 26px rgba(0,0,0,.25);z-index:1;transition:transform .2s ease}
.ab-video__play::after{content:"";position:absolute;left:31px;top:24px;border-style:solid;border-width:15px 0 15px 24px;border-color:transparent transparent transparent var(--bronze)}
.ab-video__btn:hover .ab-video__play{transform:scale(1.08)}
.ab-video__btn:focus-visible{outline:3px solid var(--bronze);outline-offset:-3px}
.ab-video__time{position:absolute;right:14px;bottom:14px;z-index:1;color:#fff;font-size:14px;background:rgba(0,0,0,.45);border-radius:999px;padding:2px 10px}
.ab-video__frame{position:absolute;inset:0;width:100%;height:100%;border:0}
.ab-life__text{font-size:clamp(16px,1.08vw,19px);line-height:1.72;color:#3f3931}
.ab-life__text p{margin:0 0 14px}
.ab-note{border-left:3px solid var(--bronze-light);background:#fdfaf5;padding:12px 18px;border-radius:0 var(--radius) var(--radius) 0;font-size:.95em}
.ab-rules{max-width:1320px;margin-top:clamp(40px,4.6vw,90px)}
.ab-rules__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,24px)}
.ab-rule{background:#fff;border:1px solid #efe6d8;border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);padding:clamp(18px,1.6vw,28px);position:relative}
.ab-rule__n{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:#fff;font-size:22px;background:linear-gradient(180deg,#d6b77c,#a8844a);margin-bottom:12px}
.ab-rule h3{font-size:clamp(20px,1.45vw,25px);margin-bottom:6px}
.ab-rule p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.55}
.ab-rules__note{text-align:center;max-width:760px;margin:clamp(16px,1.6vw,26px) auto 0;color:var(--ink-soft);font-size:clamp(15px,1.05vw,18px);line-height:1.6}
.ab-work{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3.4vw,64px);max-width:1320px;margin-top:clamp(40px,4.6vw,90px);font-size:clamp(16px,1.05vw,18px);line-height:1.65;color:#3f3931}
.ab-work p{margin:0 0 12px}
.ab-work a{color:#9a7640;text-decoration:underline;text-underline-offset:3px}
.ab-work a:hover{color:var(--bronze)}
.ab-list{margin:0 0 14px;padding-left:1.3em}
.ab-list li{margin-bottom:6px}
.ab-list li::marker{color:var(--bronze)}
.ab-how{margin:0;border:1px solid #eadfcd;border-radius:var(--radius);overflow:hidden;background:#fff}
.ab-how div{display:grid;grid-template-columns:150px minmax(0,1fr);border-bottom:1px solid #f0e8db}
.ab-how div:last-child{border-bottom:0}
.ab-how dt{background:#fdfaf5;color:var(--ink);padding:11px 14px}
.ab-how dd{margin:0;padding:11px 14px;font-size:.95em}
.ab-final{max-width:1000px;margin-top:clamp(40px,4.6vw,90px)}
.ab-final__card{text-align:center;padding:clamp(28px,3.4vw,56px) clamp(18px,4vw,70px);border-radius:calc(var(--radius) + 10px);background:linear-gradient(180deg,#fdf9f2,#f4e6cf);border:1px solid #ead7b4;font-size:clamp(16px,1.08vw,19px);line-height:1.7;color:#4a433b}
.ab-final__card p{margin:0 0 12px}
.ab-final__card a:not(.btn):not(.ab-final__phone){color:#9a7640;text-decoration:underline;text-underline-offset:3px}
.ab-sign{font-family:var(--fairy);color:var(--ink-soft)}
.ab-sign b{font-weight:400;font-size:clamp(24px,1.8vw,30px);color:var(--bronze)}
.ab-final__btns{justify-content:center}
.ab-final .ab-final__phone{display:inline-block;margin-top:14px;font-size:22px;color:var(--bronze);text-decoration:none}
@media (max-width:1100px){
  .ab-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ab-facts div:nth-child(n+4){grid-column:span 1}
  .ab-rules__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ab-story{grid-template-columns:minmax(0,1fr)}
  .ab-timeline{max-width:640px}
}
@media (max-width:900px){
  .ab-hero{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .ab-hero__text{display:contents}
  .ab-kicker{align-self:flex-start;order:1}
  .ab-hero h1{order:2}
  .ab-photo{order:3;max-width:420px;margin:6px auto 34px}
  .ab-letter{order:4}
  .ab-hero__btns{order:5}
  .ab-life{grid-template-columns:minmax(0,1fr)}
  .ab-video{max-width:340px}
  .ab-work{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .ab-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ab-facts div:last-child{grid-column:1 / -1}
  .ab-photo::before{inset:12px -10px -12px 10px}
  .ab-photo__badge{left:-6px;bottom:22px;padding:9px 14px}
  .ab-rules__grid{grid-template-columns:minmax(0,1fr)}
  .ab-hero__btns .btn,.ab-final__btns .btn{flex:1 1 100%}
  .ab-how div{grid-template-columns:minmax(0,1fr)}
  .ab-how dt{padding:9px 14px 2px;background:#fff;color:var(--gold-text);font-size:14px}
  .ab-how dd{padding:0 14px 10px}
  .ab-quote::before{font-size:80px}
}

/* ===== Контакты ===== */
.contacts{padding-bottom:clamp(28px,3vw,56px)}
.contact-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,24px);margin-bottom:clamp(22px,2.4vw,40px)}
/* карточка адреса занимает две клетки — тогда нижний ряд не обрывается на полуслове */
.contact-card--wide{grid-column:span 2}
.contact-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:clamp(18px,1.6vw,28px) 14px;background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);transition:transform .15s ease, box-shadow .15s ease}
.contact-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(90,70,40,.12)}
.contact-card__ico{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:8px;color:#fff;background:linear-gradient(180deg,#d6b77c,#a8844a)}
.contact-card__ico svg{width:26px;height:26px}
.contact-card__label{font-size:14px;color:var(--ink-soft)}
.contact-card__value{font-size:clamp(16px,1.15vw,20px);line-height:1.3;overflow-wrap:anywhere}
.contacts-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,3vw,56px);align-items:start}
.contact-form h2{margin-bottom:.1em}
.contact-form .order-submit{width:100%;margin-top:16px}
.contacts-info h2:first-child{margin-top:6px}

/* ===== Персонажи ===== */
.chars-page{padding-bottom:clamp(10px,1.4vw,24px)}
.chars-nav{position:sticky;top:64px;z-index:5;padding:10px 0;margin-bottom:10px;background:var(--white)}
.chars-group{padding-top:clamp(14px,1.6vw,26px);scroll-margin-top:130px}
.chars-group+.chars-group{border-top:1px solid var(--line)}
.chars-group__head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 20px}
.chars-group__head h2{font-size:clamp(24px,2vw,34px);line-height:1.2;margin:0}
.chars-group__head a{color:var(--gold-text);font-size:15px;white-space:nowrap}
.chars-group>p{margin:6px 0 16px;max-width:52em;color:var(--ink-soft);font-size:clamp(15px,1vw,17px);line-height:1.55}
.chars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(10px,1.2vw,20px);margin-bottom:clamp(16px,1.6vw,28px)}
.char{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--ink);background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);padding:10px 10px 14px;box-shadow:var(--shadow);transition:transform .15s ease, box-shadow .15s ease}
.char:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(90,70,40,.12)}
.char__pic{display:block;width:100%;aspect-ratio:3/4;margin-bottom:8px;overflow:hidden}
.char__pic img{width:100%;height:100%;object-fit:contain}
.char__name{margin-top:auto}
.char__name{font-size:clamp(14px,1vw,17px);line-height:1.25}
.works-cta{padding-bottom:clamp(28px,3vw,56px)}
.works-cta .post-cta{max-width:640px;margin:0 auto;padding:clamp(22px,2.4vw,36px)}
.works-cta .post-cta .btn{width:auto;min-width:220px;align-self:center}

/* ===== Наши работы, отзывы ===== */
.works{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,24px);padding-bottom:clamp(24px,2.6vw,44px)}
.work{margin:0;background:#fff;border:1px solid #efe6d8;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.work>a{display:block;overflow:hidden}
.work img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .35s ease}
.work:hover img{transform:scale(1.04)}
.work figcaption{padding:10px 12px;text-align:center;font-size:clamp(14px,1vw,17px)}
.work figcaption a{color:var(--ink)}
.work figcaption a:hover{color:var(--bronze)}
.reviews-page{padding-top:0}
.reviews-more{text-align:center;margin:clamp(18px,2vw,30px) 0 0;color:var(--ink-soft)}
.reviews-more a{color:var(--gold-text);text-decoration:underline;text-underline-offset:3px}

/* ===== Поиск ===== */
.search-page{padding-bottom:clamp(28px,3vw,56px)}
.search-form{position:relative;display:flex;gap:10px;max-width:720px;margin:0 auto clamp(16px,1.6vw,26px)}
.search-form__ico{position:absolute;left:18px;top:50%;width:22px;height:22px;transform:translateY(-50%);color:#b08d4f;pointer-events:none}
.search-form__input{flex:1;min-width:0;height:52px;padding:0 18px 0 50px;font:inherit;font-size:17px;color:var(--ink);border:1px solid #e2cda6;border-radius:999px;background:#fff;transition:border-color .2s ease, box-shadow .2s ease}
.search-form__input:focus{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(176,141,79,.18)}
.search-form .btn{flex:none;height:52px}
.search-empty{text-align:center;color:var(--ink-soft);font-size:16px;padding:30px 0}
.search-empty p{margin:0 0 8px}
.cart-grid:not(.is-ready) .product-card{display:none}
.search-empty a{color:var(--gold-text);text-decoration:underline;text-underline-offset:3px}

/* ===== Корзина ===== */
.btn-ico{width:20px;height:20px;flex:none;margin-right:8px}
.pp-actions .btn.pp-cart{padding:0 24px}
.cart-page{padding-bottom:clamp(20px,2.4vw,40px)}
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:clamp(20px,3vw,48px);align-items:start;max-width:1400px;margin:0 auto}
.cart-layout[hidden]{display:none}
.cart-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line);color:var(--ink-soft);font-size:16px}
.cart-list{list-style:none;margin:0;padding:0}
.cart-item{display:grid;grid-template-columns:96px minmax(0,1fr) auto minmax(96px,auto) 40px;align-items:center;gap:10px 20px;padding:18px 0;border-bottom:1px solid var(--line)}
.cart-item__pic{width:96px;height:96px;border-radius:12px;background:radial-gradient(80% 70% at 50% 40%,#fff 0,rgba(255,255,255,0) 70%),var(--cream-2);overflow:hidden}
.cart-item__pic img{width:100%;height:100%;object-fit:contain}
.cart-item__name{display:block;font-size:clamp(17px,1.2vw,20px);line-height:1.25}
.cart-item__name:hover{color:var(--bronze-2)}
.cart-item__unit{margin-top:4px;font-size:15px;color:var(--ink-soft);display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}
.cart-item__unit .price-now{color:var(--ink-soft)}
.cart-item__unit .sale-badge--inline{font-size:12px}
.cart-item__size{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:14px;color:var(--ink-soft)}
.cart-item__size select{font:inherit;font-size:15px;color:var(--ink);height:36px;max-width:190px;padding:0 32px 0 12px;border-radius:999px;border:1px solid #e2cda6;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23b08d4f' stroke-width='1.6'/%3E%3C/svg%3E") right 12px center/10px no-repeat;-webkit-appearance:none;appearance:none;cursor:pointer}
.cart-item__size select:focus-visible{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(176,141,79,.18)}

/* ===== Выпадающие списки под дизайн (assets/js/ui.js), системный <select> скрыт под кнопкой ===== */
.es-select{position:relative;display:inline-block;vertical-align:middle;max-width:100%}
.es-select>select{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.es-select__btn{
  position:relative;display:flex;align-items:center;max-width:100%;height:38px;padding:0 38px 0 16px;
  font:inherit;color:var(--ink);text-align:left;cursor:pointer;
  background:#fff;border:1px solid #e2cda6;border-radius:999px;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.es-select__btn::after{
  content:"";position:absolute;right:14px;top:50%;width:11px;height:8px;margin-top:-4px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23b08d4f' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat;
  transition:transform .2s ease;
}
.es-select__btn:hover{border-color:#cfae6e;background:#fffdf8}
.es-select__btn:focus{outline:none}
.es-select__btn:focus-visible,.es-select.is-open .es-select__btn{border-color:var(--bronze);box-shadow:0 0 0 3px rgba(176,141,79,.18)}
.es-select.is-open .es-select__btn::after{transform:rotate(180deg)}
.es-select__val{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.field .es-select,.field .es-select__val{display:block;margin:0;font-size:inherit}
.field .es-select__btn{width:100%;height:46px;border-radius:10px;font-size:16px;border-color:#e3d6c1;padding-left:14px}
.cart-item__size .es-select__btn{height:36px;max-width:190px;font-size:15px;padding:0 34px 0 12px}
.cart-item__size .es-select__btn::after{right:12px;width:10px}
.es-select__list{
  position:absolute;z-index:300;margin:0;padding:6px;list-style:none;box-sizing:border-box;
  font-size:15px;line-height:1.3;color:var(--ink);overflow-y:auto;overscroll-behavior:contain;
  background:linear-gradient(180deg,#fffdf8,#fbf5ea);border:1px solid #e2cda6;border-radius:14px;
  box-shadow:0 16px 36px rgba(90,62,24,.18), 0 2px 6px rgba(90,62,24,.08);
  opacity:0;transform:translateY(-4px);transition:opacity .16s ease, transform .16s ease;
}
.es-select__list.is-up{transform:translateY(4px)}
.es-select__list.is-shown{opacity:1;transform:none}
.es-select__list li{position:relative;padding:10px 38px 10px 14px;border-radius:10px;cursor:pointer;-webkit-user-select:none;user-select:none}
.es-select__list li+li{margin-top:2px}
.es-select__list li.is-active{background:#f5e8cf}
.es-select__list li[aria-selected="true"]{color:#9c7a3f}
.es-select__list li[aria-selected="true"]::after{
  content:"";position:absolute;right:15px;top:50%;width:6px;height:11px;margin-top:-7px;
  border:solid #b08d4f;border-width:0 2px 2px 0;transform:rotate(45deg);
}
.es-select__list li[aria-disabled="true"]{opacity:.45;cursor:default}
@media (hover:none){.es-select__list li{padding-block:12px}}
@media (prefers-reduced-motion:reduce){.es-select__list,.es-select__btn::after{transition:none}}
.cart-item__qty{display:inline-flex;align-items:center;border:1px solid #e2cda6;border-radius:999px;background:#fff;height:40px}
.cart-item__qty button{width:38px;height:38px;border:0;background:none;border-radius:50%;font-size:20px;line-height:1;color:var(--bronze-2);cursor:pointer}
.cart-item__qty button:hover:not(:disabled){background:var(--cream-2)}
.cart-item__qty button:disabled{color:#d6cbb9;cursor:default}
.cart-item__qty button:focus-visible{outline:2px solid var(--bronze);outline-offset:-2px}
.cart-item__qty span{min-width:24px;text-align:center;font-size:16px}
.cart-item__sum{text-align:right;font-size:clamp(18px,1.3vw,21px);white-space:nowrap}
.cart-item__del{width:36px;height:36px;border:0;border-radius:50%;background:var(--cream-2);color:var(--bronze-2);font-size:22px;line-height:1;cursor:pointer}
.cart-item__del:hover{background:#efe2cb}
.cart-item__del:focus-visible{outline:2px solid var(--bronze);outline-offset:2px}
.cart-summary{position:sticky;top:112px;padding:clamp(20px,2vw,30px);border-radius:var(--radius);border:1px solid #efe6d8;background:linear-gradient(160deg,#fbf6ee,#f4e9d8);box-shadow:var(--shadow)}
.cart-summary h2{font-size:clamp(22px,1.7vw,28px);margin-bottom:14px}
.cart-sum{margin:0}
.cart-sum div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:16px;color:var(--ink-soft)}
.cart-sum div[hidden]{display:none}
.cart-sum dd{margin:0;white-space:nowrap}
.cart-sum__save{color:#a4505c}
.cart-sum .cart-sum__total{margin-top:6px;padding-top:14px;border-top:1px solid #e6d6ba;color:var(--ink);font-size:clamp(20px,1.5vw,24px)}
.cart-sum__loyalty{margin:6px 0 0;font-size:15px;color:var(--gold-text)}
.cart-checkout{width:100%;margin-top:18px;min-height:54px;font-size:19px}
.cart-sum__note{margin:14px 0 0;font-size:14px;line-height:1.5;color:#958b7e}
.cart-favs{padding-top:clamp(10px,1.4vw,24px)}
.order-lines{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:260px;overflow-y:auto}
.order-item--line img{width:52px;height:52px}
.order-item__body{flex:1;min-width:0}
.order-item--line .order-item__name{font-size:16px}
.order-item__meta{font-size:14px;color:var(--ink-soft)}
.order-item__sum{white-space:nowrap;font-size:16px}
.order-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:12px;padding:0 4px;font-size:20px}
.order-total s{margin-right:8px;font-size:15px}
.order-total b{font-weight:400}
.order-loyalty--total{padding:0 4px;text-align:right}
.cart-added{text-align:center;padding:10px 0 0}
.cart-added h2{font-size:clamp(24px,2vw,30px);margin-bottom:14px}
.cart-added .order-item{text-align:left}
.cart-added__count{margin:14px 0 0;color:var(--ink-soft);font-size:15px}
.cart-added__btns{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px}
.cart-added__btns .btn{min-height:48px;font-size:17px;padding:0 28px}
.cart-added .btn.es-modal__close{position:static;width:auto;height:auto;border-radius:999px;background:#fff;color:var(--gold-text)}
@media (max-width:1100px){
  .cart-layout{grid-template-columns:minmax(0,1fr)}
  .cart-summary{position:static}
}
@media (max-width:640px){
  .cart-item{grid-template-columns:76px minmax(0,1fr) auto;grid-template-areas:"pic info del" "pic qty sum";gap:10px 12px;padding:14px 0}
  .cart-item__pic{grid-area:pic;width:76px;height:76px;align-self:start}
  .cart-item__info{grid-area:info}
  .cart-item__del{grid-area:del;align-self:start}
  .cart-item__qty{grid-area:qty;justify-self:start}
  .cart-item__sum{grid-area:sum;justify-self:end}
  .cart-added__btns .btn,.cart-added .btn.es-modal__close{width:100%}
  .pp-actions .btn.pp-cart{flex:1}
}

@media (max-width:1400px){
  .chars{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media (max-width:1100px){
  .contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chars{grid-template-columns:repeat(4,minmax(0,1fr))}
  .works{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:960px){
  .contacts-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .info-facts{grid-template-columns:minmax(0,1fr)}
  .info-facts div{display:flex;align-items:baseline;gap:12px;text-align:left;padding:10px 14px}
  .info-facts b{min-width:5.2em}
  .chars{grid-template-columns:repeat(3,minmax(0,1fr))}
  .works{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chars-nav{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--pad));padding-inline:var(--pad);top:56px}
  .chars-nav::-webkit-scrollbar{display:none}
  .info-chips{flex-wrap:wrap}
}
@media (max-width:520px){
  .contact-cards{grid-template-columns:minmax(0,1fr)}
  .contact-card--wide{grid-column:auto}
  .contact-card{flex-direction:row;text-align:left;align-items:center;gap:4px 14px;display:grid;grid-template-columns:auto 1fr;padding:14px 16px}
  .contact-card__ico{grid-row:span 2;margin:0;width:46px;height:46px}
  .contact-card__ico svg{width:22px;height:22px}
  .chars{grid-template-columns:repeat(2,minmax(0,1fr))}
  .search-form .btn{padding:0 18px}
  .works-cta .post-cta .btn{width:100%;min-width:0}
}

/* ===== Раздел «Реквизит»: последняя одиночная карточка категорий — широкая ===== */
@media (min-width:961px){.cat-grid>.cat-card:last-child:nth-child(4n+1){grid-column:1/-1;display:flex;align-items:center;text-align:left}}
@media (max-width:960px){.cat-grid>.cat-card:last-child:nth-child(odd){grid-column:1/-1;display:flex;align-items:center;text-align:left}}
.cat-grid>.cat-card:last-child:nth-child(4n+1) .pic{flex:0 0 clamp(150px,24%,380px);margin:10px}
.cat-grid>.cat-card:last-child:nth-child(4n+1) h3{flex:1;font-size:clamp(18px,1.5vw,26px);padding:10px clamp(12px,2vw,36px) 10px 6px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.cat-grid>.cat-card:last-child:nth-child(4n+1) h3::after{content:"→";color:var(--bronze);font-size:1.1em;flex:0 0 auto}
@media (max-width:960px){
  .cat-grid>.cat-card:last-child:nth-child(odd) .pic{flex:0 0 46%;margin:8px}
  .cat-grid>.cat-card:last-child:nth-child(odd) h3{flex:1;font-size:17px;padding:8px 14px 8px 4px;display:flex;align-items:center;justify-content:space-between;gap:8px}
  .cat-grid>.cat-card:last-child:nth-child(odd) h3::after{content:"→";color:var(--bronze);flex:0 0 auto}
}

.cr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,28px)}
.cr-card{background:#fff;border:1px solid #f1eadf;border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(12px,1.2vw,20px) clamp(14px,1.4vw,24px) clamp(16px,1.6vw,26px)}
.cr-card__pic{position:relative;aspect-ratio:4/3;border-radius:calc(var(--radius) - 4px);background:radial-gradient(70% 80% at 50% 100%,#fff 0,rgba(255,255,255,0) 70%),linear-gradient(160deg,#fbf6ee,#f1e4d0);overflow:hidden;margin-bottom:14px}
.cr-card__pic img{position:absolute;inset:6% 0 0;width:100%;height:94%;object-fit:contain;object-position:center bottom}
.cr-card h3{font-size:clamp(18px,1.35vw,24px);margin-bottom:.45em;color:var(--ink)}
.cr-card p{margin:0;color:var(--ink-soft);line-height:1.55;font-size:clamp(14px,.98vw,16px)}
.cr-card a,.cr-games a,.cr-faq a{color:var(--bronze-2,#8a6a33);text-decoration:underline;text-decoration-color:var(--bronze-light);text-underline-offset:3px}
.cr-games{margin-top:clamp(28px,3vw,56px);padding:clamp(22px,2.6vw,48px) clamp(18px,3vw,56px);border-radius:var(--radius);border:1px solid #efe6d8;background:linear-gradient(120deg,#fbf6ee,#f1e4d0);max-width:1500px;width:calc(100% - 2 * var(--pad))}
.cr-games__head{max-width:760px;margin-bottom:clamp(16px,1.8vw,30px)}
.cr-games__head h2{font-size:clamp(24px,2.1vw,38px);line-height:1.15;margin-bottom:.4em}
.cr-games__head p{margin:0;color:var(--ink-soft);line-height:1.55;font-size:clamp(14px,1vw,17px)}
.cr-games__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(12px,1.4vw,22px);counter-reset:crg}
.cr-games__list li{counter-increment:crg;background:rgba(255,255,255,.72);border-radius:calc(var(--radius) - 2px);padding:16px 18px 18px;position:relative}
.cr-games__list li::before{content:counter(crg);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--bronze);color:#fff;font-family:var(--fairy);font-size:18px;margin-bottom:10px}
.cr-games__list h3{font-size:clamp(16px,1.15vw,20px);margin-bottom:.35em}
.cr-games__list p{margin:0;color:var(--ink-soft);line-height:1.5;font-size:clamp(14px,.95vw,16px)}
.cr-faq{margin-top:clamp(18px,2vw,36px);max-width:1100px}
.cr-faq .pp-faq h2{font-size:clamp(22px,1.8vw,32px);margin-bottom:.3em}
@media (max-width:960px){
  .cr-grid{grid-template-columns:minmax(0,1fr)}
  .cr-card{display:grid;grid-template-columns:38% minmax(0,1fr);grid-template-rows:auto 1fr;gap:0 16px;align-items:start}
  .cr-card__pic{grid-row:span 2;margin:0}
}
@media (max-width:520px){
  .cr-card{grid-template-columns:minmax(0,1fr)}
  .cr-card__pic{grid-row:auto;margin-bottom:12px}
}

/* ===== 404: шарики «4-0-4», звёзды, конфетти (07.10.2026) ===== */
.nf{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(28px,4vw,72px) clamp(36px,4vw,64px);
  background:radial-gradient(1200px 520px at 30% 30%,#fff8ec 0%,rgba(255,248,236,0) 70%),radial-gradient(900px 480px at 85% 70%,#fdeef1 0%,rgba(253,238,241,0) 70%),var(--cream)}
.nf__sky{position:absolute;inset:0;z-index:-1;pointer-events:none}
.nf__star{position:absolute;left:var(--x);top:var(--y);width:calc(22px*var(--s));height:calc(22px*var(--s));opacity:.0;
  animation:nf-twinkle 3.6s ease-in-out var(--d) infinite}
.nf__star::before{content:"";position:absolute;inset:0;background:var(--bronze-light);
  clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%)}
@keyframes nf-twinkle{0%,100%{opacity:0;transform:scale(.4) rotate(0)}50%{opacity:.9;transform:scale(1) rotate(45deg)}}
.nf__flake{position:absolute;top:-20px;left:var(--x);width:8px;height:12px;border-radius:2px;opacity:.55;
  background:linear-gradient(135deg,#e7c98f,#c29a55);animation:nf-fall var(--t) linear var(--d) infinite}
.nf__flake:nth-child(odd){background:linear-gradient(135deg,#f2a3b3,#d4566f);width:7px;height:7px;border-radius:50%}
@keyframes nf-fall{0%{transform:translate3d(0,-20px,0) rotate(0)}50%{transform:translate3d(30px,50vh,0) rotate(220deg)}100%{transform:translate3d(-10px,105vh,0) rotate(480deg)}}

.nf__inner{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(20px,4vw,72px);max-width:1320px}
.nf__balloons{display:flex;justify-content:center;align-items:flex-end;gap:clamp(4px,1.2vw,18px);min-height:clamp(260px,30vw,440px);padding-top:10px}
.nf__balloon{--w:clamp(92px,10vw,150px);position:relative;display:flex;flex-direction:column;align-items:center;padding:0;border:0;background:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent;transform-origin:50% 100%;
  animation:nf-rise 1.4s cubic-bezier(.2,.9,.3,1.15) calc(var(--i)*.18s) both, nf-sway 5.5s ease-in-out calc(1.4s + var(--i)*.7s) infinite}
.nf__balloon:nth-child(2){margin-bottom:clamp(30px,4vw,64px)}
.nf__ball{position:relative;display:flex;align-items:center;justify-content:center;width:var(--w);height:calc(var(--w)*1.18);border-radius:50% 50% 48% 48%/55% 55% 45% 45%;
  box-shadow:inset -10px -16px 26px rgba(0,0,0,.14),inset 8px 10px 18px rgba(255,255,255,.35),0 18px 30px rgba(120,85,35,.18);transition:transform .25s ease}
.nf__balloon--gold .nf__ball{background:radial-gradient(circle at 34% 28%,#fbe6b6 0%,#d8b46f 38%,#b08d4f 72%,#8e6d34 100%)}
.nf__balloon--rose .nf__ball{background:radial-gradient(circle at 34% 28%,#ffd7df 0%,#ef8ba0 40%,#d4566f 74%,#a83a52 100%)}
.nf__digit{font-family:var(--fairy);font-size:calc(var(--w)*.62);line-height:1;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.12),0 6px 14px rgba(0,0,0,.18);transform:translateY(-4%)}
.nf__shine{position:absolute;left:20%;top:13%;width:22%;height:30%;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(3px);transform:rotate(-24deg)}
.nf__knot{width:14px;height:10px;margin-top:-2px;clip-path:polygon(50% 0,100% 100%,0 100%)}
.nf__balloon--gold .nf__knot{background:#9a7738}
.nf__balloon--rose .nf__knot{background:#b2425a}
.nf__string{width:20px;height:clamp(80px,9vw,130px);fill:none;stroke:#c9ad7d;stroke-width:1.4;overflow:visible}
.nf__balloon:hover .nf__ball,.nf__balloon:focus-visible .nf__ball{transform:scale(1.05)}
@keyframes nf-rise{0%{opacity:0;transform:translateY(60vh) scale(.6)}100%{opacity:1;transform:none}}
@keyframes nf-sway{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(4deg) translateY(-14px)}}
.nf__balloon.is-popped{animation:none;visibility:hidden}
.nf__balloon.is-back{animation:nf-rise 1.2s cubic-bezier(.2,.9,.3,1.15) both, nf-sway 5.5s ease-in-out 1.2s infinite}
.nf__bit{position:fixed;z-index:80;width:9px;height:13px;border-radius:2px;pointer-events:none;will-change:transform,opacity}

.nf__text{max-width:640px}
.nf__kicker{display:inline-block;margin:0 0 12px;padding:6px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--gold-text);font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.nf__title{font-size:clamp(30px,3.4vw,54px);line-height:1.12;color:var(--ink);margin-bottom:14px;animation:nf-in .8s ease .5s both}
.nf__lead{margin:0 0 22px;color:var(--ink-soft);font-size:clamp(16px,1.15vw,19px);line-height:1.55;animation:nf-in .8s ease .65s both}
@keyframes nf-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.nf__search{margin:0 0 18px;max-width:none;animation:nf-in .8s ease .8s both}
.nf__guess{margin:0 0 18px}
.nf__guess-title{margin:0 0 8px;color:var(--ink-soft);font-size:15px}
.nf__guess-list{display:flex;flex-wrap:wrap;gap:8px}
.nf__guess-list a{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:999px;background:#fff;border:1px solid #e2cda6;font-size:15px;transition:background .15s ease}
.nf__guess-list a:hover{background:#fbf5ea}
.nf__guess-list img{width:30px;height:30px;object-fit:contain;border-radius:50%;background:var(--cream-2)}
.nf__links{display:flex;flex-wrap:wrap;gap:10px;animation:nf-in .8s ease .95s both}
.nf__links .nf__btn2{min-height:46px;font-size:16px;padding:0 24px}
.nf__phone{margin:16px 0 0;color:var(--ink-soft);font-size:15px}
.nf__phone a{color:var(--gold-text);white-space:nowrap}
.nf__hint{margin:10px 0 0;color:#b9a989;font-size:13px;font-style:italic}

@media (max-width:900px){
  .nf__inner{grid-template-columns:minmax(0,1fr);text-align:center}
  .nf__text{margin:0 auto}
  .nf__links,.nf__guess-list{justify-content:center}
  .nf__balloons{min-height:0}
  .nf__balloon{--w:clamp(78px,24vw,120px)}
  .nf__string{height:70px}
}
@media (max-width:520px){
  .nf__links .btn{flex:1 1 100%}
  .nf__search .btn{padding:0 16px}
}
@media (prefers-reduced-motion:reduce){
  .nf__star,.nf__flake,.nf__balloon,.nf__title,.nf__lead,.nf__search,.nf__links{animation:none!important}
  .nf__star{opacity:.6}
  .nf__flake{display:none}
}
